221993173 55180122 870732305 831327841 363736897 918610906 979444999 488411191 89821036 611743863 396736608 765907862 354138044 518417993 486638000 296800497 990820934 187721228 808281688 80741270 649458881 738440295 441309225 242540409 158309866 764372604 879937035 110900768 274086467 204154751 414235026 119095361 296079935 877903074 628787909 523675289 579837810 492135998 599929200 731871100 265819123 14580752 284685885 253588202 826554254 327563943 833492746 144164296 892411021 165612856 958013501 963930531 561337121 960226723 90548696 188414651 995988916 24306562 477401724 204555547 684915608 699843613 779514584 616124834 563187507 577662864 368162201 1642172 690931198 515472608 816167683 639795171 925643488 985624405 5735062 259097596 720559575 667059133 870483093 199765405 922749612 696664935 2214217 575413709 469488375 579721400 981468741 64506899 398944808 177246129 813732478 341527084 546456498 608702585 770854093 195474957 484931081 121548470 29111560 934679517 86525688 310979922 111453813 474316570 251245116 62211556 964915299 275344094 225988384 816660199 943053535 566082001 377274638 635356204 383902613 811902396 302001965 926682622 195130984 912626767 824810716 927302059 94202734 684232755 361048418 424205711 566351377 546358355 796142727 157031113 51142805 835814168 188667732 845055232 365477768 643682069 244290871 134240748 795087475 176722446 352094939 318867926 638877683 956048608 493415055 226585185 583499743 890688261 939299352 943540087 85105030 111692425 811384403 843554965 994431240 352723142 100827275 484060297 383409064 742130107 510354796 372774307 961103090 35157507 371512622 152663118 12369412 321696851 859706895 117507839 111110752 359684872 478339046 697598353 849980032 514737967 446170125 446607828 970747858 800476420 510713522 20391381 486098960 572618652 53412724 246332884 985136795 755926529 801401531 627496746 53962099 748025546 190477775 987696287 452418845 589936758 702942075 506375821 332048150 217282889 359983199 574073480 921470565 781914882 953630508 830215515 407685734 241070671 898571155 854963666 142616488 82738565 759886999 526717562 933543416 660844389 715978222 892984297 128051377 965157549 122317999 769932675 605310378 759099116 983596586 710049043 904477147 701552832 261036179 767331379 596731008 974349479 334015107 373714516 445503482 83054443 644925499 239640443 341674039 221482762 844139995 363599798 628308779 810314234 200184496 60096172 449743559 523512228 813170531 675376128 264238376 281258928 63400984 753434499 242107673 701560228 85070467 96024853 807777442 101988494 170250079 343971543 195344626 820001259 814642007 924645757 810285532 758152274 589373873 879081585 914734337 854145021 59821640 170448349 964996645 584717315 570975217 350693561 302518111 738651326 825705834 28970827 659417281 172961829 986501446 133888944 107489528 980229504 580918523 932059550 472828152 706220760 652270787 936043422 241859054 737186042 31130064 384514378 544232348 889687628 364710181 575987707 892333271 829364636 459345602 95313945 418654107 124837372 632905543 527178834 207779129 961211146 362459276 789010111 944758765 496695511 742237921 211141004 427670577 603984143 165974622 748575809 528426077 755863837 109175015 993504005 703616583 218497781 425637335 859044130 423849600 702219417 318646436 901016108 365333018 764756564 477941313 759577014 542090416 76906655 265230252 99128500 134363732 301886100 152472974 136480100 109918389 479122578 679182687 323466908 601341154 697172836 997225470 425815364 560914591 846370560 548726202 467926954 642349537 861478691 726789379 60988505 615813544 145810658 588500067 648538006 386854720 354785465 462313673 777382000 107147387 604603318 309230769 574857332 245631003 550968566 71265989 468910722 347729166 12848074 298825685 165641829 633162042 60366433 278155938 476046983 348331991 869890943 591222315 377628226 775013133 483615064 624754468 140386112 159680938 75443149 893762654 688089413 730591268 820063196 497768017 616701324 643640220 896080790 509475094 630527993 168208159 800323258 641464774 362064572 988167765 27713185 770329360 181481212 562706289 850988439 930341847 429147570 910097431 710831120 749184660 865365577 760531541 427075211 142875794 977550994 811944189 653634292 220424258 154745116 21749490 407078960 660922445 382901 212065959 845517819 269028236 161132452 794889732 739250740 59623215 582910815 339866812 770260000 568102764 599993168 655057397 961467485 496145383 379778387 571212370 497010349 338338651 759727242 742750742 996798323 300495869 914374902 798786272 929922399 85949781 103748244 235663644 19634706 438168898 245874838 126045855 30760444 203031988 172680431 841542740 827760502 372432451 932353077 882917328 846132830 15569118 575374668 293000392 633716477 778117394 888928548 486557095 713959062 779732283 265112663 996686443 9708312 87198680 549463461 157001058 707526224 459107879 805694610 967730803 190656336 4903484 634214278 193191489 938552932 423896052 258186386 893940727 292480459 776037308 425644015 232709496 571178604 188396182 990055549 960805376 588199614 887899399 752940415 656211273 961268397 472778880 329443154 305548531 453632015 350179584 364137170 777134299 56311235 177509053 30750150 414791937 213044970 69442425 668913441 164543569 371404952 156373653 206502685 345301807 330704403 638173927 81629564 404994101 436535558 177935329 811215984 92893178 445792461 300542703 447310156 27528462 823307351 278977677 308547804 75170501 707409406 47738375 514594483 863585584 461178561 714317595 42133071 830437699 390043834 132905803 30059529 365286457 669297452 913217544 699372958 433387895 71068277 925651816 271172057 961368074 950094363 6608109 240739357 432930584 569315699 583112635 211493762 348827576 207539921 376032020 355821579 525278676 231032876 599029317 26037241 790286642 731184003 212267815 998515764 654194377 38341927 753213185 859098214 808289819 544304938 174051254 19519961 523901213 68816417 7875808 525449483 528999742 104560206 347874009 295997434 234404125 274834407 282698437 970605708 852772015 469666486 526147311 285181066 515005134 938242096 82347590 966726672 88240717 719399885 797696974 136879028 728947413 889898983 975657190 441260295 57524712 786127380 620206317 721488727 897010507 653164078 766973138 298772340 811830256 406732978 461661542 95598593 945899231 97386246 506679802 370862768 886134295 486254462 220272022 887717768 748915118 761115691 806629662 994325921 196567828 512889952 764602652 531824868 657346259 895333657 975459219 71070161 388293153 344450558 756749999 156883569 843953624 379072639 864583729 223688078 368242406 526337726 652829883 321500904 257387350 486659617 858498936 236146437 295191480 832062542 764034660 938288537 321043733 832608409 504322412 603515943 874183719 804751007 485396677 637882666 624188508 985143209 747331814 468573504 945151262 61414022 432181893 519766496 170571937 813994700 298982865 375915525 172877106 515843470 340663718 633442506 294850528 203898461 362537697 847337332 808754065 572821884 895599566 159910042 915033321 579849736 421555622 674874876 898447514 785473153 587077595 654830854 996611098 530410261 124262847 8394451 756831560 297838705 588268569 906168270 514566022 151899395 758215597 441316670 833281722 808383039 831087829 7529903 344118941 191957534 380677057 595285131 329245833 42871953 74767883 814705281 291073674 586023103 199260830 443504722 74667909 638134878 28758458 955351579 804211156 399209000 656149691 851636959 207542346 489638895 971736019 567833301 572462696 652288980 501054624 210314073 672408279 959832041 887402972 751260587 58385756 354559155 294746653 20673871 177693590 564921112 46565626 220305500 341808282 856617703 915400736 252716277 762799797 113037824 189080138 941844937 493310993 344016897 471791018 934277413 687846758 820341853 151188226 240616341 202352858 375789650 424498782 894519270 847592948 840430320 927121408 338401591 190403360 821958692 689459213 181216513 445868684 878110283 680466180 295611101 270203848 638682379 21931902 105387586 871350882 469349874 166059780 361788815 278531197 553935296 246331195 476668441 922052179 746363965 81628167 561044962 680435030 975084738 165565158 74724984 577658510 67786599 424657082 431999610 13140080 887799061 606602890 422538803 346916884 731215171 211526897 265774940 975150028 314926498 838982214 126820913 448709307 973914122 321249042 580040883 14097885 975659470 728069845 43493054 266323552 770633042 511689951 874844208 626019070 463023011 752905992 886544213 158146181 177751176 91316619 132440355 774067153 110874945 51457935 658049606 406617325 36023492 662700933 207788848 973693740 189397705 201739231 839900829 36126739 742941731 135802369 244676221 423786905 586168095 930706669 863345699 91161692 19889805 357817574 752083642 750700985 128767541 23581272 239900681 255248940 356424438 781333940 4021787 497274032 773453514 896264047 395091831 748285683 638666699 684510317 526034280 805157779 779367902 585086328 658845187 672548119 398757124 116742440 123661630 14962155 424006169 307214137 5287654 371795165 78165906 641974399 829808405 507707124 516769172 788944898 430134469 739110910 511998962 527799356 628965282 727295477 366925338 943822912 951593222 254431456 743221874 908383879 488157676 471025714 956464329 208383314 957250386 410147705 518231362 583931117 767923946 888999354 680890706 903374238 251611551 559775379 55266275 807161483 953463961 529115361 95077062 528471131 435738652 681320238 699166368 765785537 754547653 560044044 677853521 956198576 2104856 10493855 682337472 333339375 980021248 318195534 377078000 713216987 916247250 197689121 160753880 766489289 975459662 935796960 325005400 208201167 504038678 829340623 927568352 299253643 32308322 880705005 83519859 205015123 755230705 980890539 215361805 440561680 366886948 8499032 157708948 653888919 372402930 259196013 354578899 102663541 716803458 267522906 385185935 223922620 388038248 747610125 829427840 577382721 274202220 773862979 852668642 156955557 994311131 545064441 935415840 79705129 735920486 98411496 340381195 431972260 614507600 592249842 716642394 986773372 568288602 854745664 77050785 987060982 376896251 955450522 737927425 903931182 950551185 456699358 905326607 157559420 491590306 640419708 935526084 657198171 251383281 461603444 616918154 108614540 762818717 91268538 1678771 548835690 82120090 957051070 321178912 430913805 216349809 137124627 174757492 329388925 551840430 189102496 639628710 381201457 485027248 699558683 318168914 957942018 365970983 775552152 132996122 470723260 216944013 161291036 486814526 651269158 826405179 429361016 473551782 87776536 883176586 936967140 648410600 771457921 167013373 779013532 742497146 14643799 981428576 692855949 261222675 34320364 450863847 754874610 509387822 424930021 441306968 83640824 968346800 889006453 185207175 812535756 960384904 738174034 784068989 135439528 922693725 232416199 626006602 4703122 351779605 106151881 699120906 897440053 460485842 584010614 734634531 121568663 953751020 650737075 56742652 312046643 165556319 827109976 430358224 180832365 27448518 302052914 359602819 943694797 423178041 174528713 768105580 41988233 340359149 635095876 489101117 237010445 117558255 700000408 338342153 416806002 452648677 898063633 230213836 297885126 929245904 540777081 838317158 284994562 394633956 948577730 70477731 277767828 943096022 676238528 902972325 354365361 840458333 683489720 342285449 619878309 858998404 135290820 626250731 35611053 456100566 962726745 106507161 156359506 643353636 117558112 5540310 154745990 485395558 924180158 670457970 387757386 904861015 13275385 614694932 932181405 212812122 844914350 12508678 410626206 533678681 745581874 972995359 337157059 793697750 556943117 68925588 189312254 363922704 773076491 133394663 270418099 475170467 677619456 325647295 199691657 509447257 3050742 289250118 27771775 409682426 276548290 377825566 201955944 583418537 675231064 78944538 993610932 255547973 135734931 74235009 53815917 283702203 910030633 533775988 365128842 62499655 4473430 6328632 250869680 612886182 808341308 942279221 742819306 97227216 645143861 944925156 825644156 226244490 472825368 262825584 918902069 715293233 269653407 990790919 496645075 396558665 829379863 541832848 543848431 653257536 239842061 162964425 311507551 860530652 250486705 528995303 532388453 345771061 119330471 624020657 400107060 148012035 302449573 741374531 35294582 363876943 415867922 346667959 859267653 857286625 47423856 176534628 379867869 869124151 9956680 661847781 530140672 181573474 298235282 156602085 137327518 259731598 381532843 690408615 944188362 539541136 784603734 208634940 288047908 764758769 475706166 743737435 42486485 818099967 776036067 401394586 714760902 961908674 642222196 693278947 603027040 326439387 74508364 369549882 523979626 600807118 619382479 86247823 897647537 384972262 330234679 585322115 244275385 842550439 437994004 412349954 617203070 683248402 851615996 743281338 904136417 517617214 794389468 389633632 990105473 746442356 338459655 370622766 29932809 424305806 26105427 18360686 932551335 507761475 763439083 160405377 966349016 976236137 92476219 610278842 41619233 775478480 517103181 156686657 983457500 565318966 273945703 866724920 133073169 116494936 90538564 765873969 3484323 406975142 615712460 33691412 353236998 533753519 820007539 856095054 221696730 602287320 547999982 240161011 54397837 486922020 322901060 270685751 907536403 457346379 603424793 976160198 463739205 596276646 931156653 884631401 349406815 87300358 72458717 762405468 455245607 462298977 589138584 799495128 868915108 368395017 84881751 519715534 130898953 888565801 989074608 632899975 273606354 180635378 931626638 170467583 217393953 837950880 47905825 806509649 616563301 671665549 202265898 298931416 271559255 653128487 240243995 115379834 325428352 525169412 291245529 322948929 785014132 442308902 242975375 285066187 910051131 469911539 118872858 426055462 211298281 492187427 194426416 26914244 677778395 108539084 428301792 853907054 760165385 175794960 310668153 543922585 695630582 744864808 384958187 417920251 403889646 271127196 37958311 546574033 434585031 130789249 570727991 88205453 441499549 113825334 806133752 172958683 435796335 387216273 776550987 50821411 411028743 283176111 781477439 8367368 282738024 163150878 455739820 65251594 183817079 928449818 528054244 642787038 229281743 24361303 615437705 634090742 262380018 866346792 648725883 948878064 514914519 12663140 396097613 829948793 904679071 479321897 751545845 946798011 254747950 272891406 137735378 383807299 449864100 856581711 343015524 271820683 370720366 95065528 843990591 828543058 988637433 339110370 909571339 1172959 844116795 692407228 569202541 330824828 633716759 731834523 145965454 120127778 704126350 257263025 365802666 912627040 347801961 612553000 237164032 405472430 527001024 856961841 67660481 673018138 505458536 179232356 777888640 270838833 217631429 880526662 137374667 936662684 441769750 702320970 394021165 532069876 712820260 910741337 77428943 660343578 772322467 939519517 673063492 705294400 445381744 216985285 381246863 876380618 735465542 535093967 426314028 341733416 80091729 232671261 61538684 271001777 59095796 543454887 92499147 266900176 364425334 571493440 255181623 191226173 97232027 502686186 355774357 745317237 878181612 835944412 526716799 983441373 145832244 243879186 77452572 664561430 779414000 5344922 410141062 943079538 534735183 288454491 806380063 49485075 40596748 607314781 627560301 893624445 953768751 164614597 517434137 172761290 944802575 764847068 807278383 173849891 976760793 275560909 525832850 915170511 424979974 960840521 953586782 229698812 704634531 416706801 160348533 434358401 83433057 478791854 213322127 60320348 677383873 156718192 930864016 634754141 410014908 760167875 883993925 907343502 574434894 660877360 147070761 743008067 688540165 261258444 161338796 879690255 531864680 943590473 201669614 678975799 276325792 494140380 870614938 785631682 554445522 762517944 748095973 121737197 152100846 460248679 445911868 88639847 593406881 976709376 861830954 741335696 738784094 823009960 112147357 680535284 882629988 67109967 699152685 783312080 718486403 725543327 523964500 698938479 818063353 427705515 295837449 272446144 610438330 494323222 694310958 410984847 105952173 570356200 880479203 661929917 96675703 150517708 690240359 613032841 993312520 949828619 656262029 532477124 29812284 44860822 967051553 962832061 649042182 10359529 480391583 212538535 768972220 445784836 592611387 214007991 610336531 795035070 78074375 148312115 439971000 78538987 81307887 944173228 633391779 159955973 23437628 983836832 720803630 589741178 14020869 322436277 896737069 405248039 588065518 122979061 792824496 948759160 923959200 452913933 578396298 554161740 550605241 332799561 928335925 417923844 691474810 568789090 792461130 754109898 506425810 994244249 721196189 562563901 654779940 141020007 84033485 40805714 531198478 841606523 4446344 92148998 777471023 586800349 424801233 499013965 701673475 814577505 386016716 369607047 778830309 165433233 870522331 178594069 73814784 117484305 895302500 519310231 277765489 71168016 536710383 420586291 62495308 230682644 341116277 142238389 519815614 730894035 590385032 798529918 344892638 741011096 708545814 394677425 670509717 473875198 693350618 719002526 138926842 700684563 534366351 444123900 239588891 577375157 251385152 354928793 550255849 586769195 788487258 3310445 377164843 63268573 562844603 81544554 500422321 356237620 548389530 793456926 698780020 585895730 455004557 388053988 552577700 510086080 284725237 67676707 946240352 585937894 835938065 832535832 392660621 68618529 933339122 647002788 5063495 50959603 492453609 113072154 377996708 626342404 800642045 534683899 407614094 189417134 288971294 344169084 932830755 113702632 7986848 691071517 199599490 680285611 834156013 962108333 970242326 688241406 580035183 989374111 802743362 820448489 582375954 378090694 541500876 737258830 98887592 111238744 172560348 440396443 6849421 379147751 847272752 117954988 668412929 809282211 58409878 371194542 657227582 71157113 161190997 105357991 283695459 59027079 249463458 217209461 748172943 553639742 779946824 503271785 56034701 200174409 993118317 126736800 641559116 473337390 162797440 621017554 783438453 489061924 508030184 810402417 919945803 587597806 838396721 601809438 747558148 442997082 491224556 570587347 219545768 726610625 539559975 437292847 186472911 47169804 782781753 665723133 298719319 869600690 95628318 310393732 142116923 790593094 935555898 805688656 643809841 142282458 32458537 14522011 182480528 508630722 361017786 534426307 576181969 111023396 420962348 971953369 422489102 237558111 652719417 761533501 549091465 415778941 952472268 451751889 754116814 819772926 246465494 973271138 931817329 42251950 501765300 741391290 691676087 650649387 644767108 538232052 783648465 384240675 101503290 498586389 411389201 272456443 870646763 933018894 203912597 133847997 352227502 152869716 936142372 708407517 597393014 465344980 962689463 634821218 330787872 612671176 978432970 718514292 633413725 142568032 905710610 703082908 685904513 330026753 331217462 691970039 158844645 350634986 613292092 825169703 744680973 817059608 634707254 675410099 266959207 368550798 407937617 567972828 362590556 960392455 182027588 301597545 66493021 621717726 353424775 451132476 209624370 53043765 629921304 432682911 598584022 37406452 524061210 96667862 110213381 466495669 793606006 505424427 255735132 119311560 299957216 250924028 22888737 997239675 126538287 974501586 170421812 894421651 81496960 490436160 410417889 731939142 147925890 106112610 352634151 426961618 911222038 308835900 760369124 842994827 107209516 794904538 413953157 197988065 44135021 710334606 626346002 309960523 234167443 560438821 750049589 829525908 561098548 835654256 866598529 172669298 74852293 583561121 443694400 882966216 857075025 266995121 822922220 963301529 833588014 159356699 78030538 744594179 478684228 566379194 194076367 539524847 174650505 11456651 617676076 769639278 742298067 494179815 361205701 149101973 34820380 171536944 709370860 10188657 61828764 550190779 486972411 702624595 525485781 671066273 712573146 527507478 385049645 420243913 515040843 704386210 756388539 550815727 847781113 588100687 772364799 94669220 773032317 977900904 846243187 20109544 493969359 658892531 421553414 712792587 866374797 403082048 583272753 711156995 960408052 842139572 735348788 897694348 794801194 990033368 216478439 254017425 607468740 803137817 216487453 603374388 640161499 179041680 848780739 628282672 385282763 105860557 216870596 582431341 903237984 820808192 268514853 831681298 297924452 985074942 679736611 946815200 604783584 843517357 357772636 123733946 67777565 783336009 493224664 416278050 423169762 555967525 281148288 935206976 287919855 478493774 202045365 64158655 328197559 329630988 56219347 831650656 398754430 824186510 508140464 970932871 994630448 412629793 192327053 658024651 692204748 230593738 264176025 975238846 311873305 379386456 932511187 469667614 555318258 842536781 277677573 966118510 570808267 551725807 748016544 850941406 568009453 926259975 154325249 422418137 60785230 110947082 924558064 415408855 296737866 299231953 863278559 489456352 945889104 636916212 46064558 547552081 464515924 8397846 215129407 75460223 480451069 58201975 79238436 956393868 324042996 584333134 109980329 68701304 410355458 261814609 54737513 570055714 676842353 474465692 917666828 959804985 885007677 499654654 105483985 23110353 814544158 94649931 537909557 288351685 189985717 477734775 641702846 272445875 796269851 128315965 313040575 817206666 727011518 427686713 333815420 89920584 771624843 585749534 578467322 409515681 848778119 987166644 260077338 764204500 851887707 289183243 565220980 475339952 388986293 877859872 778640757 683976321 899103018 828258349 466777577 609901081 613004289 236033149 934394837 460094654 222021058 185564259 827867127 843252265 621408917 58470536 865681881 969116623 980894104 165526992 281997995 322861804 902295163 977041099 197889569 481061567 393820679 969255092 966363379 170909842 27158274 306568942 300745135 909031130 209736859 381972511 467080416 525082527 869157540 261993868 501527570 70501703 518675988 294884059 966860827 107745614 437003346 463161006 987890294 164395173 421348923 83583784 111870934 128675045 622084678 999248994 578545531 307498263 804286566 574184197 577878475 889819253 823587272 294919221 554951635 422294001 842384441 985105344 510053050 215135127 524724255 56664821 518252171 356882848 790415621 457731676 464835077 223175297 192546574 694488181 676476769 215526943 899914006 598101119 137911673 372747343 249375728 399763661 123942550 146623139 67016840 765104942 508329268 754802104 187160381 469541817 742662302 929213289 202220653 902284783 818242725 309079363 661532175 924083902 958460601 892311031 765106320 858910164 414279302 486820993 471746705 939020912 275843666 790046517 47969519 504725582 740807297 527721521 141345655 145108795 405000896 905315191 564565927 367417737 821507106 827222797 93948958 370117087 852625192 555599768 768195385 440806713 33715472 261772322 950068889 138792018 535071892 422180242 692772400 907309824 712780907 548073108 803615391 301579469 736236482 736324002 449653343 689876640 149233249 371145302 538965929 564164599 403613934 741322110 14894553 430627066 913465909 362512247 612063157 366263268 838039950 503412917 430813151 594497457 279048470 691525713 664387853 559009381 923139935 288704691 622750584 752482930 911980836 966563036 887484638 931110536 264420048 181042324 698687557 280528225 764047052 924868296 555173924 889519507 798451608 442227051 969821103 324905271 710016279 478331255 247892342 103553832 234129036 330955792 417193155 85396919 738768245 757736920 424451384 801191660 708970507 754701773 518838304 644460406 20782460 804181052 207980591 231407385 457571875 554592228 171767576 244183336 825848595 949145063 12731532 566971768 327140682 202501326 504492488 479993233 450261783 926065352 240744335 696629969 951706348 265663580 638106570 49362026 125055695 666527581 958634898 46759032 448990586 422631802 986696937 154202389 683560386 90715915 518843789 375445722 176480379 21271143 569110648 218766243 736855734 98946374 418025340 798932909 18499449 613407941 139108004 67624222 814490985 797970286 694211397 606931616 340147983 818535752 353199983 199923388 958560306 319368131 462177019 912882554 708167393 937348998 429317061 971611189 22870133 307687236 428230171 358256797 960806047 921184125 665231512 468886149 526005556 143864691 257008416 245612898 775921302 896005072 582275446 40158560 399658451 870692260 999864617 129911290 530164976 868747038 474490512 176914107 701290791 42884806 296025661 575382831 210059721 836533123 234370323 851260313 962212139 943414472 691038897 734581637 456300169 552945607 992090169 985275382 216831468 654003200 409222082 483079292 95519310 866154030 607618245 228675083 513798049 709189935 657417843 223778499 258711512 76943379 83809741 824041898 714008476 915775856 520814145 85984214 453884285 350436236 862272549 891666060 840350477 659848440 290578113 447463736 907027560 691430918 788392855 556620388 918581153 738252166 466924768 64205129 744873168 735879165 259061793 259439707 971291921 128009490 697438232 348657802 651084715 724001094 549420641 312033681 17635554 592982261 369635036 331935318 159824384 387937652 798683666 245174506 853668933 23023294 638842440 517080978 371240502 80987877 699616556 428151370 898266611 422844524 959672636 374947866 922613615 526931061 987293896 975114608 580806567 376126221 208767526 53448810 303364643 167582434 363620885 387417531 859359027 864144301 516519934 393378951 825364365 784202932 268679243 725440095 721215622 174353100 341938567 123790191 646950029 513010262 343810154 992870049 425810155 655521382 982594577 653561605 628427855 972467490 942974061 234264800 690585127 83440032 544705103 372047403 784188441 398394418 743454484 431977835 956754717 155838536 980500226 534573256 607553992 716996588 563391787 37417337 812115641 255405789 628201200 853506150 578750844 472945140 107638498 638765423 513522839 191794350 217046041 381078798 940280045 134546356 676460000 251486380 712671173 728293607 953539324 510136287 850793563 370544690 111817936 662630897 948115342 280877710 2557479 652427540 682162287 800512513 753781092 799810421 900836235 230518226 294751706 470744993 921492625 113654243 142635969 681263878 182873178 603507404 149611823 923514648 22149876 203332074 301859389 443150545 967921032 221013771 266443581 72694526 892487684 460318226 494813305 758670679 236235678 596117293 366553063 509395854 718588414 237783288 365043229 967078174 428274324 892435893 420286568 801451274 639594442 539301079 904451187 393492941 4070030 679327596 556034709 579350116 871093836 946409038 133632623 925462654 34883873 435243086 958350645 794998849 688549549 755381509 385828829 73325762 926856566 569034914 49957559 575314083 743805167 216334749 650952962 846040467 241739451 611580264 991535661 734189928 136664000 953430933 236199026 604880340 702272659 223318754 231793134 873571013 185071817 258029520 130298360 801103615 534719415 812434116 142107390 440994637 231148666 883715641 579639689 811838004 757119470 917037841 952964755 875494078 863954615 770543572 604329923 654392821 73040393 676993680 987380701 477563471 1091837 836468357 785233697 980235141 366565353 271976372 721913053 988075266 243131353 334754946 59337505 931883644 805215357 771393665 37017315 274116350 461730726 311838254 53718266 852401060 143349559 689306581 802527621 857803859 229171197 126341322 272352606 969822510 699754652 982325470 892702840 259321643 754145889 148429383 191908966 901000879 948870495 531624315 813391800 599737659 846015056 302514595 259551077 143280056 196749808 616964179 30292688 984053783 23819153 151713749 959260493 681594104 927088755 601456433 619446146 655959874 123489097 831605309 84352596 213607327 276892411 961162208 513407655 579193960 959950916 246663380 564575528 526515570 378115655 455521624 219671428 735867104 94085179 58563505 253259088 213460717 230085522 52236049 277531125 150439488 765194262 660050549 68753076 264829086 766343618 667329964 959167989 629440329 356725444 147935785 329398655 38825911 660410801 274890843 231673849 737483134 959410357 575914709 756263636 865999243 663508628 529080871 28597913 76533801 901059807 744391302 20343580 707174658 22531360 541241835 542813810 619587020 77009935 715531495 214244770 374038524 124872637 87355784 949911 652578140 888303089 866304033 339689905 672527592 746944197 191607794 525347023 152232527 612632482 926234723 518144398 463585022 14927827 459759802 543624916 74723096 836956291 289000742 466485816 319144724 818242743 238298702 704306135 982094593 542734164 10076334 407635805 195933320 240983529 948572515 865661406 547541851 914377027 515205285 474850062 523446000 574365305 970668878 934093147 596098982 677418284 640531506 542013405 45729600 780412516 747093523 48992168 717788708 977217919 437894936 887238988 95125127 283056197 706821471 748168343 131074328 357495904 659986795 724681367 459138323 559167609 19399185 988607208 842015955 400955577 254671989 686940134 581997314 397176373 629434647 480741427 847807252 766101238 589804836 753801271 807646412 767146429 862131206 331524587 779998869 229809179 552187422 633039597 41830730 411079476 353772681 838904279 420833349 736201016 952078939 524578019 160186820 332286275 832907371 875439119 582890668 442741549 642542441 612385906 621122268 385171224 735570619 757143862 923143659 775789557 345786853 612331879 838505706 442187072 609299414 842065010 593075172 798929031 312215015 231267152 751587344 913956532 117541305 837420872 477613546 831699375 649860621 646316962 258434857 53951421 750757622 366012310 127223379 542031058 370677632 303792825 817204055 794692146 828848251 185140904 521211877 845048254 287413551 897113930 184336770 915026998 59955273 839296453 760816018 121992100 676933868 884037736 652489807 299397412 872493972 705219951 437466941 446632301 605903659 436198065 839625568 84514179 712050062 806670552 986108728 541316101 795054152 11289644 248752105 788697687 192459904 818604788 958792623 891694075 848977784 389626337 939859000 40898894 237857125 212563531 703783636 773090835 94655070 36119018 947981044 999984515 401073487 190034583 780307793 149086509 924364468 461611741 680403201 613797467 134972618 554033404 32469187 496291253 963241522 441474182 695699271 660306963 486015645 733803832 406439453 365764173 294270858 653754613 732942419 858032481 311745453 346865027 194486325 450063407 218079979 274668644 423156570 963320634 925518521 646766418 145588376 317887748 378569401 271155911 863478105 130634688 411871135 722948394 293980572 583922214 686670787 830474243 388382670 962007417 769887193 45670150 911056190 576694732 5737305 830757650 497130311 412687307 72304744 621739398 1304551 404512455 37320224 669752924 820891169 87483652 577378641 575214404 380982533 605485936 466506533 351325862 499089836 986945196 508865008 397125988 143863563 546672439 349133920 780901338 711046931 241568119 871117283 575409909 832595973 357634689 726896415 481634968 655674752 572509623 549784708 414764109 745926310 302118537 568246686 369372693 355010749 624324873 220419297 664182161 674301840 81416125 426363976 884396950 352156770 317625369 414231528 908982079 428906395 867127917 287528871 60085753 391749795 509298661 611081769 647234784 891750834 623635611 289755055 767071783 192142223 221842559 158241916 337545037 32099495 419489310 899110141 835206391 689749412 247270432 78391465 176328114 862407130 353501045 869895139 568539713 842647857 343335925 246811632 471058353 148526823 896661715 251380945 826244586 581973571 379886361 820415395 391316184 484615667 149775508 788024869 567760176 545286024 114380421 208468777 880317716 484886038 865614817 270831543 823235276 191784149 28119760 299495081 461573041 226996945 506460543 410967210 881589730 949561381 458227216 777535458 546473643 528457369 77394878 993491441 525492625 61287366 815371948 452991424 931271805 351310596 410662222 820455139 115055558 486174077 370005613 441089878 289610978 149172073 793823389 354786494 958288654 785842850 279434433 184341010 901268022 627616537 681675653 440821379 2959746 36616580 950581185 779222080 318535400 775238788 925193714 608107543 224539091 845784135 260970825 878450489 972836819 304029261 132654141 847817086 309092089 740516806 865994059 173218623 71861417 1602390 472683215 73383821 385888915 877721951 657517102 314448261 908183282 567452689 605822002 481350692 606519174 883211334 833074950 477360615 280615445 417859483 162486138 475380213 351250599 307332015 43761520 185780859 484347590 748149895 349607587 946367361 939976294 513400058 233995889 335994902 199948785 113819556 741716243 640701199 738640989 176559155 237023316 788137990 766111679 437337693 392783136 334232697 373627841 646367451 721118218 874799683 819199805 570349485 949174971 662210516 677543669 512931815 883032864 589679961 401191025 278899534 728793226 473262054 869436106 8296687 46360711 226306160 740885839 761343797 798380279 518455609 348864318 94207118 321564274 777018808 982874941 831518952 637028305 589391584 306718539 900839167 187290508 396218558 719056309 740093140 94642682 307181256 120926322 325097100 619354002 462963234 522227245 44719202 759625080 525361064 277538664 933908112 975210158 636544424 212166941 804007644 372668457 904459831 203782041 475988479 856358720 727312887 887645916 582202412 311920021 881908105 618664562 606664159 604236628 809848998 842311987 704791853 225814724 227014269 885003799 690358372 855105474 645457185 444376455 535534137 373382455 420830290 941902417 762559150 523787246 561343864 825086178 968504787 336410143 224355777 394893858 395966616 613300905 143394626 332532664 731510718 778470247 654581532 685983544 214828364 120082281 29538656 997518910 462300126 798265572 556948526 984162788 837848337 89595702 859442298 851930646 966618178 567593957 485520268 154516538 382962099 855609963 16400708 676425084 253004686 785041299 273099201 218799028 205415390 212069991 28123530 966207938 474082087 80495596 483150439 189336769 351228768 171816199 852114406 152831257 209496420 697752806 274476446 298678750 141670334 552857655 142938958 231933481 298648134 12160364 986918230 207304464 251924116 106079374 601871442 293252506 327457957 445369195 477749264 852142440 118173229 814867818 202256927 850083060 706755736 381045601 358199894 116223337 625973850 857910167 610070647 928982844 233479595 231879806 550470009 57563445 42928307 216053576 75302956 960520093 454854953 891671913 937785999 176760759 817951493 392396817 788285640 486722232 198515302 945591799 489812928 765011978 812542867 361266999 250373482 282826874 865087743 578235881 228816446 201814864 705643227 337631157 509000295 814223007 444722733 910796688 644729037 992651183 525956944 684265845 991062411 671294958 541354574 743741766 470535185 566375777 517359496 60134028 145532072 671608426 868337333 290567033 95303981 680648420 41914104 456292298 418738961 390683543 438896740 793057092 983467700 29642926 251972618 664264935 119518893 118554508 789128008 247440345 270873557 124533239 559886276 491217252 423245709 918576824 90316926 145779125 123762271 774959633 225383134 376870788 267160643 974771309 744004622 61126700 206351570 993680268 218013215 933925825 190596596 797440848 623282639 429110817 111676451 315728543 114673786 183124286 226693917 171449936 48820644 530856936 963772676 61502066 488105323 248067095 424903286 817948089 641827176 107025888 784207159 454910814 896197643 293259259 789578033 389622111 284733022 459066623 801519785 410370359 943261481 78011800 125137406 432695978 284515190 798716192 150694981 497077472 999451210 859893021 56026464 38841897 178243168 57005437 41533551 39529848 109337161 857035194 326451019 979676182 955955703 927494531 685644234 431883762 615103516 250580776 983878654 420455202 58217330 189573100 195382915 215309983 556054171 695682572 65745030 251435402 510029774 778339316 454785537 58679590 715603455 756078467 265018341 921681283 730771899 723620279 416328206 410241642 7084961 585823626 720210596 399217825 180732031 72036518 524581609 656194731 870066837 408010882 837064386 47489377 253214438 97273899 582755627 290274853 895289433 46413551 881566784 396921080 919500103 668622499 804594202 674746338 474657112 542267245 807509366 295969524 988162048 145620490 498501997 409540379 121313823 430293771 649782704 98478254 875833392 219672802 721125135 157821765 939144674 20221273 270520608 95605405 66815631 892698415 659495516 997678289 977721212 827279205 924215286 669279765 520292304 348559758 211048791 43675394 51644202 788725001 438429316 316929610 348850666 878475891 479393070 490296710 548421937 649917690 403438239 229624304 783960381 754491984 458988636 834764537 556721753 635289614 499716398 571779224 416487606 9232215 285937853 458124674 134907449 89029642 809480346 959856602 138447850 580158817 189795573 359679382 741687149 717302570 30454953 933166685 980748402 622509129 154823536 258001902 764892663 476857135 767916539 234221914 785080725 30051210 413225615 157455871 703696412 240881526 703745564 549328774 752015120 152222412 42939462 234186606 153223585 116011145 262368460 40949839 950786805 927757900 150940448 58057266 727467509 85935688 815512817 806531622 816862872 89740821 109729883 768177761 350374817 17997820 452466490 860510638 70872448 884264799 915880374 941086471 396984300 935665304 525806990 705642939 345538580 220942620 800616035 944273360 224538838 280530141 765958169 868387077 658947398 708579400 178693680 662631407 210281278 822455767 193330271 455862349 503884948 786232227 153291192 839008811 577518445 408703604 744674955 620491166 546625157 251911193 660074415 276860521 354581408 384402802 510199080 955876748 368411466 226590826 987757455 784654699 11356858 296951520 265553451 964424854 756649124 748004353 678694107 898951910 672851425 990476481 376440262 110667080 353160680 607372754 81976694 994033049 586281046 585401665 173820790 767738971 247579694 294343034 123341500 935703397 552109495 475226890 66757487 114333055 670963307 748650597 660778313 412770639 378101883 845438866 247512273 783473282 742685144 895526607 585574104 715443086 389885854 676076959 589506008 585213084 607377036 2419092 429965044 162840038 6336037 449189668 351794726 54027239 568908131 763527027 635028663 100515314 926638226 316872695 642285999 129304048 614972071 749399004 142523560 974436751 848162586 350339282 155108624 313405253 498288491 180297939 250620589 872668538 771892123 629498097 554789855 361080958 551897386 798463598 222458078 945260433 617126152 202829737 915993410 228166886 51471918 82134122 695611904 553349850 948650636 765576812 467838669 533867907 310447559 261840812 106417674 84250377 996930298 835713235 83647576 569885150 425436136 832017960 605033555 311817390 256200413 889119844 977582360 90849914 64300686 238934222 439213844 725487372 744939316 270367628 997727301 35991107 91463219 964635887 750012958 952633267 486214612 983404029 352236527 481472146 264175840 689426296 629738178 861185987 398843731 673191784 92051571 246257338 265939905 708895649 285116929 825894381 595886740 234983163 424257880 406682912 490638173 897908863 626170352 133386697 362868117 879443752 634997356 67043819 799761790 429511892 354185264 397731578 41650223 674693598 481922357 737684291 54485836 732129501 472795874 232607394 759530877 461377789 246560547 127528951 446184742 542770848 345197249 268997793 453167332 133177717 637240367 922415733 11896894 438310514 401542461 36920032 311296767 538581166 254247443 514761655 229787935 487473119 304748904 107595765 633189905 995936046 706724137 124229057 179825998 683615473 635852965 596926534 267361021 653941126 394051276 470858662 270235375 453916807 177607913 366682055 494552173 785985102 466733328 885235853 943524462 20184144 695923381 915701287 760678719 692052923 198475433 854524352 384829415 952721305 845822212 852523877 710851816 600493789 957326877 332155926 395229357 571439380 304685682 265964180 170590249 772319203 710675396 40565160 904248918 150024691 657207319 923013262 481637028 646229138 212534201 732293022 209577909 100622844 596634746 188497391 712420853 259162782 929292111 940416888 394339666 740344027 427636978 653896457 49416108 478008659 971858064 731865437 691355892 799660337 91549048 647421965 161868258 904398429 978180552 845105150 671222686 32384119 748487761 286754200 168322822 30559579 427052232 407572003 608645856 490257 88004243 744764085 380395843 85670011 309893146 505795432 542867762 980622842 653901504 765884755 151723015 690219098 783169291 878982806 524729683 474893240 818745597 303721818 317704399 208277869 478679098 152984589 477590217 233996607 660917612 159558532 938717350 704636308 844893616 948120170 35900308 705287445 547557676 791086828 613562314 894683431 698874230 842971233 107417453 653006706 964565890 372133765 363550956 183004675 514347583 561880367 288812388 292625344 791833510 454925139 837087624 337560005 447613327 883764852 775922649 600233865 553504422 872306893 114714629 258499994 551208566 775597626 686742396 85608822 573486523 392577665 260097889 448793265 227831077 133758167 998018543 105190401 277895022 628651150 522969671 861767634 457156488 861807435 409420870 126096328 292579480 91504047 834491500 166089591 348206106 501393420 256859261 565199440 67402976 153555983 708956026 632108798 744843316 334060920 521868886 786814110 257197284 527785175 683747519 126892102 440362591 125912676 787485618 352781980 142825677 263490268 895208032 595600445 944496524 188630097 658011551 49952235 333291775 827648534 658938003 533433302 822411323 860452011 596090166 57047913 766649447 605089076 660833914 973412045 615505543 711612783 683713717 867831508 415529065 814925518 249841905 368302904 270937180 26768650 260559586 66987104 742926571 971296283 494624722 85540348 347021052 701339778 718280889 246955975 388190932 4832456 514036622 654974330 429179534 86341651 193628585 311670179 504476993 227738935 250176629 228389285 500068118 908086045 700984822 641344315 96426637 457518403 353258292 254351029 638897320 738327098 105081603 482791248 677607335 79070978 590720752 953103720 2798937 60964270 680321594 736788958 450552764 314011289 169174998 401567774 81390104 578360679 810720454 261170944 329493403 657332211 436096017 296723479 975026735 458427711 776567556 258675221 750741199 530042093 300199459 753480965 414504730 986160463 694736516 377328757 903817395 10836207 308165073 633891304 790749821 207780322 95074525 429762855 902801869 552379367 544062043 419734670 29363594 762083344 732999683 395880549 858118105 793802794 268459293 848902311 709871743 968994359 198606962 352319574 172801344 95283836 871914977 767804612 487546248 18880769 547215856 762027898 591126910 836748810 694202493 920569494 361769871 657798302 888240025 608492706 988328754 346654290 123632294 483963654 850768347 368063986 557111483 863448149 652863412 82856715 599976832 469372806 28589594 684254856 930929679 441210751 443671328 7878725 717545643 549480008 28877221 418197798 200321754 487692320 33581375 269587141 268064519 905968145 976687678 944198354 112486581 163945921 17277274 969973727 207345593 919675085 911516108 466073232 873035380 324721889 578954400 359072921 622261747 497500072 9860380 443991405 629216978 253315970 483716119 639056107 815629698 971055953 813484608 300200524 707081238 509005986 667623548 449203540 663842639 512095693 551181360 627809458 955190210 906862554 428258639 931889609 705944935 494307007 317174170 139156158 391021105 642539439 341054508 487961176 122640008 173520701 227046837 758083004 62330261 40284335 801793986 357168263 480796984 210549444 57015002 830915593 268822092 533018523 944987419 735427683 51328164 997065605 698709599 199673501 69352876 38555148 838730701 609399236 819870947 808690396 187736504 337267842 329091572 608593181 589251492 632190954 121641864 638316872 611703525 17060386 293421900 300425806 98113835 550861414 128099937 890269253 360077561 690419914 947698710 915244659 626063213 810042648 155828845 77052767 404077529 991255532 458537684 842728861 195245931 736490148 553656964 429434978 237964942 201082811 776047404 807355030 280952820 567261656 141476841 225025216 653088175 77109966 512752921 207396930 183138158 660293555 903527849 972646715 562160905 110547662 253004712 251478509 717091507 520237451 702177185 904418237 582429461 334353379 225853212 342137188 969379044 110107704 626658143 402936292 741445524 348052560 987255365 707350284 132441534 180568250 706416528 858395005 158948505 621972629 683363316 331180706 404512546 264426219 136970808 753537797 979358037 529339525 937702779 142242334 169587879 87461950 751212438 771178615 761624181 419093378 115194269 276802072 565588576 207883480 867162861 476222531 926065975 216277113 515578084 929069171 299201255 446574101 287717454 556141253 1516244 574850590 592772324 718651989 35888289 213883318 425062116 601647513 190109635 992303156 392351564 247101062 655918888 84846863 926606881 790052197 467613291 329309487 4531877 925185174 786517585 294316822 34950021 901899627 618203405 330485061 776045478 976284789 590934231 233103404 24433907 379115568 552922552 360961634 775693359 596193152 135773891 958708317 771956777 121996757 815980926 205008849 835526516 396712247 362818026 262150282 795921904 384747389 951551208 917891674 673691439 351669012 465740969 390016732 999559273 84384885 10499289 37085213 552614721 497575758 194640956 388745280 611556034 664728278 1453413 247030853 781322354 362519841 455800059 999702214 42801235 25177398 53056998 625998598 55541472 403017197 766818107 546008397 129302010 123135090 760027863 926088008 552097076 837530651 565229751 665014537 542913278 421869479 479419556 449900908 930611999 614179922 155811655 412066480 68576485 711445519 875419939 42941479 941096535 813783449 401242231 572198195 61611354 963341930 365727607 450740056 105228955 586123020 723596603 881560108 417197138 750190910 653566965 207261146 428048478 693218696 487504133 177587228 80436936 200069244 661600451 664242502 761383279 307348728 36678608 670892898 714365076 790064677 308411036 975646294 894890097 244356432 259376151 168580125 300600321 33412108 705595788 659826670 783411924 909242260 582958226 673703848 904140025 489713310 696305555 828252158 755878845 202364482 386358398 675502538 26521040 617488534 300771721 122104509 800959285 191001006 765223741 546463922 484614644 794881219 494798839 897886533 626948800 670022175 520605991 560934301 523628262 948685168 332540028 61106603 806976517 321005246 49745933 261267321 338107437 802114704 508821351 310636490 553861957 952243827 831463392 247253193 722440122 865416388 169923562 107531574 76912013 586160080 28932350 155938787 877729549 831193610 394582810 182589259 461691846 545691936 723598075 728117377 694770800 261228600 566621750 442542643 504880199 430209696 175609513 876027192 39394966 31707020 194018002 873675617 999063928 478432767 299773284 777233214 689070645 657735317 234167594 76675106 599650155 142136492 162878497 115991663 713633879 810281783 92888641 970466793 365270309 470821984 104338172 363725335 215981536 399256904 829193372 815239990 231035409 155271838 498465784 567822682 867084399 342488712 798423178 402303174 859018736 729900620 897291513 444094353 390992791 651528198 925258693 265855550 837271637 834755597 654041072 407520223 368953205 811913810 356199219 615482208 577088972 775655443 78215026 129891555 284402129 552681610 915224161 407391186 239752291 811411667 759609969 312716566 507561151 323997338 150296503 581269487 896211767 357990845 503149696 129380614 965135211 486191065 560815527 823396842 665253991 642779238 158318516 859795863 518881304 435143045 949556433 738372473 569689548 587172504 963119847 413523850 747930049 715033423 422709296 899207155 274336954 240060056 831144768 415087045 260834641 225764391 250772792 248643728 958736012 519614018 245468428 881694967 95219567 786770451 93337647 126753979 554350258 451558 749333952 741983370 663847424 859708567 469323082 566290692 825706506 761621639 690478531 605226071 991507042 477897615 888148910 101121072 275023415 507952721 404633516 649411530 450363518 678661211 876599274 244836980 842180668 13178842 483783803 643835063 841661069 402324406 161193647 141720582 560669939 566066280 921971024 915387765 339106646 838132837 619359290 81859109 9631273 512694807 455791502 474326749 890490179 780398333 89407603 343956032 155187484 553911599 132135341 759338946 598812820 40654030 768571135 619535841 13683462 204043052 310145463 181202046 756763727 688153358 634776045 602536565 269277393 597092611 128004339 307875321 745175369 958361762 144066806 377152946 169171737 592497890 985061764 268028839 952652647 891853589 289617615 714782399 463427088 971004636 514118766 717703429 812082372 160139682 170673829 979244678 173800184 486641348 437369461 420379348 850862310 402234655 197299388 990582069 516423593 802587312 316052265 438213503 574866096 328321017 950819371 58064821 471463580 900706761 241278863 23556053 500834763 271303361 87508422 279998244 809975684 637700019 620504737 816261350 298642453 681437982 821709428 922695173 378510967 259067767 298689722 229761535 363403871 195503316 19473425 848998711 917166294 474249565 386671951 358413010 594526524 149367761 395372947 186741307 324211380 608103628 991556761 686416167 575921757 745098450 222116863 347681556 488388237 57038203 214734408 45540524 378529824 945671405 469891410 510960721 92646594 204345516 704598964 221378682 300366605 868489827 807489832 989236095 14472611 232595297 79364353 415981396 700763878 335199610 391773503 866790106 25930713 75022434 355471754 471869352 696807841 105178272 807215015 52596837 669769493 315834117 683963992 574904673 38417104 291166692 404872619 16597757 325352578 922659745 733134929 494059884 102937957 187162453 673491975 875238236 509360771 608074695 735989667 541089288 211556091 99021492 434179130 580531953 368278203 206778532 628356490 503386836 239302917 829307191 250157148 674886229 16022884 472392120 536754589 248521023 399150303 282669670 48372387 527269451 37736989 429276216 617547952 217642930 664383767 473933067 898691581 525689971 817678097 22417473 746982459 724813652 366086488 727904251 923669848 134037050 164910825 969980461 794821572 675383806 89861088 811021304 777631210 868932852 283791965 380804552 30926258 55669323 396762364 976761037 91289404 136010679 805291923 666315271 225812944 270740356 364438886 246497328 198255067 218082285 286981837 41992832 34648249 973367556 480023656 817321789 200032879 890678671 762260263 877212150 954718670 275205505 760074270 798841472 699424978 314356538 305001229 156513644 199583389 7614045 227300644 637421240 372742224 180131850 754956216 208396607 829000589 762212148 529409576 913974013 932874470 933467237 591905023 341181719 409412618 880143015 595353075 669313811 117517122 835579558 232153040 408782294 731948938 415406389 487591988 549891746 540275749 787599708 514138688 343001172 203712573 658368663 607033128 455461147 583350951 45511661 269002283 105531978 956326984 967672294 57196602 270944923 781660129 159993077 832666591 91599728 900136948 58957466 222917387 763606210 652080942 331180322 788944936 204629975 383880290 366445557 815580037 709764327 251401475 898567484 585202073 147612143 706750226 290534597 848919593 643046868 356032817 635337772 99423362 906550118 27502095 63164839 329758207 150910059 402694448 317637389 821039297 67648402 593603050 903244682 754064003 798404418 328954362 44374716 416565861 105820670 256519578 330998384 79129398 120147771 864266579 768798488 866468674 254953188 487741804 252770724 664373040 386715593 550810169 53788284 780877636 165685021 94200816 970031543 259391647 173094914 891930183 937186558 23551873 145038029 885712961 432704020 331668777 374287495 642492969 53827123 767839563 772350991 291287188 656797360 992579643 841966558 566885269 524048854 124427566 575179286 985923821 44010965 100112871 23522293 198447619 427788233 612386242 590085888 369403962 74762572 763530233 321114395 144563880 327051716 828303850 789118969 39853427 587135985 944667258 231690580 153177539 383271560 330015999 148193732 582605695 823552452 112316056 734863394 942749305 161514993 831280063 892728609 457962558 80430915 527123881 605807098 974576164 456400910 618497333 122728351 623912129 555017003 460764830 860222401 497306192 694190667 801630111 222847954 584712856 237591490 257800914 197624042 464770437 347782391 725447118 860291574 925929455 28618980 719943761 621136793 525310441 431087070 30927812 962691047 244889644 277258024 192086614 786751732 689567096 228571286 803202703 316983339 724875145 853780814 577411557 711247977 803836358 839473175 155553552 527268077 716999606 290038801 878192484 428921281 260356607 42141005 898525098 183574732 438019522 952563789 391563314 274994866 990221109 325038387 875522993 893064169 507338023 544251482 680453288 662696034 98503901 287659288 188034679 930158254 279766467 362422680 526132800 49349408 769740682 475877368 982084161 88588498 469268771 892815064 15850250 599957735 668922297 137383558 326603430 399703591 867167641 26337012 288890429 694543050 541801766 124007005 801365616 593544004 872049267 754079565 911767465 990793150 821524044 721447728 281686688 956347931 863046392 292547016 554349978 753674430 986511877 22482776 141635919 736602575 348040486 646800836 654445700 799282962 645175269 838829486 985701032 69072002 366062720 277050485 261542588 680162627 604535829 228058893 491197993 820823048 590866368 584621667 123912398 41143114 849950255 464070524 840316928 728451655 644390744 387727926 640366584 335352837 563978368 155093563 579659561 734204117 994582166 719787611 451085044 274367294 92136413 237557556 242832206 359318836 719836597 367904538 182278048 546512130 898122288 136681174 57805093 401627098 978662079 703799622 544650990 79566157 569306639 383382040 425680460 63603771 220081205 705806821 519795613 340813247 117704689 712207001 262639492 952450005 240769879 631525366 487408141 323119425 334657881 512630211 948922974 845073184 573006075 882922661 769249345 775771579 459307448 763183980 64577738 277856851 389218875 594916107 1265584 252401282 68905783 882984589 985949049 5556527 587327920 542796784 438678506 801181880 690945626 685436957 966500387 709988085 91595507 353881440 687864588 229591150 380420280 955338253 573038970 875575849 668784283 122828722 178163035 275923207 48459651 6017005 684151313 346217331 897451395 384221416 672058482 367827247 554048909 382567592 568055655 680906340 681683447 822714850 37242007 444980422 475243513 141459777 459947631 511427180 414805602 642496957 258433294 183616367 541044806 961275449 530961887 853291873 655500465 925072812 373265058 516917263 152405587 630705369 428120104 428350005 588898747 813314943 330775373 457531409 139586402 723017608 821183285 562804201 543955881 701064308 60064724 271413590 143826015 463137030 438875093 729727851 19613222 860056537 189950676 517135425 706049845 426520733 176788883 994095638 762428137 79759754 53502339 504128462 354588533 422981021 345293278 732251435 116643479 560953151 417867402 142814120 97680978 578238722 113672350 55334995 934484938 37909267 349003143 785180227 872760617 188826378 808345026 666394990 651553596 915950084 17371044 951992356 633804284 606779385 317347449 149108068 766697219 637348005 567640384 498970606 496932292 360882419 788973594 800101878 813461873 652667194 257850544 369635692 183704340 18785669 794120491 170543627 92506262 377588342 359121680 278276350 315507310 55664778 578245894 528314344 952743975 876440303 485565113 311524388 492924697 767893245 667175207 795554513 995902647 573200694 465539353 629830381 171115603 335483600 645736090 604519572 886084205 618580509 693373984 330867249 676100426 974795861 397207319 111081166 539121892 862779857 612320308 199809751 191077761 112807554 910903995 656211635 442731724 969131278 271366543 626740537 300234223 664017008 383211362 361644880 409992005 33638396 866683683 485099273 447221344 59332129 121117325 688733033 952748209 137950002 662043347 636397859 220229109 358213502 479475746 434602831 394036645 362405598 586952027 322935340 675721687 843928693 427780969 636908691 972836019 483507371 748770737 223940701 143622891 817853441 705102695 738801700 172967285 646695384 456616018 963149717 150015425 886348586 710965867 197748798 89268316 640666882 146401875 813139757 708257907 41053886 368589065 778323858 404377303 248053146 65837274 400886275 107791413 323527981 397483586 403215890 843824899 276354858 35944310 360647414 443989435 231498275 359389333 111279608 608494008 46919324 14879892 271621203 785005695 535954221 30624259 517399499 331395774 604569764 815129355 557458468 376251095 606425509 753807609 977506741 891450834 154952242 455157461 569721453 996165052 490762278 396947301 130733204 32742118 240104825 656637179 935504947 940150702 481098322 704954667 949151286 4009946 236156636 860165647 43564592 841246421 787340589 727095246 749107919 40795398 123062320 583338556 324664188 352782918 746069849 299924591 964471802 502979418 426870618 672576197 831213538 559047 367814907 401364815 956646743 60439714 921685336 311358287 27791463 55325800 218613873 511227338 504101652 286271938 31275736 127000071 32823491 884269657 681413541 990074915 573839143 982957504 894890724 367845165 569573369 49371499 325180373 169593338 977384266 621641181 824750770 381659179 529133434 445252851 611578428 191676524 346061351 650698117 504795908 857259737 144068261 804389501 851753601 437633570 231662467 884123486 249674729 220344345 590180639 463308177 313917168 206836490 134707226 491902521 868190470 453533752 763055931 678496018 578892132 361404180 212067841 638581379 520134188 473609521 711733807 622222621 633185955 647137647 911952350 592577057 952637302 836484179 422302043 342476782 595784884 329805509 688569393 591786241 617975764 729044791 33576953 420217251 290600042 393303905 828994509 166146311 496296736 881656314 473542370 465640 327333015 656740438 762154991 329031567 842693862 325579732 121272399 877461265 352355506 516531635 514448520 457829258 37790160 903144351 372130804 74598968 839632326 227902949 478164040 106703937 608607700 462506966 161533220 663366432 912832324 535776331 19868148 171134278 345020071 466099314 489606141 962909135 778459223 672265356 80285943 881643636 36554874 767419820 65491599 548223416 609006360 850850905 630326242 139670178 519652837 192515635 913222924 420973370 991652991 743503231 293217974 312374643 964183426 903555764 921258655 522863913 810810851 799091841 861521284 741351336 115246241 315215224 966842103 740977482 327718079 288827931 778913896 836248345 589128050 286861194 879944226 193603307 811894311 769599625 133174099 425462826 477364380 793329985 175107649 713389884 465544834 97131102 978190527 147668528 860981126 403613510 556740933 943575000 599441882 995493707 192716193 736517462 726183865 87072654 341239846 126087303 642776837 799467650 669769111 673460536 96583333 427144877 857265473 618932926 837235870 674874108 15233842 963080063 562003525 56662442 763402206 812229710 293102568 746004439 26914395 601388319 165721765 741796068 87488966 489064174 404893486 867249273 575931196 22487000 435261143 56255365 240224855 405174107 906846376 954852999 629570483 487436498 633883954 621145343 622882448 729471353 51225381 395903000 272444167 57754127 773616960 663004521 555933935 581471922 255417393 914145096 768192982 902198856 636612091 56066469 42483558 961107297 483520722 555116737 811767213 332987592 273134743 414094223 105253017 232884689 529827606 631574760 42086927 610006635 542636742 172386610 760486601 659725695 484968831 42782756 776389022 582420953 605184538 754441457 311145432 924055542 564167353 416005854 515882766 887284107 711267667 457317437 451551143 973541291 495497345 842044423 875757211 766951644 929188989 67813548 84862632 438551513 6408695 146684006 300987642 378214856 541475649 489124330 354268891 211590924 752241488 811317007 61503974 52299994 970674900 973905766 216173052 712200777 841669050 138499197 982643649 820064870 717518016 443310186 773808650 377552375 420086909 994403122 669606232 57879355 788917902 595670605 433580634 315642918 213113597 184589199 666945098 241293254 152967963 269439172 324993372 765750870 932188622 758565242 797563204 43908026 980684236 452443853 13922678 132645312 249781381 25425335 191002809 358733014 147076421 393488368 596304 402291841 616520891 788321950 748981828 77669102 890962394 155999137 232609436 120683078 160086616 567422353 312692065 98832736 786722962 679463072 839417216 708481310 105748155 491315507 715699720 333308657 981514996 181964560 823308622 677371004 269992668 300090363 3743685 571345586 227962515 406211234 278756296 822843371 374061190 748444920 570131700 119878731 191681996 496348621 942562514 259964546 297467875 967685236 33154546 245627961 408737996 422189428 749081898 99013565 645207272 288636085 944427399 951012768 743137038 208610556 360410043 578921731 484531798 701896696 245222149 409807129 725282568 726859768 446118445 593219523 733357234 978727877 708461737 674223678 87252787 409728609 348474414 853829420 720490786 913844160 718499774 30230150 722851632 678863385 77409689 655314221 157738537 965225213 993538756 985688999 289547818 695003650 403837555 169228465 362338729 531386460 265939515 411198234 150737785 925818308 701991026 554154463 872875166 514264659 809979408 750806307 775886099 623974037 142681165 721755205 794703246 672724926 25713491 694303371 769403496 550274066 985654781 402587346 25194853 382456274 341930415 358318475 43430071 303862747 366195364 823229272 681824957 444246958 34511024 178789916 620260414 786130519 327572016 364331095 529073062 330283437 441320645 725832126 126255335 624046604 599012567 756941934 18849743 633982538 600177828 234806590 779283596 692146876 902819712 525223410 18466683 586065377 21810984 939330648 791540241 78368915 126710676 459360432 453972730 333786797 836191857 561098279 777075905 437743465 695603955 102484432 968680846 291927843 231599241 733920688 515627735 716953682 155508171 540323672 449855943 418770527 518649598 626002320 941789049 425517588 524678795 278151816 14211240 568532026 802243491 491947964 557693329 235436545 143209927 76939168 412359314 879285782 166217733 323355262 764455960 810128769 775600354 780342632 786183727 630870147 352859323 321671650 851622186 51780011 465469055 589166960 115355644 549825337 729714409 785798523 216316686 461256580 206270137 626631994 543809815 348189525 638979565 28832690 581511545 50935723 431413366 811579412 661039823 539073799 397169647 424536292 201844282 52807921 427484672 358168761 403372212 649348666 897708578 492167000 124187094 147162879 428945142 535112682 622099780 375635808 959995532 493646043 880132633 473487902 894035625 410145420 47270266 626794155 12090092 401425614 431436101 405733365 968623724 838529369 479519611 124530532 348255416 608346577 397034970 997488295 453768335 903391007 766347283 479742511 256398613 275479585 391481558 879499934 359028730 614024180 406192028 669369945 511086261 182038780 738101510 836165012 755338331 546117428 311693758 320801704 958033986 27384922 635129216 13880570 845078490 254247352 317529160 408264459 983277662 673935534 732632950 11303109 367834732 468991763 897596642 571430556 383079418 572864073 250447833 206180933 107658804 336083950 12945599 790206590 440953674 800019323 279219250 538814360 81519500 859423686 269060338 706752903 251190458 683141554 306325810 215369146 905504316 157096001 147787095 495614261 760711271 650290012 840959991 434285923 794350579 186496068 895317495 964502395 929051471 325256110 450782492 334062864 824077557 607922551 432438856 787404254 154378563 564542615 905531590 998692059 803171061 350420405 805767471 170259756 369136150 760533291 953853229 136119884 835395312 791346257 305205795 289566414 555116270 607446517 974507985 252368166 331365563 614670420 48250938 64077459 557071488 323257657 855647142 611414481 722520737 38565628 415601414 144139843 598539502 233418238 353361244 799239914 654743606 391514014 360882498 406949048 355135832 566440620 775699046 406321463 805188275 772914574 629386817 376854111 405414885 729614716 82950362 271571007 853154599 935822945 852324228 489974095 983315122 317380160 349680984 159785057 716520521 682752026 841805677 517510662 388964567 260481311 493326386 411910159 157953278 239326372 269319137 359738674 691949662 564566281 297557541 282692972 5885074 293587751 845445698 517796081 847794352 834804213 38917151 429923435 448228310 399062166 72749240 85749318 494184851 242100568 88331437 756827963 987378960 449988242 740588991 795378583 201627277 597651508 55588066 598618904 413648377 825635284 301198084 948046861 2214834 806849601 138692730 762280827 211931004 887432964 364065877 593463271 456988337 901854158 716479901 346010019 61680467 209102370 932240588 859330114 191199163 950053386 930718256 839092043 830554956 530111874 560462905 740882620 949732064 262589684 195391182 370494971 930780145 640932117 156462775 684990496 128653721 333163170 199175939 519539982 652065269 551630617 111976204 675157577 980017535 392289731 16085109 916173266 418600873 63724308 335572939 284131039 7700113 525097768 888177753 354466035 350137947 933374916 386775951 59717254 330364216 356675526 397672492 720898395 618043212 83468201 391040891 778483933 330029692 246926919 867917601 335046550 925939283 502181900 293448299 841369988 580717366 741023382 355146174 928079397 792163074 984834629 520002140 608498545 112464724 237345460 250523126 413581926 471030749 850859779 460305557 227245209 261303320 277465538 598185570 718959983 649997230 612141816 284028048 222644235 136797041 131781889 98956451 455771890 994125213 760729666 36735072 34611615 222988695 44016204 543323858 377986796 682311555 364444848 520019943 724033777 334622142 919304352 87708533 75888760 721795220 187836912 926666220 943303527 168242683 721876376 616299079 485223033 639041316 386752628 66064243 753454126 179432637 108383383 877538286 445186972 144064471 122344438 774184833 487503157 544697881 527074522 276522458 401445014 546927275 768637386 748379619 687382911 670424218 831214275 14686831 985018300 819820698 177891536 905012044 228519817 35548262 883484457 663795318 17611455 803330019 885086692 464430099 250966290 782788183 275326219 957847369 954720088 799178286 154349562 61029118 182342234 470125251 821939376 437332117 615739373 417740257 222477244 879173792 790029394 491079060 655576168 675977155 371487030 61637747 192938161 297508323 827509482 688719310 990233984 49033920 259498503 88772494 673956924 286662055 595795744 70348784 310891656 791328009 60048282 976440608 484099101 755097432 221338798 78229024 799947059 846884105 965811454 738410506 730890509 928299874 570344421 37992373 379939931 265791297 318438056 172078767 757557801 19343090 680126204 725654952 897463712 749927703 220679568 974418941 430280505 187596251 446503343 390544589 174302359 76014847 246200597 170722643 721788236 268212017 394585204 828226402 564066838 616709910 254838548 892402129 580995302 79873428 942582760 893716731 334467782 96104301 836342411 526356114 698216393 576676371 780151476 420528384 618727264 417525492 248091938 183341882 582016456 978527478 374163174 678803795 658370825 98522415 638274809 263982762 505402476 205686320 715669423 305951850 9366007 258822548 606174656 44837956 38377988 52854698 353286384 149206387 641157710 978735064 954177260 568697113 711938424 780512431 923496378 263986561 832361461 699742360 807843089 418614332 109128147 858122312 661989242 619519522 94398682 756499147 773047239 649357694 357387761 603805471 589570626 901424550 798761089 279341051 558883700 290897811 12484014 893044040 388620773 146642350 771814415 138977904 738449332 483107263 545156145 611232325 627545615 570222879 56830696 380680319 321729112 709562206 701590755 663494832 681363615 709353174 617806557 329722000 100837636 374447365 884967187 717145266 99266604 145227188 455146038 653296246 950039819 221001420 434464809 810701981 844016412 429385478 814910534 659466453 5829828 735985547 169490524 107779285 692483904 771862823 281036589 896040459 352042292 675319553 60527173 549197263 719041143 391960333 325122494 300485955 672410763 309701140 804397199 449384338 359778479 137521502 156638422 296433625 951308075 494546905 374491551 618003316 101820771 463918579 203095050 908190807 505668557 278254125 64950019 557310726 544231088 934287879 756027863 61024013 220101413 478518795 691901425 114435831 545115043 880514167 566513088 4295500 217431343 719586345 861382761 202680767 429778257 466080696 485489448 322446746 453436655 886790937 45236481 767545905 322479176 568613394 144209644 437270994 320191982 885366590 986876234 729769964 619359514 387687792 551497294 924471285 440104123 638389575 589350124 828432422 978553434 544161827 574509154 7896770 487767525 173684396 998634519 99591985 785420275 994273760 535584609 905630755 842529197 59155773 698370476 409448001 683070083 394148621 819473627 603544962 398265965 834542693 703255936 464568943 620842489 971912142 590812593 532440511 789084765 799169711 91608426 594716230 88928694 405085974 69409797 219164715 3045458 65145360 980188565 161950823 945152305 79459922 641137613 611596699 718113595 544160666 731180723 832797751 390714263 182218240 392405173 430228911 557019809 52667597 277032821 612079208 803008798 936848396 364499920 353757069 743913882 107827991 204494905 965004657 304573211 99738474 7066801 685580478 987229691 760704224 309417036 681909115 576355927 169867047 745363318 252362471 100493427 242954306 90393155 683333875 582854792 428738912 656527825 599439626 739268260 567592071 609446670 123398044 970288939 982811173 863924836 554177545 4620720 727272295 666867904 15773166 819571339 232643208 670755165 558236441 404533594 709904401 461067003 161121184 446395361 252013038 148724099 244414424 766043559 610781397 620252981 704524081 788852267 151208378 404584244 311677476 387316416 31482359 854203457 496124688 700014849 60793501 438709390 831336642 454057482 71842835 662930811 498469542 10552425 816116449 126728116 872046743 536187015 62368895 814973523 913036245 66540100 300874653 407367215 184603614 540038790 988328531 938062200 164607340 350322263 849122418 287633686 159367433 690548470 275100119 365780990 492164178 256651194 484796280 302064816 728469340 33139833 992052271 114583336 921065051 473113260 958919276 190664783 470772354 319849747 682962 734902076 102465022 215011935 103639696 266980730 895676133 731011512 57887052 396061932 272336643 613617782 797868762 936392937 258312258 403913375 931821492 219068966 828740949 31335423 947051665 283945057 579367099 226448642 67665322 967529807 720531156 324752265 278120699 251978261 717015138 589891761 918509589 893396738 894239728 239318144 90915720 269399021 398643048 462334483 925781467 403430099 102730761 447191661 590889275 92617676 427843825 644606523 100603846 794120535 805396972 152983417 132542576 142226029 964921565 938558243 498974361 40111184 56000330 42348989 600774186 642190746 219828905 479805712 367796949 891260662 948054059 800926295 479344169 321825249 123864074 926076217 230124079 193158524 232622879 719264582 465852770 181769023 784456502 661112526 867722049 260431047 662382268 164562150 804943564 330843626 179471285 279611238 222439429 947998022 807999589 286350057 954080058 179995260 482955748 129561777 307187491 515696184 389746146 120272726 29317303 389173679 373261668 311551306 249434293 497163026 312973067 693865017 874351995 177233024 81270766 78891261 5954511 634818318 581989281 112703437 350405961 245291657 339296731 570044456 642878404 939791946 773483209 473981888 393214196 52931092 915041360 809501795 490674647 435603161 125517215 453833915 257675563 914479298 707882324 550439595 195174739 589069142 23523283 469875828 393213842 379446303 217771906 590358483 766957864 503285117 498802470 612224777 9349832 488226425 465458630 308937268 318123860 204403858 832790597 466455098 907260251 374514325 652181227 34431945 640842115 551494446 373308276 418411057 983792493 798561931 897040678 576821464 798474836 976910107 277801555 931105698 519666572 251127151 749503323 576037522 462417662 627722874 312623913 318915415 170372161 967414356 512005330 268949572 300677045 650912942 247009364 737085882 818326863 432064514 448265138 47819839 446817607 823740245 21922930 346477056 393460508 892698517 674952335 432700188 407754008 276486470 11652613 752116392 906326767 207810002 916424693 926195664 470607261 971804804 878515074 547781500 35208475 188597441 678105163 301020961 225787241 272973961 306493536 451605675 730856110 355367698 884624506 106088983 928307453 531273752 470319411 778810166 214790655 821122053 412083546 471030078 667221441 924282023 377714771 569433641 919544910 995599934 475165594 538288577 281648920 390273963 11392326 146396691 521165787 208376005 765756993 474645980 176399483 528219040 457768555 535440922 743028569 233881388 603051256 952498601 714957324 323288985 33589343 525544761 412685290 267581338 521959055 828455186 963111630 140971180 131686752 813589844 886354695 288888480 735290584 395062956 389316624 88444230 704108162 615148753 696974543 924889988 416441957 321504123 318555117 901489091 970698837 726153538 189299900 159616995 700294107 580114679 547953313 590805317 691014291 634563042 701283690 202974818 615065632 325563439 567530637 865476870 905524378 982580247 654885521 215722167 161598633 338717551 424077656 753135267 921511439 182834540 120573330 486478800 43269820 162007569 202618397 415978251 425020129 143940073 937841155 433764846 619814040 768410048 579047493 39208095 109176418 52953975 734253570 607450072 224816216 371445599 270681897 977322906 316349478 558091057 264506422 659914064 970494804 359894246 689126820 340518813 864006714 315503589 467442313 314658829 196020217 689860544 174451607 668792074 305594744 208146504 485569547 617340882 240536613 230192733 605129069 935394817 681563002 168434295 91224714 155073876 996862710 942584596 734649813 558485366 121010354 724469466 204711731 731868442 802353363 977135638 710890040 425701256 670936059 880643669 342508990 537740264 831297707 760482881 881955289 604177805 380513924 693234159 747630052 277465265 613907163 52481017 749076208 953521839 753181000 452797396 116257168 350279891 67797045 816338423 56891899 17338054 323124902 498713776 690548064 759802036 18628542 759577239 752820076 299206174 340222396 245479385 286810020 841936336 522976067 480935717 949510009 734246478 430825170 348267189 501886434 920876042 611734522 321430680 728393882 869703358 75760266 201503009 740064367 739211673 950761392 946445616 110008801 98110608 558563600 737211175 333646210 266669498 366392700 160580465 156928419 295910204 717265433 208273830 105832924 640008184 60032290 485021134 518733309 93953070 713338465 285039645 652945488 399453973 451111863 972246692 590186267 693032172 208883202 98364770 388743940 148308440 335397577 19902807 210047593 494291262 939299092 91667458 728704707 947877286 640395087 449460001 191300687 417094276 531009318 835711374 307694635 4641861 116617310 190976201 812424540 341168239 331111026 275048638 133996502 625937750 230803888 651776531 944525155 68083967 993286666 161933912 460995242 595610893 125825254 650288179 271238997 761556907 509722356 468088459 258507272 68799363 671470897 486270976 673199972 398675432 796741279 893461644 773023985 912936566 467457917 846552686 58965966 819520747 6086863 668428176 599204702 398692720 729085512 613656261 811070258 606518024 896561360 435036052 223103269 964785550 823865252 72027357 797413332 65022926 415677288 964484195 775077003 172878200 690973627 885667481 928528513 182758566 371649411 43170764 391082206 751251063 962943842 975809622 216130593 898473843 448119920 680405587 837847356 195342283 383243879 390986484 770308643 431550348 724114620 268995929 258673512 202587007 654247017 445500860 312776027 157770562 968024116 873301872 139381652 280859932 157655872 914357435 128764771 185755683 45204110 553863917 72659183 605665284 644908953 366189447 770608659 144300735 195218226 249193088 459433515 188705070 770336283 302752816 71377932 120663837 725050635 114708608 188942039 3865048 133631874 473015765 359932437 37485001 903417966 243767805 491127562 61338606 823612435 868987597 517449999 671782526 472606564 885833450 562588507 612544871 967593251 778755590 941937409 712180032 144324063 898441715 786639542 825425231 14337165 904680669 471424150 140908317 949292765 229658067 341689383 746768844 583395438 654534672 195433795 522614406 58766334 462682041 534214988 296889594 64297445 367746209 576671996 495246407 291719334 881458618 497153812 4588571 621742032 39410660 346040877 738279488 742456855 598031164 782522316 493451662 645049075 572940978 736446173 919092255 924550833 211639685 334171822 474208823 305457618 393027627 779495104 309121185 879019970 915923004 389675578 405554136 297069291 566008927 976826189 610998185 449439210 176439275 257918791 738492287 441989317 718210002 935118738 210030998 479136512 784868554 191425714 470491557 985845653 582611689 578834514 113748118 333521518 433717436 588133846 19302555 689085796 740732604 958992439 674521487 923939662 980915561 487596323 627924001 757989445 430901275 698411971 995432279 599488435 147141254 456367917 612841022 811400410 626638986 272361915 632429479 389271782 131224816 389502658 647878927 863399421 821280804 960999334 18903102 109318038 586562373 367833159 934922110 565450365 853882979 276555125 991506036 99028509 85926559 843447377 834603302 960183768 956657464 343959483 726964736 168903790 666698820 556525985 739714758 240243312 827162066 440655800 272710870 260993632 635355542 195816449 311048379 517601971 495898510 316053628 594018940 943808759 803045780 652338773 963472102 590914779 327791663 367586918 17756881 198673396 740065384 891279610 314448697 720664664 551761693 626944245 684220483 419474576 529075329 912260100 516659927 137822959 601876605 81661092 510492950 806538114 746398506 457283693 562827873 277154669 623201986 249500813 751973796 708942359 558521004 424536801 38960731 383249888 639123112 2874238 133104080 887984585 124686104 474863381 28596833 993071464 538065275 942233063 602132319 320307339 790852337 264324808 324078997 488830610 414601239 73238207 873500249 766265144 759569534 784116218 674901578 689288805 471828506 232174373 421007811 798564920 405984782 125263294 494098052 731741610 819357004 537639269 525534852 757586495 249457286 512218377 419041195 12602336 731543632 464945909 444198522 460669787 181418185 977941550 175707960 804524342 914017232 876716693 574714310 593884978 394968099 468390180 79703002 61940322 691326454 896270680 849495022 888426222 383334371 979359025 732663409 44364604 882969494 146462420 990847255 916962427 121285189 709898713 133154883 337136140 480248 179450820 316271699 102169081 646057480 603005104 20110470 951773370 569618742 280509735 546372855 583569291 494164118 385470014 727610651 161774774 602071262 591106234 545397833 539109942 457214289 810713152 127811045 226297296 829338156 553316446 251734162 47381427 606643902 899004531 552361499 764645629 862711388 956458745 534973478 869193456 593321529 805649766 837546426 840315406 356311637 711720501 679181037 132409836 478341916 748237057 806185966 999979153 127180814 29825695 626711764 514785890 581720608 324380081 14436242 589497915 980152730 625787970 752921906 46607113 393842941 816814969 823765236 401627066 31664756 20256253 28482482 59042956 797570461 398681499 959420931 245318734 95325077 735698744 549255296 169587952 436178798 486512951 544838739 929882694 665365331 55087588 632631745 919845499 374285653 64068907 685715937 556883775 559367991 127145059 986966449 698762086 458141716 398956 141964336 491801679 592424740 291147192 986082818 652644341 793038092 573808295 113026477 76665661 355993473 379408763 110422141 240424240 388314517 167491293 817462699 612738017 375147428 929713095 99122415 543557464 714111805 65407470 761769210 879158162 646338682 879522746 181526837 973788567 327855520 788585284 556029633 243536015 287689434 474723852 350787895 614472317 521709679 796266059 624490078 887052919 327660601 633285474 882559765 580891981 230285989 278978029 549027839 205727780 24391901 81411843 26469138 107604047 991027891 472312385 103379469 237254963 245006837 856655703 743739746 74640435 508812934 865045301 473581938 791869553 431954487 425409493 544549067 697816534 45279968 972051088 114729678 83388456 951894572 626654805 733423202 962119679 645576811 141234966 765225556 256337328 884305234 742277988 123126072 394899910 412822076 17941130 818728951 926987904 117733167 736181801 209070712 546347737 269716012 462338612 464681077 993362140 855763742 436354624 808615556 748127227 750109357 80034393 29265769 887012309 848351477 294143523 692064410 200156250 526646665 506611128 326516290 660630393 932980505 197305964 157893654 322804772 234507681 197586223 441069991 900040864 843912764 262987090 370609807 667204598 604107110 314892319 415111737 26928995 808960661 967756756 383626384 132964110 417433443 319808605 596973010 943600396 216856564 836528001 441934144 912031106 72546585 258977736 442896293 757647486 583767359 854446791 84710174 685626527 931155433 142246419 982499428 167292038 927163678 697336341 35712444 240323215 469779916 785764934 847687456 857772708 202792967 738849953 490032156 665848551 187634448 817721652 147728188 496958659 480631377 750751773 873499032 531405906 791634742 702803813 917269529 431080999 587197364 478020698 127527109 460236859 913132541 192282201 557709616 80097669 36283084 981633837 159382877 766105644 815783299 788663497 454953716 968488149 393874084 799948521 229236519 260622265 802527378 55192804 637595091 100700216 709895853 666289360 127341089 313465429 639955737 696315480 56935514 629635770 397180898 610407737 569695420 133935652 389236949 626253031 174877646 115114171 394047135 411707087 402714820 839664902 457384049 697956365 301387869 695315785 639799790 206685151 842629818 332858113 377250307 271081890 86745221 64568491 844810260 521212602 452081162 419067500 884689947 414848424 90017983 964689227 836226089 826222170 868766825 714981976 756645701 527059931 935292154 379169057 457649782 682050138 225699304 577311141 59231761 814166104 976121413 932677120 749494434 824613493 417006865 414364192 581657436 711447204 92942210 554194903 179881371 453134676 206705053 828791804 260956707 229548312 447452511 319709879 920045276 212886469 625860742 386606979 805767380 822089825 98611029 875362304 449545676 240746360 974747740 877447588 37140530 180586562 468037466 667429936 472766647 820034101 214828819 63344 565542279 218822479 493723650 807859427 390424888 373039671 546983827 667832209 995277968 874252240 971185798 564368035 52594711 507984972 975673476 456314948 8826896 239896747 780832469 857905389 603127617 587689257 648913946 165841264 933215783 934519862 605343865 112738539 623608660 407062008 997616929 906798111 141311316 202326750 460798662 734228996 687079809 168788168 840024624 399038610 442522173 607658925 915709161 60286359 321780311 686004758 946428336 139861989 375071623 72743663 329229020 532519739 16703921 421752467 198014452 267689528 911404823 193375655 551958364 457201896 631308601 545663653 646502149 432335697 189786904 539534878 905421204 585722590 249386678 216173465 311041492 111990361 710988587 429607645 391133520 252240787 121220504 434078146 980951560 201215742 82126183 317676977 900122437 14608587 724385483 227411245 306607178 609995031 846565243 552132934 567755975 129907681 961153941 12600214 592412539 534148832 613882060 533043530 390529285 386274407 911231115 614894311 539561676 391848340 442004380 782535218 336955224 769948034 305934077 715440695 763501417 827910776 596889838 77740129 63502005 148022258 321509728 193635681 731430266 987242087 903475350 574000571 716488366 219857607 655335803 978597860 270930804 595295606 567345981 359208897 449092283 987977125 234483513 957770532 145038883 244082301 338898028 269893037 176725122 206681443 887069860 663671761 649972490 408799768 130829935 61944464 109921933 215204300 610362595 461604174 343233066 191529489 615250888 896899648 307906994 504828138 934569990 109345677 116699471 794893828 761020505 840501428 916055855 627010894 244538634 892155594 489439037 764263641 846477935 929001923 94069186 763808821 60017893 570553201 684568267 65833211 626463246 362248848 253601193 439809154 902424266 59384249 427465614 396538235 292305530 621187502 342455425 172184355 65829808 270064332 617912828 486167587 336862151 788473861 580018550 649803800 102150698 135740934 892211483 2788411 340917275 326170167 821113309 356265753 112688235 775986718 883128359 428258280 507590118 290670203 206266108 611694446 766291662 105815025 84020247 799236856 215442711 653714738 117850719 601463107 740365181 875298778 468515208 323769031 303866964 422024940 795785327 278943106 960277634 116612353 696429259 52798480 567499301 449069017 1114003 46498716 452544797 507289874 977135727 682440122 842181400 357335671 669693473 411709213 613362547 37622560 806500343 60684561 782909446 256167094 665463897 414539788 975613091 496803670 919753512 708347827 910738004 180741199 907369455 795387936 674058966 447638946 87886175 862977080 613324097 646141971 60304594 575245417 713636962 596147196 834130146 461834350 599668462 688907370 30060360 928154303 33754675 250646311 234179445 329749850 659600456 752639919 142982653 666693034 779965111 555155156 651536738 472908414 941790280 760774224 882629392 640936402 198418955 40942578 42581371 713998274 918926157 576654461 153744345 19808106 403358154 113315847 857734088 414608550 326341455 393044240 190490821 637532417 574516227 944466519 30974291 650048316 720248284 756887846 997232690 779129316 862814570 523864418 65904832 24114057 300639194 445116854 400896936 765344641 905576396 892139975 55678639 784802761 417159171 414200375 129977693 827795303 484053802 966764066 636456973 521442373 243796352 567132235 296992204 981814758 302394585 587017813 587822655 819380246 26030897 688022607 718103279 940089762 197310483 876603602 770133361 377594492 161441226 410820141 852730933 912462201 493584988 468251134 649115278 463035250 440784476 43511075 786183522 67872356 138012134 469593799 132365573 715612686 174177841 519612045 400553454 94471334 537614557 248887656 349635021 796696628 225540437 132456983 892213886 884460148 803041157 726234760 499874851 312259923 96044775 495641052 226266842 850483613 574163918 923425822 650856869 696712002 271445958 830242288 699787052 611101260 901928762 161099493 272684605 963346446 824694773 596308128 651567046 243457412 715839381 410516678 766245131 705784265 113620782 222916169 382361233 426269641 21862972 903517901 471585159 152589382 836915972 398567988 631533957 402922441 544618512 622292150 67014160 531454014 412512301 60574985 989674860 509951876 750866648 753332946 193154015 468880996 181970825 586497143 310846236 610962780 196990947 696357475 622969220 753089996 11784382 950711920 608469877 402979053 2538111 793934913 147408654 569388406 593484672 967237390 868209293 627548622 429077120 583190834 439032926 440840383 32626131 497195777 367415623 855819001 15299855 936388297 333938421 724727016 533414732 990708465 942467591 999718743 833866232 677196775 391039830 157831704 835740779 386735779 894223696 11934671 918478097 754775085 474661895 815328088 141996913 361163557 609868625 551979732 437327391 118498686 716875678 965248208 782097392 707665866 524770885 864816993 658320064 711537656 759686818 751454419 230652327 383469140 145285669 146146811 548567438 558638803 485486124 489831911 595909424 731517369 621024099 476187316 322951330 750988149 427327548 769208874 701753701 688683361 169807639 525371840 928902738 744574061 517729435 874999800 598859173 512722687 754937792 322830509 836966950 438083487 198528203 520960039 54237930 593098185 99405401 672905711 693928781 278000325 188018049 560822547 90224036 5502764 719967794 112833846 30293315 518800618 466431423 769244706 7890801 617427220 375204557 221614352 585406519 219203536 635232565 189446094 126558967 561050329 8557991 411926477 462195811 945335268 894123308 265840890 16239741 190612982 737371318 988278696 30185206 878651059 536326815 880089798 784634491 916906927 974473904 24549520 632521873 81732303 519530647 806383129 953950261 418400558 239585710 918019550 471275371 829363418 410769471 316545534 645945486 869331880 787274697 16156190 735128684 358213790 844923212 345339455 354980828 496701165 251368726 948232725 848381933 54356105 671170011 540959399 819335445 514155093 959571053 871521368 551662205 880513592 65939818 629025430 876243580 943315502 202669551 207387986 792737581 768018209 292357481 716813388 825289526 891743450 910968998 383548200 768019848 907034851 14272254 40994474 685435131 995292507 667725031 138100384 284920327 946640548 453431111 880427322 122497326 302725259 931027505 760622857 916429821 760994547 366046005 74762843 147481190 566288745 335872940 295802583 286904076 378604704 375634034 258138165 876042682 694112356 915139302 312792427 311690688 972969 9109274 702614654 995539415 561182168 897168896 295326639 774187329 244342230 291380915 228977620 581617957 26131063 280693510 688781860 869872966 786502164 658139785 288001916 173688317 729241699 379156352 309773955 784825646 473593241 649762168 644599972 505395646 886920529 910612094 37938198 789081787 309539892 620147589 681721607 933876687 425671931 357997157 362639823 656134266 240000842 534206549 311666899 785670988 190360727 863021273 224380494 928238169 859750437 24853143 899944607 988945092 706176034 683829489 825161108 801474392 303827028 935268927 367103908 119896796 712593796 474234307 511314672 948819492 452096084 109046478 984578422 372774447 469143311 477365871 779172597 381499726 660163244 693428247 903507768 489402478 547608690 745935838 472916487 690749838 350498933 681299447 741091280 250482932 743344665 657393584 228628708 93903051 68950855 987569148 116474727 543596760 834658862 574985000 855813720 709065145 266620225 60407529 829235794 353249152 800109072 603047758 152569314 193922701 663377532 704389810 669286631 249928606 267466656 193768061 464817234 20079322 197598456 122177284 725004296 772949717 544984717 212699557 408339996 801026948 480712885 931741452 232658331 962647195 845792257 280980798 644516477 954360674 328213550 672997517 229282905 60780578 745005138 13128221 796704695 988509297 330316527 976221976 723301888 319568240 559005360 811750567 252222613 459860207 664572197 228174695 338697474 786412487 608242494 65116708 706027471 217391359 547348746 812741494 603350649 622858536 902486248 337706130 624727375 299395723 736962853 658375811 552033648 716224132 824689534 326968989 923555105 581114421 410654058 875961417 849583005 245623745 52279028 939091575 551121202 969508859 132678797 353925337 75169077 820765712 951374023 129813340 957818215 821903266 994708956 732252154 509120307 763642837 731725190 767299168 656705505 506473992 15491378 739741799 211582315 735844066 388382146 47818824 863975953 716847216 815239250 955832571 268934337 516228047 741039429 670018475 813233767 342462637 279555218 650371329 650379050 607031382 340692521 215284907 987887146 890438159 310279814 202404927 855124774 83232671 365976918 735042899 693066896 83311554 746092699 914997451 156229608 667527555 241994658 107445875 993838537 907935668 58626521 280728416 358519108 538270979 138515200 499462510 74478240 674840804 514467529 929067794 798442464 878734237 272732176 636869332 611119687 293804760 850957733 507779423 988126867 530471987 901577410 441873286 704352687 285405276 506085252 245405150 708434993 91598356 172363466 157771293 488035988 678692982 781984076 733423060 253934033 819667593 39661039 612177049 517801771 247132507 514787416 646997481 230895359 206237702 927635303 663241410 709886875 227807543 93849021 281016912 240892134 652677378 534921781 837355773 508222195 867093944 521019383 562696269 438048855 659198314 471997152 702122938 610464467 219416442 222415556 125170966 863550776 110286328 42604307 54132508 586802242 743188969 825428703 880850267 965979292 564786126 564619554 70865616 227068104 460758219 335488793 524372949 272309844 447163472 235578808 729329854 210369359 373357603 994079714 55808196 882940612 282181640 502843961 865398431 266769973 480495732 766609086 500897956 910796758 827142347 478186018 821127608 988560885 539786578 135368521 87793422 222029892 32478333 759482130 806613082 268969314 828902117 962485553 945011663 635013888 437024617 294094698 934286838 683584162 659133524 767677174 233389189 912100965 817215286 734655167 512701958 549929324 546496573 864784175 662695023 10702871 969502390 255440502 190648392 290506590 581102445 438798364 649075179 293163198 75899029 583626252 546989285 290935135 785208337 329912948 670038581 932741548 74676589 103405461 917627579 418913034 292486181 670375945 113076052 455837081 725637258 943669660 211757664 577175745 360881693 255264820 510795222 149684984 531023641 142285555 665877695 990035247 842504771 317287326 465159322 352057513 717768258 284845155 992308534 397550936 903858112 408576864 424167984 812817069 607742665 974750724 58904619 956699269 191038618 639602698 818587624 777154372 695710222 499199682 428410843 624846104 358014294 433835318 636317286 15855696 498956711 892100338 657648992 856890391 160354342 642826608 433483741 989300005 783421682 363777802 674353504 129736177 34023638 537937081 295270266 220618050 944573597 753300793 539564942 561721245 231850341 252690024 154733254 806990644 244850831 703270235 627839246 832584975 872911871 529670508 945000346 734488679 695003591 568336022 912842866 38130849 232921697 844791215 791760806 754450580 528347511 856693079 676131926 977736592 243772746 761711439 888056700 27600610 964880583 675332558 338727610 348737175 493560707 248396018 489971547 455516648 328403314 580160824 772024741 254744335 716289437 636133722 673648187 481817555 132173840 757118248 215029289 996358149 918362295 656808655 294931205 634786533 811279767 451701362 174281577 39406602 601607680 517997808 455142722 874891211 678599690 226647027 973170439 840950037 222926066 103899659 632069280 109599405 879336920 559006029 720217794 980585542 235353537 825890355 543265023 189340083 176302267 681905685 964243767 454069273 919421942 943744697 381850397 302349878 706215874 572103703 434495378 767165524 658043684 806820524 911323348 744311994 652838472 600535833 455444314 206237517 632936882 960902808 550240763 96458283 206250033 134696005 649516402 794201808 916232751 397364373 256633596 89530168 580174426 331791482 832713722 516102100 629561444 657788671 65580143 445445342 49078259 240789433 149356538 732827928 254569083 335973658 123028815 611843414 612256025 476217778 144761141 43123078 309854405 227714807 409755994 996507696 232529436 656213376 591525034 182908833 996634855 806164622 683379620 177392726 417399845 334955452 634061538 215518256 321824820 620864361 724341090 540063185 591311340 210993200 549479940 788764203 984052875 223138073 714347980 653254998 451665303 927072048 284888 988172133 712245849 431529668 414675501 542288322 674212777 151069157 372800343 547446622 856668107 846069596 388345463 827326534 186208569 660924518 37207167 547852201 243729114 206907273 663928016 584976926 909432657 177807343 312303459 527421560 220807106 107994530 812745092 475158928 170214760 574980348 528546425 829134993 218787392 197443104 455093703 974446736 630868504 130448149 153764367 935502145 323265262 197812815 243400410 811456676 322587166 563293079 305158868 414030174 241441529 547483442 144390406 803101781 906392151 449711532 227592550 292852986 642016576 162902440 891293905 111367415 506976975 734254455 649118604 3892669 178725087 562421543 961949354 441659950 396382082 545376208 409374400 316731122 603323458 689305089 137444971 547271735 230321865 728502850 451162492 453343240 694659686 314648805 239409225 140226430 963211505 89869249 215960245 989240606 982358359 14795420 801485790 548101110 905726779 838551909 773455278 310405833 999816135 788970808 351188136 494504174 351199491 789034352 335810012 535160548 562950155 670864058 833653320 736728989 295294458 36332189 683886117 955311978 128589038 283023493 631482239 856343052 462816346 800219036 815256357 315364101 692212041 23001531 628604608 156328886 138136552 209782110 723493768 677093722 88852624 802372778 507719594 44261373 946038435 695594291 789864262 548116613 662834324 195794868 64097269 420516132 957283446 330199719 526613182 288531694 913991796 833715454 802355746 462388431 846587454 778170863 163292862 570787279 834461968 163074355 193045923 210309915 849913571 182305553 568820064 314006358 744273361 419464609 628659884 868308369 10690828 171425518 529129960 747407500 239005754 886161602 733609446 822951775 949266719 843924357 649622060 323696559 403142768 57925999 967791314 455827128 145159560 555360956 890455083 81352101 911620983 270487138 182406345 10206484 692272794 299017277 128719848 796984770 59719720 246518126 362215645 373292053 179928924 368880847 498735799 878437463 174894725 498095439 613850459 809834749 61852896 510464479 181022983 596651534 767341849 230279678 751155101 377757250 137172220 263482939 437743276 398111956 931043371 598980678 962886454 685001062 404211624 861766046 83479763 988357135 528099168 258737117 343204384 43577538 156706319 414562467 775350813 367700275 550646451 157925171 799819920 236766698 588491548 928231489 708686472 240473510 618055757 966733734 298639563 590880024 947480728 951352377 996555185 159934449 72325396 441669995 564059591 579646900 387076618 319502006 930181340 832682932 176750304 46815371 753625042 805334613 664304153 762487315 543133457 189604588 154060004 88722063 846921925 208789555 802641983 280791509 501222332 161506655 360489960 586342883 767271052 955465178 158442192 87591933 950056504 253805524 676641819 267415165 502962263 561161768 538573805 699145054 702167798 940488438 120875713 838985353 84814424 882576875 345089118 163739451 199914143 789472655 505032556 98794195 322488515 552302156 402795923 76161519 320259953 716867665 825033999 844240201 592218873 587975954 456367740 644442437 728895433 222701538 254617680 471966920 498279411 534527403 839437185 973925783 791655332 340203382 571404783 569205770 508078671 67836500 46037109 695982011 641099155 744246427 521497208 309573965 792320346 410534880 787212109 286923950 832585303 124717975 447038641 940645685 490299130 974055567 307678557 768684522 163901540 653921205 305968622 909853692 819887399 875121508 487566511 744098336 800961277 980449797 692061129 454862776 208976656 370240296 302824316 733896809 195071276 445316510 518731505 647672576 435640327 498230311 175272914 263123795 473955147 248212790 799501845 669856555 109568427 692632339 762881324 441507103 905116838 620096582 773686384 892442423 187138401 438282608 215642371 932204612 126241545 476718595 120757823 38466900 475550408 846430565 282319908 370502489 537340475 185565739 453960975 871259965 296103372 486636810 304230638 376845035 720294821 806647722 646105372 257418188 638259792 790328091 860778610 747319463 248747751 981119881 622466234 310060418 345636564 374486011 19872087 279483510 917198912 648727212 535033520 836064485 911091384 427210895 426618527 983848524 580193118 811013440 802863356 17098853 467726651 778338951 716564522 729445929 855559255 117719227 494249962 150301332 883653256 348927917 250796945 398281892 465206922 747703033 573044667 364445216 89641417 48239066 694348660 356275741 513375879 320812701 754550093 592995947 316667737 358391314 375233909 615574210 831231993 57370804 278443608 833502336 237178158 181284562 723657876 493912540 36670166 125194619 538153311 276419702 451615009 712767560 459691634 510388240 726844201 764420236 310236268 727206338 229579226 833225708 251976828 892134078 284947336 357803392 111925551 310469522 303650742 789289212 123622450 815077710 461742323 2470587 238968699 20878932 455241601 819662749 995028048 690653165 604370406 329305543 871802959 424401726 979165902 809154124 749403205 23287015 14424034 720253145 718986922 135243933 488126732 948996335 651179587 826479095 221746839 379637073 731773300 96305595 259161387 401547252 378639077 650208954 467438980 885708406 639301320 336516165 652666127 745304495 868869593 974118900 301937142 732146111 216434436 609117216 193104151 478067091 504735186 4631127 628806059 913743513 457600541 910249653 254751724 61043491 273785776 774903296 770027179 342166384 724146411 67873384 144244657 937491924 95964349 271609475 903757577 622963255 823276207 116435615 759915549 304686501 553749131 493573070 106398984 531488843 903111865 764755107 362187826 372430789 933027503 66933584 135773170 719651744 906912663 133196026 560340522 852825729 400710141 282255534 324299686 936729307 507679093 34329580 686485603 929959534 441667965 995687531 560937073 859084951 590384667 708274235 396200532 225121741 294755135 699744928 632511551 869676443 945625199 569975092 835316627 578533360 129778710 398566376 882956358 875717597 782072881 326336926 954404414 295141826 359278626 573718818 648997793 531347518 218834946 353768649 565470251 586009638 492154291 412922396 448351158 289438065 874184529 934051185 786474818 941328684 296755957 512936636 989132222 592368742 526002130 951801165 70524157 834059132 194217002 968240256 11441473 240754765 668549539 890278027 837153004 251789713 514997428 143129670 667787191 469418119 232498905 306491455 423472130 559657833 445626159 984932723 705193521 1047443 113148051 940469455 727870950 512609954 101216423 238987996 376803923 389193889 281232251 335905076 667626705 842593738 683921688 162687677 816778095 571911477 542981252 335840844 498456068 335343789 946811331 132117862 519081484 61411458 807631215 652324907 917268431 324111960 961071304 771031742 75882873 583541685 863092410 578428583 540050520 411223196 465236708 199485456 463664194 17242325 91877614 885429026 157578303 566906141 250736518 600980290 132682657 182441692 17967789 93942524 337253207 682875503 792534612 710571946 853999010 412639785 667249110 981514602 322821224 95871197 542841133 830506184 879070186 484764257 358744560 151908139 554118942 68784763 671462948 737033724 164109382 447546322 939176685 539908364 445638212 701692992 282220808 869578287 175968768 907755232 371295614 324659965 896851519 193944592 222835934 791765849 370978896 185414742 876619646 157959527 896445260 382903337 87720975 839979301 317008281 237664166 861354335 39408598 523332761 170871228 405231214 993463193 430593954 608510319 305009172 499321458 660571420 634792464 746874963 555110990 473226320 294062660 340927681 880153715 966499994 956589068 359705430 23664254 858407395 8082543 884954053 765757660 985741584 292686482 505491845 713899641 432083020 636961490 775020841 439120485 133511341 862637312 671814275 522893593 397483290 137462465 378107507 973631363 369140811 551071895 927388823 179806757 169880481 476383263 457491157 557944548 62675148 833707714 245453959 639270984 181804654 690717339 185502729 621799940 816553852 763174484 460949485 716088200 839401343 903262866 328847809 113757432 428166929 400840407 113433316 671352639 791919182 781605922 15270411 211827047 662353135 390503996 282864425 107977364 543293701 106216035 639398423 206343384 161870960 12133597 478786808 305120848 328163449 364742418 709337346 430923642 464868452 574268933 844421192 634978320 659810525 960998048 14639353 71893195 540396311 958352722 79934148 874588308 483883143 446800655 62268719 891777468 4438812 213517312 763079726 271553105 940216471 128600966 634905160 510008727 909345809 821992938 949569956 976202991 423887811 800028660 933506047 70958575 932867654 635427807 654162022 350805453 237876269 237467752 736533064 841644350 964374365 908068751 174496942 567616244 706651248 189333948 331983343 24126942 780799838 171713506 650483230 939875885 205710693 661628143 70171106 522397847 388808574 873295729 605894244 298748060 186711581 397476598 379224956 823779454 430966940 278779550 455321416 664692783 49691712 286037612 974906453 824844337 820477720 201599309 994324794 426707507 444928227 950371876 167437781 599213770 21502455 31259294 781402779 966037622 850581167 287815561 542454842 8200471 713882160 490398613 191120553 226630885 521098764 53195759 242541640 781516584 854148656 951799244 720211617 985767455 826179845 677359305 338823450 679716475 2784926 828804541 539510083 644425197 905887264 734561866 517465626 774212707 375651283 988268387 185261823 985037214 837895552 222563909 433737575 880084552 690777091 543763675 747666775 175053771 66881612 383377679 811558038 224757813 258742929 210424426 392230047 663062651 716460977 695764643 673124938 509197156 606209387 690462656 248741669 457265357 898657922 721367824 293445159 899515417 817389857 947925846 251760343 949115041 388436915 918714950 698510481 78541395 774617752 183989658 656853069 756289020 327390773 340185583 601174576 995126118 171315608 367786134 743315694 139310927 798530699 181598382 792527350 453208334 953860807 459202756 716935723 53972459 858701040 651336941 334972317 431151833 245297508 143265375 334881581 301644952 246497377 7929374 59184753 983019613 213541308 194200367 894911368 76317674 87005944 144225079 434918521 212474626 927378371 19612159 524335536 950069865 221357691 54433346 46916441 978781958 82728300 546315539 451926299 783192136 447027813 514173227 707392803 123647573 847140663 310601123 38073255 542756518 618591720 970824296 165643275 469831110 105255568 325896538 271549799 777488876 925804344 465397184 412913827 942667036 269052145 210317291 441326859 54075667 81692492 201856250 321691724 274812520 855878808 168496082 232072105 704381337 486616594 885916269 129818605 789650454 452503388 314128919 423292305 316845454 128056774 309257867 425948564 445751865 30464928 863226864 210080254 632851266 674058333 335956733 766070818 757752325 973631503 440056367 221894259 550146585 304709417 272699929 91486765 857261458 370971434 829553085 595234564 31909022 914610530 170681485 73021521 987341776 842046322 742897396 777929906 420215905 122396897 217886383 470973940 437871011 389533162 894343196 979986588 844293568 344138542 992840045 451685300 126061099 661824795 49757126 434288355 208815355 102226030 75961012 431492760 726463318 199144671 2815324 494845813 632443551 948569120 327939950 438573416 98263450 761757633 633417880 77522752 795453506 774571910 862767394 671744217 278858195 115663273 533486613 538292666 305340230 537184027 596287160 629178700 190409897 676412018 51910036 972989305 460108874 238228424 923334184 753927499 366324446 370160289 141605977 317010112 804773171 556066135 675177863 29939672 29633458 673705947 579167517 800796184 524345334 170207061 924514810 700684636 200547242 913030686 104406993 251572062 826507814 578716813 121403429 987991505 930488032 572679634 715290651 735003970 28209667 956075932 380244947 884384402 675913552 903640866 919628621 301472076 74226321 178004948 153243765 700523137 378849887 2442556 979258838 793400338 701961532 880153683 818143007 818288120 152070147 338237085 15780545 459242840 847493290 493484451 405562518 737036096 840597247 371985896 528185630 309204055 14533529 939906195 965154044 868031481 775711249 266003901 966676829 50333331 758746603 798789689 320661918 135129511 34103837 226058973 527222416 292279471 445956877 880495063 889844484 82416029 889462260 850003761 914672703 954448649 527931060 503233065 506646249 259256113 451768397 429120972 118055303 364722056 118376241 490201765 550559929 920480493 200642738 245832328 595270414 98739066 111463705 321188339 175671976 488091922 503715032 983079974 438550262 6180856 566738626 151109219 327323384 940673325 513037120 455335905 830103689 723541967 930377347 568017899 179917195 595897081 633924877 679047356 641866541 456051190 926966533 831312540 845230678 617273421 102025328 133495277 873028084 2950476 510077521 385456557 316136758 306933981 436342142 815180100 981472443 929000646 785440316 183787738 233548720 171469896 660369617 747256581 77841823 133115216 403541381 108613070 162286572 538792356 658010255 567943102 783308533 135664572 474452423 629014973 898309550 789594321 434082467 727480784 851956273 779112695 811612170 82915194 624533985 33750694 144540975 425802364 972182420 771942741 756902606 221846800 280907209 83005476 609120711 609061044 21264881 442952342 353363515 305612148 222331551 257074853 980262466 847618570 134851609 563071254 485664604 415504659 550433151 601488673 629152927 168101269 340611969 743542557 335365791 822180623 901732622 839504848 104341704 472071146 541040569 521935369 425514172 674258385 178134899 871774912 262997364 397775326 971910777 302636920 350994794 979853857 658083996 151049734 122804443 195313329 196404057 263503862 157861573 682436530 101410906 753741660 549567831 891512058 986301590 105049080 844918293 669521908 310944757 594219193 14813040 589543186 905544883 771566969 278182409 96074066 597857525 758895709 672595707 998787437 404837451 468845856 463472475 98804541 459733254 288521839 182417043 781018135 483581214 861250910 748906016 566078357 643019538 638613976 418612094 889772420 481806606 805102862 595038106 844110097 285330112 679572611 169297144 178676404 898623990 222852275 171661158 932555108 510925597 603979988 608632153 383471809 671526202 277132830 961132871 487297159 176335454 480866442 918687734 591892553 471897941 249670431 346096659 647256657 263805656 636846267 261970617 25084328 122863039 404481989 417793617 255850461 124835545 923928833 121100311 417321392 214111486 546725302 790878259 79990510 753092584 349185109 154173177 941305140 576964970 482633778 311803273 52480033 374245423 616343163 104171397 379533848 165696672 889047656 956290601 709064667 543001565 929498695 670845910 827559847 21976457 694318575 41930331 484192406 880935 257654669 814548019 509207657 111322860 500561769 178575035 526461319 62562803 822724139 263303447 973210997 445944713 765195589 885244212 359533292 929607223 337157346 81152601 886591681 957006198 369758866 73240010 459865855 727312908 946664989 44477714 502301519 965457796 188415686 50785905 359855226 734061267 226487463 198752044 328752431 320445688 65017413 219587585 76822075 848551615 849674007 560091050 643667295 246398173 179114851 331860931 475854491 902292290 218628648 603245051 917741948 657039254 978460087 950569890 535009992 165037494 363647838 423773225 84098661 266799703 489059821 72281102 327603458 95265736 713503452 253530333 714217276 794739642 315240079 994389374 200946209 695500647 745723869 429511143 841445664 299231696 296354065 282957500 139635760 550879068 8989359 190614520 793802896 409897574 961442124 923198337 845169228 578242178 799643019 806259769 249853641 771248685 208124307 231416508 425318334 26106129 898397228 286635801 73111223 34740139 767297411 710810861 373776993 369812998 504380152 260670415 193567072 773218568 158417219 585153436 894932894 534571249 614271082 349681299 158538353 848446324 780623903 171877071 327995105 902930052 729872668 756688999 300503312 664169857 559156900 793512959 443047364 66305467 589761230 661785244 354514461 867687315 631973273 731761167 734049684 104393295 938155716 149907435 162020979 639296284 251489045 4095873 795090718 253898751 385492429 913673937 51572111 243971800 236933674 57592820 297181998 18868601 125359117 85317603 528776084 732950274 5753905 219414506 963821338 983841812 498731071 254291069 463793451 376208722 173323004 569861527 491058003 337717559 726831954 547108255 599936029 241833632 173955313 222228090 391537517 67248023 908094480 221413544 502517531 633544697 894291640 189400412 892700974 743717700 79243769 589767814 117823330 925112109 848537141 659684353 114389972 72003947 44560518 486534874 758437357 7853832 552888249 191907783 699560758 510226372 414091036 768443007 813212657 407645434 101074630 440377326 970797092 854286651 186955713 132960526 907510534 809180988 388296921 917481306 487284634 325917522 220041165 433106823 395951365 274752916 365387579 919233918 599815125 104055417 456076537 774323310 220906793 857652834 315788240 177730563 795004851 391612625 279892704 666495683 357262902 929278832 163165519 188008635 913352880 179751295 813196406 74857017 310913417 380672997 270407198 776987251 402951071 447664546 667101636 956680254 372374194 569549659 79309958 718101022 81375746 184134862 678495664 362100077 863130759 401450631 400559904 615055988 283530575 632516126 110305799 259187234 832930882 60339791 863907178 590402854 895239708 553118419 473491315 264181579 472490456 54118919 554945227 904312516 955696786 598007853 336848707 49318149 622317277 168381913 202296866 731426134 28362156 433441748 322081520 170021790 677258901 949486467 436741219 619324511 552286493 385826549 42291320 336714654 296885735 155717785 374055028 168722932 936426493 518509397 81750099 680180154 165243812 970319517 446843288 41014742 202155829 598205464 843162517 873389253 249871171 998906069 583300009 986179909 162393961 407164720 373857432 494273935 343989906 559776637 105839018 973919537 310917860 348765601 636790385 429002273 387208819 627012790 592226829 217609136 606817148 220164502 933725438 387687470 218522687 45917695 844715658 573747591 666948714 533868784 348876400 873650191 841448383 775831970 803108142 574565521 371325241 74378779 27396604 418184129 132674084 788510733 199844343 995509784 614106072 479163100 148789562 485235422 942684841 860876482 857355696 385930170 893264624 329578295 574839294 415292192 189541003 417566039 348952488 730307942 357070108 527742132 701461130 691128280 356911305 730729946 116688975 105484062 92287162 239970037 965068467 341091975 196374575 944170178 185861936 325078911 154381965 674388971 901600072 671610402 629717978 680132262 48125718 642496503 352898811 183295576 658488812 932909827 737368199 801284289 11040831 931485331 926113163 531190503 747930101 440430845 640249657 543377229 267241199 364795629 573381986 363096140 141399396 814355524 215414747 678066726 111640149 310790913 691509940 543960463 80511987 316510923 80279769 150855176 981865184 22282205 343310065 18043322 986177417 288010369 547868361 839704960 952738088 396733973 718893725 912746551 965063718 787754407 697919551 772321318 341562631 553523466 751569116 527929575 671449445 391169058 160879909 926183578 733860331 570456101 785591135 395084576 179765083 712764603 376773952 159044998 499193371 919079402 235016722 356195029 313309062 335291992 655047139 363556103 177283124 401292950 91095111 102067153 111299322 456075047 33328064 831847251 269122473 687511320 335300688 633828179 333020943 455989377 242852592 112201663 535392370 183052936 460812753 837880418 872524951 201725531 238094098 300888538 446745793 437202546 105463740 497692334 907507594 551563574 119986205 96599205 339152358 995756510 312602363 790117084 124822551 972870363 448444127 89686590 94032363 604891843 192842779 342555358 604796419 781230679 692790797 651433101 139837742 30837217 31155407 747562080 756181205 837299399 923827068 741650538 625052045 730406165 17450968 296249869 959167039 367569473 41188318 553033810 166625218 41463527 621563681 361585600 769812411 874939712 793249773 325822159 83626530 84363421 838767534 887946676 372306245 834658287 794185699 933267007 382325976 941171522 677346055 784431330 792374203 511764114 386135723 487756706 105560369 101757954 774531885 277828165 588643442 39462363 776127020 674813743 354298705 351179000 424390579 958457972 642184151 606213428 522705544 678096983 733465519 386533069 405277551 378664581 170389118 796747696 299050677 216185557 379330363 812082613 241876840 50802975 137429209 712789727 296011318 599493432 197475888 437667077 607593458 990578721 536096619 196989794 404035679 387754998 982720198 668117433 797582058 728152086 856241833 263445970 654346331 933548146 281562172 129457910 94956280 765345626 464028730 191470432 529458113 30626765 520017892 929373433 423919062 866644932 266677507 996429413 118466884 616478131 646526689 990455541 674556747 474165337 410299765 602622702 718962172 953717961 499958727 776385945 109089809 691702887 220283641 115086560 807939885 33559932 394974703 681427183 275272578 864804871 351771699 703126758 185697558 426436906 967564910 46791051 375474937 276357601 24136738 435629284 841819129 253542593 336686952 236769724 160372897 726619094 194308942 724110356 968218732 391338024 731508184 142543772 849329428 99746461 316348151 555337329 840759306 221622300 914851806 900128130 491836636 338597317 299411907 509997084 852999765 308109384 999062591 490733479 521599909 753539879 712947396 308006027 338458185 547426944 466359420 879993018 538126573 627845274 212735968 252178693 161414412 739519932 4563945 577482453 998613549 941639176 172624645 106487208 619552775 837273663 553344696 146811 459065050 986056668 54791022 263534986 584539572 927836797 720643608 527623364 505152550 287354321 989529158 236228192 659944023 611490206 494177433 504140183 686758572 892163741 191878098 372887482 11508629 780607723 347337549 805170039 776647988 523891121 504461460 306395683 272437762 889211203 261221371 881280983 286400451 531230514 408768511 182336102 188421310 299217918 863026326 323012416 680117249 341994737 462450921 845608586 150132598 447013230 699852101 6429847 781201767 908274136 241771800 659115342 571201692 708161233 403451838 33703859 707907989 83317012 303748905 722679773 143667461 854955481 782399431 340423319 838867904 734588726 280070489 148607122 413116051 104279078 961690216 224108835 431651931 45558995 725194829 27967518 727693765 569066930 825957040 561995684 488219614 562056867 450917199 977708150 594580686 168102781 95465531 471005947 708920277 997737344 496378650 341124148 512634667 115863031 757600591 332756735 196518302 319773342 971446641 781464344 789184003 287679797 963221543 334266082 170344941 803938157 7372051 431970671 62661834 958242065 866258504 949553145 215170532 73828286 297545958 304485149 681079524 747654900 556003258 568860459 381309116 919242982 388498234 555633556 883014325 356756465 991655947 136022526 372510801 839265951 65226556 827754383 667820084 663316836 186140886 923411407 491164688 433876136 86076080 970430125 421172197 964701289 716942338 779843930 888817990 719143256 821632210 484350906 183085549 270233283 599983957 563850699 999348436 282754969 412418842 643973785 638529507 674745635 656591131 979977782 731348952 153273643 253160458 22937490 835821452 346454923 134351793 906887121 504316864 100072634 462755937 334371071 824372663 473390248 208667706 898905746 969037078 210365496 70565683 472758116 711177681 906139963 859976340 339761092 657724662 204421038 956036162 511579926 642847399 909546668 418427919 116004974 659318541 872149973 81110229 187624170 220021021 446935407 532626962 927761821 414202890 826923093 718542267 148353595 89656923 872713420 599187800 979986714 334438620 580542662 118604538 465801062 161725334 726278935 452545883 766033054 995463058 244527486 598829692 856477613 155763457 359385909 708203026 290249488 219248923 439091981 538059607 21412298 772228862 921129838 617427225 897611062 136036476 716897812 267559409 104869117 206789218 471003457 309743309 53830318 791500234 110752811 57320066 527331651 944963787 659805503 595858404 485747284 128899012 766390701 643405918 721735000 34303647 393520240 814335043 515108012 808415137 49138543 992357166 293342195 696847268 54302140 850115689 119034338 18973549 636996178 542619604 532960683 614235124 402209368 303714129 793094262 399471176 216300368 653867283 552771752 292423953 655979136 13798959 92433441 180980011 868616917 304808857 627663806 362678710 989828145 231646265 538683872 283667413 600466022 798256913 178398024 123781319 260900598 893666621 761605125 414708132 518458081 21326946 127636799 986122362 188865348 122269277 12606471 366373310 872509208 19665564 312756270 24536091 883793058 961428992 475236953 690644638 90386349 607291822 934328609 634073083 139477101 363407986 583359713 341416436 966896131 32357443 39168612 568984834 160908448 792822392 266880715 209288921 297705514 208716287 610880820 328323774 220110795 949343687 426105972 93138611 570543491 49664500 22000307 202819217 733031393 798983470 254288258 821314006 172523181 887865136 251277060 86815433 594088318 158302892 874007470 546048723 389204189 606268728 398241096 267439587 299380340 1120912 624504847 341011854 260384177 205354031 415942670 76115741 508384357 933719506 204380888 219666517 215791081 577324233 859484106 290294825 861304145 613286782 911579008 427779666 106452195 182535596 393024704 275500753 634528647 17102838 97257217 876184429 631683885 723756367 39748722 914896758 696125005 994769540 774036186 371219480 381832031 595864709 147635063 439037060 837496314 439215566 450082875 267021979 288622609 513566056 440336421 227030877 181011946 681130564 727560865 452387274 6717839 332384440 80737179 272879107 79585498 712602997 264008865 872421367 46234002 424021298 651386809 781228100 249299165 82080315 646530367 841051849 929997445 312120427 461568917 555453157 776920967 82728630 122668723 521123167 627391176 466700806 153297413 275142668 791127378 505418514 925556780 810575783 128383103 376582000 232011700 179129994 146822713 454120102 882374887 398266423 394081965 669966135 955696815 955099380 510319179 535336025 765258446 530799337 759958988 73583874 509790566 939531546 82290301 727177271 744270702 767467727 481996981 717432243 491419496 615107179 366985189 350161373 634651590 455815557 845292151 267842083 186583859 588095328 68337292 622392590 379958693 371733346 1480340 647445378 241234649 461162408 358557248 356530476 278132735 60029635 973938564 844314647 76611216 936508159 241828602 420765784 733995967 545113762 68969607 288287778 157268192 926429740 393698336 818834041 608227350 889754149 263701445 6783001 601029912 662220796 597165024 297631747 426328433 286158000 63308468 201063323 25071634 466786939 154590950 248059048 339589941 39139169 801363346 434883638 799807961 161547160 913466133 333253502 465329153 675782101 617479013 42974760 622871812 96004181 412986493 384249957 522081834 401675003 327075009 956695779 904072705 187426382 5150215 110245980 547447670 885101075 32944752 501964233 87474288 382409157 558652791 23708442 201062158 630369841 725916597 322376666 752649720 460197560 260701525 602828274 630943267 249092270 948700954 156978374 845176899 854565581 49285292 800684450 444190503 568671619 81629915 742848930 566948844 258844992 342972558 65548211 614629531 434469392 173852014 57857134 712724088 777891726 199916177 426522150 471074677 182754620 412055670 905936983 328942862 474857514 273907897 283018439 513888861 407030488 270234702 813096225 710374595 442192154 696215014 637339828 966680062 901588004 521761172 829375156 159944717 64177396 812386120 110303727 689038915 102955697 576129110 757459985 33974706 478625070 345321170 217004987 643152796 242874416 967398736 9327695 599488065 854117548 842650464 967862289 29102153 967007064 761733861 669250871 137362196 940258707 251547283 915687387 47911916 298318874 746756102 655002424 259406042 692877312 712532163 21066684 218871323 890852303 504534397 581890516 771626340 651863299 154923397 99153439 492179291 447791540 533587236 46229843 697517915 906440948 649408213 546614952 881191694 716827846 742795541 696318305 733348758 735667616 386563652 967339569 649069404 858779509 1758146 143857510 224823848 784773988 312231972 889318146 720862808 240945538 778224690 911491627 951364105 518009782 484559575 316151402 258890551 666587107 994263836 895988329 144741080 542944298 113544376 625298749 683032748 915268805 142227155 913974958 345819262 990801907 146885303 159851401 916009630 922177580 957518638 35234344 858195276 39162619 100428777 642685864 286021922 693431626 378180295 803155630 10552221 100262551 988611687 444059110 452465578 181659689 433145403 304804935 385841108 85429949 880051647 825999357 950183564 371056758 843988788 109575394 595561128 926814950 583258418 403198974 743173391 529138615 431223619 486636549 311682938 17501734 357360588 803200871 54572756 223333804 750988926 385922574 633123225 488227036 605672578 177600091 474072328 599853612 780760523 710828361 21134053 673428607 244522475 579285974 865501268 86600738 464866580 291713835 427749792 613390082 225409330 719825517 426890508 261325747 323093415 813924068 360792850 44102776 522270203 602237816 251854013 12713990 774878273 382216205 432209225 615207546 955450826 90635273 335237243 414590382 67057271 897946166 897632137 113855423 626750729 81228256 111657344 366805116 919954776 543823295 496632656 70503552 213693962 214377375 750271624 780467447 459040546 497091644 549270929 494908337 780209838 980020230 840190252 450393272 510853204 657120387 462421949 732852865 657834271 687826139 184809834 829862684 764270571 708343888 126706588 165894047 92166060 999717001 22942106 547660306 373916915 241237107 656776177 904563505 792170716 85365199 90235322 531251734 262425121 544494059 269063535 154911567 330928926 816378134 211199302 538686059 367727243 158785259 939358170 202574773 610342326 776442736 641530937 129535916 206420406 775463095 251335132 980815579 151777136 463338036 641238763 977299905 277708691 266625560 683418964 534148675 711556413 522104271 753380930 917432695 534431107 937630392 902067006 529818960 820266342 684961788 459622851 977916379 280326628 957950705 225342614 625405748 403707231 568196400 334137097 463629295 908628795 538710362 693608625 487929332 422086570 584178190 650414812 656443585 681563540 255040194 596917736 673015760 469102610 921103454 521315089 577901552 645309816 494961641 914938593 640673206 100700634 610149562 287715681 155028721 376251600 137082107 795225488 454257373 848756494 986275117 822913036 681434445 78988831 127087829 175375763 150873416 719920343 871068245 647204325 489724760 274591643 390330931 82938923 884216408 398052986 572502206 601064853 990226485 111626574 494644284 809317704 803764292 694622791 935626761 568128197 491181442 632816257 758710130 65604495 420231789 592000878 618323195 192725809 344676456 332907706 613036519 643550803 808516495 215479843 750986238 580841176 185095763 433835762 289121440 460734423 422843531 264013501 149397735 397177200 31149576 741502308 770996572 921717086 990954460 668468283 81628640 225786087 84324158 237394690 51158923 162442588 39576185 53641946 787445674 297812743 935672086 639133666 651443339 281835933 922255634 732267779 937974503 838174165 85125287 974518304 995665206 84958649 722161516 856327168 179865145 738559180 993521067 807938691 61721330 854335263 160029568 791545936 573716 339173466 719310329 905776487 693801236 166564998 845870861 481146345 491267069 416419412 89807471 438261592 25587024 516385639 935946857 172630129 727125463 94635794 498132163 553048544 646047347 348214135 88287032 772733179 167531107 347684186 718385693 797595616 404399719 919646815 817525132 647908625 174610858 529131631 567198463 317934459 504717452 678606221 338045170 570135878 651629695 799257763 265332439 618517516 881001545 137004276 401209533 832863607 136011203 621671917 18630780 145098732 706613257 874508264 619123512 34431763 746364801 376403244 330647230 981603076 860017770 771204199 248913407 170559715 323046868 875541187 537716252 964680661 740522908 608736308 808660611 123710955 907578154 84059182 16002416 694940119 357069536 24599608 973939527 604038734 1022819 458095759 996498882 291037480 201077309 282641736 683748009 462017658 838587903 816896232 607624950 187872840 21392992 410722173 138548593 852798270 78882181 678867637 521590481 166019615 907069696 374232655 119603174 525026666 58134192 363415540 561894551 709272788 369514282 558866601 266236611 75931092 423607724 336657262 66451291 759124200 418955162 511431173 617407133 706057790 731943265 788184725 798486415 373181764 582304187 375730238 273518316 809286741 175909008 967073686 118410440 64228905 804506992 352457068 685807988 783919966 690541044 866152915 829473437 362792646 646495338 479818937 996501506 968770876 897480533 916547534 146579863 590587032 933134760 536567385 460116651 375824402 346009852 581509438 470486324 184302324 802368576 50924194 615142374 515880135 247410256 851626807 870903326 576392985 975574539 818800436 124344977 539147296 971420402 843626833 317583314 407607803 683735011 109021350 647938725 357922278 330752258 487970603 493139229 244289310 451831820 878028130 411530324 562858216 458786422 269563189 504641689 853550997 832511909 903398557 604832813 997228541 605666008 829318993 790603757 698984977 59953768 284883797 44870197 606093485 449794283 282570752 870385671 346042144 305833824 638515206 467777958 804157899 64976711 262332170 340390609 136423046 1372631 632334015 730763119 910695715 946576001 389872716 906847722 311787327 68358889 698859664 305130737 537901308 361123886 942004588 899994004 529828983 112377206 78489092 855406850 342388270 729704461 998036787 918524083 922224651 856794627 435635408 930031544 907775001 858957726 9862918 901788153 439066750 822454510 283470842 43546999 987851969 831844949 190197358 150749523 199177845 990503104 646369082 970316499 773148777 608660819 141065294 634778306 469451041 569418521 162521333 479945983 232795208 527331914 70103918 450225307 477843636 126443981 316273265 201290125 704289046 228428147 670208896 47994751 586592164 501005719 668411918 542901460 700946799 669712951 381874471 184311692 807898461 684087503 646508656 354893625 359561437 580823028 129621352 736896379 644512978 873783689 90328142 675800965 865189554 102576920 702464193 533498023 401790873 688101310 750010957 222349379 799753393 809059143 791858042 908221346 647145359 544988761 626054109 774314247 98904951 275364400 409299762 328747773 298478841 668565597 651099837 401043680 466328479 3293060 378837909 168184090 941666685 544837784 985089850 131162672 116224477 210951479 429072357 11602161 104343758 187848753 732032334 166321460 708687502 32468804 801033968 662686877 238955249 254600483 569104019 980475452 602626876 615867878 721889207 452789514 77171590 829205282 735816725 33834228 105430706 491474080 751001842 729975572 879512335 479577562 133802534 195547349 56317443 211101274 458963763 549194786 240271639 809051971 975508892 877912788 51803596 390909124 580234118 404977561 169431392 802894332 870750130 379824524 159138939 826165489 378557285 323201534 147843060 268127434 972423758 33004308 747184122 702634749 548166538 399229468 74296665 958531001 924172992 645317938 240563067 283180959 332119968 770589326 495881737 330001409 95521187 847954096 664738114 696937490 606603271 156076551 985784849 210645033 205011311 458150536 305301258 872261340 940837977 408219091 223679151 134870871 425839664 451990554 746112647 676544009 598871576 263607681 557417888 293315370 267330332 155709511 17652250 204674618 991293529 228156023 492062649 372280992 390436257 390823496 716774665 699307656 30710326 225275519 862354326 393991316 305606724 995124973 474647197 298395690 299164421 519530336 240640391 797619967 780289493 129427595 797480933 976471038 991798742 309640614 357904573 976573343 947465029 12335461 552223055 453112726 533625971 199813439 999177405 721191820 970790464 135129151 638264170 438029218 301139916 558972142 287989353 381995930 740012191 742646587 385181258 66848821 586868579 986602896 444739044 381754954 528140521 311889360 579547753 932322518 577580951 69326438 207900419 744545456 849208664 305267814 817281719 840601957 91094184 353742644 959611041 635697948 587524775 710211360 311396668 714332313 2525445 287980175 572935476 242458571 524510344 376522587 657713967 683218660 873287507 5793385 260400620 133493298 805295015 221283231 284313764 564841667 985749374 735324866 316220399 567098207 737512003 92013255 610714051 477592599 881865642 135074463 649157255 15391800 560453614 290720965 102027315 27425308 742427704 31141288 446965033 856030182 218869167 289705075 188634179 634074162 601717906 2857311 560577625 286955918 662734696 818959294 278393169 320072997 182037057 345018664 466969315 57045770 37509401 706304685 86245431 44778324 244291357 141880331 249052936 206437038 453287662 143345987 46210938 194870684 194313457 814385566 696934028 968260963 459125948 211746258 624373046 27022821 347331752 919431425 871244729 715539959 712677164 28944020 840474145 124235802 316162404 625710619 902493264 608726285 280190238 279959452 368896607 374153886 98828821 128382037 840854731 908411825 702803261 380790552 754691121 4124937 619068400 648236906 693698760 473024148 180350110 981672545 778455166 19812842 661416585 642740309 465107652 83733115 954624602 434428783 503677273 188148410 674192536 823168698 238751302 7593381 911672114 221555682 924016303 514361942 344204303 259918251 530004214 221829021 90124288 506646519 826146332 218344185 807530685 384760685 639130817 807519590 289153073 920922049 803607888 442662952 806960297 571674118 285148019 996300423 794740242 565988301 636487429 540864120 621211412 583167892 249560077 481390462 49763242 614419357 174546293 278611940 641496979 898286283 969526403 761099637 849993507 552650625 238839066 874041597 274090358 328251831 311659905 292493777 829889359 819966531 276847051 950220941 889679785 293290665 818355426 870216350 824427571 964620278 76298914 499846807 742204558 848464166 203684155 156996662 8224247 724706390 334765247 44262273 99954281 746213831 657593716 888938298 685531999 963604496 625548291 304886037 547630951 335231061 485552162 439173543 222557080 492818913 589672891 441776071 718165393 568930376 793491018 337468606 542550478 126189778 342713650 945053588 892133894 480772323 143764157 773346612 998000298 632009438 902561747 291628540 189595090 230004303 306500175 967598263 756499510 346523414 853526413 222638368 708525800 722748147 101270491 402364432 340437209 321802979 172354421 924105135 378699320 838627541 910528155 25578167 301872188 335781219 144404139 272996425 619631383 800083768 914174236 950426718 10106451 656491078 893584806 46721858 955273554 578610326 394802061 558379438 499447353 535899499 73085363 112360125 962531692 900512126 88126012 663594602 72331114 476549916 407795504 375528669 490538600 693009802 136969107 677905273 436828149 892096377 264518634 732453768 916685296 138225911 128033748 429526019 991804578 340235107 435742929 726656202 441971651 897739896 511490305 461096228 106097240 327785948 538331726 7389835 859181928 719932851 553449974 864351417 429453938 770883850 362566176 898056067 833501508 842239294 312681493 66088793 180299681 202032407 488617860 750803851 131793365 650489700 39489806 99908235 320731350 883342470 4797565 540113410 500153012 150924159 868372934 563083868 17773902 723639133 859018603 564119026 617650368 852408095 210841658 616740145 24174532 740436667 489147098 316133333 956997678 379275423 439074682 570337775 660404004 758912257 663258273 257256857 664268341 589594480 877425303 974852113 227601468 838554061 980749404 606541007 843371867 452073093 506172260 987348625 346828626 134358024 936081655 584210479 754255478 142273034 414375887 409588873 596809527 339317995 50585498 360666875 709959679 220170433 50855463 182429378 204576259 765701133 83916866 203205227 354226715 205346937 675013911 295559867 871791854 392720345 299463240 747950864 114189917 586537064 770843704 62217253 340539429 432001398 959781201 284297697 921995726 396638328 455251764 185869425 226532099 958773206 615191482 404446450 277112305 352618656 324636969 73971209 394953792 873361205 123470183 573915177 737432649 941976065 697060598 411679602 84401835 130971708 63382688 397674004 604224971 590149189 746128966 953948347 429799781 918667419 601590645 132776505 801251703 235648082 94132754 872200669 632354989 531980573 588388859 66134512 881316305 128145556 103511428 17940618 281727137 32666940 327123807 978479101 272450985 757669958 685311460 640416993 286459795 939267687 445114816 332408945 62903079 113173056 763625569 778707881 35903014 409934857 782970156 224318054 633350796 411087718 299583135 483978088 356062170 923998386 768365149 4893697 712924630 938314168 430183692 25651730 207172219 147703777 652209160 601488238 224913463 702149209 687448702 577985289 530554008 495649146 997828236 598072533 448728131 336886211 754358982 463441186 335234669 464962538 551320997 55054649 80646449 268516135 75407038 206328808 444171066 590237140 526079809 261499293 713407754 37949064 279911154 328807886 399709663 642123565 21983179 792346031 155084240 26263039 434295120 751972398 318668180 763070049 279415848 711345603 444063821 862789865 607256565 526143825 175691611 56719203 889840609 53560022 136200120 239910962 899904008 189158143 232817642 226619580 763880681 884493911 620667078 883660655 807364977 488427565 718045002 114933552 342497993 595461855 309662081 778344067 928356457 702754111 106209556 55168868 276823500 595063025 297005727 411403321 462944532 254939514 339577608 89466430 512552109 774919247 931824551 458804991 121386442 722719550 529346222 862799100 934542575 427574292 278720488 361200730 635169204 26037917 37469565 796430979 149968258 831151964 146008631 681220009 784821724 613006357 758198246 416779685 225780564 707039060 867444790 557340877 608936528 410608842 252076683 927334164 14181819 817466336 283328417 145868461 740889300 53593373 463772584 515202430 166601421 861993171 825272408 224632086 335632883 696121527 434610200 448170773 743590465 192590892 837638693 225757850 659179566 734609922 894403831 97935798 369830345 187312667 964791058 913150859 69043343 983771942 98380288 156932368 816744879 351641539 872484743 699627493 408549884 456854031 558725539 811479077 970329660 359384501 193456374 348333406 521236057 230727611 910021401 186954824 898543289 374165847 609287836 600870219 483032484 671655360 981669434 70180772 518332552 712408750 997748586 421720273 48211470 94158228 249979613 688816255 870063649 175946004 270921621 355396170 244520839 400447716 884687069 40715892 555655264 60656476 246768921 381754586 321258492 855867064 11863330 163993155 173220675 214492158 210354219 824383770 116851181 902181879 301806115 983546403 40084726 753904416 801637622 86259369 347651646 485255881 915014554 208435234 621271370 39965585 482179102 278036761 154394071 669131032 505345000 739134028 778938144 175735051 578149734 934800221 687739823 637163060 566711058 136206061 146755637 275538780 619898303 958903977 707676502 600048256 572221225 407737975 379991482 51893174 943346184 31675748 857695636 382358209 319685109 375421560 56066488 473524697 830456258 372077859 283056139 179557180 768318293 977626412 851518696 138814393 313412283 88764531 249304321 5761181 30279832 977799178 482230436 961134974 653012220 911436327 725783491 642658791 789201275 84452306 442927080 340644573 725794948 703052922 88523638 572050740 24047628 451085597 35747052 619387481 605990061 725930870 487652443 799185850 813573678 824832215 883340784 735292203 825287796 204095350 452279329 96045242 371236647 123030076 539228466 372976816 17784539 441537994 48355005 140024551 180606353 191669182 858274411 559042616 109736009 294263254 50042889 968288592 107622285 799552030 981840677 56021942 398236229 947786560 409268248 372063551 968800423 130361208 814925258 713009675 370452446 450517777 765932375 298480908 866880832 717198874 992186402 913503214 206544269 121685306 380212182 322918484 115791788 331989343 968260498 223811334 662411097 595869920 949117368 689030480 950080587 46866288 849701893 459733135 573604605 118167684 803220078 675160846 579344799 943811344 892457262 371010706 138465017 210229385 213224198 533381136 400850285 644259879 866812537 861432944 281710273 300083800 693060669 459554334 759515295 13638606 676760325 318089339 45301607 683879300 843468198 172521805 995439496 755327073 896854447 555040353 375889095 243568352 67670041 470099892 629278819 787752643 493974430 107103940 934042246 170371394 643486824 777724183 208029933 132048931 202125119 53757799 388211018 720282639 956147464 684302294 409114238 174219842 196795891 404923659 217454289 941656379 957470153 196275637 948063199 474257489 130673713 527819338 486892869 842664548 347651734 969057228 167002799 162979215 839116540 468555319 826994317 629027018 769229561 197893641 819228386 595379778 416982686 165261830 364722835 128292006 809203177 725450226 84148774 939862318 881773569 619306921 808129135 863937576 645692463 946898618 322905806 330292859 21222715 287228973 342896176 751114297 492550787 620632427 150758342 649844899 708576500 174161295 577730691 656754161 437677629 550526939 51493925 137407787 202563893 371494819 211348515 189909362 595260632 354222670 32286148 178460900 404426752 698346398 98247086 38590739 114238127 894334880 978363860 683906322 71677944 525647468 290801113 790063420 538923043 546360383 554431058 191250389 535838287 369639779 925087867 213843459 298642737 267477293 992324412 463055270 666324369 718212797 679389955 784998174 632359503 476065837 104647481 429196553 561352753 601112471 874674423 583311152 997972529 209774204 32658096 901999092 855582801 19649750 82023391 486005029 736981465 874808808 766082804 347769726 36139885 744551667 306476931 312586145 482440827 740249633 55784681 554641588 67217921 354870736 973237324 582555108 470264640 607850091 191625268 724032967 507258024 948171402 636859851 517517349 558740021 125802382 956640359 970911041 602881719 256692900 552289529 902234290 642888075 297305417 207783003 408094376 658696103 752519694 383266665 4403672 897006694 48523156 338789402 490427191 482869073 775432724 17986821 237809406 289663112 383299153 190124421 32188474 545360406 581697961 901855318 163114946 248676562 905990070 524270562 868711295 98961360 904029966 947104999 842346359 900475192 633228467 618746953 529278952 205871383 101559198 858426092 799524981 897679107 879542849 192546087 183477502 551968675 279771772 728463216 463779664 535663129 538444923 807612297 718535075 958185534 639343156 47880562 870999355 35640815 62553677 37501084 910817354 946046045 366856134 47089836 258283778 450633288 917133207 41467801 615726147 442932621 325833083 556066244 84714638 429027146 81280106 35484808 75249462 815968000 21974554 373994135 604367127 759771863 345799927 854508496 146323397 288028398 554213406 947922631 752942320 347555653 831382489 937039654 321186430 726756499 817511611 598821373 136201006 434437118 166694112 271650086 136258795 726805418 253550433 788669525 250628892 476108215 526441413 315361155 940028532 854582213 380499890 715383944 285181009 992693538 460374722 516331400 551028471 242650708 956717543 647433895 823320966 279471841 586514402 469707012 311614461 191116318 463996202 525195646 621528356 967838747 452606180 58141671 892736744 115369194 244378190 372221330 391764392 924904788 73161583 146566034 211481656 380988858 700159694 952473623 653632330 254998398 250217530 179635318 396973309 552682719 248459593 540049364 761185438 83904611 320504032 359136814 886254397 603517854 863728729 955956835 143727644 735503391 589778810 298421703 29073968 993926110 402594031 811994884 826694041 844669428 789801736 801555007 521168406 267108390 661810465 714491964 794745162 2916085 804605256 650578646 948711838 116855041 130145875 413331125 698864821 826307825 940459172 734337559 820632695 568532375 539471821 844334166 72947259 563534384 465674853 147203351 104327534 749818395 583945223 488177689 434665597 38667876 619888186 961925663 428750889 895332984 558677085 372705731 331906388 58053229 917047033 614950964 216918355 535000113 49679448 230035376 847703813 582480107 589722288 449658867 880628131 838487519 892801043 565690640 414193588 731235144 877506768 258233304 91385054 189797392 838374792 908932741 963106103 135102509 114723345 397915681 892277076 797603236 976879322 385853633 828802839 77078586 936153681 226362330 880516253 356367444 830875197 547867163 736600151 876362933 8022808 245441359 164207702 864874957 319843239 440863319 144980318 601947347 462806132 548871469 905664324 952746742 835689986 877462046 678525986 855433325 585664037 187565536 210160367 472692323 30652748 457387549 929509267 351647239 347245054 614592896 420872956 255311338 694391967 245928404 116599960 830906730 933363664 530432031 583095212 65779191 496427104 888572084 336562714 686430360 789568369 543136000 980620628 232185719 140127574 933388024 700506836 992950101 444675415 829017105 246033335 438284355 13541226 392830956 586535732 883156806 613447646 52917940 445222614 628144431 300195536 259884219 153437928 775923023 701844978 1422603 869032113 41773029 617116693 719089986 766892588 418835110 563889332 386738298 247643449 240498434 296544999 863636439 234283181 991227258 425044523 897058923 675116307 86256355 355283952 31729820 634637764 903791191 249206502 400997795 133397686 772945765 258757223 699376061 421673612 986492351 685073609 51847428 621366710 669712166 414849914 99216259 943219741 126324497 783142543 558639150 228091268 75047100 347433024 641541599 157834654 549597877 409569876 61469705 222901805 3318251 726031396 595985440 368500539 335470541 505612995 42326932 715969763 383898261 681386578 464025328 501518868 925085884 777163334 410619116 603850245 978061881 650268480 432435421 986393106 285499862 362741195 768233334 7980738 939029275 142547240 943848554 286501475 37906107 746176568 319617206 995674599 352331860 808903563 398813111 772591519 156236596 271912768 35040996 769717652 618180433 845958283 915826412 836427988 267008625 218548577 74984881 149396604 809149106 991107178 947219264 816346943 887187597 138759511 161437520 480583111 680305791 56157097 97434305 540492671 110985862 806460834 788123451 583727052 956971280 248238516 908000397 237274605 958061844 65411359 542471185 854258488 796258617 201549324 929249393 970977459 174030240 685374723 811949666 453124036 781913289 800950887 526936962 320984622 224520135 730089546 237081176 529249897 304866170 895374466 357111621 623936311 208239879 54776168 295960703 308108817 836492950 912675168 922699301 33546800 82685613 165133732 736276696 600010684 579728708 530040184 858929583 179268570 217135840 287308489 307049379 755782201 411619845 752134072 784981671 995021772 735492568 321269757 564914059 673748073 921625419 443321167 303351224 979358666 638613702 440510578 490209333 222409766 761826932 488069707 509112886 693291432 56149214 983554005 491331096 905062203 508947899 365327642 646281484 721088926 13086072 20475876 117319370 42561925 880137996 256288943 353040553 427012397 852625470 407719377 545595328 942350665 61822946 735275667 766171014 547915342 655977175 202475747 104197301 67015995 989817683 158909364 454235345 666568327 153219782 826864251 73417861 37210966 858817850 819229591 353056603 959589914 730730328 5158143 862362617 969780686 281680154 496234025 374840426 357968573 524230915 767221178 157664090 131734268 621471474 129791954 548665642 452028625 951274742 456724697 301916141 602982819 555737479 818348530 726432556 735314178 267392295 520331335 201400000 169382849 896541970 545256127 960227142 213304985 126907293 206118689 4440286 702920558 754346836 36960140 113687925 904837935 51326937 62719891 394785842 274310295 444419350 540195667 509845 863551296 151265002 271310419 966431461 585694786 978330467 987254078 260101945 461261600 18046761 970532498 453145903 449501835 403299512 55930339 870130781 316711230 68193409 499206778 481620127 161810794 71863036 509340474 565443217 841744996 408408810 124339007 443530580 449548021 145222439 190201622 969802142 987253421 92159697 480945823 316325772 77037388 271675378 31515426 426772673 573877172 889068854 368437609 127953006 395565924 213154664 901771449 891314755 815958694 291460660 222695582 510508414 785015655 365804576 816447433 174693193 995709093 227727517 236281751 554578860 916947867 724264844 233906269 874243746 86845793 866746329 577273422 42724024 287138976 503351858 391355968 870575676 771584573 284745560 226419457 419980896 411388198 345774927 679611918 212304154 445747259 602592638 118277792 190716479 837525868 441598931 581911058 653797452 75171041 874349335 271179566 155190198 972830734 69308196 541085837 901907072 633636055 805536547 472598656 187867947 723115839 587264489 540210511 347781454 555078659 817556695 475676926 281482270 986464232 338493369 498745554 85154559 73405670 813623643 75986807 998662097 650627252 43918966 738049577 803069677 248614940 821211353 614336407 946755924 472776438 761107489 286098718 242453260 3151264 164775941 942483512 568039369 327491553 177801590 823942016 903400791 880270951 323756391 104321546 286925213 339999538 833388206 543600107 381291494 643980610 865671809 83054293 93514121 45810116 300873319 702489504 14737528 217257463 351478457 4448904 15639835 40510841 312758531 271218282 612404156 401056887 284599968 2826807 100500043 815598284 335407408 935287236 869608605 700059418 788517976 207374312 337659513 539147024 988654412 111536749 309827741 105629328 902820372 828082247 901041239 147327696 396901989 232988974 142238819 431204308 69874857 806310407 788781017 981678101 99463409 464639921 386460188 154313807 931691370 213151930 695905769 666460687 928879903 117757363 151113391 876464931 52612389 972043033 97474988 428851466 683340268 72628256 33270316 146497605 881651965 894647351 396025191 262370158 746345198 43754678 312314289 298759972 851360624 537081129 246104164 276820638 36300660 863665744 889909165 172243553 44021046 850717763 33170461 554987697 458308509 11054686 608828431 27244670 314172800 771666932 470254429 932617502 798379646 687579157 879969443 564453163 502128029 206277490 506207408 898899748 524518987 897624245 794325939 959106888 937133321 226893054 736521045 767156129 758988113 618397670 440383678 659658487 503375089 494690386 8952424 614729785 585293358 43873335 226965292 307005277 421800974 26106967 848919393 534682760 456220133 749798532 826235714 327485489 160665056 712999019 721961517 666041134 496974182 40104747 774261530 319570963 33472185 694868909 857866348 157255971 286959844 23470591 683111159 404456346 49242853 256352280 386790391 960889025 557858321 997779384 720852822 593401107 479367981 277519288 942254493 426645775 648862487 338792072 580496735 993488825 500471834 5161169 538790011 338810499 12332876 971092020 264526621 547183422 394671245 479970814 6864244 645929531 31477958 863312260 494733176 16116680 304238139 637682262 346896042 317690976 459272542 411202596 332424760 725732117 885033635 707370426 471602125 861701103 975212901 490367607 79626322 908994022 89675575 162394592 733535644 99750572 789219657 59312562 315641128 720668504 727762531 817478896 354057638 720428740 13895384 237699911 164037823 506252784 794212475 829565562 663316810 807123409 579324759 977216004 377971924 863723639 851394309 305915125 729837911 846240353 712669679 443473257 797864258 417519484 433911456 840273266 699246303 363523179 682176156 588531692 492203057 195614526 346604464 754549177 128205348 95376523 646857067 544881856 733756524 966331655 688100324 625567984 650931954 255707978 767718383 54737488 479076310 664740899 598487254 676526270 791167323 29808869 731181309 73598011 578670252 436798718 671588008 277970943 726837452 670655015 239766528 49657686 56278345 778680200 863518877 267579377 481766543 124115507 290117926 56224991 164784265 718108467 206763990 426073925 336642370 387855972 669820030 113303282 108732066 871287164 547932209 613274613 911579027 71550761 829003939 36879151 814672823 23783851 126519774 979957692 118966975 276775014 384952745 952309080 170371030 479956315 361669873 863585863 267975162 102548238 414742629 186791812 110785425 342158761 697550839 193534066 60430458 269461493 805695188 124727980 892355196 850940841 782319136 807938288 373481243 557146158 42136622 487402151 281948441 433369546 422536100 167648077 93846008 314788350 694436026 905194193 296943564 35994973 420148355 399775143 307646621 150001658 874222523 243507934 13511011 103289364 852337286 682061076 50022628 724931581 618935876 700330771 211441368 124285882 287696741 485366216 882566407 187182292 952943355 510591220 645125017 132803746 728816968 688341568 882628330 900598370 157550489 17491809 877581891 671649522 301158976 768980953 105812026 556149652 735505202 403088144 900472368 68112200 152250913 217375703 768949581 573508415 364880153 159932118 555095347 795982085 530072854 653753095 888838695 735072375 897497889 410029916 530039515 714448502 861291960 714469361 96724445 681469489 664983099 884366829 494335184 349700695 775833346 363231919 590536380 809078977 300151988 792444401 322310707 61745355 716434610 75274037 831479916 828243339 727276609 788705974 689656419 463648724 215642759 831545770 832853980 988169480 916573843 34825908 717196599 716090681 320944135 984137957 196835189 194911714 968759904 335150058 868417324 299210691 164856501 370277762 680950307 764256511 634155071 822945249 477902592 501265304 267498547 355856944 127995536 762742718 923738011 992893077 584407272 848794760 480517415 608441780 30049457 66241950 719665146 152263146 272871562 94271864 933110992 250832622 397264947 140431703 889369857 80850972 534381457 431015454 276993839 267019586 261342458 628506330 513454879 118590448 278574643 871846278 319039579 884356669 229242039 825600931 787388893 336868663 535841933 559325671 669349577 12766020 282917889 561753266 414547293 149910171 608194067 646525130 728420006 112605445 243279960 405859383 669678781 378357345 873211180 100772931 371367381 92712735 778710557 578980867 539645716 34021686 925387483 37955428 135254346 305352618 785327802 159595586 976060705 276566960 413683666 703159588 124654970 434784612 136452253 649147514 820654056 201059605 123067504 648746807 855774489 169546142 605575653 140694846 144272592 525143794 772645222 187470866 328966114 501763776 476206234 931039002 977128455 604592167 2478428 697135568 171815891 156377742 71027773 775058346 378692924 251624158 877720590 141575430 225164272 369378548 392668854 946281682 872604502 21453887 987497717 152533996 982918027 780114364 816503321 79215772 600730945 704753794 266484369 720159235 875067604 674953864 529042497 887524062 544524424 479188684 915140861 70528481 936495430 146997169 318514528 510560081 773928058 625802659 430590001 108253576 21855952 80291946 885962174 868056394 319594051 370774860 75010069 959838899 553943011 490339912 115176271 214916056 724138030 853959753 769126247 571118961 502100918 876230330 665182614 361746761 545858068 422874698 690220504 492000353 457618851 207963827 39466694 140567794 744887854 549018658 930281795 151392584 325585432 949135205 481645880 456580938 930418084 914980425 960705604 141525386 986507401 236002071 96503862 549757837 477573742 70288408 728159335 460484390 76429077 160686099 306812624 762267927 352460626 331984340 179759877 132681828 217959797 399392429 77202747 230034458 910797796 204011353 642708480 105646435 911553205 450284461 232127041 714411211 468061165 137720129 593074364 937677320 424953711 444018763 186986689 588239646 186400079 288045099 984024683 821611747 422088369 33057135 837606526 175695848 413948964 361224656 586988371 56144224 585995873 303339366 409387684 555815151 836899139 597687769 83197533 7424245 623248033 304144191 371735311 232108962 455211277 159762000 170395399 743025697 235137172 717031162 524427571 107893813 678016906 303183055 156259226 489959425 820972324 91275083 554777608 740598095 681452109 866586287 639610748 491081740 213962663 774164543 90273798 184330485 823442253 903912317 174351618 234411051 761476214 302052831 89025485 112752263 20134654 747227698 745743507 192500358 832146293 659750545 17515143 13333377 21182525 847020534 385475091 98069403 347996530 473177022 272966302 512825666 218860650 214028057 433310159 281867783 532577315 569537318 37167401 271919798 681371419 293479107 55927650 690132950 942506937 526309714 306521489 617933138 9812814 861488885 806747795 803201850 624240141 21363680 490843249 440048455 690196425 866264886 21015214 927120375 987895100 674473384 306958927 191933892 408313557 699683655 936685868 194646234 483471293 607251344 148301358 386796899 318167548 78086927 342838485 184872899 812178748 598112316 601357448 380882834 951046569 259837210 412684284 135546343 181629091 752661713 903459675 276213424 732431597 102673765 785553417 548088840 506941587 908391717 80844374 185758241 996451614 596719128 639950086 962697795 550073955 108596162 509331606 879601989 864733797 342361393 739313850 384981663 342621900 166332789 128903846 445757102 700826853 398350795 515008967 580090518 472375270 568164179 349564718 397841935 491787715 610848198 869414692 329440932 85079707 960631197 312013446 691462531 980822349 648265439 434335650 274629922 897056038 919904440 721499300 536543464 673960582 552406230 35011873 127512427 960526058 702775381 281596508 175572827 747475850 57913713 235939194 846316171 117227943 81541803 133201902 695611852 971919989 337647121 815366094 778109294 246498134 116999598 276799119 190197713 24259411 19979606 52920965 752042985 58468393 695115352 505490310 864376115 787603573 513799875 380814402 563222986 734409329 916698982 214080963 760256266 110281394 866589388 817550502 200361575 330263044 600017810 436414487 521279841 813198386 352723796 771960805 298154783 74850713 645625223 738261098 64073423 81865488 228697048 604442475 499638824 285400748 821295873 133731254 695071601 223356330 332057118 642634377 876338151 865304339 743868414 376181057 329823699 604915575 125476962 649647717 392570682 76001352 271176259 961776692 131994158 341571633 22044783 106199472 605410459 869472831 115101468 365209612 697537527 890752683 44958480 191817112 62158478 378680061 122821844 896007423 857613055 55448640 243636594 854140400 170988807 61459576 298474139 429841877 735001120 85324793 152488630 968243651 811869590 7188140 128800482 302664641 145602017 962578672 870419698 606836099 459121107 709236480 784137755 667054067 887213624 669477829 546167115 18738913 82092325 934469605 901951527 835446872 463057484 222957676 296208059 592446243 91920548 27424969 872707828 42826103 338577448 640416890 119997522 946148475 222724950 588396025 997959614 744033772 639068791 20477040 763105115 653939211 55348038 249829036 866750541 627748372 510719708 655922200 845647333 747918955 660802993 249127016 260884900 615813558 488841214 191542259 707117662 920389204 514906265 622999527 943351799 761795241 581595896 297637946 277604246 670267538 804361681 704778671 140290450 696157828 792315499 267340465 625983348 365500042 935851961 711469903 896417164 488078329 192515246 366838554 886374762 205427394 268511233 970804647 793372077 736404103 465440592 848223481 839527254 757768018 459831785 381704949 85435201 862235003 65829805 210175317 588427280 686462033 769012779 919740730 368959974 155805038 347026087 699139897 298751067 530408340 634541784 516311623 849522366 411171309 591938876 963552617 374597416 381762347 741319450 918095096 695905671 238012116 734036561 524556852 438891659 202020656 313604541 719892688 385284426 597528651 134724808 239251165 594976715 361662314 435387042 761798627 240194595 327920143 438857656 160038612 115435902 597562407 882747827 947703139 145061423 538172090 703494670 128563167 896775638 63339428 877910023 626360081 488642801 723898374 533295166 448450295 98617036 213389353 566279826 236986433 786587006 291637047 760466721 472635777 656650131 428693692 251484981 698446541 946028177 7487705 972814165 75501123 193291026 767912772 827942833 242453480 935651324 148851537 505165246 831803812 811818439 312762411 100967042 846068971 359697095 121529005 19393719 833429584 405949246 340029485 957303478 366092593 161772599 399013398 6782560 620245627 507451969 326527158 165949263 53388675 93147357 387969940 130385996 389142302 332669969 639141718 756901071 690780512 431907545 128068376 688399623 316596103 154794485 190472863 278295133 737548074 733335012 907260384 697984767 867941335 687390446 320504065 927806740 372691139 104564828 190198181 123376495 610126813 819828345 354573110 920363374 505282643 905346835 870199887 572090391 388217019 185414608 720633262 633413002 737582828 281886347 199958480 120797685 839065695 804269015 161582790 593045184 458951714 823945315 485839927 176836049 102842808 793270590 385249880 256347377 930241394 945974330 969106857 340217085 303268205 356553252 431654747 917874955 457995057 711743577 367942796 758862494 778000261 177420573 759705883 467960892 806142694 60925446 841931596 790960785 678355670 678549433 206201963 88656031 408989434 618088832 78258347 203762862 765972103 434961941 786606325 40556801 798288731 75951627 748051308 502140866 293448359 27452350 343614491 336346843 119919432 827250930 401524095 600287720 806871177 68641354 586115189 133353394 535324456 742402120 45530400 953101155 128570383 723569624 250255296 703637443 49290106 320929570 111574722 730097899 346018955 207632874 123757253 970466563 890901774 269711278 964598573 100739344 298156868 980237367 16107044 813107014 784217715 945558334 642920113 28141743 729836932 48189631 582473610 207188673 242071295 408838975 450573620 589630971 915377817 166356938 686562476 751529802 218819098 307181594 973668302 365615970 535969947 363406126 78930126 386618939 153469320 472519577 645682516 325501466 247889739 907486734 432071506 354139400 854397759 858055684 674226741 411121676 603809452 778888107 129566629 174766373 668623982 180743160 747674381 420118053 10612184 959263797 313746710 866750197 187985273 723277433 89587485 920987083 218909838 928681193 664132819 276438471 29659469 375194657 112715242 387405337 546879657 186269983 697735507 143167972 168855858 549799260 825287419 662939626 721877668 109844610 28970523 785977065 302825795 208738762 331612521 636892242 767505688 239662013 84177338 965241234 189473227 283595078 92738076 532158826 723363111 851249653 130053168 223238936 778421456 661976464 54054764 6721262 732656615 381997970 682211322 318540822 31781200 635242119 130677353 38856348 299539120 536876551 54223827 25621340 412585632 218993501 245552756 96198383 647800675 671209907 537597157 995481186 762903772 243693280 401245168 231766879 185966178 985665263 607245821 376446240 318764665 164952598 913262686 94880262 226274075 866442058 731117682 195910703 491376034 786469145 382990539 577041459 610615608 536955652 250877874 540551055 189374764 995186397 313079035 106820996 3607035 269191104 18889794 621140559 720602142 818601648 487683776 302651542 494162774 175976513 428795026 255769067 243542918 404043340 40469476 570577710 103752805 325479757 524293685 438172269 262067894 906191449 196307388 528523719 502641684 627642208 859019993 781912805 740270304 27363737 894138666 590091243 473100884 389997126 975438049 181201790 504706897 472558686 711910873 855139832 188517918 785752111 552654792 984069169 100430212 679626244 674155775 479152788 110290626 755929572 100030267 392411094 815505191 657522475 438979591 628110517 707010425 486332082 412144561 306621758 142415811 44610859 65914827 749908293 783409728 390679194 364332426 28139784 287308382 143280847 848341864 535273227 880282642 82475509 875089396 429407167 721488649 809770245 687229836 690347959 227237218 33456537 402749341 484180533 991637192 896612723 356660877 69365790 877772675 593785034 983365069 628800521 732737323 192784331 409851879 600375560 415189742 233704655 759359316 746336702 532803964 298644455 534187198 985588017 738743188 114023839 252186821 28993629 64291755 539538041 758657519 41408838 77094510 688039255 756559486 398975501 540386944 660023204 468807165 669970891 109476301 697589087 625767126 204521860 64551704 958778226 80251087 216805988 337823590 298168630 717579911 433546949 919795653 189901789 258194931 344892708 350929011 473259555 416488284 54087504 238139717 686232320 175645277 949721724 705885803 453059132 584912852 596044781 456114573 585517313 839473504 629133546 206529717 663940519 967984943 779662416 994465920 348109238 632171973 945437075 103834144 1666088 422434277 842901533 619085168 427776342 584784249 448499791 631384133 241450214 412166461 347184203 455981883 175478230 530307728 170539511 948298987 51549981 741134497 505306807 148361807 344761538 225029970 87161666 993932908 166818744 195995257 901985984 835283903 97001859 836651091 16964535 30447038 938350374 887775070 746855154 690196656 464935074 521529745 219435562 791047880 463375006 62546596 826512825 497782054 962722693 31279567 237786027 160234667 930820804 61386252 330327724 620319777 546156536 285469808 639056230 288703754 274527127 616507968 836511805 961438206 6740531 782899333 115478427 117944298 438852158 710980333 1052629 838057889 837644796 7818188 227838567 127874395 747976894 9417423 978303473 20738897 410353526 990804105 155763074 734940381 340840028 861175755 777048966 511362949 440747058 524728529 410189811 204086848 28767928 32276901 621106271 146349777 479191957 773173451 833722948 187190246 76142590 66827611 45581760 494300598 841991294 341487983 703774702 106831949 458273836 121805604 31457681 28776254 291210420 895101030 987760913 836769848 993252490 525565312 994566819 17114567 932126749 582102242 899007708 716893477 449011711 725723047 139586904 51703537 605477566 570700752 262120416 45884481 955236644 518073774 192506110 618338747 897189657 103632234 297407038 533898641 554327330 759988301 433557863 798216483 745519354 78173532 829898955 865895712 932833079 978990076 555231626 527145598 948462534 268609671 476183858 914941715 59862903 551280371 735351279 809218178 943699133 817013680 872878337 876693483 926540044 687278469 382700161 756569725 819941691 750369936 310090834 517331746 441942089 906652028 636954490 572254946 907593690 739138429 852837183 722106754 949049371 529994751 232706877 387046584 950927651 640939005 417546228 837655978 643224512 104415112 909534946 392409106 434774874 212662626 855932228 633080386 351303869 564440424 28287728 23953933 911546486 270091944 846170836 772059804 717235252 827365694 377323676 535845750 55540723 682149351 11179914 477928677 338201702 255584751 123975813 705948107 370802248 873523463 193753386 177673220 589434798 658627982 962132769 574931765 482561747 866793224 953467154 390222566 499716268 866131356 295674989 682735200 764386829 411539514 51804584 449410343 233524691 936236359 945896351 782698314 48288658 834781746 735846599 101296570 275248636 228722678 938494236 888323388 334489164 256746976 190060640 3019577 523100759 136431692 222141353 684142884 52851343 696061195 341076603 623193619 845261273 820580427 226742198 61502766 378603438 556760385 930230607 433862794 339032882 445347852 522021358 171793803 386878905 151867114 946141498 756120895 763620111 724798785 634038364 778031315 22842162 667925253 76456911 351221618 258560144 247235159 206212089 738869298 490470716 211385697 876648257 246492609 913877474 971082221 323392983 476509394 442019669 647987503 268989401 439058870 547252376 783991880 263056197 899893410 570398311 218957082 341773705 297780051 657299654 513375246 933330146 748082362 604310611 254001092 308980244 96184084 98747996 163002106 971789589 979283842 101395120 591920164 787977872 616509538 433632021 16511635 394506865 358037215 341430198 620237491 808202772 26225043 885445106 165567206 580905373 904155210 170096298 831450647 487778320 802012608 943147437 495307391 555592917 565995581 515397902 240912877 188542329 479118185 783913964 802553152 348012390 865140891 126546961 619637554 992927184 687197842 168166631 175650061 164665769 410849367 227079096 63529713 211271388 588322847 201385730 670286587 785310732 422059906 827678412 527243059 907848983 102097195 854205614 445986588 223804680 680470774 941155424 425817005 549179431 778518744 867609061 730680711 385100176 660634566 49858697 408585910 286500921 402576916 571878231 536155614 38370174 980176499 30413720 842775417 500369706 217823223 695667357 443957812 144894602 946968680 266963113 721223959 645056033 954711511 582000909 522236386 426889517 10548656 984322645 37960880 969171755 676141507 94139216 497135778 209066858 759998871 124788776 771090581 699828160 747858131 988018660 365632589 352016181 388958891 381869245 439207269 440237371 642969004 230088164 765719624 913359386 993086662 940974341 29516531 583620409 958671643 180555778 338546266 404415517 43957454 104759235 354091606 670024286 192236943 426058114 752696120 33251223 685142887 705993225 472223452 341790768 7507996 228238742 675173534 570026917 826525184 437525460 962591347 25313890 819007531 72957970 702356588 443408581 275005042 228682562 649003912 483111288 917194596 161872712 693220593 338040782 235443205 798583605 989796876 888033183 396020542 222113009 577906252 20580038 87788881 453357810 459921285 318893081 12998901 744431597 637611603 637851856 952962374 159362005 366397394 787772261 871340043 976695389 717827203 176483978 988521644 774782128 418452963 43180808 520852871 486843429 275605812 980869089 700590566 69307419 654329029 163022152 177066862 769261659 492198264 267857151 988725399 584053539 789947461 157322949 944578720 513869458 198126387 591761649 848074396 658005850 242958930 133650064 103037968 517264766 903628959 902795562 225420075 734285438 663263296 572343760 855955034 547276354 365666794 234381471 685624792 342800773 952722245 464336533 455659774 59178721 50078522 78948593 94827995 914850159 814402117 993168469 180662070 824020420 603223843 866532439 672981537 346211990 237749663 207541535 350347268 877144786 499337088 200827993 394914662 789843555 705434799 49231103 818803775 718305947 607594936 291635271 678673678 673966060 689228602 697630283 547615550 490315894 827047102 423706565 87782383 494416176 332207819 979115701 53417127 457804640 947787076 68008097 889274251 109343437 463434941 924928932 379005787 613194284 281454589 355022361 209499854 367523253 838426054 955612728 985358383 918876725 313190974 598465497 586194888 380734229 771890258 208256784 343755925 862669252 81044875 920424904 384128058 349348219 661236650 873496362 777917469 942103392 397997153 362281410 481523663 654989021 344067499 693722209 138362626 668408746 203686079 91034475 437050430 451562857 812426435 116597517 905137760 650083283 244027993 786467523 146725179 848406937 177218391 843973336 131315727 112042353 427344689 442370489 677406068 122195337 819515769 848708649 752310283 220315888 907776565 308070484 715752834 608723483 975762180 592927354 121466773 701377660 852785139 818149428 330274600 582972094 293319297 30850132 28233476 179843712 595827643 566090793 623869514 476397490 396053547 323096901 423426809 322520514 646399580 418638944 796457077 395216472 380186826 258517491 347334886 940668754 498174028 289808025 892761555 119474054 389127951 856081629 119551384 990442153 901833244 865740993 14851297 642056864 283166289 444061399 368042425 677015196 998168962 928947857 830804835 982099790 670180524 178691571 986354568 964095780 383813532 578286012 727206104 748281783 518487250 650845161 555003732 204759751 164514543 986987553 283971430 172476668 983607209 638984591 455785660 364081051 354843628 58589032 2440095 438576005 387663881 95884462 763431919 88394637 344973853 137400620 705690885 397546020 555974041 916376661 908523442 976510898 492168289 863370434 363602095 37915530 310923622 291347805 301811785 892351034 704752706 789889007 287149922 279092433 105565052 462257929 155047002 706066515 49198039 712466587 259928301 693630594 242784438 974223659 660525002 821276344 180080387 70798294 904795712 862121734 626753134 859636873 680915551 852661969 425698319 409570123 369387518 23237820 716129743 575558188 525625453 184822205 574730099 942584898 805014918 200989656 506299059 295106543 509743422 389791744 545426013 598347305 653464073 541466065 536013675 180181592 18977901 440461525 201322890 113524873 137038289 161467356 497692748 397010667 513043508 992026557 646425866 290016413 49506994 342060026 498169224 668907997 193676598 938693149 434575461 169634631 869046396 516041827 335575643 260180602 766860354 918955107 170058956 356066361 396190766 671398365 309635539 55374778 659251234 793058507 772275337 327641571 348693611 901204724 690345885 915727258 598555846 349848784 463075303 311680509 635935605 834589940 187877619 508104387 79513180 348699737 173145741 926643849 230464883 821508730 356405491 364626173 363014597 760315780 325855048 201417638 509151764 574377798 879399695 534024960 392813134 102770040 83524298 220423455 630725075 714025445 976608040 828974338 717918175 559175096 640142002 664759348 687741208 38861072 429079077 926503197 319234424 882368737 538830651 141020824 757478374 958536008 254524600 302633606 730621410 857715187 311685141 822403340 47340436 727096259 878873461 301123217 588865993 236751693 265183564 191448036 92282463 635220184 970268493 508207290 821733471 156437225 221159302 534603466 264295228 193281248 680615586 217366923 645556446 30204357 621187240 220726280 212625714 839538781 614099969 298476170 802531037 972072630 896646183 565672626 178458877 602252235 306988270 746194294 157578928 288672926 239036724 558252404 10847343 853453484 537380111 230738157 330266057 941376380 660375242 690174621 179158847 969158937 799322580 232538439 932477725 838710013 774422303 388581467 248389385 146629235 425759857 253191887 564119565 875875263 52673133 569135678 160203968 6783124 38296154 267157524 507588786 717225747 755408199 535477122 987572328 267474070 141873722 83219005 662093300 253945889 713995574 464096068 812400015 750264702 298544892 283579665 893455173 242960627 266574001 27065844 696748142 713385535 525369707 385725659 96773489 867466720 372017002 872130714 354188088 486834736 444160803 276964738 283452229 964747453 906077456 646900360 217766012 165240553 146794026 866707355 337082819 833219724 526985384 11850913 93298457 86870290 231466906 420652342 755206382 484988107 488529050 83860089 180420464 478831322 387910297 964052968 614917107 207720631 208552090 382555355 896609191 12804548 435836867 991740152 391659837 609860483 661471068 146456042 87940618 769396435 265391307 840156310 526848234 936480770 278847031 686651841 877818044 167963586 273840625 618993152 105061922 548854524 123135786 839868080 627082438 985911763 930171568 979108693 476483959 925790437 989152664 130572678 376255401 178535147 913391591 42160407 675813098 449879496 863239553 910315413 936933343 41587365 967559166 797998582 98321396 470927925 428661363 188651653 138790417 577553554 880577689 212350901 476855649 868415266 306101390 246892324 167522043 283585058 266891426 613764679 903579101 959581975 398060176 76771551 41348966 191003529 580726853 511287305 932139357 996704106 189194563 25097698 824231540 430673640 946499904 852420409 304513129 804050624 605060366 644888870 619280902 335312981 928194303 180621904 183585338 742130567 706032577 271188510 384030582 861173095 320955109 220231712 367517836 588847086 656349597 78804620 815168672 826701136 915117436 631960575 798543799 884535514 430679980 919383119 259529468 762065532 979464884 658444632 493548356 956925207 236251950 294586735 922124672 739643959 752993251 743993549 137101964 949234275 789054372 369053573 832184799 335024332 835381678 997232003 793853987 22096710 274819668 462158166 796206738 449566434 765005966 600723615 198740999 974144722 824208328 800163986 340919142 792030271 241281998 852493424 443322585 707494967 639189462 586882354 565803627 404980285 693206938 372146003 966514052 622398033 507484747 588859625 720845281 823840543 994971107 25430351 33125305 166617945 555528213 802054728 238910179 50132835 503391232 302972406 663960754 701876539 15912005 622591536 589266439 257696562 862446412 285136726 373758512 5493795 823391641 442860635 512800606 421946013 580706569 711702388 469658679 339478313 592015028 78092254 854355860 759089680 865634271 912185643 881648626 433433011 956077104 180253139 569332589 326840909 807024991 990418956 501695027 530713305 978629176 613355080 485692487 742209099 413176002 870871923 380054282 690594757 31416400 820918003 233007129 660370094 464188924 610660031 440453636 918669801 211726100 514904449 341130559 820641249 901738599 79865826 23544624 203000047 47791380 875140205 340862811 710252449 636768930 844759295 695378419 26504410 297939922 535720422 339945584 949543156 128017051 543364028 445922915 962183464 877861865 475614477 537744260 39998070 937478451 682008079 913222753 205497566 490510369 861051209 614422677 184076569 647527627 852525439 669735594 628323456 624150764 609754129 383082630 830633829 706060447 746034719 72090214 843721614 602854895 978197114 133548126 137186468 105899236 684331905 883781862 681290894 620971754 949960627 524767095 614670329 817312544 493338798 921487091 494898346 55789151 585892377 57223572 587878690 867183121 788061118 144253831 201016145 660694093 393480585 736207388 71353887 878364693 798740558 27310686 657697378 10417155 257379180 766369432 595898863 67512414 774965666 424003679 696043050 937327316 915205609 143620292 737976850 28848415 778354697 247905746 782477681 66110344 422048821 85898824 121699200 922189011 938718899 878601029 175177765 220844301 904285068 155672789 483564424 30853455 723372469 235770238 224184499 84685882 740980494 881680540 955952207 684640636 141046611 114259662 633798441 724201114 463375559 752474502 678924321 301907342 513206928 674921749 618307789 848683429 491088826 899006651 857529304 897911026 788052671 964526581 129611275 279120232 991723501 43051078 412702733 546514047 714756896 100260732 436904564 715091765 591240888 823968918 196430327 427708407 222686764 978384167 810076256 511765370 475753671 919084007 1958644 617499190 746621815 259552086 283544721 904428710 794724124 744827431 333354615 7344483 307049371 348413843 117354944 260366557 782009584 295834989 791910325 373476148 831123892 344257251 594327943 303190007 889814062 54698398 497952705 206864752 873272456 734868724 725122334 333907617 308549979 778663940 231998114 286766676 443860721 587651151 717706937 663742537 893368490 316264574 444855179 273298347 686171826 846626857 745511109 235898072 470300066 861938396 127569544 940652393 22435174 768519960 319505899 382516941 556552325 281298672 427666360 370129108 419047754 730527646 35533353 178583663 904465515 371969322 513387229 611739048 928526837 709222073 576574815 150333281 751581804 260895094 206670483 571749580 794937106 201677086 439978695 298668296 29578138 340293738 267622459 908835018 768718713 91284998 883426252 993076048 192830749 250709620 464544920 124372319 428626863 903749164 849807690 261308370 509123470 88505131 269797207 269799573 487008952 411635767 562288029 962890266 47582951 610721451 329391354 850333370 29701902 278347248 448851385 236090402 56196859 130481335 25042112 432375126 450692916 956687955 207605312 361935255 370065551 510870828 855011472 586910064 293730389 336509875 72685319 840515222 323903968 6860273 94209058 991122014 664547007 872924874 241500893 372027576 8123178 316379053 634965272 82418775 255831039 687891078 714049049 106284654 389386436 963705966 720400258 521356060 80789520 261490285 394428615 283300323 257587025 658153490 379259811 727874533 274570278 108011847 650920992 125043377 403632841 220625143 252044516 74206079 653083708 806660833 210852740 127370532 604660402 450038393 884498830 255417872 537421666 722397371 84614219 707647687 171999964 411783644 466431832 290838217 2355690 474712085 573078532 898211219 863198756 102269742 817351257 559175689 795586163 936750763 551114279 204313822 759765434 220105887 127266083 368046578 870795760 413441157 287610351 465595805 775180468 563595447 517041720 967958659 631518788 332058837 302744347 466381308 152508810 517011990 773111344 327191755 338401319 31304166 536233542 23678722 533900230 864344244 63741154 484747301 216592952 67866211 233534119 720837497 610561391 977208537 939491349 158334630 156902643 993765016 573275393 243074045 559300678 179088794 170563698 890933097 661198850 697816178 265007296 327980222 856428266 428216928 773970414 397477000 290419170 285581257 393389334 787191897 433391622 531345077 281662378 515672673 448834938 275247178 600864769 573207384 14280474 87104633 980014210 428579556 420653792 390838994 845774213 407597467 831074788 685762872 291101574 639373643 103308526 900342897 586449742 212073962 709508247 167437517 738004914 468710377 729503842 759443761 932427587 386806599 690424089 801744530 241365864 966556584 139095877 700520080 975294490 365863684 744100144 288685860 696152197 256203606 865177576 593161394 859605206 684113329 69044008 291184045 9945773 689991008 890683058 145157584 186143549 568996517 61665775 850416382 791040346 416720669 353566425 261766779 192286811 14559269 578022534 742358589 115285360 372557105 176286833 375938582 461286931 837898590 63832860 386371206 955464282 733198580 155118135 662880152 343952479 536179666 748948435 125053224 792457527 272762721 786514450 902867854 71402113 170478873 282058063 690024527 592771507 525985719 731061735 517056789 876928610 418963812 739031156 427388540 16347405 692736958 465960269 817150179 463292384 301359627 16142285 624682399 185935005 266797303 292636806 87131669 301653886 48283139 254775719 845239854 706031061 9051296 454872063 779884139 997373934 442925701 417193514 605108756 697531042 492864211 139271095 557268901 98314809 52763682 204842984 244950496 439238981 115861744 366216592 285443400 414784349 261896554 145029717 850692272 506477988 424464200 850489915 265599375 295842162 599226786 550950735 721904852 898863134 689413411 534308813 676842188 198656529 941292846 774689720 103165027 995079280 150005015 88852895 648158287 137639539 985273046 334350913 61865745 28604881 975574764 651729359 2360977 257490327 51987027 33895396 633596758 778551654 600536700 954377935 671427161 387745253 778382391 544025464 320448680 237624824 132982040 323849927 175136822 373697640 917148895 964086786 598976008 851811692 784011786 643416600 952553559 573352156 14821260 387412892 512597701 293154207 600413079 30815961 201476726 671763856 601814327 334896358 645235482 296830247 829877969 768795946 666103031 949016265 605831538 123661586 210040170 650076690 973720309 649786267 966043126 287783052 505101759 871095174 649760714 774282460 701119246 959695004 448772028 935284790 744361011 384615295 305427352 211785544 15238036 777986086 989504823 161589236 989041559 743536353 395736269 18780595 797524517 962662806 816411031 105469845 365991136 426922111 80927333 736333609 327817564 204313374 480175615 415308784 42739855 928858269 918579938 457104292 588144726 24454318 13414306 399848243 758295929 117975640 875495157 481604763 950321319 167526530 5489386 810643929 906147377 716883328 183602865 788992092 276904542 122389652 924209518 159224850 980935456 105641269 146622158 794566073 847645785 327248516 143386513 30748178 478654135 186111920 571402882 283424686 392421565 577729680 64178212 162464312 435665832 14338880 562738946 435526096 758198397 911728529 383672913 418903126 275021180 621106349 933470266 888748322 887422784 417744756 774444372 602348030 380616457 509689090 301146483 878970246 986501753 837207591 330946541 724746840 538413155 617454756 185774660 500007821 949680435 122533288 181417652 692347317 911400417 62617081 994616670 754884224 551272383 833237981 127171364 502964338 309528237 954065231 387048841 170874544 693966057 160005297 613071588 879577238 695068410 637957295 244160177 882165675 762726797 731759110 145566790 444019558 747539559 776098819 882206701 132546503 824934727 96821963 625626172 478966958 192196490 72404381 814180133 751822408 441043250 710502091 231033248 283096129 102580777 873212591 51231090 591030606 889892957 335612395 645474990 505959089 156270288 743349496 64225552 856794201 42974376 156072164 959814826 981070251 808054344 661930502 348258522 398491103 135062617 503153592 551721134 796901713 599638490 448448059 460899403 644944575 206039094 590181100 602792316 732916935 686308286 855423358 617570192 74925253 799657697 862320056 8726060 934322064 315000711 226238632 137527015 464632185 602521711 608249790 679609417 120610087 98530797 984075518 220704553 466401446 324551962 474154682 852010869 765139694 690004983 316914777 585585727 386166372 532572782 612440436 56795165 213950667 210669716 99011539 501132048 84071284 5011800 779715562 121083314 917832930 845637013 170124770 682244102 711926915 934621585 125694170 230026087 72843691 612727056 823427203 699345192 282336039 291211852 448514587 816812885 309193164 539115356 685957831 392249940 868019885 280113885 151612223 353705397 740393457 370252323 650603318 301045516 220743845 116638205 945353070 401963207 140576597 551236298 829261051 26412180 821463395 807282055 13514435 802905052 873177243 907110339 787378283 895167651 544876241 102008736 584555302 430477102 694126994 29781467 843024334 803863505 22009532 7041512 911584874 24312251 253397551 23561219 218373963 378764843 452566896 556393097 570344812 787936074 489029908 439569686 23412600 864353946 496875974 622994605 746315964 558130017 398859556 834253394 638688504 950246308 148888001 845236612 599874422 26638801 485334828 76895675 640939322 514014778 912047197 663129442 115397635 164526268 647393251 819189398 813266335 513513673 750226430 104295452 155305360 538939372 754078333 903544988 270314390 142025428 116852279 316633312 147124761 113660566 565873489 763007617 526039181 743637425 79510596 211817449 2030789 613411554 874633432 447085755 290075835 734667841 131868315 586655787 19455323 565241325 147736779 110572316 624929505 326170817 476279594 533964511 296537423 718917561 663670720 440723794 3449500 759028760 709667827 845542004 946642998 53040231 117600160 721572252 974108937 881574308 618089974 152688817 284618611 666420369 775027316 737574722 464174025 909933818 631611268 153006723 32387874 611095694 539297889 23938599 374504722 172650763 815363222 619920482 3889726 677730994 427334144 467134948 413286477 918574317 364892491 555056347 861199876 948987223 850147105 896676812 78063033 192239796 532298301 533815902 826149963 955251107 659838406 393646630 726715921 580430195 144467876 483654723 7372714 869049958 446148331 791843408 176676634 80461579 711552140 422234497 949533250 493426525 333270193 299927839 817380632 672395915 310822893 56949160 389921645 797350312 981796536 714421101 959813257 869167641 499238172 567032829 253817233 862499577 194864927 814493248 134485951 337437833 141531474 786234386 840750821 348387696 531125099 536691598 545847976 280261415 260182372 535846285 755475898 505350636 963401558 804042162 931778304 100406517 244789917 377960659 691410528 428136101 480094382 756378946 856223047 957582284 786156199 684797032 720563296 751467697 813994504 845530000 662336931 912947933 416143491 606410203 653810372 928175470 340929990 347782190 713086338 991382720 947147996 435991234 483131205 263014153 407522065 531922866 102779371 382987155 563686733 949558014 242915456 717872985 751502830 10397331 730140968 844773824 400999582 524514012 148785270 503926465 701991410 443679659 492199519 933422549 568625048 211142946 216984248 651917744 324203607 422759272 905714676 739247506 746563235 746395430 943662880 665668519 690777537 938570575 752056924 275115304 226468272 202092734 831066166 347236913 393865189 976697279 327754257 24312771 102378586 850179934 196358515 264311427 864225610 677883273 580756868 44133065 924720113 60115491 975022648 566247968 332325025 314447582 111854518 402426640 881028673 647753836 100660481 719214489 681522940 817815474 951967374 216229998 129546124 461656276 273878413 578982379 665766715 266240636 462546100 818537557 131380311 333290455 762720311 936427843 932393456 961311866 381576803 350109132 32787552 214886707 727291235 15273956 443810103 25822599 508377137 76934039 827804089 957521115 132087501 881351661 50429027 73657288 350311930 560705029 681562488 665079799 678645984 167965366 940167981 711793045 126807833 416497701 99974335 681031185 774797128 792650301 362072219 276225555 223203496 837022834 874767702 620090557 699528031 875589794 404036231 482049339 147404750 755953500 948729655 999066083 383697790 735767380 105944799 94388872 602306088 709684075 207612292 604845404 907607670 534255674 370620739 462128614 301054067 977743382 462607826 678002628 487919963 543526760 787434842 947375880 526789303 247233368 928755607 869168429 915624527 332715054 300666943 837344779 404923427 277687041 651691575 150457308 874884080 923535565 347876566 217050232 8908414 901365422 355284443 765961029 638173669 580664088 857868562 713849963 564384419 376989955 443793411 631682256 745865837 767798018 241887969 332932831 637090791 577232240 2429561 384910526 369340488 533837161 858305335 655903893 778296667 88986009 757777546 33199932 833656044 799721330 829813630 424296437 321972842 550458483 323455346 803158591 551354184 15277062 783100953 632153190 848248495 888338752 274425875 427649075 839428417 794587147 100192972 17106494 977937088 272816362 594998828 19222345 328893257 349615240 623227246 129505206 132129287 110791259 265939312 693931549 290323572 789216699 16674720 508489244 912172348 742186069 215124173 941129433 963994511 471880609 132041982 992986889 170642229 111891475 652330232 98365432 434865774 122462641 356395119 63209319 631120766 949337789 877000651 550743866 763631795 579800198 753777846 49837180 423816342 781916829 426478596 36901396 216782101 395766037 557734760 143416152 713025668 88419217 333791394 217802291 793615849 123008579 528470883 188648881 851628313 503415906 445119538 677951951 442876259 928794059 910590243 448349934 423837038 904589746 854385248 43546460 173139010 566265158 472114483 190277664 82659686 295565438 904570935 121961656 519636252 424724795 753218662 199625718 969367501 192128400 489936042 444273415 38491348 587711579 450330633 764887566 499989464 423281201 653616949 228591485 764585701 319099669 276044605 966020786 320595914 543093708 458102687 319889050 464721609 815191022 745503243 513471606 727334880 742414997 350019982 869419489 565497728 909073896 508314567 683866911 463772789 894596340 346559546 575978734 671500410 616151351 157137844 463279482 446540324 165528769 180558414 575142419 79165176 165199478 314919509 430386624 232676923 988991812 716007905 307053387 13342078 816841833 974314447 153747285 508309403 819544669 139976466 468667592 49233922 426727690 525594287 648811364 64223852 904436536 226266201 849171365 955924800 687785373 148519290 191262664 342424920 495113248 703953015 203780557 557629606 676140736 521458450 856844727 255957325 658775923 744621964 294224124 430121718 631729917 107528490 361870938 982482152 53367410 10098298 874759256 328818055 905728780 419774029 903725412 903501098 666866297 864302453 447174695 135879006 225237478 581152033 514081547 571995138 618153936 446990950 305872781 373564701 400881891 474971955 100795850 628603030 203636858 605681148 376088546 992235799 621535317 643368199 270660230 800186499 762028435 824449350 832921839 261480651 281933207 891927308 125533660 102398776 837319686 4058727 397594479 688852708 785689688 356201458 808262160 578279216 755306804 590008480 726164744 363240834 300341380 221720097 658247447 57996726 849550735 120352233 546285818 314508576 869286865 12771691 4180693 567396234 700359120 884352375 180727320 79712208 438376381 113667719 519153863 177939480 587414852 320259942 373486547 1242051 851800084 306344608 426944163 430464948 878281450 199707312 999681340 548833995 450788011 649768864 221947911 833914613 164147548 863123980 505839229 287706652 886995871 682720146 320503103 33187350 482307157 203218719 510653512 664681673 663122282 401528990 352090573 679277673 274085721 210459064 746438717 702186096 240160089 836873588 804546870 516675277 113896074 935991879 383642733 113761696 992292351 527695244 332429952 480874235 699877980 935087209 372141691 132636676 416260358 41664251 39655742 756954685 988537949 386299152 711559580 607575443 237285134 189182055 818216807 401276015 935532877 374346314 738138543 219892016 734391874 599159514 698941656 565079959 362511272 248312327 781951066 823683000 296313722 757523660 978765431 562479535 955885209 993651603 300560121 112845980 573877018 318588909 625338444 922531853 966030349 314900644 479057572 115535181 959282647 824199309 639159639 855242900 429573572 184874796 747165493 509495726 201478699 985479531 669968853 978866286 731335921 528880613 21665159 200576920 10769230 454338284 834037359 851725299 592384039 28895551 538537026 72483441 803766437 30449641 34064625 910155055 712356992 320002901 134201851 897187872 148026313 675205234 833411482 398874651 898219824 772546685 878262879 211201860 674602295 819589109 573965610 698910509 510166917 119751423 560476046 161880730 59031296 658323150 761639455 128502402 717671796 145271316 624091553 3750185 784240728 735978233 293790902 82901174 577062684 523197653 236211918 940085882 127022968 527089310 47961198 234995637 139033382 953266092 452290606 511338268 655938080 811120984 679255008 846558404 448027337 928841860 15580541 471694912 236752562 101621789 596249298 984624667 996333359 202837841 967513226 845111018 160548176 485953861 849258597 856518979 357459514 196774168 973752075 592844163 164259909 363376124 889564927 379146149 641422640 444511477 471940326 829266757 488480740 861507192 504797739 276116779 273740483 730668122 831252281 926077660 404007602 856307495 726876895 739441169 866160582 704431636 514529418 606425533 314404206 493918452 404494170 690278045 524309307 544496254 631912951 164127891 186892265 397852951 790354607 943536676 624741200 173720650 241603485 142299588 364148429 824365662 329840884 246829547 735402483 875053777 226639428 998321135 207248883 161597247 124364282 705254795 939091784 233248821 474116174 317601436 550177762 563368606 334090634 751607016 529475103 261623635 34328728 310290401 935964689 181157547 233991467 126672318 167980309 578348622 853390554 906573955 4547918 422818158 208556659 536556071 867820176 164118149 442553408 98050893 671119406 284020432 280110782 511567739 652990808 586298036 60269955 608672458 355986854 960453272 988154593 255047750 744405318 846896344 975538279 248987278 986406810 128231431 627932023 129897658 472591840 539488153 433104663 410460699 42390913 741700470 699780222 782724958 750131870 795143090 868169616 75146387 106045610 408616763 13680759 282443373 529508478 930846853 702141559 894157781 774328085 219111019 139167882 473431957 296792851 555524158 173015394 880501353 114302306 251129943 259901376 268091862 635613662 181547391 367285876 852780961 402281153 276515806 806303623 484084852 785183351 945229788 649185442 120909863 968010781 484998980 957621436 705686046 873431982 59882694 595242929 673859247 401475234 7902595 647467319 127096119 96180100 587475382 792227042 95927651 669616976 863544578 544637810 817270083 4309392 710710197 935441054 761485009 697688934 86090224 100266431 101365280 949307116 655213108 601298592 402987564 760522932 322650336 826570295 951012529 266829544 392789127 408053038 527587109 386280392 490386259 624674097 68013315 846482486 211073623 898925348 615882930 647303720 845499350 630658030 546773333 815186570 176160586 112862175 683159593 668819260 618598597 996043041 789092739 423203471 535610228 392688164 865185436 350639913 875437083 374056254 865192834 498977042 21476460 528776856 624984236 823309873 343345796 996604091 215604248 958582950 817079891 943370229 504595694 845723022 825748002 992783541 960088008 485902178 63854275 807254401 117167739 189136376 428527471 933348580 403246205 530370254 353033556 832166579 51192810 265663753 695246103 885763853 40414787 372203690 303406409 28131282 434661117 914151910 512607356 881085486 283253493 806812088 10702427 730808179 169771681 964126765 519502115 181834511 982116144 390985451 771824608 595068893 471210896 4353365 671021526 380292085 577693577 199292413 993914348 969561335 649878964 493791034 777415561 223660383 737932854 890525014 537134074 93242493 156046827 709455618 202097323 298416817 656213791 325717104 159474252 593154068 999941729 714284591 642636142 797434765 708957022 556935433 332331571 657733149 428150591 28510156 462429172 862927507 753201742 138939328 237073512 678046105 722231294 991355139 644706760 628854925 854096903 680235336 829961346 131855821 362628788 95037855 54986098 550370056 143840108 112755700 859781724 610213073 85929788 484995862 159398944 475601970 916576688 692122692 153156653 742904406 848818858 240042897 820623903 460712175 403126693 20804414 460479136 15044446 793324709 392269671 746956287 394056621 190752473 179755240 565244209 965516548 843513625 978762974 482103674 87324594 623546246 616095562 898114399 897714322 397727749 170416283 822568663 615704112 778976529 935631330 815857530 372246793 884086602 582312367 639350212 626750621 906359347 512355727 832155776 989840350 304191797 38470737 819283022 174460335 434221885 836910015 958957372 796614911 425069814 770359516 372966222 961683185 575404103 886671998 182995059 267852542 751848265 619267359 868150377 114273633 606230306 918677828 136375861 687993081 854825626 225078253 553981808 20702975 92587657 740003531 704876791 93245557 82701380 259026011 160956268 254989292 507936898 89117632 202677304 808880938 444946240 382932790 971286403 166709507 718798629 610306527 895747174 152741409 656555234 462682026 530025335 780657033 484963529 345793897 360862902 567227047 617478394 24693299 620816069 350655573 434327198 897576210 381751830 618957107 926334130 102308706 289126726 909595254 289452481 365117105 58927148 825972182 443251710 568765661 28444645 76834104 241987410 739909660 529658711 21983094 831587017 247329167 572540157 873923567 299635020 407627020 818347428 141459572 517463016 552374916 166037784 982085820 780479896 724094478 799387530 732251187 612757279 147969137 479098803 6746923 454517343 805632203 455253268 246369174 677087116 799120891 819381970 162845281 586571816 117063744 494137382 433548795 560773179 455804084 879105350 937701975 872010605 958799506 50816213 460054017 165981888 657513203 309452654 770959448 807153215 216630520 543373352 490511911 615319573 403386137 875265255 793547532 892048023 281759211 565499996 475774847 239026361 535031231 383488867 608405931 267684888 106036728 526743256 186183958 194416580 793269974 326818341 870541056 940994479 635734791 951214934 123913781 543451765 92247497 374468637 886598841 679785675 972250946 93976537 578076661 992650820 70929095 583731862 398873593 943819172 247662218 451728427 111301401 421172692 789870400 450571635 192589757 410207689 243318935 492352391 63361272 918995557 250891037 479488826 379792624 65375277 229587294 230743708 557166192 284754791 37981001 696642965 806309630 781613707 161651928 407159272 908571213 438950080 71017579 952822046 73494154 574123751 958208755 905936571 483516027 125480288 311804559 628940827 109035536 266908682 557333573 80008008 487538702 523980057 485573639 271640599 158634413 614505231 27863880 159835645 353267567 529115186 402501252 503943633 827849345 826042235 119053482 725047391 882391713 808504903 947055359 970036383 176375755 17883110 163952162 258134655 36794574 944789847 337323052 302862878 463468332 465252663 387988800 912864504 860473112 325994969 597192041 805840218 594272981 453400392 701072448 31616347 121139456 922865910 5101409 915073702 380386292 13737069 729101312 469265382 197035116 567140174 634916924 134808267 355246694 220162321 64663189 289027504 158779718 262111386 450543635 895528050 115066713 309505460 102451124 994198984 828063619 84844295 91411221 569142981 256646758 516231086 832884780 743051437 833567947 678436384 438725903 783647477 218574447 434977488 642534223 147632169 293574420 601954486 772623839 229705699 669144002 779740681 437825676 162008202 203063617 772410761 551984006 345496869 400670233 332766581 868410781 830905518 241571104 931359478 853116016 245052467 64045887 926294911 917112265 265863412 326528023 674325034 750244813 888549200 80754202 111110526 343420958 358140884 32140700 443805988 515143267 474899885 590639117 103402837 825778516 47108341 570192146 656789838 550383286 859345274 60112472 574058306 307330277 637544035 305717883 949575005 186455734 87291714 416526521 408053661 846234166 938577041 829741724 944595773 76639034 815495375 523059327 583893987 846192335 437083238 274455606 556977221 151750566 945142984 892622740 744945102 784902879 623323864 783756899 573143921 75036701 854571284 906963914 263241885 373186652 784131573 20598943 568156607 35277994 496465164 494986721 727826169 805036625 717784527 168326213 968400612 521418067 687580971 275551404 422300187 842405898 576431562 643270690 307987135 266169842 500594832 349818172 315740603 273753400 809565106 355486173 406872556 217720230 26440143 964271989 586242495 55198046 518426588 963399012 929086328 151006918 144523427 590101528 260159482 831944368 591933287 506988786 589150029 139649383 827576489 186675324 65952795 244110741 917380885 57168421 816066476 574042123 435336696 388452871 499514519 209477767 274637381 866039630 15882605 301883948 664831104 428801237 708865040 687731040 583189476 327130645 427849516 992343414 449805121 390695686 915793035 335448220 188891919 468439831 295232826 997247318 903462601 307382724 24672011 337910207 39447426 914235641 347280499 567986417 872254401 952282669 311692360 122996212 980615832 402067208 133178863 761354466 697900495 255102024 397309842 477208489 929334038 839554352 903304877 345030179 256425401 169740614 836751760 731392665 226599966 861609310 786616297 25719529 178673954 40404864 612683820 372222839 315188141 921918214 162546310 80237260 906230739 787004543 558675492 750228045 305095124 132298917 172577525 414510096 571096187 757824382 505184162 534008489 231076456 556956138 850438739 179524771 571807990 441062646 884261851 149196695 265213255 575653858 224486037 39672856 908110989 573927644 408210550 204219228 357066654 174858430 243403904 694160391 233252093 952702423 578906237 919143068 223183485 737940956 27012046 246768161 328349923 657052357 12703399 160766655 536718955 187112192 481487316 814765141 642555680 984525344 409328792 572751709 810872672 757962371 298275762 934084168 860957461 244506628 245318909 196695660 108067479 228039668 219634894 220636756 739217141 879942712 732496255 747940271 188667106 830166102 843819009 252950452 174847679 196963184 90708052 596083348 642166889 872330087 910052859 161300828 109933716 732602562 896412015 955449100 166064267 656518094 169786782 540303889 842451911 547832473 86243554 225640344 892584837 817123226 322940603 150107568 348097393 316180697 757319111 503396081 851892265 395201872 590960384 628463541 306834098 598713971 904977355 426899426 715206510 396059853 756743397 992317572 776119125 163399175 99701333 124133948 721281551 639595240 559792366 38962461 42037454 801561327 983710344 976680258 871430925 805866237 44639763 128601680 270452528 537575917 977420711 906264599 839291996 563514169 614516004 664981692 280506320 917988659 491555942 663698763 89906920 299936972 630928860 687335374 142293028 834651412 581382989 996178107 72320632 15576303 589644795 305771124 743007079 178264773 250897070 393405766 437210983 827715826 972366502 943377892 710645877 943052339 941497614 49845637 70286879 196295746 88014294 15834253 508904334 8890880 206527354 44608394 995980485 441954921 484135353 650761644 456061806 596443081 908877529 572958410 624092616 761271115 283520765 368015873 494154849 624839831 405885592 920653572 422609460 535110995 382356363 51074241 574361944 7766232 131441908 604809143 393984714 750357721 689068477 921209637 371442045 631335719 551587142 529814582 624655063 554356957 222830702 969329334 737266058 818988118 991799591 150031795 502934613 361145751 615619692 676649713 885859389 477842040 957821023 155208976 840025177 674671620 924697085 785262684 605064848 898385409 564945839 357649237 114528613 320806685 307431035 260040652 495378594 614035993 249941616 59605237 510693082 292888695 773031497 658482882 410636197 81296172 844663584 29727589 422573256 114132145 380140565 307197305 621633021 883867627 523648760 150752679 881963116 418461689 85114372 49682772 426442780 626366593 273643303 723144901 598184499 38819384 953776488 219873868 632228126 70028424 301174459 600935888 971546861 701411248 724345705 141001192 611189692 860655585 296544061 233528953 233447101 500190139 95557935 440463309 464230902 289554366 359231213 179581123 131476756 48979506 86968687 744705076 842204432 67678847 503267660 215186287 260124850 333702408 808204999 32214489 36579892 148250047 845122640 331371304 115079688 950439306 338848886 299876709 870980725 143201850 235570964 347558116 952761832 881172932 213196393 216135886 397701952 697352534 855692516 496270609 874598449 549677514 799001789 430914048 103374354 571963985 910396478 125176809 985872483 787888627 212843211 556643242 127251405 955455994 889261475 754099142 77666745 644010996 111718926 369161356 183257249 558755840 200126245 361402389 51194194 291981671 431159617 549019088 635049150 893802998 920660235 434508079 362776085 123637938 897097149 790380550 218259426 477535551 43043799 438737503 68604602 845931464 47954605 665379595 658736379 906159871 996448386 982140818 927437636 420395472 289310232 380523970 700750255 336331033 530351095 11503412 571073177 129899629 471647652 328957052 733372554 404461388 629450390 349007123 504402527 60578809 602401597 54595525 988172470 478217912 781278822 45545007 574568117 506370609 773348355 908985490 666303215 227595619 230008409 715151567 359689969 838429955 688508627 335133604 733619881 812738757 50553602 393046040 715368096 983525624 599517750 274157096 2662100 297831830 10322848 365766280 864560971 505010977 938921663 768956633 151524812 209452882 629037789 387587110 632507188 492411605 881133720 140857217 705355140 348608141 782144965 44406421 598805529 944433549 74411337 992365514 479468866 741986084 323029171 42656502 77507349 805310690 745967924 227759619 735845716 771627097 26967916 604143697 521663059 828556351 258963931 926030380 120946124 799324237 117782553 342891877 552459370 887493435 141830097 196257398 185980276 869722093 420484707 331027693 681471950 74010619 340372894 183854015 537582936 890235033 997099311 812879749 170643362 746095132 876880563 554637690 685206105 801402339 722533909 414299693 972393274 860264729 917646755 625878305 820426136 65430373 568707946 27642261 207879494 763283895 287469571 180414145 979297727 273549266 706801226 933428064 349574897 594880326 26863894 805696036 459588668 583600962 425400270 802751611 845833925 264165821 40085192 273586409 999240827 328619106 69748266 707497 682100891 748082810 317227019 658542445 791476073 461423862 636291505 185433094 156447604 277999679 79077096 605225937 31384679 145242840 506310068 853649546 630785738 224870975 964903183 65185948 77455995 453732915 705490376 996618559 127411711 163745781 529949325 981303580 925054047 636656995 378481614 212731335 345899073 631589916 657103321 199262238 489413040 631539310 833012532 925527318 976933744 895876810 700383452 925767927 324790843 709795030 824329435 526913664 237324087 863135134 712742324 211652551 361346615 563560240 736970429 191669492 880641343 646615669 673364007 191729230 165252038 221418887 102107866 472406867 601300830 99015074 495962092 159916515 289314222 32279874 659809704 238145541 751700344 472006047 701403907 30019865 865565178 751929220 126275733 928550942 613246209 957358462 965990554 879143670 62849312 990798090 386962850 682089196 301996505 955818807 810159880 419857147 324273628 994365349 631122448 720305781 622304355 630849036 425700659 657709187 374627979 677310205 225518974 930413464 583981067 639702462 972523392 59815501 803079002 783017913 851868424 415670506 330062098 810993557 311675374 214057898 393242835 921804405 523878637 157018212 566906319 716804154 873264911 566303788 28077352 310316300 164243282 240161066 986568156 613368865 247493887 345289283 106406234 842003979 700875197 541111995 143672080 455087023 648671100 848183353 615446620 686385640 57653745 159923295 622923401 440729973 344069666 978442082 332893683 83959782 144495875 839776153 226740991 804421574 479011010 135868195 104074438 614485964 75984372 158900738 348605516 791832826 4603544 726648629 771085606 30694430 13866071 556761263 123533574 314877019 144381532 487459230 925260372 591218358 334274823 528263026 722560372 602317143 895504032 734804262 361899649 530452837 473648445 438401996 185033474 703388742 314093785 247942464 134729975 289404110 938077568 209153806 957100785 114734725 983538220 132907611 693551039 443045138 541080299 836895402 364442403 437706604 403472832 578056906 157038267 673565855 847235254 262641754 963816329 734501436 892374178 393112157 203337281 288601364 638644370 885531040 21252235 593977273 441564459 874490505 71776986 628398995 362492473 306708847 67960646 170130425 835270587 414541027 816551528 630969795 793106159 21743546 104451114 432225670 975050146 71953756 372324715 801294541 555139979 98781884 941973810 676733977 750911293 135616278 913917902 807186726 508704896 171591737 910799955 221536759 775203455 431426909 83952506 454578687 239466555 101940949 278469036 120105191 633751509 32599079 829094692 159990037 86398796 33637731 760189204 894823563 712812998 810338222 155144712 950251160 127588380 608367049 269931204 905924568 662431544 698825619 769386235 169259455 476842931 127104213 557363226 203332499 923912112 829546332 521981956 27569676 40816811 381151973 8863461 717361450 657371193 864520039 800850145 931120984 615978053 448379675 50838318 132500536 136017583 387576062 709954229 465661895 559829441 360402799 316679913 925116532 759097638 129250134 360869267 180257356 343392093 342423475 349151011 443238413 815892850 383180752 139542449 651565067 879143945 835780488 789971545 231099102 341930345 750705644 325653902 599320737 197714870 256492628 994752485 927026121 937042337 672779477 93077030 49278435 362340601 918173338 238387489 23288181 787879316 274340135 35157205 275545917 106793537 797462310 266139053 635490973 726459627 557798142 684775547 549605318 610194436 232474577 695219280 489039124 116155760 977607290 442232384 301944846 93547638 953156651 816400680 138639446 889018084 92469798 439018747 71684599 472384901 762582774 955900272 70558907 182842179 571213296 37717303 567475958 152033086 560765135 591944264 836891301 28751821 8040100 284742392 956379438 618099058 905313870 587126733 282312437 799211387 850656528 512439086 850292307 193767653 928709753 157114522 95264292 940513824 862577625 936670582 891372437 764817033 868807955 522754414 182643113 179037771 51473031 654634431 195611167 906584385 914342726 138731162 425126753 67760580 149145045 941906120 905925156 158236085 8637891 977112606 603374444 345253434 273599394 525890820 730395747 241999770 847900884 287700747 158668544 361252439 874972990 864342033 169215043 91268740 356156205 877760910 249910907 884524793 441240115 456100709 278750580 717076828 891498586 760699029 196802403 855698110 625021016 571377804 939954806 667953991 613421781 53420558 413782047 68099569 302667202 863647607 82164927 292867125 472599329 508268237 489350967 548961591 433577311 450786759 19022868 841608991 126944365 495605140 214267586 978361657 743341003 928036270 209528371 15989266 170074753 989831080 172807527 13836865 945192357 492338249 308392132 618817105 944809939 177716043 319089943 809731396 524190524 122205684 824370750 465250724 435933948 255517008 118195584 535650799 191862901 845103286 288033280 545279691 94757779 341797340 143553225 83824926 739222836 944457904 383933219 87342506 326373055 337428877 624102227 178831792 467160889 918142374 937978383 15130038 576339193 905035430 708565918 532853580 362533496 38897045 557114795 919441737 669017582 733503160 154446438 581121630 373728144 989605648 468258654 739745290 742429137 552442801 181462825 414769550 526061412 652173251 131238779 143056698 657604711 749374663 965723907 864772139 385462626 639518520 905224132 898330856 734538712 729608787 70472862 709727274 875025755 491578092 894008425 212059969 835632116 517011078 969614110 131956574 490721615 129921755 123446538 614182146 316045722 566527260 759826116 185780348 138922810 102836479 261689991 430761130 757100323 599280360 523708355 506993835 746466403 416513194 58898480 902488944 947548972 303028782 602540428 972640704 257436938 283420849 431145989 675381948 930336643 295534609 660955955 25168344 94624143 606424433 191509549 423281785 328364360 822287662 873394153 527934619 155770026 885801462 830536234 251774694 632998449 810819536 636706081 102836518 349502994 917867956 500646626 621888545 604387047 582050143 436675990 147212248 798696084 702928955 615381271 580550390 346033615 984906460 800427281 259564588 717576323 464379821 412093986 548745472 379294039 637218691 271228076 433745256 664790616 124873535 632094731 783925014 814557571 908708801 658923033 284351698 430852569 902787820 90349053 385431184 703911232 286712593 214062909 134834978 989186942 251897786 470481521 764664084 286481556 939009889 312294694 994984253 194090106 237676311 510395351 813811200 932436305 712827690 697190621 505651599 428213355 859953650 389885319 864791769 530702326 939076135 961499286 588292684 261656830 423986816 85157240 75125476 428006107 218734530 93979721 51482924 618057714 604183532 418025935 247279127 940000731 906783302 420419697 234238800 502407108 224656365 502536370 497525492 904234794 722722512 813287055 582939092 103096172 577556657 295343944 69438870 607408221 158036973 875423062 957975619 223748700 131931160 289733659 870628602 894246202 657190397 242680742 24332242 502893335 989001976 728278962 296034977 581496509 732649730 669017742 143198736 307581586 877468608 77209177 660674071 473304426 547052777 390492774 102870163 671414987 550729690 454725977 998508099 606895494 653342899 286196627 438901734 466204444 4793315 179326724 686525235 99317271 327831370 204619281 320989756 68515627 137126385 330072652 502149212 127062594 434690679 985938809 603923467 785987608 998525962 29208376 497582396 564831277 3135846 591653159 555002941 907233142 405096647 725277099 559264949 590103145 676419112 255279139 857223809 181527175 622429612 991891402 416303030 981988641 338131265 219983019 997202442 15827827 822771783 440125915 906707663 15918634 520709856 369926947 219258834 705129771 532757495 451577339 965173374 972872536 407127991 233828611 699448503 24674810 563370576 922481450 241881140 189740358 883900271 645441724 313627126 488139301 165241500 954024098 522683189 692340053 13955289 948297140 216591252 917931426 98330394 539623210 816211368 482097799 676739693 210771218 861144677 922291050 16252661 166657225 704301605 767356491 725989446 502395250 593700947 401181489 629997517 299251387 607752067 353286337 509024935 519661276 59234324 963106559 119333032 481925653 940182079 783980297 813165837 81865865 158289948 945967831 468935038 313522609 205586832 410183195 908750563 113307550 462580211 540019096 144266650 480085179 586609645 729891123 804436116 516319407 688564859 712605654 164506574 235913465 495243445 844134086 621768320 134812878 330871271 255516202 507990894 891170945 349395728 618345962 879858272 73696231 792341036 812572394 906251251 659132099 745021241 275632799 481321200 670165652 216053856 684072457 463643280 403301116 86461987 561354777 142692165 835035419 71258691 316434667 94362440 111807270 703397813 363352168 862553851 659883303 77105124 475440958 254012846 270477606 307515642 139526534 360687012 122153904 868284080 377635093 696519753 584305020 697791284 251963907 59236282 191900582 482139860 888573934 452672994 822938293 571562012 824429514 697303763 905246994 579735732 820671049 264041763 765509768 736480494 242698614 617075640 872394300 308885316 401466862 339697530 488682994 999177376 861304709 125815327 656398022 685563412 508413566 255102461 168680856 224821864 470323865 317284048 303188643 736640206 689836750 604938650 763583855 321853047 911961817 991968240 96762034 907444244 859083505 302563086 702876173 756764541 466808164 600128343 413163979 636829619 86878565 386849726 309028357 106892159 791745209 72947424 951813035 482179435 849120172 725763542 386152956 364896316 437948304 190825385 838533079 525900223 180933537 765134942 292809273 747337472 600430743 25876453 640839958 570619182 9923869 748946436 631560650 71274571 245734517 574229006 326232755 666530284 53338079 863892744 296512036 959985316 969435125 728014786 457863514 171188282 373418361 142678024 330774156 418467698 895978048 600624242 414489008 581958566 598560313 967098986 134157745 166726795 610593810 564371873 574095712 832144912 839721503 572860043 748307951 280006659 609469749 50487899 406128761 9405192 41961984 148759606 667184172 860783881 638777987 581782231 760823644 981383450 447688728 931117234 29958117 879691565 287342867 485943986 258633167 246232825 150535427 703911908 734571532 151564062 346583324 51621480 50067636 86481259 171384577 348161095 282548361 435477037 833185845 458620233 845530678 620013172 778238151 75512565 634207700 254402794 294281753 413199571 380031398 616118761 126374018 938024984 78837193 684911477 602918436 954272062 796961828 705004927 994163870 359909343 413902550 580785885 405627928 310928638 375631666 965990857 559666939 203867234 109246566 525918338 602451171 140858796 407385826 200037107 183538486 234929592 374261141 648334429 917558718 244495776 214218735 65556814 408947471 197073208 56390578 870573061 737319953 739470081 514410297 839119992 289043616 537378825 236563627 372114101 446325371 588318299 582158577 234920377 16853994 39719961 112797692 393454761 7477807 131069985 172758781 118863285 747371247 967403758 840240747 900443265 12978272 894507615 57519956 414240119 275046111 879139099 625902923 552037507 413769793 318256598 897813982 770070188 757196069 670335555 227200869 996155845 159148750 72510148 566242613 991090541 971896215 28476933 231464107 315380109 704436929 845263993 258392985 996059643 183479144 945538165 279880731 613946351 326443486 814333508 867626112 833325775 565452424 590029846 538048604 491092673 952176865 344142533 233368144 693903923 682895197 965567427 271616945 413464152 891380653 288960928 113645461 964287552 837922601 555559721 958473512 507980400 825431776 221348636 106367550 643276431 413290859 856794289 289311624 799708194 98724043 206527378 508708559 622570590 353157955 487485027 539263327 182450956 388193072 886501638 776087475 996564649 251839240 834260822 564095688 50963471 658599827 702486244 518400923 794312695 474463427 538412053 994657208 115155130 704993665 633741679 894951087 758894752 145380338 243804544 490162399 186525892 158917010 773028568 949170160 770144889 851279492 83460991 461518422 276909880 753270204 870113904 820005090 137299640 548190868 925396729 499260657 695472229 379871043 907982084 318873771 728618205 916843077 896545932 340181472 671882746 501916801 975293130 199494446 827548636 993904429 241282142 150629794 775100485 167226750 359701018 78932400 426061562 9748256 515641043 796713055 479610117 841079903 481664848 765103976 989477864 374190008 916455075 25413741 912884812 535200017 738523513 625503910 720199226 47303343 511867972 35632973 919275553 526175382 558661152 200497642 412337723 132894046 786229398 584101369 559783891 895149605 642293 968205016 386141824 877504027 372299150 275496122 822253167 854949479 802489626 627926126 913543786 894935326 291721906 660881222 251799105 432343852 448238536 677600075 372287270 379528031 131007126 299342504 684765669 588330546 19331511 563572251 231640479 746838186 602431255 486008237 546328925 399360194 915022222 408674722 803608162 431949289 813318306 895636872 249028718 491054052 941154680 402361525 984177515 470871341 674430596 622340000 553221918 74923912 952623435 164240770 922132286 50115522 359398485 271446705 934038531 672675292 303293543 337314907 855745864 647726528 293913120 619202560 497882899 180320515 380076710 553773521 678764811 244356096 892010701 81754074 997235306 637145919 779828398 426409822 910592654 969771740 138157192 257542599 410245139 730822328 939029982 162082753 222072759 677001609 260841799 338168120 601966147 211288516 181232882 849761497 310578568 712097523 97458815 6429099 37543033 288435374 96972421 925222643 263822790 274317872 653315712 229101558 811275969 95214205 524038019 356362016 25526195 389528844 306560489 499382901 216034340 310230000 371824157 516949619 577645561 859576842 292383943 141251687 410685511 229403829 988704512 168335514 16185793 739355029 261567715 115725987 833817319 82647901 17057345 902917241 80433995 754675370 720406660 107411178 189266881 631249307 892803651 821857735 558182951 305964599 295087841 568908312 941033142 78296604 809750980 237376672 794413573 997968866 189246274 133291353 348422536 420128207 464376789 324470436 331112419 782499691 565816864 364875236 779149929 890604827 835507205 736161510 543412376 653871081 206445983 480175422 497080972 262356574 62925448 926279719 894708032 316928305 449778236 847220592 341620364 143568987 399438234 234330433 58008968 66178016 120824393 329315528 709421345 66378814 169838169 887164771 940002404 42652850 966179761 741606901 650107425 458356203 966495539 205528907 300419391 912507500 176086196 177992931 462553471 840042924 97142326 128587455 58732719 183355206 586815579 397968410 734543207 833752617 710085743 977419696 889449483 871315962 123779814 773828634 576746846 907487989 944859694 502528985 951535939 898773695 65546770 941919022 936825787 469956289 383305578 888814349 641170408 408013702 393957354 864460380 52668107 438948624 713290376 652319920 340626410 257167058 769382208 667636513 391784541 811794421 645383512 989806870 461872436 127100453 524611803 574038739 479053616 932744894 742106564 735955383 747017136 401174151 947164087 101780122 244617754 975370663 43702092 464162900 827898609 856417835 107207363 42267387 322331343 405650810 844877290 360822504 436085499 153794277 325542771 627833595 204001575 449454302 148569256 567559214 842699050 876555144 889160602 412947983 56083069 898014706 951660821 764380084 987878758 319900189 237409128 734396950 200920140 598129300 985825101 683928478 848923315 716945834 551805205 136527537 386904483 139503815 68338950 82885336 161328060 667320806 768468533 504416256 200710562 990103797 957446951 509754394 991487475 525306836 186280090 68412901 517572712 338295414 99809018 452625573 361800184 739732013 373585943 41899700 448691305 805417147 864970482 380644229 101334289 494243390 692506040 99370987 576108504 442795162 507254956 758762351 838774820 589827379 605080462 478179368 876009553 337607179 665112115 366058972 693090209 438549151 402489166 781045148 509477323 341488370 284555828 110251529 974803245 231987439 539806234 911346992 192455513 668543455 276644351 984229741 485157909 52221596 776374868 150270630 823050542 826552966 106791126 584233656 799214297 67247899 166549395 666728576 962393881 595670012 76167208 999783474 936037314 74959083 106892668 874570741 360885829 287500255 615040003 742715768 651470626 408425454 648278140 840671624 828086332 207940084 973733310 379262418 955327263 394663111 194055747 987965459 565421361 722506931 52555834 901696356 459920490 349087127 529472075 380100071 353332711 695386050 809399212 878718306 939058375 148619040 18909926 946797879 985395460 168097257 86976619 977185011 385802261 184074495 30776824 448352310 850666180 382767687 262950879 778987213 817798301 892947643 62389714 447406955 654314940 170617255 625211718 845422438 653535410 948981131 736850017 448909360 442925868 728495280 416362184 296548469 765909007 810496144 956438140 968621259 473509818 524639178 306322431 701524536 119383625 839630040 66100407 165526725 372198074 160153813 352209924 525453809 814603487 828907151 124692382 715627784 619575611 878432914 694304466 886984686 288946760 967434815 279053175 42300681 294039752 775852416 590088635 447134033 480269901 300629728 793781828 556443892 725558362 803884303 854484084 893186559 992119805 585912607 25126826 398029242 248056802 27616398 258298837 194729162 853073534 162890055 823122754 900868617 410091704 360991670 975884631 263149278 49475791 748616655 543160514 625817318 773636766 713499032 855907687 701675881 553736521 822506497 232965624 791140029 741441890 766812080 620662296 480779955 288859193 76159009 63669020 935467606 217556631 981217642 88428727 375264041 13182142 85821743 993524657 384333547 592065902 729666728 244623591 972255537 102932752 621610754 854791 944476868 144736068 318105630 521832827 763681642 442472261 334565908 130811384 784866291 520920567 829797773 219463996 988275687 680729128 428720160 366613517 469812221 537611552 229120271 524968137 815039121 357741693 39158156 22923671 523364507 615761693 64429159 647405783 410298277 450170530 829357274 472025650 779585964 164666872 507875950 365502479 651848452 313371224 494672488 111304359 946781811 763730313 605298278 407803887 622841343 894384094 585652794 291063899 313947313 818294665 257899778 938657046 210315952 651784409 843012550 660762492 912429209 820350256 101673190 918105516 291712742 698078159 677425725 339465516 867633357 576801944 149601037 937172088 999929550 522827519 39465304 451493545 510489904 664692155 405288928 445498325 121554707 107910776 991716204 286088924 946935402 494877278 381174396 207987666 254186500 787681476 243807532 627967239 238307271 544126644 939462190 91468059 92266627 446781470 992542462 417214243 891666855 118241288 952811934 999710332 525421174 38017331 940381056 427816299 732402816 48895308 882061385 265885092 878393063 238493419 453889148 85376875 295853564 965509064 277915149 116495661 647860302 575951997 607120712 971869685 751635206 850874817 431990547 738171175 527236484 202152986 893273932 697259463 500903583 361922458 112307218 827243009 745062117 790910647 368047674 91657223 92940802 602393989 422641832 440275563 614661979 539308874 838317160 506936384 785599012 394245102 177694675 849790387 642542717 325203929 738011017 138496806 722022469 554593046 684457013 601171469 8381710 772781065 794201464 426140108 92951362 589534906 193397694 219867499 364047521 275427543 454455358 516900544 696140170 27366921 795657195 53086734 219845155 610819939 211634531 534784396 271674284 702093092 475130749 63455343 471184416 47999698 167059546 148059897 481690259 71135407 253559223 438812985 594051245 625339700 62697324 864213309 440403977 696539616 597810619 196553672 702374192 553696799 177396697 920849508 305174508 659930462 762071756 705472798 479920082 875024714 484507089 361405055 979642338 162430048 457592497 362396925 430814577 971979401 482626819 736280249 281147648 886442879 496676916 391272345 992542356 455595959 613950219 687695903 90381052 491648208 601864852 471425266 762633660 597820683 773133947 53897258 873993533 828839250 665665601 430972719 965802945 610997546 273290199 876048936 742674764 595086059 707530994 885096676 256318556 735714319 377634841 798524699 723235834 585476703 127436078 568003879 830228242 111183236 534961959 593006599 559354063 352680072 375053102 808669794 179162479 488113609 21146615 169192084 334845506 545999894 221109371 25765530 615612640 708201172 179726555 157573364 506571796 6724351 769550405 248959614 537688474 203030965 463013682 159463818 888661471 536026137 467118979 712707383 302698910 476773289 72701939 501662013 115318316 962081676 140196715 732907784 737352167 521410600 640036614 927240407 366861632 309265756 756610460 256382889 338572368 611051503 976807356 663190891 557873828 603184961 486489623 210854275 251108010 623744821 41408019 427450463 976674650 110163385 106232919 457507830 196013700 705219454 687015578 586814674 632197045 703197539 326777013 828008170 315814473 130839762 175561926 552168089 409018609 933580431 44347839 614760180 140020621 480394790 726752314 53778337 318910815 783795055 14914614 977172890 500132545 228893880 860147294 419066165 737991312 485626971 327942214 413378273 678269852 4769751 372696019 370012097 25639908 902178535 898297284 468956027 521103492 62890312 543008268 481431177 752499547 262766144 959693969 782549446 658993488 811699107 587981349 555730744 950030092 380795562 851179814 330907641 490130722 236796901 542230373 279073763 449482145 435072990 577571208 4198435 700204979 778331272 984331355 617613714 83063218 526911758 56544704 439207869 37881363 469734662 263808704 72363734 354125929 368019211 248124260 508985822 228974889 645846289 699331579 86826091 228286393 700216834 439869089 688891216 455115638 885410419 640573262 438804816 526499703 640664773 681404633 172709382 127071666 692412864 835208195 293502881 136562218 842013903 865096873 217441273 329722998 213509370 864515836 882925603 556936703 430248467 348465608 654870292 517808327 844206380 186417847 861870830 60794943 970046119 208957427 354894210 52636074 201373383 174476778 109059274 326922231 646428133 625814440 211712959 559214092 180685708 901281811 270786959 820214339 402887639 535847109 186612388 806594548 575195349 291047370 998773664 921820619 428584187 896290749 792217915 486711141 275301716 836703801 175130542 493870609 976259413 29988489 517060046 564877191 305409744 419491354 705679867 486918682 901244383 628632424 515750620 538509888 537207754 683585041 821008071 819950068 179179510 585288708 426924628 936718450 854679373 620482464 178670335 556605191 490072636 169121060 969218935 239087182 624373010 601435451 340349972 935727608 731004871 662811780 794303550 451639994 611608862 146789647 867212922 714881258 642349939 491519855 504782219 834904307 563786618 123314176 199293841 366533792 774641312 395940450 942996486 472685861 312368587 111874109 613032485 966077657 525635561 51401296 858217709 268826836 307110220 864498742 850314815 147077875 108856887 796409368 35606750 571740765 603647556 259133589 509311945 367993254 214784495 833743003 406457373 131651068 139472222 873393251 223307234 214816839 531576901 587136956 417576226 683819591 658003111 306350356 285027102 279800171 247498829 583816706 700435250 926201784 197334186 632111244 38782749 972705817 106691801 709730688 394769058 611446016 65599823 810331292 546852003 272294231 605124726 816793616 868705527 749676635 305678509 897442696 538594920 76580608 326923859 639011907 109366694 80062404 425065986 769040035 598776062 416314544 809922988 985112328 608415076 758468315 778543822 24133991 338692271 526867404 191824568 26436897 377364775 274991366 300721866 669085186 965743695 755846137 771271867 374738946 367764633 687201800 309426247 618070361 493157581 331214999 902334520 214978421 91998054 19728795 868431199 882974475 701089495 161550734 914429865 131341743 402575883 163052538 494454014 452004973 154811688 323219537 189759284 881420670 898902763 73141571 211795097 203130974 27782158 843992236 814397213 458844367 550728350 107021800 978549779 197176901 29201200 337845666 923202505 251995841 806610436 566377473 933139437 899975132 788332018 24269445 566052387 246741726 758903886 378496682 566028888 801812234 896105577 445579875 944292776 832680894 412245578 268684443 17758095 758270321 190359783 128001984 553426696 616691057 858539682 578088894 481749356 374926878 620225721 459651017 841488698 942434960 91862185 817658278 689580915 445381654 509764687 763610723 804979167 835572937 689481326 845534729 640678090 575830282 335177970 373609989 397209187 104187946 643124405 107327074 892008907 649095035 397042131 489619759 410829947 785396678 843573009 327656953 776276725 254326666 909741398 401426252 819586208 192307469 910389737 228176071 643729303 240838378 388257690 956360767 500264342 462666523 335869198 802618238 36965008 161346427 260553712 155327150 25816713 820685965 355993855 444999914 547180556 146631257 504300770 592682593 268521292 29897601 234149010 914161611 289721959 418728763 824577890 221623659 147194433 127938291 810456977 198063381 682297114 21343142 756355300 60465800 493676217 133362391 4582670 321126704 792290475 826973464 573241830 331134445 813771862 543782894 360469882 610098114 205035648 873866910 519046570 890769936 349620615 582279258 913565912 592053202 635654020 937762922 66470445 4224345 816351038 514650256 926642979 525155908 701208359 55519322 340190924 428831936 192597901 112534615 720576324 576938749 695856981 43136409 331768970 251910311 985640748 531784739 190504186 855224776 545709678 986255801 93645453 286692104 975935402 10269852 956718361 559416568 277252699 644180214 48672321 99829391 39960165 129869071 479859308 167667632 434649053 858129390 873732073 584493512 862902335 156031502 222619516 28633643 663605046 497757608 298834757 523147572 87446792 623780219 386477758 265773653 339146518 869749790 805414887 613361405 280578363 28238752 629192298 289006020 989809234 463333466 314660835 964101097 625230219 237238062 780515810 17255753 76088673 469324663 482006196 977403722 83347450 929325839 566798351 657762867 444321497 505777303 216672922 12267309 209289343 988138093 849485519 894950785 608274932 129754764 607946238 828336906 41184430 603071631 999392499 128298349 854679027 263840655 769143325 669164226 729236204 180136700 561470997 161080794 246740033 541395827 79632159 772404769 586102731 152592913 747252122 588894601 692863687 808249428 475919334 9183753 986454013 592873864 833565145 133174117 60583329 718250894 500773122 483722184 160481345 430113421 694370455 417339285 170725799 932771510 50947199 358767457 432485236 398407314 278450814 750003262 855189885 5168765 880454530 170257036 68479249 393688847 1335658 72073087 598118391 558442092 700769883 604217335 690343893 472181323 109765501 987913359 811856902 707725423 818877975 87873751 379881537 67581535 166970798 749994948 671452177 768993790 69220539 594823106 607217095 657362422 495467215 466518946 925712531 494107848 361283105 615799794 134034644 844369718 131967302 579911635 118634686 114361148 833835148 831062087 535125724 588436686 919612595 4602369 657785537 912677754 681586219 888034545 528229020 778287006 852148350 231182618 394929584 285064603 154675892 250202000 393772324 145309833 171646428 895772733 844362097 263334602 971553349 361515099 220589257 152721351 580532021 433617541 295937249 793043010 284761378 435954640 933702568 863525478 895380738 656662939 917701741 879259092 697847659 576307722 675463315 171852841 225689270 943711209 764521398 484560125 902691724 486452337 818184477 217803075 422352668 176945911 628414653 153158002 303239877 630131399 96211899 465295209 562693554 802247368 474078750 231286771 98290493 849902271 615298395 667301568 653903877 303272828 793779317 413100634 857642834 790761260 624592106 525835274 489784204 179809731 851435653 618813489 696363581 448730290 305561038 707954093 598257873 589415550 978603344 794274146 339721985 271712066 372119977 255315156 500269522 803919748 900341857 382510566 346097403 470693203 190992926 839915200 115657999 716767731 108102865 246338266 206528969 520574137 334858359 784523371 155590014 244494362 305917764 98038152 247500190 609468905 429862430 124223910 61684125 123439158 27714926 779508048 143938936 342014171 662115934 815789688 334018817 431049978 280947852 968964313 810637101 549431437 53833740 722932242 274490330 815356680 363075866 703556268 997808489 558374516 792354035 753917427 720382697 198422371 286281417 585392998 764611113 86484924 694210184 860628163 395228453 804521243 232901021 448863925 842533753 120342158 407702986 112466177 874785915 746230179 75183613 909216800 801942798 847744123 322238071 556394997 729857414 110675379 908860125 522365695 815048398 523072525 435518093 846487438 229713982 931020340 483870517 376057818 634447169 938916226 599258126 538410710 429693900 73310110 750623548 405519441 673666554 385448953 406385573 148552816 153068804 229406319 331919717 541632387 163655341 434231991 283019886 105489244 156812023 892857783 829322418 40827728 237972580 161533417 222138129 853513989 413706635 93003290 901262229 448924893 138693161 667462716 30823865 465826326 479412584 247882418 318377295 543684028 914936874 519049422 848405151 5156215 292072101 134087571 692023254 470523585 517028704 949737206 530603565 647529942 109862867 548439297 802573731 303186196 409340283 656752218 312760702 958699593 35299401 250224234 2805645 450540545 615289234 253815609 239008964 855566299 562127649 428554957 629635785 277951353 292155193 521946909 229602492 428581355 924820253 93403206 994473907 92619720 342692792 671461746 230017578 28464862 489174566 481116088 26810729 900421673 996873628 749746199 944462372 231561636 674902378 6125520 482738629 785274771 123417442 712534850 512113161 645884021 353458664 545182292 515531205 845486257 999785761 768148908 326715012 452244391 698652633 111674188 12158947 20561710 670329630 279729921 729852481 642870990 541753133 202498202 895162804 234308406 959065238 405262563 379213092 347179073 925087286 291916223 169790934 438784904 808493949 440010432 71107869 200919574 113143356 92194361 525570251 451325899 835740618 964597338 163814735 650492739 469353931 894634828 784665119 670458394 685260563 36739550 632823703 650286426 214437312 754138550 662765614 700882341 602028939 875322686 859395682 537610793 305691866 918026511 910015789 797948144 190034110 78926848 88297580 295305239 446196103 872320962 251007786 758805260 383538648 759275832 451569075 298495409 835744488 644662563 56149034 820263563 301652763 124444584 84778622 464865803 448854151 529797222 798996074 543174789 860144967 966826767 541962814 304152750 742761031 507843065 841883587 175416701 505923372 534807326 145893994 189922959 77864081 813505566 414741444 195136406 85801010 533848039 139891987 253241515 563009113 79337198 355998294 221745666 791622975 394134034 807365947 358565037 466987053 781650594 708845957 986147093 553243680 526705976 874223602 641624719 342194844 400734160 298574764 480289028 4781775 990718177 203439981 167733505 929884226 344985534 863319928 835906560 556361943 266417487 697724515 715313270 694313006 736266869 672805281 221127538 104582542 570422361 713966799 108344569 93091246 750809420 764793735 107344860 694744890 748754655 485775693 405478435 599100052 801122319 257125299 739085440 793077360 15729313 466575140 217340212 333298595 636824222 342649602 782574295 332156629 777175057 26043933 627269100 796165463 991470175 10725312 650932975 845962143 397202518 569450826 444430062 813376705 126827393 362860107 980872477 632737902 611208200 291030694 777994056 821690022 759983936 102273958 660160087 770307772 282333972 842180053 337545665 301846628 107056127 833859964 77863912 878775315 914225236 81655110 749736951 508904941 463000233 851143942 763392369 523512710 371378151 212666188 469283577 137491761 609103372 879308876 243593647 703646526 374043282 733899413 256559370 339222496 484805740 733115026 420533306 15620380 420440789 786947154 865426047 603366024 98646032 928868885 501767098 476037153 855946801 54938060 953910375 971584404 844825613 291463818 679852220 464837 924284368 987110595 581519817 480213166 983195807 987328372 370792895 294421387 515791497 97999128 85452694 466455753 915701610 448183885 87357363 330466792 494539677 908154887 593730462 365786459 313012499 816053013 77075775 315528726 330876903 620778911 390798777 739873390 235844709 120789798 910614882 82783484 246669500 695363027 288113620 919663116 424848900 926255444 975174197 109912818 890611319 586424740 677964303 647217209 640528228 38564291 578294664 507235357 46478829 204931808 788171467 759812313 189475202 758683722 509692471 678517549 659239205 495946193 727175393 612607090 907114441 725323436 146312638 46552885 697350098 683731508 156847769 561436863 380956042 576631170 620412964 46129396 95609454 48565806 311484891 713343807 730057216 694987818 646689267 134981179 776315011 809423142 393077025 512092623 610732815 732978481 873472974 556678658 853146546 905765022 725181761 287144736 725950563 698849963 462541289 57648501 338399256 703030325 192929566 161777358 256431795 356993812 48899787 213251599 374825016 893507589 288621357 315128246 131155982 319077916 924724060 892035320 435624563 720319314 172516746 578884746 456233331 182398693 774389629 599833581 40711256 490094454 890281534 391503784 954153335 161031459 232551863 863463674 137979645 734400579 178654673 136989457 103627352 150091059 565423894 240699474 276466673 424253901 936234830 342098067 249508707 632340907 647650388 554840458 709908530 654369384 809119131 265577360 671653350 916108767 509381253 96344861 961592381 956133624 30206063 701908782 832689516 615869948 890592800 978815058 67752887 457207807 456456272 497339654 909139682 589889647 55424235 544922027 572092994 906121993 87959391 516870669 137100082 477732159 856934757 20493456 892237683 15933831 606471476 940728547 118831421 22069783 50885925 371864132 979509359 643490304 535328871 190507838 787044218 650534597 424788090 264555788 660667508 618200599 92430991 723414618 264231769 770012354 674709402 954611312 544026181 259322436 989907977 101225996 887976921 115100684 259760215 422562780 911511039 396457388 958203419 852493986 739984007 403689538 84629317 109058296 417653674 337261118 858557160 451822218 724676514 940388213 490856300 407933593 445888230 298031201 679134248 257566450 204024372 149735623 2998062 595960753 640384162 536670625 517166609 271540459 668155289 695507394 757994368 299110732 867380919 614673586 900621821 352325745 71774397 695171083 978721699 506662741 831836223 40103988 159768289 389382869 205329122 713052268 566455016 822881458 164315764 955905833 18987934 389396934 912832628 629624577 961755762 115210286 38490773 367121184 105754255 839236941 822985847 980669815 627026405 308846648 308953842 113150838 741391100 943852622 668963501 713712502 858460412 383984477 43033785 415648844 973534345 63253154 202139893 728248245 990989180 336785047 113384998 303225860 672864765 348826667 462108462 626749938 327088499 200063080 513942945 226571096 206969731 361379577 269177817 380448609 70299380 140803889 176503959 341721616 645213241 664559702 67770441 979798108 933378694 348650444 274969734 97867324 311175805 81696632 608771368 436527424 601457169 628033825 256166241 728952177 558032221 798802017 216345662 737174300 585142589 797261151 886162073 425455611 374346702 765659550 339477719 299469851 837553067 684911048 951065297 539527310 482602262 875112661 985806486 591811483 297255100 188742331 413621428 13483695 92312355 343426880 641458368 668969107 466743833 932578004 151126542 960909920 135274949 35628554 556622469 83370488 91560298 781711378 887199558 213337672 826671650 945353729 667534792 189252657 529322946 617817348 950148877 831659221 878044876 790003761 888801730 271107183 838617237 436594749 863081228 500303250 858727003 314183391 472987653 133170767 933761027 86853480 187693150 541716407 810221173 788502913 879788904 320770045 459845263 162115948 823354273 222913949 941174522 255769361 526168369 63127631 77324346 171734148 497929964 829075800 373402632 732747943 710679233 908950062 431964860 927717405 662683550 829159079 857936355 324017425 765849334 645546206 97416510 464765406 103613895 35898913 301608235 423814920 316446535 438190584 649862365 142830230 587712028 409807347 311881750 772362342 391969011 151682469 15800511 986325830 906810517 100014838 869806004 53068950 628136401 25723696 631840708 306003467 579217974 519249108 841002563 300547740 249600039 753917875 670904819 270800129 719775749 954355108 934601338 681691808 500456141 167315280 757207064 116262115 648150708 93981087 281195240 511111027 84937010 321339951 788303223 286804757 807098481 587825721 336214146 705855792 338781778 395587659 782793434 626296167 9008853 355118294 739295335 624164299 432563872 368561098 504145799 779286366 551302995 744091641 270072800 519378726 885147442 725792159 657529273 265776841 45566446 519148780 605299666 637960360 827818729 868146910 293586467 91585925 752124741 9917572 318099621 197166987 974737166 391280854 245518902 951376077 691462192 300773046 121654023 246016751 81186812 620428842 883891703 367098887 893373696 362439959 648470077 371293225 44370549 954925935 793302420 370276065 358471466 636021768 664583949 970014205 657203198 373716577 329195908 321907691 76562160 473093837 527365411 365198143 314096748 265032246 966555842 572708267 364694225 189094952 622283250 680987991 321138431 854409567 395050560 330315778 945342322 663326337 417450645 26008827 931788367 963684943 43977418 257626141 783333205 800851038 550539684 829388320 214816293 526447162 37787783 270913053 779152722 338911003 243178049 462060631 309107607 878275996 890580125 665899846 631332736 230595410 541302050 370703465 200225944 90064095 549845465 73975724 193680977 528358236 61361635 686510087 327929658 616384193 362291587 413239450 298758887 168673047 943125504 968680719 790130833 19823798 20271091 292322798 166862696 180774434 348938322 223187825 571851853 682565829 842816121 481248899 89545542 335412262 330586240 218557304 682321434 835399280 916977447 279318078 14761914 191881623 782693385 849399238 394161097 184106826 254904663 411001155 926027831 954744310 888832064 707370543 53479205 229567302 798695792 593779103 947115265 690712529 77231259 733900945 605642798 465824161 235583914 480661100 240403357 882358761 208767093 713263086 215637814 305008642 527448281 409682006 425499550 848104144 911199118 688352446 453591148 823722489 687099699 930458807 134574731 158271952 426231766 613353330 905812104 264740230 688282424 834036573 744998360 554764070 270232429 270366254 487833790 835822557 258661800 736859181 495480666 872206859 286443451 528960742 65974803 719275248 231464328 928009876 286229264 792698388 724589372 421734549 412340557 581092179 398677673 794520449 318093859 151757598 899528595 515499560 401490541 719875057 57305590 981645151 849448757 211171428 23218731 380904688 491778925 193841445 373418987 151463260 521965630 996085218 112575268 134256153 706960749 317119247 270226347 249685483 475914974 270630471 820874009 357998998 186709987 676193868 616906534 794150992 977328020 792522442 245546735 133795805 151826135 825743782 194336826 11192279 449168111 445362668 946064327 103003324 903372049 942097780 101289165 859952685 187504479 423185748 723196510 33090504 360705582 366386483 964860149 165383507 392858882 135994940 459286319 459500589 772927054 372579733 124980253 656641281 226584088 345500788 857332831 919626197 624708355 152321167 929632328 720943334 179910398 393062349 787889593 170191858 322848752 417188312 65531292 369455820 228126873 963152098 503991065 594523765 744258210 102352074 413282265 914191004 357476915 593896168 681581400 35663132 489395103 406248037 737712216 792477002 648351670 118433248 249391951 623376144 935408606 669693299 134152530 900639561 34335532 773295388 65458899 854847312 861209878 144234425 728884985 976328928 283012721 434492830 213300502 200940647 817283708 161004485 372960515 433657148 860366286 890471327 374559128 331679264 7610048 237433229 519157402 232036998 994210476 509432199 195231712 108305008 951811409 158722935 199230694 433403053 611906868 240295941 554861424 467221539 773052881 764971531 905171269 410374363 854982684 155003426 327812642 64683032 413750484 241332719 338029449 359394757 85627250 588310769 886671553 2480910 514731495 853231068 754134869 784306814 565649179 105319508 415609936 71729588 669258626 863359427 780210509 649382763 77255738 460440538 198696022 461806886 579375118 287198625 438959690 721508099 458095464 88663964 752043865 239645346 589154198 440928190 667400585 665852872 431038400 18533276 194431533 304871436 836453205 425450282 117913437 815437396 488440025 976037047 554908323 805130852 215122170 114818556 852266682 613576716 123230956 544467703 500313369 939846817 906675048 162256514 598091806 721712429 893875157 491327716 390473838 845296974 431692881 652751383 521751445 680657791 149155838 223839273 838036343 274874281 567599293 321688984 662541891 911111633 269028494 448983841 673661206 915206073 468047958 687641596 896639510 156596598 203093562 15578108 512431624 44356973 838430666 289890202 231296201 315274654 373375854 902973353 59840155 462894819 332303852 928799671 809935101 179762349 285689857 681508603 451196969 995955195 705653800 441615767 3526868 928763161 413922991 652041275 536274609 303882500 542305633 753865268 458760744 824136665 450680728 949740568 225514651 740555643 235778130 734275795 609599891 437735587 732289536 672217204 64246502 21941994 39124153 983441634 37024290 190233519 560178263 259699743 316141113 457632219 195902571 777581922 432006815 550542091 763915264 948975038 372070493 80857699 330698772 409493268 903138527 362376781 431381349 499601784 981390528 249677043 482518502 295146613 443612096 354866688 499413713 857040917 287285559 259186581 679888832 177841229 743959417 40074690 932904897 453513159 293836889 656636862 109332522 1280496 567276980 774015087 388620265 785219731 529862917 427430403 82667997 541932545 562359016 84754605 991136555 224734927 680963208 424081442 160849317 659763535 428085069 802855398 523097501 136533039 865145397 884761023 628052342 253397863 590350304 99514540 813420141 77998463 764940384 553788884 640238801 545066057 711229625 772144733 357297299 394863985 932313903 966384977 567812730 820554607 238407029 337700782 893451513 743617191 115889983 406473652 855154515 141622243 115939700 381588220 306369708 735928453 430341316 834296537 349561962 273186648 848515661 210839164 89815073 348348502 211304466 788819282 848955478 372300865 228910126 678925193 434647 126600942 685311580 405492039 222695306 693513166 814911354 407487359 907668394 270559803 223824115 221509629 295731497 949987037 811716428 787087579 508919505 453887768 146008493 446258572 999739269 885947035 297672011 92043823 49464554 776217903 664740409 935280745 934847765 549262525 782189142 326710568 149321032 258683107 182446188 687187037 571715819 502048770 826873721 999270870 820912090 199856079 741342716 364384238 946907769 756268976 244874140 129431311 935412262 287016635 848595926 769499921 754904811 133194780 431574135 131085452 128129693 947846282 296829481 214995497 793755784 866107617 824911383 126190670 211110466 657493376 500668784 236157150 670138086 824202960 268886769 409037537 806629046 214180817 996925967 696703173 764891137 176749768 608433060 456632364 655620820 319514083 444538443 394125831 514378817 758522770 722398184 520698614 294022625 12281188 371336699 213109761 409869706 479923211 122181649 203807473 449726931 15690226 725088585 651522029 9418869 107011137 40678004 512394069 880226624 904311334 882447575 308120013 817856876 604369857 676822001 886226512 653069870 986778120 100714471 360548482 610114226 629076880 334470694 427185802 457987839 219888083 66931236 775816085 811888484 138560073 433359237 133525096 433680433 219113304 654558316 908712331 963547314 544603280 848279291 585844797 450827359 390422767 179936367 616004438 901144371 954612229 348881941 52264986 919738729 871442499 170105037 197528461 909402458 478387562 258696664 842423519 142948656 343023560 403052541 385041671 338870119 776899409 382142503 757611206 266287597 590781496 135849276 291918568 692377306 989968287 461042390 429226413 960230646 999939419 32663337 460341949 921379957 302371481 187802508 971116944 505293257 40810084 512880687 861783066 615168861 819227948 311070206 154399448 629045907 854935656 994815650 307470618 156781255 513706913 640043973 539420 414805685 823020078 451653959 555678168 140317981 197515467 243025552 911576992 215420506 629529274 452513599 469085589 103302779 54182822 454694070 358346244 162109886 735111282 150309351 249126351 892334548 229717030 960877705 503387563 650925729 51651826 725722937 831787953 159202194 535223316 307833346 571031285 384350066 954764388 492759248 483350933 513303669 977713597 68760281 305296355 647138338 707928064 58629341 266090167 10795392 778502207 114360844 874649688 476933029 833015290 660770124 964695412 495584021 995935045 584759678 914740089 711716093 687257545 997521411 79890225 986794661 591830508 425846648 500577404 515677743 482746437 674653315 293952234 941503277 827119842 40806944 752950664 6492158 408955575 301189942 480910519 540803908 795157946 995714812 537361791 910807734 794796333 298957899 253562321 606919914 14287521 50546118 530105507 602488351 482692617 609931767 338948386 655213426 522355605 219943270 767954240 2361479 329441364 361763894 617366821 603047748 702898875 277012706 330937644 208836441 30477724 158316927 103436787 914845062 359168159 132690964 416516952 560548064 928014563 120585464 406161063 372006015 63087126 256961843 894824193 850324171 6540623 909903889 720156272 872319575 726419464 105211843 705193450 100343357 994711913 567768753 820457514 34393206 243431383 725876531 997986012 612849707 518930931 781189299 468943047 110592686 343928680 600933552 835737203 643497157 323272965 429439984 698088838 331626891 519201737 486285462 266264769 494205334 920505324 394000020 730219031 351063879 760829270 857160952 713836900 132399437 4402359 796234469 661002933 955916746 1846927 388668030 570595711 933017136 934777371 40340539 280883897 81445811 356819252 591849462 16408003 466370712 841035120 111113490 882225549 140570718 796315479 673976679 537681869 437521944 187508591 841990833 829586131 782031281 739156189 394379305 952407710 301573151 555321794 433394560 792627729 722319390 333802715 762214991 65535787 252019576 827214971 987627081 403705993 6793140 502771978 98253368 345464256 81427175 822326490 60844945 888670174 876431602 748765259 861470809 618321415 527928182 609625169 567253977 813008887 352737212 326089798 669184212 565775654 129308654 870336930 582168038 33860135 484727390 928152868 148076490 12313607 679912365 347084634 114459894 399082203 247730817 574296978 401760876 381732263 984940784 742770269 242440310 174335741 946261336 673589382 343787367 599115824 999831198 958333422 889731319 223899783 904921622 911094994 681731499 536043274 677505401 569607452 897438006 939344240 987785325 46530596 409821989 653271034 427059222 164690181 256945902 895798562 735507589 67734345 510213941 865489731 671413364 92802647 161692460 946085748 898724521 343557358 65701911 68702942 441865592 854889121 114904877 631286175 733266310 894429890 775607044 909813619 739686585 84810578 833249399 562518394 43008522 644513613 694276632 981617510 583910222 24241707 347991294 988194177 185108254 194759160 842837643 710461175 213671618 427999964 882213355 880262916 485733850 891514206 142264924 62751010 796551899 879652836 162555528 185843784 867052569 352818779 161221030 130457242 514178045 32915492 477814488 821902819 815972987 439353666 965597447 826272689 449113127 246254208 612793350 111048 816044826 39980618 386266728 581207598 58988977 273264303 433180787 643607957 784917617 338957022 825466208 931840643 757439897 182663278 336876547 386842465 491728848 176104334 606410153 151465023 374786683 35916502 501222958 624404251 682300972 449081465 82613979 329532384 680663382 591024499 874347929 869752769 64753437 91687679 60190405 473837186 595269922 89925211 374726166 831778055 597760929 825418523 584429378 436418913 720118422 713573859 739321273 410201349 522081524 832335099 257675333 113770281 593975029 681735799 580592683 405641084 93024291 574727336 643998571 602407533 251710775 167743574 88605957 906267456 779791615 516505126 190898375 825375729 734979249 162949110 569187298 24523433 882610022 109717618 409948737 225728605 688242849 300947809 437758754 273330409 175852394 715656638 161477197 521641757 206041421 2769737 158194629 982264434 432401363 771551744 696417666 788285619 532817188 232300930 805526187 42957398 104592995 136251169 832800457 114080100 370334672 167394434 148446102 183918126 644085759 451197411 145228433 92980447 249529695 745916237 336510469 72170105 939795763 823564192 199197624 397145962 341136500 943632277 967252946 895908078 464839669 362671096 517658345 983341266 8850577 194170588 576060344 737323099 940552695 413008817 226272849 54617502 563131095 679518994 503853505 837258827 739745223 141705380 575507320 447997194 499988227 523345755 627882504 898487897 391866645 912261078 637233020 682656530 938962173 260816070 137480520 112934407 210896990 693442831 540392923 862463101 56433000 401849811 356839289 714825703 97614458 797989401 25972606 62758112 324811513 841718596 640430852 419044682 495033005 470227970 351955058 100221383 830455515 83439869 207993064 157879296 830160337 622138087 433842962 895616528 403438358 942600121 794511120 681431694 308978867 80929669 672597806 266567061 454900320 154350555 46752726 65723835 547968081 373293649 175688711 53068055 225334719 273102444 545112407 440120007 809848426 331334078 211432016 964479550 784091463 731944042 396051170 817635354 759721728 934983194 386702745 733723703 506728456 736778590 559733944 625378754 942048338 956407073 256401724 132332445 639990158 358917084 205354055 345493217 906945559 63369412 956274284 712722834 567940539 760307052 10315663 993163504 624891521 718111141 884628469 619204585 768054595 499069500 128625519 851986777 639247932 587201354 939492317 661727984 683908471 76084985 565246419 949880163 870367682 182786884 719653184 834194802 672404350 374686198 305716072 709411285 303451855 975485305 388464825 548936714 899559437 96181058 925113845 929376116 264666705 235129076 983758745 433009434 910905820 318090092 569274396 426895605 157149796 871340583 9570156 959716307 340182349 316051642 830244539 718225632 361021095 771780264 51547042 563359737 201014165 848675389 950593088 201772529 82487862 634442491 410981463 596792447 675924466 383303623 9953918 429247877 599435284 924968365 849800510 405118162 313847304 258396620 881536701 212292818 602144331 50967036 343402164 601779929 87444016 623429497 956721929 942485035 107670079 800738429 284619995 912727278 379216455 651982202 164569004 392086721 935043401 437469285 518858306 225958416 10198698 767015144 362591730 871187507 343037138 359525609 333994794 239241833 226527735 170820530 208834385 660174147 835268261 274848791 818852121 521193736 504490429 632380622 986920777 66555570 779163491 794215379 614923995 415993943 209104553 954576255 110690651 89696419 556042025 13031392 295778658 882177812 339418004 443199187 419721077 833078796 27862310 9378584 289278709 46225460 946251374 252807659 288088901 882677176 583080494 247286765 466692575 694805613 643579706 868941339 66611489 453239515 2505202 771648742 330212423 313026385 620982157 666638963 874292990 941850665 479284667 407650124 765701385 91659492 940989998 662201960 447070784 586822695 695587985 72985706 304678087 640471496 177358861 456322432 523968218 841071185 170377240 431327854 48150030 419900584 261090695 882136928 265207570 950380822 539644453 360692334 148443387 274343698 137744859 278889327 250492720 401431453 727256139 608117403 898031621 864886139 616673110 732488259 608535260 229114296 946711515 161186627 988646777 379975058 404777332 236489752 192552273 833375547 705532335 167217379 201485264 262880328 177084426 823597381 670660751 459411398 760429463 215905502 162448843 55400132 725470223 157685162 953003028 93639540 547791954 72943815 879307904 556435665 541664465 374420207 434986920 362909490 70297945 985799939 695486801 679827609 692560521 78620092 941954095 687501511 455129190 878557627 602081751 865477314 768987541 84887152 848745053 260068912 768090678 784728293 134634803 844329083 455341662 317404474 554599355 794317086 474309959 789503052 818703778 345961255 350434944 808840446 569797917 897604458 684579939 959694962 908587442 999044587 376287296 257295502 929272381 360022256 341217394 384912297 863636843 533883047 874778991 87464219 633453014 334542364 930491952 893221460 784402566 359719302 811917401 231263779 653070014 943934594 313451753 786787565 874863987 778334526 384071937 318719736 482578987 530072934 131981794 685463655 321384762 52448287 406620725 194824473 589917631 145082142 551505243 357673522 842872875 271325060 447000571 563910244 982802725 537351605 323309449 740922799 131455902 343650263 609436346 718793084 514156478 407597104 686521721 632203326 816115098 715453141 725603204 852258841 612810417 635898081 887283624 141851952 540577481 244955777 819110 686908493 579403927 352243 400059579 760431482 555017026 171597466 149344309 145515646 2243100 634532820 420862140 908814798 831526122 673474027 242454811 220482890 575515212 271458689 552899749 381183201 907984660 977817006 894632036 548854777 710470665 937045432 247877549 701790825 585925283 685285902 94547246 42860912 189668350 97808041 201860838 684216743 808237971 342653401 174152542 471549773 176148469 406225116 687527827 802673448 224340361 366672512 767843070 804870479 966768236 443162258 495110956 542474984 491130793 345025180 552400894 940192386 928552791 268050467 457490733 84894287 871973358 125002457 821014686 193962931 498875020 284106619 412779456 3823892 52171723 697766906 14634910 718485167 24858533 214339750 676534115 277364238 564287325 476486157 786569613 481729366 14426390 695982634 400078748 549077173 306095560 593281319 897588325 149099996 732048664 741179379 200457259 794534834 708328645 808931110 271986624 628357368 787705989 748146085 877187252 968258665 383238974 883246187 527504479 209172254 456682254 122332550 996738379 27278820 251968595 728458402 681462029 498640355 835246703 5863629 772182803 62509882 898327035 388052876 696331144 352317827 766754624 906695011 19816544 352456814 457004209 646898308 854024413 515065573 356302438 770373476 744443912 697244505 246986670 556798420 761225405 79716309 151774784 350092339 145108495 784825829 914574778 762929479 997986300 173400972 608065092 31334312 804914926 897262753 928822605 62234557 141606493 190113766 825968176 785419906 541756357 454566344 57465126 645858889 733479775 637956337 430031432 95984265 555089787 715169470 96997197 717974697 71375506 844037187 323998755 473153191 835460232 193168881 745656223 130883386 445954727 21532358 19094531 516460944 382580650 574644380 942215720 106452073 86440834 812526095 132036001 510605041 377773349 329048196 683919075 372383643 666062474 370586092 438390339 781286220 150127764 427968193 566095268 475053636 214397980 676163271 411761803 263594062 898699992 285127665 823563793 890088937 398828470 608759854 956494394 440852873 631377960 267709238 964664344 68898463 278855706 869196199 18995273 508800730 845643709 960117269 839264797 972954887 830774136 627701017 925064752 993437927 500098941 863012569 50167478 532501732 112584839 119670609 611007211 329557678 736417023 978333906 20132521 995117265 30193605 651483677 303437180 816519940 399479566 873555365 554543424 336249413 948301776 315199117 781907561 764334886 617881943 567973450 536462399 439904374 953745127 266812095 569637007 319790804 428491151 362673215 794657291 180688204 56541755 38913988 641015993 183602199 413593048 382025673 913761867 682234922 537645944 856345219 566304736 8173607 453844298 444819421 599961098 430979779 586611849 45294716 504538694 594618590 25074696 14320145 905595074 156387740 563890398 717197399 774892802 493229750 74444097 774681246 851113148 741088071 806456860 429065740 580961129 291530848 651247662 815296929 154162458 424753779 194735096 825217903 142019197 378491012 561403746 326746890 514165425 356767664 742247331 875355873 888081678 520699873 979870566 518258828 433515224 244988219 627677039 817836287 238643223 194425408 536334987 53837637 12879998 175884907 801183687 111472782 387357848 296342897 700799423 55580926 482731160 872715458 931379747 412634938 800445456 441124439 616770760 978849722 784233906 863588929 132652271 846189051 138599188 178555623 501581159 194915032 377341212 416337548 557021463 494413504 227022161 285174914 565762691 365649997 312324949 589422638 850643365 778096297 884892595 600772465 290169600 359441499 73754611 49391938 936235633 169735372 303753433 791561034 178769377 930725206 372366423 793642908 385661177 866409903 619916961 351804317 617440116 928144645 93294231 137020664 932344075 554485913 485733875 711381716 948863978 591640551 195977290 102582920 394141022 571163495 225388103 538153548 388897027 482233629 635917327 482584726 113374230 644975771 453348228 858020180 534757275 353519955 615047424 222767015 765141418 258197185 574989760 518945743 302485328 906496481 620169911 66629975 619088006 894860480 435696218 854413794 956441452 370880460 171833698 606055498 670751928 274155823 326555480 834077411 659470237 806343408 286836247 701327157 7071482 963768179 548059459 579121250 194437836 865988220 711631620 148426333 554434149 612297276 526218759 626856320 503220394 581589129 796055465 418701893 326874416 483177755 145473904 774612332 448666695 874774364 704521427 187768867 37561047 612208774 196956635 859670842 637635343 452194486 541911662 501392769 604983171 775825063 852205390 792227519 625729511 179086684 311683808 366758619 979723797 383457541 904203197 900197345 525551122 2095652 715857936 476838894 249500478 250789173 991353122 659148486 408822045 382833090 722093823 711147146 62803159 840737198 354727166 207443769 624441350 518761525 91152388 200400194 130376732 155818405 903272784 446281243 770711597 341611937 430388144 317217854 229244001 186837427 947366325 635066458 788561438 77525067 57711208 355287384 370791342 444468348 650066207 403835381 3697353 306697485 406825669 779780343 922300684 982539796 499454398 405565170 797925904 66694159 974952860 43411936 968810908 429872264 853827848 670159505 692917942 387048112 83028777 40417349 316140045 890814895 561719210 876539578 861549278 741718543 295279898 657224339 888983911 754661165 141097713 390034386 181012972 993077619 266188137 689110437 415026562 51961202 496634214 303542061 849198455 287749092 236365404 819053981 919644823 388828730 901710372 265911834 531190376 920948405 434915939 645873942 313189639 4116318 516832199 386406520 25428472 348244267 995127075 32598067 980732914 662435598 242084850 122007320 363328938 386690656 990662442 155193309 137193583 836495449 763004367 44238586 511896425 856858769 420454222 368395097 168806008 92665697 242756825 310556719 932470464 297430668 237596823 379719365 430399012 247211843 315472859 738004598 742018736 536819714 968341070 301227029 960030157 197394722 922138016 216805039 649791151 715283824 501202016 158072725 654562890 342171621 275531575 199318935 119977731 857005011 634692408 44868872 756995152 904847214 698070777 755278919 103333478 962999441 998637938 861130491 386073853 416435601 352126970 51276383 562516680 675167137 361226345 670115445 555347512 481058270 227602665 517333038 636944684 232571844 646012607 635469298 964901019 473476008 496856869 184286328 40152523 786495545 767256510 849382655 253422075 482312609 897205642 356078739 603019516 638651044 63185601 958036429 220267502 288969134 851223877 426721166 296673949 779855830 635594717 46362133 131017144 571024626 979872105 220448328 848966844 969658823 621422398 432539059 546563754 258129960 125428409 754789599 567947382 254209896 66236530 446534629 819389488 829606240 486446599 719830917 99693448 130101668 707475028 168125992 221023148 502848633 150629108 279890549 913593288 21856784 538537996 179087676 853910544 218651322 425528872 945396966 620134025 808293772 742532207 930374549 721425148 816830810 194447224 228196217 702072298 890811647 472424026 552545479 506379601 623730522 989309395 546858515 786604297 433657577 193221918 369119055 480428198 488704189 640318061 456974880 464197611 561641733 174942462 776229330 315252141 106533567 529776434 446257705 951689565 17927400 901349702 29239456 342818940 157123827 797066554 580041078 288501135 87425406 900793139 556251388 698175422 504950452 762250141 481466643 255589708 526084319 288073454 126590685 236482269 987820892 769944860 52762250 863732589 918719449 944937863 374802747 259959755 22694574 7318917 165465949 648158569 523704172 724703790 780061748 652391687 72588135 589902086 587614443 7656650 692486280 549613889 249674936 920179253 947526557 918937393 22543794 392017625 267592675 101166977 639125941 828531720 482551645 707403335 710367674 358839896 997523464 755721873 493274990 903260513 817913184 542457768 149636137 423362367 423654956 693256253 339371261 837793387 536351783 857688589 175007455 504415590 858845091 524129116 979417914 150709247 797547597 171279633 541650386 630735311 354152621 418194763 787648341 476364618 982315967 412905541 187291234 516179499 900931350 35105498 75463825 756523771 191731642 990113417 606378450 296494886 835149510 24365946 676521771 425920132 108550304 840724709 697250233 387045803 836689904 732977769 855669039 396618379 569469398 405187734 321253534 672480476 933109583 377979987 399201948 912823154 231540529 206408289 528869171 619350712 136882004 963660578 900643692 38333904 632887657 138018344 534525078 996807850 41525900 233144525 531985087 917836495 6936420 123914248 460034975 295967620 641967952 295591932 436123150 290663126 544770842 234468885 750948896 645365087 874450541 936712923 196862924 559313660 673508244 968608846 51040484 102091734 759512335 690772952 136920979 53994088 798158083 615745243 18557941 708637321 237203694 602698516 59959709 575558971 842176438 536988718 946757556 546299676 96519157 751330919 175199292 768249564 183921880 298773000 483658421 53441254 889885616 818588997 748036603 188892535 193474902 48133837 331939784 529888227 232138041 167783685 858468237 499058319 235037337 523658703 855451024 294553062 927002693 571971336 445841725 564356439 347473392 987010247 141447615 141156391 416401495 395617606 666785006 259269395 892832286 255860413 243399223 352336950 711668394 181285652 61887137 761547108 368225822 769429814 451345764 516895809 826544065 221209474 189790915 559548620 144727429 275448175 190953614 172214004 522810269 176870643 273643454 371687937 990524210 642729899 426991216 440870211 112784996 297431546 5010933 474275110 698024545 62086041 108522310 663361447 302125972 648110914 157592104 192553303 749609425 156692463 804215681 602547934 43509770 752884320 507306256 800531374 281147822 164568140 889557138 1079231 497193519 177794691 531878779 363651056 657728020 645029628 28398755 923527620 271360541 40049385 530883776 917993234 19704752 467908159 222134777 149635398 396135526 261054328 915613454 628460766 501105327 9139670 603682701 603010802 204501536 881346016 432727698 989598824 18375319 651341667 756762041 648182789 108013921 66988430 798484874 742861897 821764254 385821543 233248259 429575977 22141734 119663608 325457195 805354430 521838571 998982694 757231720 194381017 248172167 317409808 196361526 494431745 501399827 188451038 405545224 934275514 603883673 776761583 686616364 40503537 818940795 121020010 806808392 686134437 31565140 552923111 401072651 69968406 12361856 424274882 892213525 447210585 342061603 94679783 997076682 948879039 366707519 768669635 509464876 539549296 459501752 926741262 548344868 119908366 566172729 292293968 259085352 308848464 47847405 915117343 224676073 788350626 810942113 716414452 931492107 316542852 585529774 545604502 966835504 43486356 378754707 983808428 729487948 454932871 116838936 548254252 533971240 338455684 440794087 708163285 33770983 598809433 731186135 263850391 366844717 770000450 834384676 580540813 791787843 979505595 91241798 367480232 429693822 767545116 572187414 302357623 107422641 857178366 942973258 272827899 593602094 455540664 631651050 480789600 980076951 820073563 766983729 87763034 518291462 985832476 12097279 915901802 435714660 7003727 672752549 766721331 205514621 714728514 797676445 491154334 318339341 48765629 914088513 288078562 208376243 946519764 334193023 413876035 669738900 772274863 459321674 102411612 499673145 638143264 812166918 790023125 668090067 326493043 939355015 185613354 242472603 180635591 64266307 757907868 332584453 367337531 68193194 721460191 668171945 590855175 737028627 625514873 894528575 538470928 433810500 907731686 150435011 3873347 996103574 908220312 828848820 578262392 85188904 12551833 647458469 392424693 85294837 740260622 385258092 671756619 191206532 694324773 18798739 726504410 882976644 867489147 657081495 894719727 418917992 180119333 991119426 592068771 485586804 175808714 926265630 636899976 798328879 440728784 790394255 813578655 504546593 639024966 229788806 410399514 142568362 348411929 454403149 72583952 275397101 28815830 325938403 251444592 473499559 804174585 694856410 6334712 248468572 842907659 92975675 883316732 188990627 27172945 573312920 420884308 627044561 572276567 401182096 138532129 681072744 86522651 211716392 416541130 704731727 379848744 24009635 167044257 644141569 364209369 325044758 308719750 579298365 257805448 46593538 825315456 746001524 792893127 112503324 868791934 226164544 531547652 603154894 194578694 166354878 826853462 730957089 492823575 25234416 625802982 243862522 285551674 785946143 422924773 360059164 741738747 841917805 772187540 730689292 296910326 88222981 267936899 91382624 247234376 990426625 633368703 184389010 427862431 918273806 848666663 618427633 999935823 9456526 883223175 342473671 21859682 449858400 430913390 697209588 91462518 956042474 110099268 320167725 92483522 74600487 308548048 528278954 551280603 392443177 197754297 182630648 230149147 237381506 130622091 633442066 61297388 448186627 845929217 716598241 308623922 337897991 19465222 406899497 75280779 611079015 519579303 228421788 152025838 901122441 25764329 36635165 746177071 978190106 225577897 710713158 577011734 195646357 423234767 456332073 99250499 389446431 110050132 785560462 214385603 101131994 395892287 75347768 480482552 494063735 306768888 174910893 792887809 436871615 849137449 857269628 461599755 788896088 835585724 509753441 544851549 786272386 489609616 569591225 448618160 358055754 206224704 27111514 224036153 704048737 862429414 779532749 268814470 576857289 29435186 486307635 461598980 353302718 337559800 963635453 60328883 954759503 637774794 138718223 702819807 63623906 588382699 296859010 747903794 915288332 223751457 787664785 481520802 429391152 567228661 343445258 967786368 96401465 607330336 725850166 475729486 238378168 581597495 59337834 72988445 909129298 986884238 254396944 932574699 843211502 205864469 251945386 665231267 667983929 786116884 178409102 717553095 56508917 124698985 518301404 974889463 557943833 525236383 459024010 321862502 926185818 852675941 442393143 352547415 15757474 742844814 465289540 556274630 327705563 387803017 585166398 998041062 88502929 896797941 564635473 985871638 901888281 21970249 942638164 979574301 373760098 504721757 802316682 234989373 912017989 20537899 552746985 530768081 541862314 805589270 326699870 381888306 766559807 173844281 562450037 485768559 767004736 842169731 666552031 982762658 263667303 261256739 956850469 393706705 645115793 454590444 245287789 35587669 112588279 978343315 212781054 818808828 776012865 444846456 538203839 324562039 347055610 658353939 775762907 740708143 816821294 817574239 839299518 213175179 347514470 114885502 580514655 767063299 511643951 373604719 726978282 284641706 274991681 349263623 335376943 314494447 20112394 787156831 902993925 731841132 674066020 853637849 524812051 886413697 584744154 407711447 792270878 50172883 504004970 21825940 868084800 694405297 180784058 241982473 119461863 358501602 16439377 920139085 219929333 167769884 738793600 119941660 369342060 982595042 975821411 616756075 335333357 513662894 797403501 192731301 616282577 489682646 503973961 185993139 468886609 77688678 340002419 951970620 31442281 169562742 716886147 104388092 771652212 396336356 492903419 567480696 195472034 921501860 981296188 437599684 477592246 56400009 402500068 5661226 485162833 183938044 960243738 862930284 315334525 654517523 932500315 53920755 729148937 751864022 161047920 382237948 828512573 667032648 901116402 78993636 702920535 100922184 589422124 825412113 121764654 990435340 697988680 282063261 402599010 50803796 810738770 379847893 970633190 735493895 227811352 826481132 367875748 939043970 159293917 193122746 771976229 565417582 941186709 865237310 408347784 319023512 5430637 660680277 936609621 367629111 180686685 926216422 629496234 702907232 600623759 250867930 986475267 395641783 489370832 103243017 489953136 205141770 410259119 574295636 128906656 128574321 964225189 874047501 569564172 836428385 510558573 168517113 77667674 599975901 512603791 919460191 952935304 197331259 945498387 590727052 766075733 733239003 132761508 153883809 291846039 453742284 921125994 796222860 967526022 997504156 520789496 523652110 562983537 355712822 456021736 371950715 397635986 204590681 417262431 322667926 364668549 677808012 274817003 179944513 15261537 689323086 422417714 300844003 108766172 550733331 703967792 156295368 101422907 62334962 152004661 831095589 535790090 483059212 784944345 891884818 575633080 128284400 92001932 980886312 834819994 301871008 9337999 881224263 868262234 661486496 954297892 360665922 570762278 757358549 516983303 908536063 176635338 258148603 332342046 338858424 125714361 805823974 237627273 238953542 628136879 451878393 249694804 930202289 755723207 593725867 710886635 926232240 772682284 757654405 469230445 803285041 647314584 713990144 557307883 833698565 339948206 558338097 965123594 897505336 971730116 837238644 388770505 266846069 712461853 724079660 321771718 579748878 169235875 583850370 547312038 556015009 793108951 440810459 441260511 379857431 475521988 200258484 384591645 614047717 81962662 394183074 807538962 99659444 236447210 993898415 261199562 448553990 925808224 22387684 102310093 882771946 944487101 262568414 533034744 547968978 926839950 133337136 450296957 204224987 528251713 524454931 521383627 972579245 195433112 91945133 220190470 729809296 863932627 55115448 464568005 741694192 801826929 538083533 282328163 484674927 554255402 713650682 661549494 314399657 728067610 219475220 954161840 898329852 216726902 870769277 360102285 266399580 311856545 868602093 882761860 451371501 511465215 920031671 991854151 985341626 217133094 775906152 861759798 662786332 558111598 503217647 181612217 207211925 195792369 21638585 239616343 480000058 700097531 683042713 435633436 176167071 820271728 771325022 863416867 664480813 612512233 311659174 129334747 334322853 708979536 974527668 267269686 123417796 522915482 43798499 638306963 900976882 98480639 432525169 958786092 34835046 145289691 226239139 549340247 615991530 159754134 671037757 85681790 497699837 350448866 513596411 641265824 46390269 567143133 315253827 466174217 675481720 889862875 878085838 145153807 615697216 878142894 453293107 480916937 618707080 292227864 559262738 791174247 304807282 735532921 5312220 149618176 481501565 748847328 212217242 919514282 312321712 489742307 789465810 523315278 675521253 107020114 207685388 330848077 193245012 131145047 824974779 195897306 175815233 596302003 174421670 980663927 771452036 942794815 12313339 16422872 865710556 309063566 672060015 188813138 226936833 46926926 955633933 894687395 580378119 611160330 821990660 161516947 189958452 638967853 481653015 835327929 39981452 235239636 369645910 168484408 845524827 101833576 479057127 314694750 103243877 77637889 577597092 158636946 381832713 835099271 595789610 566086496 654464445 471525448 525441392 556339277 873287150 261845666 785889565 134326713 478541031 768512151 975303149 612277395 655905793 146129774 56774778 376939680 865376356 378293617 90895158 364549461 825197309 276462213 479248318 979764843 193832136 163366933 808070987 499688017 126245742 38353348 371907393 519577675 307997920 542226414 690290769 639826728 651560656 812691271 319015890 851648976 149576496 782515347 937271411 597421047 719094488 331145674 766414899 809946136 506362791 964776238 958793220 711074594 105532469 200445883 368898081 929552176 48048669 261927858 887477032 463284542 259635838 667297166 392535411 896990438 567728531 112718602 882264961 268368846 845701513 52593260 262907979 184523663 857548748 485742815 588965121 651363659 581941338 819142285 248873119 513426450 750757750 439166358 441358054 334091675 755001671 475184701 534565405 578764104 292009465 766029094 323604223 731439048 306011936 450580362 966859455 592733545 951686363 286288472 752502222 418884793 372250421 542318715 720373309 40202819 953070505 934391934 783974649 242014899 4633284 112806475 146883097 392266963 724350289 853235406 234051198 973936826 246608361 520845308 40355575 122069258 737141496 239589472 374045930 236756349 851042810 500041486 796190498 328340557 622631034 971630881 452766371 978666951 843189755 298480716 970038547 48100149 717890943 692645238 292178344 796978960 682387250 711942841 508852987 594445042 55933540 387502629 858852419 757949643 442636423 657354442 281410709 421780728 912150714 182650741 413852309 97754162 413206937 683651107 847441463 59235834 949124703 797497608 512891560 697747177 592514597 665188855 276104664 756697484 412600468 128427941 448844270 269732695 986395945 270719917 489044424 280793687 272198378 990666100 203672560 734495826 626685962 34724282 891992966 749862825 622821253 638985020 32281975 143691368 685184638 616599210 39492334 439718227 982725721 156969163 175996833 600865788 435815606 77717642 256885879 356479787 996299658 328149928 498970222 696917124 446239402 730602775 624966702 255098404 966283820 866779817 256717537 706089218 64756339 604118495 107240608 510577414 477648822 827586442 815950067 631850312 733001433 197013552 614756102 904442026 371639758 654728082 606791015 952344780 597276418 782975691 237293875 677512254 753040238 800884795 641610327 385837944 327527424 201130197 419341021 763776448 776291583 676421017 907789570 267956108 557784627 233716752 298600029 709302454 425144041 886393764 810972779 348823159 887350325 112248879 809224876 84310949 675293901 631534244 872804688 980957537 840314440 340905512 728742208 668987534 221572779 574129818 180416139 741294242 406782909 417304546 958337099 774485124 285873668 642057207 682893412 247918252 432894262 846267630 112395443 844123836 966122801 330750308 527684188 593019837 550638648 558360107 677255907 75409143 241306229 927761348 782706909 808517097 396501016 209789241 12177740 666090930 156135547 639763470 99065080 478396301 279057252 136964969 400460254 682926794 484492363 119874432 288301038 149242804 34809687 996179314 246791955 193101047 114449831 597945812 932298252 694637316 253810575 298381149 830227696 300501437 184801964 658703320 584323102 749419420 919512538 19540323 18672103 43919888 511547372 247353259 130502203 692858638 159734375 429450890 862082067 683477042 999390799 552082436 462225710 576567387 423816514 185829140 422963111 519304011 921703500 435968722 494782448 311611122 604075115 775368545 49451696 920077603 777067076 822408191 396143391 221837773 812493058 420878530 19922705 237452870 448711163 793419230 9525441 785508927 39097838 893173376 532938042 729546608 779443147 754995991 144902105 488824805 138263143 783237628 972092715 966508491 13885480 15122101 329005045 847769612 182920 649102641 354512882 579921364 625403887 495657943 420876428 318344596 239511190 582534073 913850601 292126446 589391168 18253649 456866200 806785681 951734539 771021551 255504368 825432576 50589955 629174486 896882562 684977414 24212786 804698156 483578132 768949290 17761725 954194217 741993352 725543087 993901071 742707101 364628306 146851893 624937955 314514450 696740635 472510745 844076686 237723087 254687245 602319931 100882836 590838180 611848990 92857211 87801592 298691171 980459455 234270980 22010862 789794985 308647279 874867155 358579049 286952226 658357048 836432621 805135653 593276548 691662874 413597410 40428128 450048844 359552753 315404544 979353681 22525643 631273036 891363974 799649786 195302144 774861506 437176631 883014781 208892518 295741278 394702044 746310102 251467306 70023264 804883194 281678304 296593547 589822286 388331837 587783573 262017207 240650364 717123994 665980561 738286476 996926126 451400103 767180210 805566498 279192045 736732281 884067317 453889279 720510541 912425105 105422951 895627772 191078009 316778483 726801412 896386178 755391653 727108712 239029379 499299263 179436642 982318311 597747729 690078005 222901824 205806126 718005620 256602905 824201048 644128600 830528616 73030582 39912097 759816133 138642572 211983169 574376859 153224993 764167191 497147160 953552059 147909442 895250380 176124648 48575451 721296592 467526229 77946749 435292387 363409629 261431654 599511309 391891014 171684522 455117685 435972053 493777666 547036188 370846658 524654756 769182847 58110445 368846512 841741207 132311041 349563020 527194293 951400820 768731687 770534847 959847706 123511960 50193943 172591255 822478486 9946242 369542641 564205855 543401722 702592180 763912485 371164694 387183050 40533705 984271238 240809902 714051120 996976015 216090262 660928095 79094012 540079522 543302614 260306540 431567763 836612670 444360143 369073568 655422353 47057154 748665411 862535900 575681106 224106687 339758844 995086425 47811580 202392364 382051215 96514941 852344954 988261681 930146097 744214508 509612670 840789021 444228655 259720660 848255741 360797399 386421901 791865436 63953959 936160856 526927510 861577873 887221607 832060121 696067672 429984219 297260186 705139862 650244326 866175681 702191824 725701857 529185723 662475938 960578932 342610900 734429925 190514169 865562688 291524344 28003496 733914180 29427119 504255054 469060049 579218920 901211721 675359684 20646972 548905574 586372086 400221836 90131084 958870588 552562345 724135037 434368463 276605544 739816377 607100036 532990718 392090394 574776328 877135811 66099334 753711028 844061188 815266901 181258794 327865710 680298159 51851878 584377944 464297797 827069389 660865916 869572420 188459784 797111602 215356215 700657667 534948516 86471770 310234944 515874230 762953232 824493127 7816109 120341683 564204212 858999789 314131245 269954108 426539112 370490583 476053919 756532493 871158774 586134497 782653969 298135960 729846839 496756759 940690501 588606992 634241859 928344113 600764830 591157849 764110517 192709736 925767557 526804452 344706029 591583431 268276819 376156805 53257619 518598805 812739783 573521439 206479078 609604007 427225909 137470141 307315023 994796173 154031545 613120981 537637043 714975972 65962462 269486379 801636220 169471795 59839468 275757809 785765019 31889699 638268217 404307644 454202524 559933434 276797517 651461869 117432332 729658049 754497090 440754715 90207664 673264218 674615352 306764461 7267802 811567740 769876160 787423832 965073201 957266623 408656110 370309139 951951086 834780674 634576194 630715998 156349728 869670783 647522325 129163761 770914052 867351154 4268372 658547262 728979550 485802848 548976370 515201560 740985565 770042754 797370301 465966157 642049010 626021192 950412765 973481855 549508936 806999682 674476098 952889522 300685201 369039077 159091253 814186429 326878068 386181611 62864509 372011934 490854456 854920113 471225411 673841496 617685533 876549475 931794674 947670223 205214976 128055575 126885309 861707310 447884396 655454343 664743234 202811231 224766970 163309243 972271330 992784546 58221522 757861134 859729214 903937752 941025246 48543776 899536821 325276932 166256619 713516533 237117095 752285591 931458157 774552151 933397977 533630475 588008031 989584472 78629973 368705125 575880966 143211424 998977090 71752240 780949828 92650030 161224649 155597288 230179183 906675655 316740069 311113519 348360022 234912165 259364934 548453447 353198049 393016865 938655389 541477352 120868968 127576201 274622423 41071601 649545761 62926270 40637369 639971489 714516086 768342423 472689790 885146886 419946130 334094323 506898101 997445804 941879199 324397999 999090176 555652576 408825066 22609758 306704192 679706182 643137345 56221561 845461227 714731089 68272986 519491610 386405468 315497228 621454580 426909351 945374131 163942605 323471843 134484415 421605232 899072510 565510598 172892943 998708552 68379212 429851319 183796272 623380102 762302049 146451996 493625745 105367220 857734698 330744267 137308750 193664191 991286749 172062067 544161796 675939490 507948039 844315937 300213350 495520001 806945245 836116026 340745530 214595358 911337272 585936710 944428512 471347221 352874079 631406189 301978039 198715510 737506529 873386998 79877778 502607706 182747395 3548072 351581193 570397546 463768482 788530690 134885567 836704667 98697846 200847582 489618157 1301704 569092232 978672657 874125554 985529635 611543105 667344566 718875345 145631398 537153798 28073506 325935278 955427502 8684539 274488592 951106069 164425049 906120850 594600476 139138586 570457749 498043250 619949151 765085356 696476660 785661080 582482387 650649771 142317574 951672255 431143405 302294064 526988888 650342710 848211163 370033626 327998139 847531964 45987611 247983071 215465208 308450910 150457315 423846260 552551278 946741283 505984046 146090675 939680441 558774293 956851096 455806034 777347764 97550797 658265201 92928151 981975268 373200293 677438664 114048905 713877878 629281742 619096884 606046722 739313118 55139924 453412879 86368120 797314446 975321327 233862388 662091585 680395219 811821585 742220326 237020438 806653960 834459551 97248271 403070320 850077216 396668705 891928697 145715200 552436499 160095557 977894010 406074974 149723794 176106584 700598213 22117622 146132087 842488229 937633797 468917569 449148799 558144087 557516231 298488025 258540605 72203550 464802993 694231796 636415954 482694744 612158988 271364093 331385047 665514494 623742167 629699493 112454033 990541742 174055931 47875407 21471224 929141216 592685199 316603455 894146330 471309810 174758982 789026992 552121302 508553003 358332521 20564749 80722469 324305867 969808835 940465373 420075185 876568200 904564763 143366377 653899802 689475944 751023042 439421662 475523833 570581072 980908015 843924892 409236339 7252188 427271184 872370167 975802379 967456441 843714961 658341996 377490760 252475157 503189721 717471295 534317800 832076847 470448302 79630929 549817085 268262231 818177688 317872478 912348042 988751118 970480743 502943524 542574963 661043994 869732924 256961799 65245495 37637878 365442477 131146810 812887012 267015808 213245029 143347189 486921251 676649781 748223604 271350305 964986010 724641647 249436939 878356690 147801074 679275201 64596429 595591533 170082065 205418186 829129238 299199151 249418528 533133046 625743535 646991281 454506432 298417159 132468275 854742364 995444964 109737590 655915087 737424505 242263322 629406072 547598154 800688834 634931813 513911232 330759973 679098951 927796729 619977958 776423817 443861105 284851971 817585767 534576206 110852581 431497580 641554289 981197349 655484541 242405035 872191915 121856921 996936508 995576558 399868443 953850183 929467708 156912904 831053947 876364301 520184603 525234060 675308782 251369422 32271607 442393780 415169373 170852025 306376103 608584097 812797210 898588478 155105439 645195277 119948106 809436073 466638256 371004130 172478795 810558018 712613605 841718867 240385452 518947673 155212166 268976153 882188013 237238584 415324958 597013882 549643399 848655736 486598872 605482995 370972983 823460440 490240900 957548852 605104978 829800819 360110061 259447753 359753558 726077834 202979000 149823120 404549976 853374345 775276493 83379459 560052874 564133133 13841329 706014707 41776124 13495029 920544032 559364068 88271860 525331268 524953383 979434877 363325888 869237217 580216362 396486927 926966022 859627682 902404812 260087270 760144967 263977711 864709112 572934030 426599002 117273281 312048553 103822559 859832888 619200685 53976803 468821026 785746093 418595361 113792541 503176371 843934598 428457761 84475063 692395912 629573380 664985972 393452969 856955094 236550735 887234637 677918305 563603073 334029438 832496365 232779674 299941762 370839140 1788881 112744660 77570005 723441663 943046414 899602283 981016094 895007872 860164238 885966647 953323569 181532276 508157009 172219576 454446787 230609866 462328892 556695947 132927192 882550257 15797142 104749392 171796196 902070371 332952405 455215739 366735051 434843617 528836955 692703587 170621501 795945200 297222475 580848552 923798290 74363198 209945925 707320544 530933829 829044189 216632457 809443573 797405778 707983011 405320042 320225051 396271314 631119321 585717325 12565298 280765709 856697739 832805292 912948947 895610621 47559037 31266214 739091634 863714301 260542675 252807603 884276703 808879793 679901780 801222164 29409159 887772202 415966691 273671523 739198747 592408456 805810967 548877007 144146355 737714291 943829516 265867782 609178012 207106068 278940607 471785672 841352038 149540518 347692999 69206775 469232474 858382050 79054634 493510288 525145582 706028153 249578517 989466505 631607827 102078460 820712167 852206721 86943013 657393627 998329489 785533078 677161540 74900186 906438419 621923422 693722925 294874042 124011455 302081872 363246753 311494983 790249620 464859818 676907406 823422518 654581228 662348802 403391605 927507433 840359881 39154932 740299492 797741246 214592299 303965623 194100105 40838817 702124345 54734893 885769844 864355243 485363143 36927436 39150389 22989096 484310077 318797398 981377315 118045719 129138784 519396619 228498968 2386507 765572776 855880442 360246632 679480895 143516982 400904868 186374012 132080790 832584844 786686608 450886344 194220284 181358675 655514024 846551771 315746033 35450621 813787423 731715277 511085524 499447475 231131199 83020332 442688387 527619634 441367427 916142821 842200667 3360020 125444044 498571769 862048451 127816700 970849771 888131087 552487954 47925963 680207098 215294849 178073477 774541671 456277104 535339386 64431406 858795752 925012410 542497490 741795661 316495440 343219366 876703888 442158032 70336171 833840089 731883486 19962857 553219988 983249300 788358837 780194495 345121264 430283205 658494135 68363155 89373474 450382130 896558540 644388856 125594517 657947090 554467377 211350798 234962606 991355385 455308019 637492326 120602324 529459516 877668533 291596017 733835806 743708380 945454375 292680523 388978395 51792242 244467776 228126889 977321897 997843784 180069082 922212076 944003850 928200640 959175186 357855536 1489532 960064948 200118023 811683728 482372564 104258189 525775046 87154831 877055616 876738116 29485942 155064664 693720956 60901929 30500854 991908814 755862807 904021175 676193228 723495975 384791980 847837326 902101246 182974227 178194839 591061038 516784699 699688519 263722923 335153235 145977366 153305117 499030771 752096545 873570429 155486788 619903580 781682598 955992517 94103526 369470719 996271941 660957068 358110245 641639294 264283227 417218877 877372471 719733857 424060367 870342694 397500934 163009865 346741460 710580552 474827185 871036758 531245353 197887041 500602028 502893354 470952286 619622032 81646190 619480340 118206771 542446228 503440795 91503465 810723401 231926260 529387533 839322200 911825341 254100983 729751287 583925824 5716415 183619597 448911042 996192613 771651852 703601427 515107837 475149699 441878103 644937501 511834643 592435792 386488743 472196381 383463809 10607378 429123583 346519882 179696258 76554314 203878624 983209418 899207309 899037663 422402970 645874865 317972954 830433451 906060414 266062240 291677273 258791541 204614866 412558954 97057072 326115303 219780561 820284794 476860529 229096922 214650421 385443776 39048521 45314508 158006702 968200408 491730422 753170547 274810670 743012789 392298274 863812924 698633438 788131582 986081184 962315100 611683840 582967495 83617822 542574753 970459362 35185052 810012302 391148320 864208775 98772282 525187142 517531660 764060503 579923479 990341805 606251689 980942483 524593976 288989307 168975822 946569517 329011821 38787095 795080490 780759725 390241215 777145167 923145169 770306837 507956084 701740653 984972446 790921313 543137719 214372870 641798564 152215408 204945275 815361667 110300718 945777154 122946717 314831013 914150912 732910815 546289338 628702878 520648790 323450572 990815349 673938756 636505009 379515432 176730311 600395104 427208021 686120498 576590423 54564628 999384275 808616948 654861415 216685734 475751235 484073316 983954524 611093794 454412536 997651888 354193912 73918571 284049476 706763136 668259464 867048626 747449722 150206708 273353500 537044721 447916051 160919880 125030957 690258039 739475475 843389914 355920118 840205206 869539876 374880806 506051085 560648868 911789684 312898440 699915714 177723028 846200271 391842549 363413282 781155218 109305257 625350322 587430413 737429136 183152914 685344693 978458736 691166156 900197623 6750953 241799256 570975251 574490173 886202364 924040808 334738806 762641097 174732266 147640728 146195836 554803256 841470339 158252113 444856206 828035666 807342174 949139509 432789103 183622027 933623021 860137242 843799920 628782989 87313358 216206806 948949821 595099972 132021286 845134828 261872753 732057409 984552954 693017225 630244142 793730496 501448079 970112134 538452955 169044621 867304332 883327415 267672053 62542603 787026598 66075663 235029755 106935612 496426780 479832864 161531048 279124253 605571840 40694636 760885408 423017132 884333564 186745605 959170168 554909213 94499771 371775103 465966127 945872074 959615821 727152294 909350077 583544197 713355456 256613990 924821883 63617758 409438300 443120007 973613241 249256382 436076240 343291750 944190788 948464661 19661856 141581637 694560065 410626634 62951880 370206608 344585216 130035460 311610030 399122019 379549202 278424248 677277099 393859609 400698254 520053707 121533306 500124880 250327066 512823901 786082057 351692766 132374088 163274779 810477876 622775294 73871950 932364540 511544254 802761175 149081588 88239144 763806087 784418393 444374366 724609508 166981931 755638508 384955947 343419286 773371062 685177620 276464260 225202817 806809114 265285663 205531448 700874630 807052515 132814722 520714652 18017974 755175822 874445799 655768812 846704980 105924174 727833115 895690018 272646761 639196061 870888549 747993105 255234493 134343213 473782884 583176065 960557784 194078246 200517144 726132270 736122803 615359806 16828722 936260203 955444499 329055273 800095584 646770667 129702360 340407146 678593474 414734524 976160635 996628464 199102643 70901857 753034695 787354607 748012891 636912423 372553443 914820305 450975992 684866192 503280247 522705222 407106270 543730216 444177996 484189688 862279530 979044059 305273826 996493954 560182715 761598492 405255622 127282000 670571789 305862284 413632483 89030937 148869392 923315462 742092414 88382314 764517486 627434905 88339195 100105086 322133047 3350347 565597482 428068557 837927420 298796241 126501481 997283997 941154484 286106967 743810771 855085785 816975836 951672641 434592230 958978881 601212489 175051535 982612931 850260583 740974339 509930008 388893142 633738860 379172610 580064148 501749982 406963582 358562084 774598149 3120422 10148932 210795602 448112242 259391015 954512498 489653253 741988206 597502537 632998133 423198620 279677710 400416521 114079056 445653975 448517844 645456670 810502348 839377318 929134440 311747616 277988883 747860794 2006505 22878965 13786629 397308468 833500343 349854212 199693530 939909867 87883411 733418254 555450541 677421088 969834008 967839404 523561528 315567863 489159273 918569786 624469629 253665041 106190529 823686172 644302946 418582346 220075053 706373098 221114097 561614042 507200406 192586579 990269365 219807280 131849960 696268312 220426727 119560023 928844554 723142792 814099586 856775857 934246741 145232970 844082316 392360662 992976508 469300771 740087395 351659645 955755450 326381052 211276784 389944743 596885003 535609188 268657067 361433271 349927983 125714703 882321225 882893263 936937639 266789596 450279174 983763012 744640845 954536562 336486075 101939298 509425018 507818789 353744208 411685156 750623021 77095624 620905159 206554433 627820286 949229719 734281536 69603741 2778583 799996342 546409198 518088283 899929904 349685365 201718390 836013114 899114786 434242295 248992559 933068545 169312888 473316904 986083138 128905519 738592725 483129806 64646213 94344928 783611295 485444089 586670390 114094028 533471993 910059233 852996629 797475452 34786480 816077178 263764699 92828633 244064963 993298478 61791535 360704627 525011247 906017812 557748603 305950808 502609447 616485369 527435828 516527895 900348844 568808314 809049417 523731926 177379819 39190660 127055547 77129804 920351106 565771255 896064979 652596946 796186586 655178902 384360073 637105250 416967353 518901982 368996051 352887449 642398858 311944430 456312222 185322887 145841956 503208771 785013791 523893395 389454605 705454225 347922619 841136368 359072650 717401316 996075972 389311366 827560327 83294170 549744945 289606008 374176358 93920237 742437750 160858999 81021740 183180443 80600013 788480505 956567230 695642543 918748501 687320629 389037977 548622042 952490017 804359708 139170251 569106371 184001906 98856872 801730421 138550845 311293929 211095470 724902870 661080237 225551207 576659832 601130456 576351783 559383827 204539017 36567810 291067957 155647900 226653220 65925643 952823805 523371388 534828961 695081593 441293541 751180124 826609955 935877330 444878522 953018416 780258293 389397640 789390114 348207008 373731647 89687914 617114784 990076981 534760800 278142679 279700875 112655744 34166295 870075597 180922992 186504530 241077013 698828648 569869475 994528851 649854318 779451407 688437543 27240827 831293241 577406492 506472579 754092075 793741842 613310939 363189820 440727282 704127065 532341071 342876105 760542264 12163854 199987175 775956653 34701564 87924440 764127225 268471641 549123696 882685671 812808504 866618204 941933194 705220122 769475734 271198053 539930680 338409174 476820153 116920262 60068234 128749823 899842104 81956793 98213256 901533243 203432465 638875030 389315338 121546299 278870331 324317383 341483424 245014768 192651469 396890070 102262004 708450573 180071780 817844931 939056351 24515524 72314319 352712158 655159256 352117152 742255233 655323959 272034171 313684199 715277696 801883515 875165675 800420275 805110918 655798411 478478414 858346651 471690864 623678098 891785276 478974546 902570465 586500175 946825358 864864415 225348874 406221802 264590650 818248904 254059566 937413079 269786991 386803214 844396202 324262098 239292359 421197603 521555404 552206739 481651784 287517349 679151524 997187251 580749185 942721470 372549852 284429592 464224060 351149100 532963817 201149528 570529266 172223929 303898742 394250029 878573600 540103903 886017447 346335669 322465186 387802062 403117156 442277123 417020545 788710368 397208725 545939887 175936181 670821529 335751994 14099859 372514803 342816265 823392777 590420641 154635246 338997377 979489653 659087588 10952495 77753398 831252940 756564977 817321971 885596327 80384596 356267011 284104819 168290963 242102731 131278602 991891902 5229368 744192850 479682807 874629375 590982 500748082 959659230 969836955 622422774 289718351 339417831 378736722 598969084 982388409 866259535 48372163 382604334 264925707 869140987 597249772 119546066 991038839 690521477 289658777 687959578 208263505 292876257 15197688 524508125 888990663 539366689 70711805 946285723 346278459 789736131 828061334 385814200 988075896 461758753 550687595 855506243 395962415 477538215 543573543 330105310 237047650 910944623 449534588 462505346 966585130 359291902 399997669 170357678 582588025 399940664 446633851 982081086 736633202 97218640 588255570 628347894 594945701 379019999 46215024 69705782 395572401 76260905 884893856 105675137 908423060 478996935 839423296 702211153 388089926 492794689 950169515 992362231 304515435 654854662 299504708 243183365 718772003 114488097 174603151 549407684 304023086 440675368 985129934 597012752 915883198 514199409 105266050 365762918 478548749 122486634 76669080 644433340 615627547 794473955 727292398 682460757 287002699 684641113 785694812 594494878 633904199 19628481 380333851 384410322 211437142 563383149 456150364 154786425 875835676 491137667 553072483 630539413 72316622 553006167 394769281 770568182 332224927 351118243 441688361 78106893 368797292 93230924 218413273 95140927 854791744 669791958 46844449 195707245 486257305 494746257 22838787 865110511 19695098 549637112 939885934 599549498 169149657 240176051 89836140 935929483 48263001 31972489 299693896 311279446 353888805 491809335 874269419 547647264 218898449 605003153 973948690 50823189 542413025 380167491 563204848 868982729 713095756 866421 219504601 866843463 65496133 299008773 799828090 423511379 331213905 1215531 10019152 599606518 188106920 514724520 56679250 357252912 264797371 219445371 581349250 571696138 907916679 299419297 149523179 580004369 287683452 94940740 253840319 490423827 154736495 269562736 706224692 81093052 621150061 527103730 29076297 990872818 940367442 340971177 624508112 851943879 444714843 666028691 320746127 436807443 970112803 918062406 240942426 814705824 679906498 691131479 108294552 50043838 758882854 214250760 684307364 767904885 18409306 441769313 526284884 563716415 483792344 120429455 248373115 382394910 808164708 489510980 631547892 656304084 659897104 685761399 517414029 105468261 132192545 292210705 876939444 435373509 767974698 268908822 561695099 686064102 479207681 756956506 489845484 731772143 209861702 392242930 340266186 975778254 292613748 536172981 345607607 358225049 468053778 607690587 857047157 830156589 844458246 129534279 867368205 611549264 91852164 287904445 148754173 303758535 878574741 326656369 664023166 477164871 67717211 845522372 824092555 625365216 486339414 717325232 699259431 144631667 351778091 304381373 254344722 367386287 153881218 443152310 415433481 48014977 76950905 817698296 581455544 437744155 68870755 896212043 222019703 674901879 587892490 80862347 361277516 924961517 3627157 263129971 191889764 980137607 646549216 948578600 936775933 727427075 790141688 205127580 109200245 645777376 50758203 100952614 352833623 445021651 856587910 768850924 305018066 34425443 614754456 466937775 135227090 702672514 611120521 97598331 467213419 211575556 632481160 363290644 978180165 478560777 225267030 382869356 431032266 863781036 262498712 434761366 14257903 902962199 177057230 415870641 179452656 666270791 912881280 492671466 752187654 375481112 581381754 93699646 703319889 599116929 580290767 598396891 193362647 601806607 161108258 550867317 563723794 901006123 269333510 500981337 581341236 166994287 114879068 626809252 403300750 747124830 60252844 212401782 989449749 823160160 670735142 846219223 924409565 724989551 273022031 971925292 388242054 73903667 175090735 31525518 918931317 387617752 201058251 803975731 595842421 570546169 342915959 414862174 851108120 500953645 921772711 41694012 87485396 34313624 462074532 578178130 83791041 335824340 678621288 727921046 947120692 951501678 484434308 803703345 145639406 862600792 854037123 349619756 331500138 2569964 290338988 374849404 733200725 115849551 430120968 259623968 463988194 99705489 813557984 503671997 46786785 554282191 931262391 565140191 864385001 232396230 817621216 40436994 136569713 38985093 298526929 399520406 791027288 358461829 601985727 775489635 843359832 876721526 533334670 639391582 570507622 898994072 860237252 314123367 746705639 738718890 342730638 833651120 613245655 827845226 355224103 660119220 69105499 761834678 525398680 333526202 634795415 916484005 25959977 630040039 295977614 922849323 259676205 811128411 436214326 581034136 758570395 593852206 73277303 327118984 902619924 980472486 320491796 586164288 309027123 276543826 203005385 276991066 580425641 882609692 912288021 946835474 53421019 196291327 956892374 140857752 641417387 572963489 898508402 187898663 860675857 320058740 854640654 309446307 694410228 997413856 772494950 346081881 24415487 590464558 610272646 317342330 463929425 296549715 841406527 713165628 385527410 494034954 425446722 591485057 496942256 730806530 416900483 732466120 196864807 119311378 4500381 814948988 480868934 49412907 487448652 19676868 911212124 608747911 574898249 898118242 834491674 606445132 521942502 506388179 978249749 795823157 290055813 49058443 526598065 676625887 152244621 655567191 332770445 143444915 746925959 658764406 277875461 920322351 469647934 477538727 8604658 577830301 46596432 499343936 383797067 910053867 705075366 890222675 232580568 319812901 404407569 329068067 618346954 828642065 944928341 71583888 281936289 855101928 942031838 842949753 139867370 512024895 221683921 177603921 547586934 360581459 841967852 647318457 614620001 443819369 209850005 176719501 699370655 558920390 406472029 418249780 495447280 635527008 916377488 419091382 21850491 536225728 413425536 583992990 246655600 981341830 30019236 501556712 605053723 185402313 122926370 488251147 878807427 422252628 901165208 68472883 767821066 320938391 251940423 475076815 155517342 13680518 288662068 199786056 825882382 100252597 121691683 617319997 859507158 325136807 600156757 103575532 939281806 51270511 535270039 566427069 389271661 741303417 105081733 275763134 785883343 138189235 533316108 437932100 150808179 148039387 405561412 739643619 358785992 293836950 230445744 66365999 89411157 148088050 988817778 281278412 469010336 691401375 290696889 395714795 698933876 342892600 689604476 139438295 899184509 31656363 981450647 749317712 313380562 879845385 650958446 525666304 450072738 518260892 756359481 557053222 323348736 78379183 983004201 199770926 412717872 512523377 668717671 89597160 542989554 271530746 365587512 553358247 986649783 596862022 645041075 600678021 732064709 309459824 596737010 459159906 894828973 835052181 191384466 456021033 739714895 825026598 519305157 333474109 445557032 202145659 295715060 512758941 977948949 764902144 332324633 915478213 623590795 622062316 754931369 544759345 960685068 378295837 601574196 969090173 951509501 334491083 73319186 107248251 568628171 910395494 765955282 226711616 947664366 442179485 708660175 285431918 525314784 433053134 386777961 493424582 230169228 881535641 746392494 95228719 54300053 65011245 591962388 777329467 250612846 682480938 855760192 435681366 238961992 987744253 971071646 898277939 342581350 500714585 942487387 454786703 146730873 701165431 278648912 790388483 716218380 566551081 962110490 70202797 800055674 790773905 327526093 27881152 694806665 85254416 590575810 820390226 997281188 489906764 113602763 853604192 506675123 696078235 455869525 978858802 915128000 508603284 659181432 820554261 147479361 704363090 368612799 311008570 459931536 660785377 866421765 64387230 250282520 885910496 254714291 764973401 594674614 118141505 700486667 638681128 355082810 929489554 505334063 447665170 877308289 716690196 858719084 235245316 118354327 778990864 325125701 177640369 721806602 271501160 11704189 695607439 52166140 494319965 964737253 52628659 976665973 174303878 112600564 97336341 709416875 881811302 159369933 934193054 174293868 88037575 793345129 616137207 799186521 469092838 761990075 992163609 30693721 33361720 207598631 260683928 124163927 764188751 521169782 312298126 641396944 813163256 336000215 740367549 626320407 198592920 460139205 263695628 142608640 156228188 312486513 772988802 541869331 639699880 394389452 254437076 837111924 431961186 491906635 178304056 582977390 606508003 529514858 859478407 970270288 298925655 525901882 546285077 76695831 507605117 46780859 38536957 803581251 249278907 447465301 473764700 551489764 384383762 405140593 795237399 525712556 127770659 161420076 283643232 170729236 31338912 617949064 831062406 226117042 479129132 716479965 262486752 293645914 898343835 846533769 243832829 676857115 339704701 385729057 878228496 18987667 407545867 1206315 663841714 561308574 483034900 336197975 402849889 590320436 885004596 847306504 723658607 267631242 286512734 356111668 638891365 480345288 115705264 312960280 164711889 336379145 25613362 282484511 941263192 253529862 812144820 647800411 167759603 428868146 564045983 992761775 396054708 869646780 590842999 503007860 83271913 213874820 827748157 55771284 419830667 772332334 520036101 770490767 438248255 545467850 365816764 601374267 320200844 693538871 736865646 684932946 696879686 41037452 613065943 107923261 779672197 43049344 358362998 884142341 95703188 605578482 766897372 787421813 773562682 617096359 751768844 744673191 50028110 293749419 659996073 197409262 488144449 753180301 271239915 488107489 643473360 82524352 484290383 329107862 919774115 27437038 309391294 585170959 844800443 691731899 286115282 192602901 194491765 234467914 217033326 483000516 609386215 638916317 983681546 207846091 931677325 372033689 810071302 956738077 716982411 995934038 765825103 983107721 813235814 218648873 481814169 483231378 643958998 365159628 870681745 255399002 738245719 446808638 955346945 22434489 163863768 967303567 247197008 39458837 605049710 915720750 386185920 288148126 102672717 132500271 350967239 576955754 236738902 393010613 988767743 381381798 131964796 396219470 158506951 925581745 485441765 983627892 540001234 233174888 34612086 48136801 721457944 472041581 83339879 197172623 368945696 125030341 888643598 331879775 577268838 710618475 363444144 10563910 356430519 314286020 327964485 770435177 372478123 324608175 797181918 948996548 501324230 900389952 701742304 654666481 532182942 103378002 42694130 502354742 189352766 642888806 767982037 107736511 3880785 626472573 409415098 964229253 254955624 213852537 767973814 415547700 528398488 298471033 444957637 725339422 412949565 765422567 573816412 474851346 152047114 785639503 698858597 81393917 988798198 284598632 244905264 761781458 926208391 722094023 494398144 966414660 637329996 96202512 626382222 752614877 946612388 319104940 78962449 373326806 969585059 582884588 187956001 996969373 302144409 109286194 197943472 934992668 442273264 733999379 118813089 40539074 971400637 148485138 220620732 334373241 579348473 775598180 58805879 826279928 53967793 842365170 957927717 769481701 797296734 125968319 752307865 775327766 776037578 174026288 98858113 572479152 955502565 892807051 649793738 254628916 363850505 93538913 535770904 644693284 331663129 906971058 972468989 14261910 788856928 185319622 981745482 860083730 554811122 627041771 462263963 941207791 71733199 208865684 787552703 431248164 319008403 628561979 77237190 614124059 94714252 45579979 439086210 410331254 847426360 931619931 131430816 670839495 969812188 255605417 87855175 956400103 396315545 438370677 716821749 809480734 312187640 809353228 684129345 284969123 141246682 185024568 117064937 943811364 706094063 867199758 678274982 755830983 410741068 892918299 554289366 668310140 425206191 890688641 474439226 54510303 203352042 221769250 863132846 932759721 479806719 94156190 496839347 115190684 900165660 143115466 272763584 743079765 887358300 19864304 900803946 741103471 909478968 928313026 617642488 758636970 944919841 519441286 407091289 632711872 292661276 213841946 483067971 641852367 275884549 162030318 361238454 447618976 470470724 685459166 331478878 197130634 164484344 568027051 920838179 478602632 611113269 952141742 557477802 849908521 638144157 978059423 199699420 759096095 471232614 422044268 388796608 263328363 184819626 389360483 854261425 796955811 182485199 504633011 43152771 79606250 679500106 697999795 841989947 658975626 874316267 670217386 400546262 958928612 452917248 411643517 529192882 235911703 534675313 529584843 834373201 955544616 103252205 572692988 257234968 841891825 847547242 65017061 398837726 936037153 463284673 913605389 107560744 312303921 160395309 255547467 232975089 885787582 909840454 721422403 475047427 337391871 487921462 30101182 75627648 165047920 891862627 311904609 612563519 838400229 463877801 976892674 108173175 701159391 333215520 268464745 444915071 472964933 492345237 374603268 554835487 743780194 804709337 588550009 763271193 365634496 827483485 117954610 669602744 850107898 968923400 288282448 131898548 111359063 14998223 220417639 928043098 935783570 775778177 417551621 561679967 670088826 74925375 256901996 510425347 844488014 279858259 786273708 914799950 992204181 413551075 494696333 462857611 42493537 344826217 638482851 919276232 834828882 295988214 937413865 638461 874918940 658165380 23549622 609991129 27366515 856187417 205874762 445846654 671094335 595624714 473888077 744837993 748706722 551503705 823711487 718839268 984147206 841577335 153962978 747505030 229088131 295655315 438103474 7300652 933831116 710184945 369276727 854970771 310735459 193235388 250135561 277575438 756374691 589723648 288586757 314026872 124828422 663242054 233042020 448539426 47195520 703639889 366308849 64701712 636734369 512200298 359403591 559014941 128457504 437716110 200901439 680008270 246678166 329962601 553456064 307318499 470964031 350850169 80025890 617069375 456948780 280377368 32331050 760109004 441343015 888159295 37074184 860300257 838588779 753931136 242441293 817739309 539653958 900542350 105983490 459290425 620013353 817021844 90038357 909805987 406941988 819724389 706071997 626267727 77693688 42892948 561996966 962971803 361651692 449402410 173337235 430303355 801300783 144597944 339538513 63736937 404054278 161027004 405447087 568480930 89924518 738148862 198848996 310010920 295483974 234067979 139271441 505092222 759467776 872583959 339386294 139035565 432114890 310069082 293135631 673102942 650903021 836319481 664911829 336459139 484439465 436252439 327361942 806803180 228244084 293292141 827874487 962382758 577307341 882217231 314262412 67048414 478630701 735128529 597444275 652418849 658739166 153988586 118154888 686496658 7955509 296030345 179278587 889005157 542861095 260525131 718717234 758735037 766762001 970540469 897602378 104501129 616086039 516846561 372283230 358225612 64937582 103883003 375483399 242876374 759626554 399584552 929933901 855786674 499946450 656723106 299024766 675538859 441444369 927143400 377329686 33957509 93805887 897128015 87323011 611232991 804844142 766457493 976747043 354343430 728582030 330385803 333292972 713605816 404413434 966834479 533466887 353202716 914863097 241744788 882218965 488000995 180488323 845120189 623805276 564226528 558406567 781985944 265043547 121798679 591353842 81623282 450557027 791907561 218049016 993211796 982670124 145852424 769745381 826276806 436210366 185687134 633213962 307751180 865530489 636843037 407154321 471990482 968264662 286192237 491563053 203766956 974549612 423229633 901390309 638472350 199884806 206561113 712593172 99294812 372423902 63273240 577153650 861027386 581062299 469380464 342835395 704830008 821636290 647361054 687272083 568920575 125010625 786058467 524363470 85979446 280738660 300178994 297616244 640992759 640939951 636951314 980004954 543002069 694069407 551646324 253064997 568317786 599209857 92664615 783671734 850837327 228284470 481945617 881979306 239446151 852818530 877834608 202434260 827062585 146917878 863173259 169127974 354662439 785029815 726660174 666322273 675421103 798929454 686360361 816946565 152843379 735285751 878435018 613680506 641069128 177255348 34514536 466538128 105018906 309458679 593785955 409051899 615362078 5850429 678706981 938226233 964689539 817091149 789560518 58691991 392819281 58387216 420289643 670255481 582715641 242918381 430417665 13332483 285861658 115691253 419432727 410145329 982808287 848688819 494508468 820676696 928684904 37924293 71438026 605342544 599303722 344591602 948552174 591186838 569817903 274370072 536420335 346896180 314864531 380648425 416097173 851752550 885647851 340127659 207670945 426390757 373592150 689747991 853326600 988268352 218057385 642022889 770464722 196952732 402763804 894455604 309466818 553458743 672496160 675520029 661371702 875078698 223439441 641885130 393829718 828203575 924137880 2311161 309517385 743438426 799864205 825396501 501594673 31395685 468861837 609170489 135199092 320752733 981534889 147209274 617437768 665431265 724857822 571908852 675270551 532006242 875684649 406182412 768673662 453323746 506169562 612121398 543290802 301709793 733468883 746528114 949648205 728119530 215914279 895807686 780925488 415481719 991548265 125784474 18741717 90703353 315682959 722683677 277260393 864073860 704131467 270095676 383147427 506830841 485787185 742963943 895299204 541828065 528469973 571500885 848811306 838713473 806219855 254117124 690624465 884125786 810562040 164272267 683824249 133980994 639401001 612167665 805449833 999957027 786787689 621754833 777359679 98842437 235095504 887997932 470076446 266044039 749208190 731076049 407377640 332103934 447251725 993154544 14864660 979527056 202218035 998544362 481020967 678361442 535388695 227385609 264047168 668310047 598761788 376132841 565385880 833900796 498011441 404713437 758833820 106461588 925151739 819597366 827227487 140471325 641019973 359957108 767893923 132388789 52719984 775069050 146496244 568949309 605133032 657239995 800153108 305178079 971988402 416144748 124560594 652564416 509571558 80438809 732589229 935888412 933305772 769853890 294255398 706665713 576934925 223384538 173665969 458788240 97766209 542794965 152115422 59631155 205611875 316586773 933177302 747903980 277011653 275214667 870804105 885214915 221202033 233585350 725779398 536895927 56973788 341846179 972439783 691446176 151244496 616023827 289033110 13121848 971036646 377151486 197637159 541420864 37046257 834548106 236895518 757569745 286760346 444977599 10840291 717391890 221052965 838399272 939916032 56717383 893230337 57568792 182700576 574796744 581005160 986298996 445772685 729383578 664212857 312297343 286015705 606012216 560450565 903276231 302280804 700832980 28153939 280059021 508892041 116329409 542934057 422958318 794142704 874797926 662489144 218301047 846527889 797611956 388475601 625079553 761476338 136462417 302177143 895413047 446052149 87386164 610206859 443135446 302649197 898407816 221682277 999037215 910769089 429751459 950540396 438937417 756939819 729865485 422255765 181422408 685259280 759884080 100461727 293159531 380641828 886307135 796506091 659160140 562566193 905293900 253278820 872152136 384151075 729307810 402568081 764459421 237215695 408045876 336938912 333480139 885577459 949112195 406394019 369175648 897229660 554846445 720471606 794569432 168347398 918736784 68242840 82381013 68913621 512876022 189262527 659694935 198445864 840072094 55629576 33728291 459298219 457240543 309609244 408121151 301694037 769439469 37312002 217798343 951415164 568094030 934011963 616904134 582935751 82279191 389187347 146479146 299436045 708439412 595136877 568211538 950869384 267775953 171750160 830943368 941803649 491992064 794879814 186440314 990889020 974888681 285105744 84293790 139219135 363399562 877473058 617048395 860763267 780116998 205479642 493632944 313788616 881690745 791945653 597201027 349859044 79352867 75308779 198146611 30014423 992919684 503415329 844868092 246335829 139683376 629444663 281693311 783835461 819989498 240121737 77339727 475261015 121210617 256339720 90754101 595353052 33468363 707751500 786017969 899272510 474201809 172377618 796464311 505286459 794610817 844601189 483231708 507339515 401752314 492367332 35342806 121454184 641821150 440020943 497910358 204395698 672333228 351248156 474480981 733244825 765271149 850557452 962867678 892741640 454904300 262675087 548959924 285459134 440708700 735663983 455805731 792806099 279042758 308343126 597744385 195685649 14731621 759954542 806304903 29596318 540581237 585860927 489820247 937764793 812364395 352666799 382596928 771041562 71711489 681589031 121516317 613299579 801034963 773435287 656656225 128100343 37790883 435970429 383198222 692635404 53280061 211349557 328175935 150445526 582703740 712949502 841815599 657045542 232151399 211093452 928943408 660161125 749642670 810263456 406833787 106907865 760413845 770508274 664777784 48576217 215176854 254533459 216206315 739956752 349009872 681716924 578172487 53564548 78583567 937964992 313256128 119775722 253117271 950879097 868484172 728574417 596080539 997214674 35483730 839235634 762702751 985871003 19995482 862811746 558325746 566618818 906169364 307787769 65734192 923887978 374192079 997456433 728808907 290586437 518077349 701638506 847699099 227678744 216708894 842518798 974509286 923953978 626013911 357169117 658477815 758674121 671033246 356301581 38450231 258403662 234365677 649416824 319821884 891358048 436282278 176877178 462803454 732657315 258065711 545571378 416525385 774782293 921530056 604031731 399150386 377712956 726145969 468618042 187639408 124725391 46463679 527597751 375792594 87629503 794356713 312204757 205316515 198622420 741626593 440522627 241991667 899584286 245356753 528135802 755851236 894339951 987345967 461139561 231482696 499956559 391248737 359070688 138881611 334085373 8754696 341389334 671681591 737220076 453395127 344269818 404443020 821592052 202152903 701400743 499674912 419494301 624085775 630326829 854814564 18053478 56312074 266201473 127078120 108851724 525026921 208818383 542587230 4911197 382908591 998388358 274674469 285217491 669268119 668832783 695204730 714902115 648678777 657572881 719056403 168745134 106158037 3678796 272585849 713001110 327684142 644902244 384594916 883289925 519828140 291642629 238646130 737345133 809734390 950317257 731031681 341278246 912382796 666280164 89583844 41606784 383870527 904891602 983514028 228113487 980026650 780652269 50433779 794598594 157685694 862700342 429238419 92341207 577893695 497013002 864322044 543686010 453770179 206729975 700778269 332283375 957690837 383348336 488190697 416337214 891016694 442227682 606040905 487436231 112257577 584680133 519154387 190967203 30907607 570570334 328128545 399344600 8650206 747641498 776049706 903380344 928741737 271875388 223053055 759306871 359325553 27219609 557536754 797180449 805354675 730925122 94856945 519316781 491934337 854717765 614628841 655720972 101671476 895042855 843095437 310942670 320878473 909874474 79856184 459065265 446661729 801469325 373616463 817992125 734420326 677181661 14385826 823577946 134567463 872886578 852389619 678188352 573517363 621752574 936172363 432276282 559876625 499142742 574176168 584405599 144224207 211383591 53656679 724803523 207370432 450064955 816831788 507634831 240151414 738102091 939564755 162643329 301524838 919461606 256486009 199646469 579602282 976082435 272440788 4749469 148851564 648102345 617745819 140224442 759164738 204985037 176134566 831062500 597778382 142585728 206284964 254733909 193748685 70379349 204213471 329937838 18854920 417611619 282032422 941380254 374436378 24511715 623256995 745686559 734915784 936246293 391588945 339319430 787552673 237709161 919242748 758590876 196606297 666277104 317382552 22214750 832051744 297597040 152723191 996102525 387011817 804408510 375207085 806171780 861903742 468392892 536498037 546108846 416287953 541599209 740434267 355245961 665363267 300886294 855935362 475055362 401403818 778043511 731291743 446717464 70451239 808294527 468200360 424867617 716316786 988410012 3541240 921855941 270860323 477713028 221840616 841679620 606843257 844257932 5773994 357631871 23420672 75893105 113974501 665612762 374895068 359028745 693817798 669591038 160714229 923647002 205298034 683242994 880589995 983114045 525204951 683775427 992869849 894901075 520297009 692545712 663323867 429848724 865752907 71890506 80785514 29814860 655285064 179927097 447449174 913737319 527478859 952951725 547262061 667122012 92861708 409461889 747259132 572558062 597841728 747084437 815156744 579393090 569631254 44129296 881973968 754597982 355576645 974125567 211162473 411278172 798389601 902249682 497725648 232176132 743014117 41135175 380085871 623020058 984281580 233946488 290672326 628667703 917290601 773753487 702751442 716563396 679136837 793052123 851907999 893208297 864612380 567745111 221853649 388983185 37431311 610830155 155585614 765253940 766643049 561763431 21342642 767844621 442959263 673025628 580435486 875152811 206293987 647035329 556218609 468187316 922943805 929187388 296277870 500956721 130121680 486786991 329742771 976058751 836726786 960947048 444595492 42595909 557623718 676342870 245251448 24296816 596535636 21577545 81178311 966006145 218690901 417543657 362124109 417236238 877535327 555022831 311900549 724689488 675933833 55348980 279438814 291680978 108194509 69513786 45399787 771870214 638553586 924945703 299539469 443733130 754594833 442258199 690306251 439067503 499493135 796129764 119490748 964735007 235853847 906639278 397417266 102016426 766031786 480618087 6131893 662708652 304754303 172152502 571348376 955615995 858008070 202840523 11620603 349704136 795108000 290210852 305889640 288819363 852901858 200618156 36610251 766177428 882099462 547304453 350827271 533617697 542291706 762067041 122602086 411343722 146669944 209826857 492792380 199675343 220137664 699935178 232814668 40267976 374782541 357662842 621080386 602263016 793568367 896861939 723055738 381711235 569254087 767362106 218339789 259729928 861900641 119341345 643641404 731336250 490013227 692206446 611253836 772912980 215066014 266918018 151977296 455546541 664537155 189608039 584176247 275917153 321115223 749673809 671671929 375131400 252219229 430538742 74325618 440596471 926217787 618397529 945366989 898362801 734029923 789566598 9801084 454300177 537508342 225864871 215861577 271040819 519777933 371087971 899469900 955952568 272573904 758974388 285429262 462061850 303016437 607834176 77792204 406603031 539567431 625644794 893391383 90895271 501932014 584192025 891262189 582688468 733777326 868003011 805994788 542430020 963739476 216174114 876936546 646352737 156558368 473025473 635074227 810021869 181951164 300508182 519962680 236386058 852844515 559483737 180254900 549299461 407726185 315357830 196932151 957195558 378277923 426683696 217835296 703418074 610199322 1795955 470781899 528105418 56354857 551864600 618233918 418628809 555416446 812559148 759674171 926727319 425155072 253655893 129134515 782885925 281405228 132288945 167452354 872441874 150718019 800416950 975703519 336783304 858202884 14361198 723961845 17325624 209235899 785371780 376778361 588923200 7992873 367440354 956920724 280124891 731004000 616790197 354977277 510720240 662342766 608886895 1095726 879341296 733585704 394389077 607074097 980899101 851124420 426049075 822582993 144285038 453291936 925961943 6596574 941600760 260232463 445292652 764785134 368562945 7783727 700066910 266093405 755787371 563982028 128517155 429407482 295165784 426640511 784491526 970012839 768877921 628577364 157223951 790703341 656135470 590248812 644341494 971954533 944125128 153937081 835206759 733026449 727020483 992933359 813203469 86214190 652957079 614069237 788439111 820146192 811119091 644969486 546061658 539592053 598864375 919942933 576301272 894730589 726037904 314564324 203283156 242687169 993687649 928254568 106818993 419052906 807423451 278609408 246542201 816628493 213181149 835765523 136318108 906314556 304337501 676410931 344369451 292531342 840948417 557755826 248558058 7236779 918502847 877245552 90868376 284938440 278748617 780392940 972015603 760022408 503393322 975550666 184824385 565116967 868919436 813866560 403171179 506704375 278041077 150383053 822385283 644514746 899696225 998221482 406078598 139360837 18043467 560163208 65381622 379199306 93879841 133040449 212884394 12446053 671924920 122733276 312369764 298012182 139419441 285047854 665249772 402458934 807759262 785212174 995269737 823623053 276700303 200299778 27186163 469883174 169711639 243744431 90761485 706066734 733290649 476446490 981224378 997711495 528003936 388020939 227423196 910852098 362323098 447498879 165626746 930788293 499966266 166383498 863470723 57850758 329083093 890265117 726188209 961602472 648346340 701920344 243558907 586133734 798493858 71255712 229958435 827402925 430353938 249378300 633537871 101722227 28650618 901398597 838078885 111278712 48667697 630720815 343171575 469022689 922307794 509765789 176206785 717009593 390007689 13047454 142007637 927107375 901945791 509667239 862847487 640481039 927065006 280693024 840988671 861484036 791790430 400037443 538180586 479421096 678266114 567897641 664186081 597737798 754860564 717444325 412784426 835278256 565811892 97773009 447771253 201730780 496660987 802344332 594079590 612125330 386028973 658906926 563429449 347254541 542039565 683118476 484429143 104269112 980694392 409072311 142127227 639400318 8220345 665723536 82888179 553284993 712171087 951294939 277768792 902550446 957115000 102726801 117223756 185168205 127514979 836679960 679290336 328003744 931008385 567841476 50114265 792855707 306942939 548182200 484136980 768049560 864199299 498264892 907571498 913676377 251781707 252150615 230499744 629871464 906422773 708426662 704735636 843338161 912394264 267849825 816754871 377029217 487360337 998034504 103844562 485660384 498424924 203427751 218156383 463060641 850662095 596888134 610755611 416533273 190402183 868892442 242321232 40060482 644156766 908956365 455072888 316597104 441145587 187414398 162446154 92100355 973632663 30375646 233827033 783913289 364260769 352954598 797336573 484020545 519168738 722586624 752932192 999829981 673141992 636890038 376351000 978599254 102119353 719674804 651043846 215500637 546753106 267935980 181511888 90658577 274338580 201905770 140623233 439494008 218593014 757709707 336542926 24108377 699764707 314366072 577745188 590453973 660071774 410661695 399982143 696321007 995077585 999453829 543637913 875854379 326573303 837651229 645492432 858590035 698133769 247860133 255632165 481908958 926818982 971546882 964574791 244514282 1873467 872295005 883639495 247539010 430563824 276207735 423796844 963073194 26757609 137489651 161855210 881013519 177679275 468636794 422837867 617702189 576835094 553769598 466879141 43212630 720563564 566819731 122859655 561117918 729756549 141837054 230724620 942300332 272443 464931636 177040448 147084026 100757368 91608389 952561434 753071931 51836739 234090762 637790908 244599204 864347158 550415324 578371833 212261643 373570840 628641197 961165515 285133428 818791015 524621720 366367240 62472031 638204679 446468265 563896610 324552930 708933277 713852289 685335829 301636030 968219263 931997534 143660721 488110082 191584203 402406571 982313991 173817690 789342333 761270382 733915713 115475324 338800201 795463248 177058260 425553055 153440484 161245447 586408995 135418765 770809788 543606012 451490958 906719268 561772348 988573161 513721747 140055209 793952366 415974925 361053796 447483677 205625844 904265257 690114699 593838825 225965992 164609049 648419197 344015367 406778704 959344474 939855630 797857593 310361973 254166580 454402344 12934135 584963145 1016060 508269551 220226008 665702771 377256714 725299861 231376708 949009499 188477034 609099996 928103951 4794536 7985512 214502815 431934435 422843719 732315446 855625360 798521692 76566960 633187340 431166158 526497338 42466921 777111722 933972233 704401429 567804855 672124 922102576 863559241 304354748 778633560 325127130 419473997 588108188 464903737 952913630 197653632 866731171 358790098 707736141 787099094 571513397 910769667 256114090 770968901 146424677 398195440 77604337 914945093 154088661 916307285 530369504 405750074 79054680 687352799 608989513 715644958 514060287 66729808 493568990 520326951 672328894 862333626 537532465 96132293 155738225 468773765 875635067 677123029 106692440 306313620 866853717 415195255 982951773 51968256 270111224 942075908 967610714 969642508 921739461 319485049 345976049 47331966 140158084 692104440 328826415 9377847 290350450 260762991 553849860 744384831 85917884 565909255 399286328 910765036 994947738 294384691 414709094 598151974 708717814 342861164 421095988 360543205 411968694 388966178 257817999 21741972 510767560 59941442 233948914 220983844 266429705 549156877 578088656 583697380 194162629 804303658 746136236 769589262 95214788 961318377 879716161 599198593 233758790 523887352 161930092 526732024 918205055 989335518 633746869 414165606 34847070 325205595 354298490 180678359 940723038 970572571 359159575 377971403 664565444 195232958 67172607 315260441 895848826 753326964 27668567 84752605 258487778 771326046 854213308 297527865 591031775 357461209 684114722 462185133 264779821 223486927 435285231 704796311 170480672 448385596 47094511 330992610 282596940 906446489 841463431 59074871 292690236 602236481 320751108 203307340 334610770 287120391 989074481 822012400 872939537 866096591 646295625 194690093 686248163 992766633 124176812 173110472 989014254 820496278 688597855 460271864 486408275 932710096 442399810 201535897 996543412 336367367 977884945 777048487 147360718 378118085 112089170 160065623 61087332 199991959 802383426 369400020 560512074 228962827 98160053 913190793 385621842 264148694 897350222 702421027 786028893 491759484 808256428 950199768 37300678 188789623 146415027 486453847 216377994 341563847 761731466 635792727 6454454 927775044 715254110 702269224 171744124 620294220 909330430 651470208 920314951 677235244 774563096 90471376 79038584 427302118 222443319 448669969 499176710 359802627 802464884 645726525 929660862 229169047 84326610 360923232 617702419 174720839 652869564 951755048 105742092 35610918 561242682 589534843 775681729 820623993 448279002 552865730 854277501 708455015 265803803 379490776 618084411 369973595 592576744 155038310 244119429 250667419 677608271 925519860 699391496 919071053 538097287 953766867 887009803 881492437 623383493 40621608 30643812 194496310 989479845 823650144 788052409 538001944 942033320 981868332 582458884 198349761 603575292 127757026 793918181 583542449 755731136 714191068 623963157 348348226 885211895 452142960 893397243 315252332 35067300 484363426 651791748 105419827 871756623 901890380 175380408 270294054 541001806 487135395 759884685 722003538 523825547 930628709 405927996 352425805 522305156 159475424 872159935 698263918 523582629 111911782 790887101 550353570 86938521 889354243 172212660 166848306 588329329 416573412 304864287 399581825 865487900 603046667 657141284 716733223 859618352 164854263 402488160 365310034 464041661 447832868 231654046 744568238 540781070 515291090 46946923 725179139 846615803 549068133 64859 15295448 250783048 141260980 334591015 366476799 267129358 397448968 277428356 742136379 446617800 849443806 339098146 545215355 360118457 3258913 508073946 718230431 374643380 564471621 647498425 566458423 356618138 455586749 937390222 103371773 673023422 651775747 495513611 81271824 853923017 613246347 387397006 450737664 280619986 327702919 263654559 640344315 274875766 779854169 239400405 363859256 742099237 448181719 441574755 154724720 140257319 232317135 512149714 955947433 520308214 873589175 242220286 892999294 353056697 311462877 48389005 361242757 59071832 916259011 68151543 402403085 516536747 676995219 835469817 667343577 53304226 970480579 614908528 339585138 869013503 279860787 625481799 743841664 496922495 401151191 3456714 279256200 466299920 289241424 940495575 157385990 395962734 591356746 638189009 905033297 889563907 178544297 242875159 203217913 922343086 865678535 113714732 666098279 679604319 661104110 82474977 159462670 588754955 54221780 72580891 618503824 150631238 462206324 253803206 906192409 359478402 31661652 426181112 175248384 465722212 875722512 246149761 241178956 719754905 703977543 361780382 447578721 400102013 770436749 450139199 980387170 430691084 737669384 783987043 288152377 171351026 886707332 829355068 763687162 759240493 861900676 331682547 31671332 749433829 998303320 505813697 768051189 983044986 774631839 407242572 460843188 561310220 66655719 897463206 672013721 417506793 335692597 536958089 327736408 270740287 991356346 805971270 621628347 597238154 646368472 836751093 265576500 765467768 755176759 751502912 329344052 924512857 594767638 620108330 172463280 76887472 539761913 713720620 801551212 363159946 550207456 819428032 675649965 965396300 132231316 683305247 530469082 856052479 278929817 171042667 65275967 3069112 635590907 935055284 258157357 193874013 71892729 301846326 498909236 883987348 205055610 752644948 985611328 128725408 279904761 90527958 9101446 447336499 524729234 832041406 832297565 289137755 29136527 319366123 521333187 445664315 814317605 239401587 444524681 257364043 459433337 160421851 390804113 90539071 463878897 383029269 137797756 330658897 700289427 890055872 466574860 666506340 840094582 424525173 159366623 629396707 727835703 132663154 286569222 587712300 896920115 719822793 979900197 534318786 322914255 478799129 127351914 927161764 661013847 508901316 279945595 310060596 336009990 283326191 754279950 479388321 23662282 513700007 756875246 843077433 511871355 984165353 89132693 311881671 117117866 417914716 881913002 37947293 970351788 711396531 763988438 852680649 324040112 664360215 19257263 320673336 309262426 505389623 54004314 690474958 411312755 546818502 286125743 565882164 766223056 134616166 217307003 584408396 136322316 577703740 677850136 913443689 753249238 366801425 625368317 170469374 48559410 691594334 591593952 941144949 544923345 974595890 324105731 268239384 494567625 654772197 653858982 178838 308404867 228122675 180340930 755278854 879351808 939370354 86161862 961423767 567416906 334710647 421978558 460052324 254240114 237912761 512711173 284178522 945586163 20149930 429375226 411066562 351894185 625323326 166935161 684630516 851084128 739005499 957174780 4106974 639176928 530871038 449081211 325091266 791151705 75115542 220786369 245274081 670027232 686994041 474522176 273132074 204104788 477870015 7167376 808511449 637377991 899766006 199424538 770617156 922117094 990973451 273044803 65360575 234237322 640246122 9850519 982140818 441761481 586808686 731379304 503410468 431299574 711070660 973562821 616918021 76734833 25232466 537696122 192019218 29676431 696046847 446829261 205929788 802010601 931692464 84511809 19420195 938502702 65683997 322868310 495407105 785779270 455469494 868743207 762859186 76048174 934743965 728645051 383328641 195600138 406918469 859471369 55537496 220520526 490498830 187347046 786030989 208183567 957685034 747262625 37373706 461225152 521570584 670083237 956827025 70266615 524255245 460346284 899961655 776542035 102819915 201460978 597936449 512861914 512102811 298288302 988593392 395319746 105635477 816654301 250831439 673777314 723476884 844763747 209404395 636341381 286620580 214496254 134782186 227966687 916438160 140803299 453277363 69004994 219475193 974283488 418116382 89841310 331899594 100353802 883838642 686394707 399644910 767173252 827414357 775976752 760886942 803848168 956737852 119420710 484740359 28336274 954605221 180521041 9036002 299072978 201634513 352433936 763345646 982715738 262974757 365615147 272005173 378973005 927979753 380397716 746566456 716757006 159538159 882043609 308415266 252348015 792462447 570055763 792742390 693774447 26011343 409788963 24647727 602707613 724133253 546390550 74608749 718072007 632757983 822147153 382869391 603401075 228908725 279679619 322667708 178704350 369610904 981330277 144122652 770440021 773433505 293159206 845134575 84884014 17517224 959168745 154816843 179915454 780779580 764335084 173260112 577779241 748931645 597037774 602566904 817096348 482185422 114793323 167596106 666890565 512907912 481652790 164286095 743111389 419955165 253042998 508644897 546417672 106680446 246748495 947638085 532851504 466529454 311290395 419272149 533502456 772159768 673778099 654665565 443296200 271534006 477006431 272215171 522669464 256255561 525839362 293580485 24662536 619648639 96644841 773013079 201743087 31986147 22888031 693229145 65541672 564629343 589218195 479697432 653787364 293614413 214393689 488144157 873616909 637131892 911537387 781838258 365854596 308819769 131950311 638076985 353578895 456791739 417293662 504523488 922547185 651951014 522320477 97470139 233385584 156058598 110914761 87353992 314997906 772370442 221126770 879486383 492315476 852580833 362579755 456551177 256369007 678368170 609427576 984149749 635840303 556081747 201678315 200112873 568254627 108003642 189174790 532368649 465062913 605448859 393058620 19346246 473579951 878935632 910918843 698721779 420287815 51164257 363360891 372740189 342360957 857562760 257856572 574689360 131810120 933749307 365158669 886990110 396442917 441294124 15075334 60855006 917917724 998916305 778086809 510261930 865328414 809661986 234224477 681151942 618238285 436597386 773670426 349230607 559250618 416695351 671944075 362898528 361359949 698297196 679937932 499357510 265605831 9184907 995843163 84582312 858003861 908345448 88776860 332751288 977966680 80425902 641799520 34327696 476661229 723708839 677226359 151009443 546732609 502539920 344166623 783490093 673958546 78878997 953839346 431717977 231596882 822819609 29397825 788583383 363313296 124719084 47542092 886861905 252459446 658377374 214594548 584102703 530523270 581904546 697002641 260228365 994423471 876947626 196012068 169011438 525560496 209476140 672929387 564046857 872035381 972578184 929216550 175142901 101456030 212357390 769236414 870311488 239604331 516289553 209394353 461060020 880083458 952688997 121473385 28215872 318507824 61211732 65619904 140454108 587695394 178891039 267316261 20363598 501626210 905325150 492395034 324342291 402635231 96625089 732642447 619120107 757629654 988434603 910020618 749476525 144479124 99331554 908478899 910188996 214156973 15982329 628903544 920372115 574020758 393973473 352223201 736276889 783346682 369246420 286694812 853020987 319515252 992939192 104773530 688163121 127915857 910548069 57295362 270383325 3917113 257846206 258081327 796236509 402359101 327267089 721828891 163323204 370824151 16053187 720943231 881138081 190378670 707530640 34443390 185178024 991642235 365954078 40395480 132350573 118265207 975617918 34444001 362307868 69138095 806340821 242767248 288976230 672551663 872717441 924051479 992878405 208788034 662839040 409919896 44799078 965077994 981700162 907699357 570655070 939607532 560573011 627154832 352482685 149677550 223301365 133001695 269706217 904426054 541896085 999971216 8621200 838484601 392492518 963560842 405503775 555443040 263030201 268484833 388370752 206785578 347935586 986257754 131755219 859598666 955305546 571802319 713136943 717362967 777893984 697691305 923375659 772904126 540199704 725089426 578173530 23547390 51176849 981194549 816869475 119626654 914522413 583930157 315755274 834686957 992896792 342957936 990403808 602829422 751642631 962237830 90966264 494969393 426994518 299118537 401334559 2918433 969616884 586468690 957143945 725454799 324127768 948025698 264402133 568714082 264933919 281593870 456112901 108496595 751620589 115474484 395938414 625209167 19396064 546660326 818728223 82873546 424199788 941284243 745097621 323110435 397073423 731864054 529219649 582042978 64162035 132201334 208686113 149520954 776999694 817417297 869484386 349854636 431578508 796209509 7668683 993826417 959938586 320838568 805714532 391382166 106424668 432085034 868436558 811612631 453704456 206038155 758619735 795600223 39710906 246544146 212539322 40469020 149549055 523784330 485953499 584818590 758565421 169651095 573887491 185417130 901952743 768227722 865430406 25625791 967708577 670842151 9327026 761151984 280109285 604844762 787590653 823764589 321521382 967877024 661783502 531585247 700498597 87173844 926528515 338495948 477960684 569786182 606072937 815506462 947496080 805575430 66609596 516044857 184619525 755512084 879226864 183594704 621594651 980292491 905842436 41914021 46372098 252133555 365368321 143972132 606128650 646043062 284838509 606460054 366536502 900165266 844737273 587302950 857801987 580873040 475979362 499978647 385830668 436500269 183119621 966657372 621094347 880308112 391077316 150222862 496997169 682266472 720246700 431274548 635893085 947804486 311315717 550823446 596824553 155352130 507600187 251624883 707988238 181352914 756476023 55219127 499160932 107326358 835769106 18784309 292030913 881392489 754453938 673385720 707276593 910491959 142662873 372823376 588296233 809028012 613346732 785814532 59637680 744917407 471028665 844053165 969137808 458467185 838151930 715084992 136175210 336157237 864629862 498283393 963166217 793308869 920710123 505339860 35187587 724455541 901813145 384012499 218757000 928979382 342320888 133687976 173937831 26118124 832418139 676676723 669806937 854476162 823386441 53943370 491668509 983497845 590963226 420720064 332657848 784387052 458505371 56843514 978697501 884083958 48521467 849337217 727628889 814133953 880125318 69543510 199130872 264655571 265589643 630121182 103641894 581777768 103615405 21120771 991695624 79682445 114705093 499239392 554673361 435565181 77991562 322901309 134302454 159518441 554189141 967776464 170215898 208125985 455132893 689298914 574215868 449343439 226351002 476872935 579278263 992513178 330862557 727003765 407318395 506887379 621914343 572279624 563257776 880393722 371290196 438466451 125110212 446784054 965038906 144100346 761855223 794620551 229289759 627541242 460912198 883791276 696776985 668038280 868592605 553028381 807894090 783547731 664505646 409527634 166953758 420376564 877080557 189596588 861789476 202407405 80375410 298146273 333825917 398047037 635291543 970992750 913609769 685254047 399047127 492681592 816095302 98022387 996028489 10711119 535483796 26487427 293345324 538875694 18341919 907379692 751853955 271080760 805569941 983858644 104339634 281191113 884392798 574171425 833518186 6632444 869302872 319619715 747707296 582052179 135667119 978896475 384724953 947258655 117478228 589954412 922018912 262145355 378402025 51069645 559478329 876982210 994607561 673409047 114797895 960094543 486346900 646052182 684985789 897114403 900113340 628308978 12014778 455185712 478742025 957183802 447976602 100047065 413961361 745952250 449810555 113754078 320254909 126910591 951132546 67453268 259085896 857296895 385856778 970996715 445812071 911187849 612817928 343091270 346307396 773099651 411203718 491962755 642058661 36538506 643246613 66870847 70152896 507130008 496548732 448641115 116238755 620642245 188091132 354125584 264260793 382155226 23713673 792520229 873314926 587136511 73768495 290907617 192043914 159625937 747870011 394141799 815054769 878169694 664352681 391320024 283936145 20116660 111213049 744082712 322584634 189693091 914494141 558781430 499317497 242782431 91569476 493845942 153097450 693852887 471842677 424104285 412604547 369179549 23269457 463797845 415385991 637160359 985179360 969989697 772307086 189858394 995899505 447505239 496808931 599784113 752104718 276243111 464252964 294701131 530450168 805907818 802791726 283154892 69346976 223920939 704687498 550880739 134788852 20567136 771666153 402372476 710931705 180543912 47687026 695061532 580403647 810386513 639860758 645824932 910747778 231698335 862161506 810867959 858770856 919631108 266094037 295537516 509804363 850845096 137504522 575408871 685054490 939348387 992067518 109888505 159985045 321115156 362742950 693510225 501299137 992487514 215842384 129000233 934670172 807654229 212068580 155389479 598353446 196950461 877576913 353969386 459464759 632446808 233586702 505913421 975389428 226501694 107735906 63974052 111838012 546080621 554704078 33920644 835920127 38851506 174573521 228374795 297121275 953822296 479820632 16884228 330704653 382242650 565581805 249170644 329911268 918260956 89842249 734695856 144546314 295457816 642410907 404182614 72520913 85164132 73215048 274505687 71825611 459353792 405824331 238801291 84659273 992310678 877217130 746424253 698774993 659564047 751707598 337315658 769773087 440797781 394409848 373269006 413181954 564161329 527554649 309905561 268907378 382043479 390705582 369477623 494532932 916254015 155489388 448574144 768141222 34494230 493071824 119437905 484474448 667121233 101599163 987650413 124372267 488882711 622367817 90957268 160731083 874526193 996684134 866826685 908650556 399053329 628091405 105844561 796999553 648723342 992093945 955144802 941009494 816813121 903025505 471631994 126066044 582354556 264253022 368249926 614649023 997460950 451093187 143841676 583939244 479328038 535695044 493207660 78973619 594185148 888125951 598697176 818865662 287845872 141892248 546047681 158244903 830619496 639256772 349954879 388441191 851662851 199838744 171894527 96906854 185165552 848644627 579225248 458330420 238191865 476777917 732549776 500278791 460774737 843942472 904804506 18525555 71550537 149070588 900492569 31243845 196196373 337072109 610383351 8397456 971593727 911492684 354112412 743321922 692865122 200109826 579777552 667278011 606289227 890581473 398062234 529144383 698518688 745432528 298329370 674552639 486848483 114601247 818513297 868463968 40178222 234919404 731650564 318226818 53812910 428956372 334005430 355676892 712372318 795451090 523656385 354269558 333444805 652220380 491384293 761374880 75945977 487505736 474294479 284622914 355496936 294110211 782556696 805329997 764859954 933785664 806290284 146831059 181766850 997716656 422579975 876820868 737810355 296750514 955279864 766225381 407743538 929783533 957255600 646259436 809736470 724481931 798797017 403471463 684527877 877098523 704953360 772010884 248554541 802370303 931427249 672293714 31437446 895137985 865897174 806100966 342998003 405885733 467459518 807083204 699375077 267592242 111243752 501947263 693853046 659563963 173435536 803906411 276669972 292831336 9478510 302342439 620472528 219091812 24025005 245934623 76060152 476289613 19265410 333028270 44559819 421496802 597021668 6676232 246420090 112807933 450189545 936579044 510846794 378339788 53441091 641206296 68116210 62890140 11898579 50376590 313280463 462903053 664605641 640415123 826750131 499282736 794965626 44670884 895982306 175714323 827344025 862844492 300566860 924255071 138579238 297901076 326917672 101863665 33815336 693468019 674032032 733028703 237152043 606319422 77208533 320898033 715931980 827888233 529570739 359502617 500300746 648585669 461555816 240102215 412066671 103563380 889152927 192182874 785478526 244488549 706754637 425393613 215661024 662983985 54373070 77926104 537802412 492089266 572238732 325704244 882618485 984214732 174367900 767014167 628923646 797311178 50473346 449886256 639291384 730779776 763070577 256416875 876036364 982306790 759595759 187265011 485741511 200871826 998320690 770075325 825399957 193001358 483494330 466602110 370093163 715270391 72208863 938741579 67712571 746352780 111516211 154978145 811521026 397708130 253997059 915989419 56267598 452515579 805678199 102993584 776288415 973267943 196838193 663991976 392770141 354389535 611191771 350613058 465771108 739485338 633716347 6691670 309424533 705666861 416718087 68906660 324967459 999565538 587158022 960156020 579819004 610349852 946596793 815594786 373035432 914699196 201654551 913987238 852070258 341269659 633661068 404506673 433049186 949295458 997357171 766575899 612221286 753167653 451209242 27014792 316062288 222262190 990623093 557875750 652096817 592453093 266081791 710427954 696997515 911913862 541537821 303326381 62745610 734188191 483873815 520230837 872000525 56217587 200171877 582207148 14962745 134593154 486212012 985101875 254739296 264300522 657311682 301854363 731781022 244947665 567553410 570450484 306464895 946660136 802581416 98384166 577196669 377573307 496868172 447705217 875078208 684766356 187504235 862275658 871463147 896378675 979366109 461097103 578520340 717681233 18395913 755688928 527758022 490953278 644129302 780580358 977294038 532191947 154527291 756545706 969460759 575465419 841812756 492412063 451937521 8891635 634842490 263664656 838144556 335954577 948060539 564366911 265634775 857186375 534329800 805911661 908392776 132088861 171952036 104719826 633102722 852686634 293387103 864305069 962279365 373102032 830283784 175940673 398604915 860314626 382690787 898421719 860465716 689818840 281655468 999833627 762985429 8572159 314764911 182271048 605977365 430096000 153553221 580863538 280270468 346383556 248609509 113507013 289353523 326183387 167988535 637160488 107450711 857112725 359138554 55336714 647386270 957980149 865177835 369305886 819307061 179887564 159916265 382259328 948433587 494786489 247983333 563251162 88213663 61025509 731647234 634578444 745239456 984044034 893195547 441591574 755463860 601796652 742404467 173654526 699771211 794772929 370114716 457881725 892870620 204457504 730849611 746388917 637774493 934942303 346449257 226452659 693682199 8601484 564416793 407219569 917843142 694453216 134665995 575756541 605772310 870620537 803997382 44074722 213890095 299610209 889430354 597028530 418535307 416117549 879747307 473280759 877424622 150431165 789759317 954655925 891274361 324625920 971491130 434266855 394245125 768758369 308104 689926795 219756091 785687839 589883957 289452071 53759756 377620147 601824302 392233601 481692989 424007954 797838075 610747272 28482380 973353788 467580411 449327871 147525737 296379072 561539079 694270646 535083780 241252639 684964912 509881753 757278452 118692335 553808145 664058228 310328155 629967044 720057836 428441084 571171758 754854128 158864850 402334752 145555874 250032980 427122473 769281118 116239676 523282782 754519148 393021722 395731220 341013025 586752510 285919935 229391850 519521107 718884129 669349225 939166735 631317432 25187890 116970020 607306689 985822634 546808256 116228327 310431891 661519971 345361183 229807352 981444014 781633631 885864694 479808600 686683494 978076703 876214989 126628554 74050564 859174851 809795432 41288786 34765300 870202376 418262842 342876566 536786887 718124235 784271637 983167041 829053594 749533581 799031908 565073965 394657672 86588443 632926303 745849715 758779139 676278687 756575670 603986004 997763270 180534447 134318503 226074462 859219240 821209305 719804549 594425173 432607897 812398070 804044268 106695645 627730526 734866551 613195644 828595359 966143190 831129057 590324134 773896938 301464399 216244472 218190693 160218244 946477977 703676363 751628244 749740086 616717574 10628008 675618846 699976455 679616763 606182852 825750467 310915525 360907206 187837256 551441120 211797861 356580922 396720352 300412402 613969293 319962846 645126772 690186015 25990911 549063761 162153730 538184326 712925718 405741604 396924804 785522724 400598906 191211602 906595148 81504335 320248055 338385394 104711179 67506705 191311137 930247890 391451491 391317772 119122241 892565588 596352962 63660090 329115796 358465792 804006384 703553863 780836997 422963087 843636900 998305900 142688163 287429046 273626910 792069344 755650463 47265814 411001221 198726538 170384360 203260213 308802190 449267469 262002616 336822079 376714044 618107550 201121610 644384489 119848880 186522958 571023508 923385643 483170960 862575505 748601919 980384626 861847395 119398310 840755236 982100743 658727349 686482516 950558911 173651248 935509962 491035643 872453816 932293057 405814316 617680910 421514285 263596339 718690178 356160325 428599192 133803737 502532987 312056180 366797015 854388368 768675489 512530047 119058537 298514938 320950837 643406918 221591774 357921086 792554001 329692970 897454367 944465983 298521877 974560651 603338339 733094130 30821855 954962432 129517785 994152757 697255775 738198825 635506203 759552325 994881526 424611049 262958328 857243680 907927249 303419463 956344920 898801384 677571444 461144365 745029972 469668742 281308902 326949489 603976727 981304956 477941926 343066731 820319994 831406307 296097236 507100975 594594070 107237219 171108609 319529820 525782734 634759762 250891652 828409481 557436516 342348456 751319849 754580115 654758784 229067330 444778586 434839786 37346176 487050291 19101940 945570222 187497703 822926567 718809827 232044454 957119720 974785764 394132000 561651427 19834831 421828514 352154580 12704347 377324477 452147876 42324041 475779995 28594312 666957661 869482893 83409648 31220104 390645502 466529402 593158633 954299708 719932558 489482465 470843787 604045353 119100189 114672702 435914701 142424106 730565149 477515794 397122636 227289126 65663134 526910789 150205756 398153063 997137714 106009210 501329806 854473513 518248626 570773595 59689990 378067371 663254411 310175957 210798808 617840456 90512471 824738084 942320586 750131392 474336382 140008347 177017640 669258088 309804581 673484348 572625299 406620160 619514031 642256685 621405886 488880842 304093098 188340950 374352140 959159045 592656988 340330803 230488480 744687377 841372606 830038664 433649319 17239002 53296320 619192197 615158775 879929552 788716413 850503507 59814788 136235045 945367015 649311229 659750010 700965079 388291415 666747185 396112420 976327818 351607615 253597995 332871293 877761980 188437103 5328436 564357506 987809244 334972956 789358381 635002936 470947305 581812462 124602630 340801002 188097718 332174552 238017702 131847279 885332851 626997676 928172784 812151719 92416602 944047284 930989937 802982105 609322934 353884869 959372217 112285778 615675397 12853616 940505163 102616256 766188479 812628404 797907784 263120785 158084232 716699751 310728014 24981009 434772457 218340719 834529926 656584426 37393562 207436096 423723410 804021969 114641150 904359348 860449461 145418008 505372736 576550600 426516163 625905454 611376749 299758867 565170914 948483185 925324338 618245191 135326481 324747000 367681509 731507875 308306016 990832175 168884103 500740460 376607314 370499104 543809834 828227825 929273852 240694059 261221336 31823634 539436095 205159331 716820891 954990673 65367412 918989677 605440120 369987247 935828181 950077085 742532587 64434140 570522826 550851550 71580245 434304680 464813324 387640428 671069421 51087197 11864651 965794696 977129769 465745565 722605031 973068606 312840632 206710472 570649024 60671936 994229912 196997096 135308263 654225878 748420412 609208438 187431278 534591173 885993680 189390142 672361259 787146333 232664153 732964992 36582341 318205022 840234831 195158878 231881876 76311697 815300968 353365226 788123964 990081628 253881663 406211162 319794735 873467952 811550352 564482745 718966897 753323834 92375953 517924439 976528687 244625475 578346531 45048884 363555745 33705810 259899582 923155250 575311432 527516934 557433378 262125473 590638608 406057149 47332797 453165058 350912450 790064247 550413052 889865774 640862896 358386788 59876915 90691719 702114556 326533607 832876427 798826899 934662459 377840488 769271479 156985036 149545450 94662197 278189130 384492300 646909589 987809307 890433523 544099746 618845913 895347587 620043427 262552044 31383547 245216737 448336802 341853443 414865694 572836804 230665402 943257995 777564039 343874539 978369979 28964643 525601415 287217734 833376523 302064197 436901634 705645614 31504231 41304002 118355446 669013609 795727207 382709466 856207782 992361508 4646886 422956091 654326716 137320487 244294737 616350914 364619173 159949299 754288369 975124602 418011409 32334131 937145326 376617078 845764908 664756073 855852988 387956031 314654025 220717421 863404244 833797549 353970169 129125226 395821627 507626289 846646675 932824241 891358089 803228463 647720412 842832128 865453027 44322786 60062472 222405064 301373954 816242024 614769733 291281307 941074505 373629941 26282690 859856629 407667161 582499994 99545084 87191091 548255515 515067897 368275475 346613136 117721848 556589982 284587358 425964323 96679935 225445860 331864541 323390942 564556583 388720179 551645225 475617198 556994221 725768604 106349970 33377142 145412857 979736109 221309194 757777313 415917030 667742100 784889835 218248359 219213435 473908939 196268750 673589012 44353604 145407869 363612597 232441245 251691651 734023086 401465187 522759263 835510328 239268474 856867620 473701951 410597325 703907024 992162668 615963078 647284616 857237613 649910666 791054233 678697388 455336730 718242338 794054702 647908898 415178077 899329584 865148839 987687274 89752806 652742850 376316760 341266477 918990425 818159529 752288623 263687310 324318221 236530786 936637602 411167130 303646265 756156458 185598958 959369690 817041584 649954978 588543242 488344223 589586380 911397788 386901904 903312603 500701512 952177959 969079134 202210465 263494112 150395166 944583475 294910630 784855359 589631402 566274414 129507617 119919958 922058572 674130960 348711415 157920340 135589974 677357292 92694466 752853069 713725123 523807487 993912175 604404922 50143491 899394549 491094646 547542900 101166543 888783061 124175038 219565323 678360344 742067179 472183599 369696210 76945931 634099981 734533341 555208550 458905508 205483378 117298406 783034539 469585290 781784442 298327746 205335161 148650041 395465134 954025799 537497742 876524838 574944675 961398961 215989213 171262817 481222529 587199834 703951440 964146246 554620815 443724057 997548753 67831779 815023771 349950231 225483057 496244665 634812382 656460057 977669401 954766075 912090465 305413144 627211380 965891622 684222044 156980973 451750386 492291280 402372355 343588970 585210049 921681796 286186273 527720499 540932353 917603931 950647130 637140491 391663244 256994781 116203425 90299294 424905196 542381225 550444755 905916096 517910637 997446530 300854608 111268937 997237484 183488707 250082583 742386855 84315014 786687454 927876419 647885326 567881146 616550475 601492640 105634435 754481394 274312829 959980116 825001451 517873679 260876401 804609589 765359151 891791896 495500722 353485313 952000282 438207072 27974564 364573906 57797314 702218067 897235657 673346455 955481084 122537334 791421023 275550349 975232830 101358005 851288029 546782022 269473838 672456796 987750423 634329434 321528300 916790871 957476987 876496717 882398894 746065823 335280587 917605014 90314952 58451968 460347968 983423676 334889159 456409067 823916905 909849267 177495662 617635737 591085163 251085034 879968430 495393444 471152088 247037743 344351343 962177524 676347148 165584052 593635764 568270575 758516688 247053642 864024118 345170365 636861982 472564751 489334480 917512234 129015790 446136301 134209996 848475590 712923432 568089754 619720978 887237124 521137501 684045944 665770655 781995735 867116449 817545710 984949622 833698253 698450752 74149435 865125037 375672949 756282406 826691774 536789974 511723981 43563236 554153297 520011702 11281475 258312687 824283398 222305456 595954050 245595763 984386467 391557844 5877149 725194616 14857498 803069399 821588091 296324995 837263443 518806217 785274886 218055322 730598012 142952374 571970808 479537045 604717385 404586565 522727308 749254818 456952776 923576710 546328549 677284746 612154847 533699499 849227882 935374264 490437555 614377549 327438740 502968252 873803840 459622198 302816379 581587779 199344312 943579400 706056291 160474781 478140633 435617814 58595505 905576775 713308417 444352220 349535959 562254663 890891553 239743797 978703442 167775184 341854723 213556880 972564501 4646182 330885695 153522386 613652619 442052534 402209568 99233095 101617416 664266729 241000421 452607051 661908617 607161571 607395415 962526169 880528160 620333999 822083554 273708055 286810946 499789801 751006011 950609213 823590985 66347811 964820609 361944871 643861559 311084101 496221521 936686776 856196431 900627272 748364478 641335734 379956923 806425139 870373673 938716640 953500930 473856745 185982258 433775201 980222033 209400954 939543051 148998848 791903064 814871793 795271948 972566014 485307645 591420696 904934312 74920594 890164746 468840216 684060806 753733660 200978477 696285018 956720755 77371864 714035000 414684163 917359076 526442178 589752952 2608502 434886119 159309752 299590505 588805747 61352927 658932881 784866976 721225555 199984384 43533878 863021757 934689534 205913010 527967504 683310594 376616967 790538669 28110014 434500237 796989270 281040677 424233571 961256735 945407356 501284683 544968727 571104169 694565253 738276686 158424598 852544200 625991572 680302564 933441891 647910300 748906982 107417809 776230344 990695761 762308240 595618172 241251127 952682506 738520648 61986546 463843418 883045751 680531211 188507786 505397047 900312228 559288597 442276382 508519102 945587668 136216687 186483091 520741459 5775829 407535587 685157599 287228005 71777307 108634568 55097324 284227506 364259471 2943388 581759728 102814757 754448495 13026525 926418316 131795056 224753553 334398303 555971555 37546454 303529864 878552661 450658601 308191635 78557257 663081409 542439240 622727121 861639383 706330786 27681691 206347558 871019239 280345645 527995689 867584180 68301962 427446773 617177463 558115510 748778662 161767390 754983096 480068430 467760731 942236934 129442430 952224451 786285094 779737778 436945598 287367335 353084415 529567113 621344012 730815431 229808834 917539798 577668748 78250282 649611548 281876965 183580853 209626120 202619509 995128021 161745080 736797058 469948339 5529962 195539617 88334049 318259417 592163269 300123315 881779021 896353881 423208368 780168128 282207196 234321069 666340052 549000421 737386149 68732341 270880703 851508318 1669085 795637838 195310189 422464467 187094537 214907537 370729418 154088726 373578247 365324035 352584064 878597428 97527354 341285119 343758529 191771691 627970732 442458055 163689803 551685433 863815317 540068832 682717577 907299646 961633890 246454860 174945266 145208823 214718 466644327 585039337 839705968 44604102 957173332 116150003 943965427 191687709 343218940 400212786 55206207 515015708 111314746 650329283 77741893 728475311 14340848 291967729 47914253 357256143 508802604 825060367 645826917 237139163 645557306 82639427 180198687 854392026 501410292 691632794 165842582 355179739 883324527 703704524 783340349 235829282 672753672 446687444 152348484 90819157 939711155 232695148 38960118 90740067 15219289 572798881 690711882 977135022 217701947 119880617 942079294 427905558 495811247 448880353 9236367 647745655 981502647 781901119 183096060 411590409 556061677 892168497 583101269 811876020 587157739 718113270 478606925 826527127 884020292 707954328 142911203 699534173 27841082 625459790 27908648 62504107 480132072 525784223 621748631 334569980 375555612 9610333 876342792 830047665 926555821 383294770 923268012 545993982 364121769 371187290 324687403 543400115 290341250 573641956 337573996 798319618 635456830 622114577 985004578 887684010 49549126 792419110 758495930 936869934 813546868 54663671 514449047 11627404 764654879 160662399 816856712 901996848 410434142 926195247 498717329 809285524 747580774 338329462 812274597 458811692 820536135 980366106 183809954 462714337 850179020 436325858 769237052 316877311 748953458 667537748 125121374 267889467 544622480 304946142 341490322 757667552 513586295 574295011 516099612 371416173 512567490 482895648 682358808 629216937 72442975 924493226 789619677 991059835 990410976 205288884 899557832 199137067 576722118 654199414 793592045 654002533 498879093 719333602 175849481 812827304 160286863 420216525 32690947 542399192 504414447 866760607 662622673 63374602 846674525 838399485 84678117 661412098 103031496 500955526 550238017 657554817 868567145 833321424 677680289 300341740 960485891 279692813 580498870 926772581 34581017 81364805 249482594 463713626 282566920 469626248 150970256 414446730 756261064 114721077 635252592 585230526 680217416 949422639 31908685 440587413 971399456 121727811 570206199 621686560 707337515 234768583 875865736 881443779 881791324 990796301 339214160 43721390 811323539 385201252 551012288 86838180 963493375 799908706 128058982 267510020 245854522 243686031 807721449 639662914 388933605 367286629 350871909 411057462 181559443 144124658 945824057 992882315 598478921 420994569 390898827 696426636 588967194 239557037 133030565 453542879 315941886 149936803 626158024 820290901 551938335 180538429 921682159 272246318 135570590 720584992 135405383 79553725 708056441 665489595 750192805 750180661 664417823 466593179 407648311 59826561 510642629 782631294 264096788 767535118 499649916 331262406 727378633 723917347 426597517 608530476 791974182 732731004 986082036 327636904 483948818 166086607 900747194 781750251 900581743 422379475 626072961 823141883 425219650 571402539 69561291 746291915 777539042 905196430 646065067 469544460 322178993 968513705 799362484 835181696 980875519 982099843 886676372 374384433 506788622 432347210 183532395 354576150 282360742 115678101 738743833 358226963 614113682 309671403 27203642 885811562 575422364 656124282 459552958 62712279 442737077 940995961 216612014 420217127 614538780 184720340 402346102 358119000 658250733 839203408 129327068 76338923 900280452 332932574 513418318 516054408 989143082 572873694 390497326 531227467 283070986 290302947 406921754 52751663 958310169 411119750 520269388 166075378 660031810 164548946 930315280 946492774 799516311 163379892 118402433 977931388 594704436 861764240 283804027 635540890 776118003 452200516 33016698 94060797 736084566 668895635 491717893 246614523 269501029 6011272 986579193 10562310 511765321 895652451 788958248 483827172 538317979 375744408 232093081 584981494 632081373 599096843 819076042 447062121 168648741 12114880 142369173 391923001 767636456 359482960 133333288 796458182 793126035 569874415 68499542 895167782 217257666 430152355 837553133 137750016 250665968 414110887 773872942 678503075 374456937 149216503 218993564 192116815 213321141 721978332 442593158 92980354 806154161 221071318 556123765 723838475 710622952 63171127 341720415 455924199 180249508 234402745 485153919 303829967 646847027 742922083 820327780 687860182 731369081 351017 133852260 462022547 678143618 205754784 71296947 420618100 515303594 241110020 507878342 298712076 390938079 818334422 887454370 22508251 86858865 918983569 6434254 257340629 399551173 725881706 662576500 979747972 788472361 29813552 908465472 746307637 192758050 653702822 738055825 923194356 41898445 190665981 197322641 214035826 337200362 184867502 839659336 515768575 919472527 120708193 94707731 897982184 369442606 780196441 61326295 634777707 399917514 313222333 714908266 563565341 130352390 858516686 680325155 163377792 370111211 739285415 628259605 445234285 899123914 348332401 25085129 632520551 573532422 773165686 632516781 412975147 40112301 865944292 473736442 299529030 862592757 456776879 827373857 373458872 53378819 206553321 167094938 477501838 833213816 8553120 693622891 710041603 556324167 749713464 553325384 186145187 614607922 942768770 745139750 516365181 13585783 409198763 68894459 869483349 284622431 570964592 749985923 284324831 719970550 82670669 176801324 188059940 711647354 79178648 832802057 319637209 435453779 301482324 62205867 223073279 942029655 235673583 355767263 642251416 476235753 165004694 193416643 938648846 738850730 814562982 786740191 650764402 180369862 569405169 377039728 398578669 164543318 658201645 559385701 860294490 460907807 977866019 282048141 426495679 357055230 877561388 975689661 892696262 977228949 751300274 103661651 699272464 791010046 923902910 448119885 974464271 989240242 479380861 796287556 624753497 148917365 686876982 63075663 838363519 949002756 233417592 748085180 103786457 95586751 18985677 104480535 699273313 359089505 614914119 965872256 267864823 479271185 337333027 63846662 437314207 738781576 218519516 702845644 912780145 119271697 215260957 838716410 754451191 175492773 964060854 416724426 907894493 686681621 88580506 145654753 95803235 626395663 951818772 369742249 808613741 275911572 870377145 326951735 36216860 78508261 138766782 131164946 736681876 555662747 141882705 472105214 522143385 352033274 21080212 203559544 795988167 989253103 316832907 388907783 163247725 504459795 275882855 802714124 775742399 934003521 198483721 327000728 512647453 106109256 341499628 665178347 259045892 909284125 814366166 191381950 523261033 586554551 824139461 936524705 744292251 494325898 282046226 715788720 480424749 44619425 589331884 345208814 432460492 450695029 919502916 479427876 672976524 805893892 701861329 384404970 540400474 815921658 126392855 782776378 658974205 718801153 653466159 162538893 64791451 946465605 503638261 797489671 121325178 132577592 483567144 670102698 726515818 852270142 362344218 882133973 487233634 173668132 862604629 398197433 302247980 606301661 824790528 527503218 400501827 785081286 203395691 622034258 341748686 819154006 4490597 564106819 56991582 201346469 697283749 264407073 648564085 343386412 590361919 384137552 759177507 276956589 695250661 212610655 493062349 17912610 683591013 840427480 161524787 660358826 423946340 523475797 558884744 327361829 503726386 432080111 782028155 362461070 57372872 530669735 583492970 570286803 384540584 583082367 205759439 496503428 412060925 886236355 539956407 439560938 52055629 296870252 949901193 975763535 911154894 578578229 988327808 970408294 404753476 764386961 195315809 639303464 81309100 166214605 109290909 945221172 541430822 460207128 744329144 613649963 984726259 593595116 324476134 968963153 472845747 189981247 753079484 712434259 201159340 769136978 398002481 269471288 766674407 537826981 770007221 954354116 563733211 639964114 916655844 389293871 703374986 741138062 711661119 22979672 571883607 300380936 744862764 600224716 919974569 597591406 1182810 355037491 191652283 42295348 738732691 536350718 109276804 819862928 462255313 48740563 188023383 55046217 451170021 12272756 780598930 801898064 552311173 432918114 183206510 324001014 273990040 12076568 956856875 763774801 319185943 333243099 211518685 334062593 314505320 1908554 975406641 45695223 70682415 838246243 389432824 934211351 803098151 177466856 472339434 780761856 811379477 437831620 266070028 948983896 265724036 210626666 577559254 195367314 855680242 280015786 182265034 854845387 798589247 698787782 706861081 441927851 708603007 591299576 334000052 10856281 803650431 918703686 742902030 171534988 955065437 693402879 274737300 690473034 300101377 23835876 400197388 627342158 513817399 36319280 24907730 688042454 222583485 789240097 749719332 688270697 481719381 920248641 165634258 142867661 49713238 622570689 456328098 297090143 26673525 27040370 512207142 906668928 661172124 790366178 507756176 648111317 205163575 310597236 443263913 226119857 112482296 363309552 27575193 966559699 293927713 612180304 896883316 330974478 886226274 65358822 981415368 959233809 24335587 518888616 799018047 769164105 666532566 370303714 677858111 249976732 53369586 98829089 356327488 27158391 854037605 526720449 254824287 714149428 498066601 537674992 200556856 915847740 858877584 7621069 615229141 910761725 137836145 417279708 511873576 273764422 332354685 71363221 616924540 677097100 33045237 903787320 229254763 479686606 134849310 687005662 481469097 575242959 819004717 162738105 143429877 452312764 188926117 50962465 44333050 604524715 966443785 22628222 240931432 130318943 493641227 784063054 241830288 630917108 500178335 529583892 980113983 947711266 39652677 805235170 221198333 406454319 725088104 548522351 52989367 968695039 329274912 260679343 16544459 451467313 237361043 216997924 902489090 998601846 298983516 762017458 266668206 751036784 844441568 22230830 494959586 944243155 393734441 593701494 736769402 846200213 128747357 377947938 858759920 536095299 781967358 764754312 435227320 618678205 947405489 984323738 226410581 338937956 655608993 746721838 857548319 655730878 350168906 72384699 663529704 537077142 64981164 318190072 326304905 23382409 868141650 772669244 636362825 580284852 466480127 878679234 384810605 23430113 902334246 564403057 806190897 560453241 814910003 422434301 473128104 949072063 44812839 558077854 219931320 241887401 781491941 415191292 762368954 496848987 13205169 47428656 801855796 647677638 68714495 195377982 657275953 99697379 750693808 344796563 792865188 407093332 609260180 797945218 916330265 401062361 529751986 600146251 506004064 589778272 400567629 224152047 818173840 739440786 855481292 798162295 233976210 342295950 543539891 576936995 305928638 345179152 930354848 582628682 585703216 241831771 585206213 875982107 142572333 932545260 248770888 553723469 886590975 927512559 524101271 553727184 289018757 891466851 568309678 808921366 900356662 624028728 358820100 380337940 260954700 468735360 379425886 572107092 302416993 111910491 517442124 428931745 428083900 842969505 977146990 932489946 39107482 360660883 959044548 929041721 373680382 397314800 103173325 306333873 405812593 432047955 482715815 880068124 496247322 666099906 416788191 540280216 247662680 934631541 191467430 614722360 836385878 828166051 894986512 596582147 344417642 17972191 327575947 96004192 80701393 14878845 373611888 240390007 5470210 16422268 82613530 189902705 562777338 924036221 818964608 633165605 27986890 888527418 460098755 41812938 390876979 52937462 834591540 477301484 942277875 81495113 613311124 33867944 735702340 216757879 69445059 643570127 614416613 894832609 92840417 647513834 179743351 91011478 590578120 966309077 839596467 118700718 109551408 880495690 24548384 853551519 799644088 757610935 38169122 102578810 421697119 996360910 802570161 549242927 452152868 266357940 45601966 921201813 692183811 399230262 133931834 684806745 170783392 175204752 921958296 198822508 554670083 500021081 378110637 676500572 452914256 30564929 624403853 39797822 42311013 336156894 864770960 742121249 941247484 713426801 323373428 722570169 229326788 214851249 393439531 800285232 183177784 98172477 410827687 442663686 597369809 82728735 549330120 553051718 805803925 517860421 636594642 907082650 228372104 463402901 392349141 502461783 274870025 705963823 650165769 38744995 631667765 291261654 360839778 159429692 543664356 273235232 581989107 913990065 767797637 522974049 959127958 334317154 181602136 211305880 872080214 505508885 576857653 65299182 361392812 778307541 80893129 747885235 905180932 375618701 23801474 789384562 48649758 187399940 495546734 208591941 824031918 813477680 639039312 365260630 551138396 788668820 716270998 207418165 354389867 961035271 682515461 603712007 479289777 260910768 265878363 737689110 53708192 999850265 828212242 134069750 858990972 150761382 741519282 456654986 686367122 577170108 489885146 922717531 496273685 452541419 539418271 756429011 113978998 29541955 88670492 895956733 201807735 480832222 632112535 528831634 11228255 558960526 802274053 940652357 144452070 411036322 914928224 816899357 557921176 389122717 643225497 96156670 717220924 980054133 728343350 82818527 213164259 429002815 147016157 637208765 445199687 866304482 898745468 682414170 497837057 177708163 476190422 504464450 962208413 845915750 690968667 680555261 514071670 525025372 712111576 615560320 26722745 960512906 362798600 622333441 794086166 213696022 375853346 926684637 363969910 504863023 272495156 944137457 451517743 423393098 281430535 45081150 842530456 718676541 143172345 295433622 273339587 782880563 765342328 963473292 303943224 811991357 420126627 116164268 63890256 580865658 589532759 481783109 570783601 480087602 540584278 340095899 376035798 245290501 273735639 984301765 61422966 483401074 91820150 267454709 689053496 876875013 175424833 940025560 398162089 851068058 463898147 867834798 166662778 466998136 116445141 958691235 588239257 36482909 541314672 330046822 70050238 24623063 366166731 243870490 140164154 246665936 502805837 40252834 573263533 569742899 180261577 191021766 557099750 103892434 156448161 203591638 656926476 568329653 203503631 555086069 423126102 923357182 713777053 968511365 648543312 76462441 889717679 424540286 957050760 243081129 50943169 362845549 679192332 941376635 637806311 744170594 608571060 950204935 147225457 913783566 199946512 706877165 14230503 639469543 305490634 393372996 557029339 482827877 622214012 702177985 696878300 17102321 648856017 786234837 712693146 400165590 160512978 966620498 431075845 247200054 985307952 990996009 669116698 650518715 522546028 422422428 391910510 190294670 752785877 347483496 203157573 158469252 606763025 819364777 628553060 927015768 668090640 430267212 459894079 822611960 380400154 846949339 336122427 844227611 515688186 97958157 261331818 80503100 645138434 375797136 455221381 908297118 708912606 353164664 193449223 379080593 81755856 581861528 190861222 82559741 310309152 629651018 612033347 819197379 737141900 799652208 839713199 543734192 585993177 495662888 848687519 634310349 656527352 402721538 954496106 612970191 648651323 746443454 239841285 691646849 830270020 120671791 807515097 968326694 195802831 473242939 219787777 818703954 154595695 385437620 926759093 91947344 729580936 829748986 573608428 829239322 345429485 33340103 26498934 197781068 756913990 30828188 25210953 460648025 191761699 614664264 520133349 147297137 489439048 578198488 578548541 332869505 236452387 250696999 73399821 164131850 756872275 513838177 220142531 408711984 205841867 611254321 459243243 535361449 646754878 294140319 578013803 953127728 333145196 272785192 509158549 519341351 687884447 843470085 210767309 75380873 18339453 654420283 758003010 645109260 580461520 982851537 303184923 644308621 106281863 243676357 374742913 874866334 672685552 144631410 276985343 992052489 863692306 153930195 331079966 940189801 234743114 143477084 441504752 568677473 201856424 954445739 778150316 797366272 663326665 681842916 491391297 291114909 959494998 923889811 269832792 367005327 330703779 376352116 968224256 560216640 182502965 708296857 426894202 917060078 106499601 968309180 352027265 247201095 623408489 270660205 426928161 296112316 155922275 399219563 261330841 573492721 499187140 506020863 724892611 391898544 828437351 48086101 916538398 662507514 915397127 760336630 985557132 249319824 726234240 718201182 114393098 742581368 672824411 808012472 162988014 481620179 461161595 939170445 7720955 73381217 839690044 303078721 424493015 897444418 651899063 456780852 166955072 872789079 792861877 166347269 960437541 577757050 569806852 515210859 377578833 541624773 100710235 652214380 210905528 163881218 858065616 489706534 161907832 315882939 560664530 828683544 329824573 971465439 189951023 431735388 632475222 44074272 205214622 903071030 939971674 704245484 677301076 840497185 901062250 431988946 61963903 401113884 107165913 11238286 911842715 876981487 316980909 472244991 316740332 499243101 312506020 136634550 808889428 648109305 666123436 271640862 968645259 391562091 573479330 868722802 577074355 518039935 559263298 851907760 994132398 208654376 534967603 478517176 682229032 671497476 810403931 97950152 784359750 425212761 20755916 206219496 642502266 417014640 643241418 896879646 239075172 901542193 783114779 971696647 63358451 957025202 898544092 126093274 253641039 844276256 660545932 127047879 531250641 436345125 905051706 400635269 802501576 931436479 768200411 681290587 63347746 583228154 953831602 145610750 343431786 241803412 586014318 590926956 785586501 776808076 837225921 586238161 426841452 240873049 638491133 446159950 314699981 422538671 494888073 408022404 136229716 818910471 838000203 290247703 202254944 609201721 691280069 446726726 308516775 707081171 656365234 237036284 493544658 174967686 413707358 936255722 605204251 72414292 512079837 989296000 821103310 810992208 172241177 160717870 342591103 564634212 849843947 137420104 471208048 294292598 154773569 933307213 803564110 994736443 630060071 874508763 323794216 665815224 217465797 188199669 159333946 539886202 341337901 499697274 296662384 728752595 92073339 220030993 278566432 332654463 115909426 734699374 54256732 623834109 590437800 697653075 848769249 319560880 442728826 660612977 673977642 955890212 497509042 666907032 553400604 247375696 859160988 855069730 589827663 38852792 227616558 921398487 973880516 638291741 119681965 458906205 798464822 34952372 674443437 661874022 549490798 108389764 652360953 187553930 932243682 194374309 134716241 890728332 868022695 166355019 558495474 720344912 161734359 79897410 685994735 216941959 977709091 364099753 187552718 400499772 754553859 40641953 627142039 483978360 298957819 576329628 661780588 592788834 631921908 52395933 548068128 475160966 516610525 990368229 565986257 155686240 997119535 121707409 870121372 993161792 185548111 891056614 138270243 444607838 648453420 215088359 865905657 387038729 56005525 502188621 123406704 592027398 811973820 572509394 539246958 6535856 764435523 561066736 764751930 788463199 50345984 995539731 728674895 760030343 698972790 826471123 889872999 314963467 395293450 84358297 27643928 429894024 935001288 158398914 479744915 242294329 74614807 79536282 360815839 39522941 112045425 128637914 649172846 290394449 710316226 242724779 624512210 137253938 627174212 334107562 979799918 559407431 674975382 301146858 564370128 999814487 171880301 119835658 769309338 998102005 19899738 263913227 312079245 965993275 32072477 968158555 173803308 377733661 513028243 692903558 695262712 857256978 359060608 735041969 510273622 80515469 788512109 956244615 691698043 598623136 921622099 15953198 112721623 70435155 785768816 408808400 329986825 860569277 78688771 345308671 183929736 131394238 258187725 706162880 403719287 759100796 746448937 601132537 435342829 242762910 156877657 330971175 832645799 716233610 136860937 350659373 560704594 172759122 264522815 661971591 908589891 355126319 366351413 170177831 68639362 987358666 932671447 665579330 32830768 264693893 471738945 415091978 102887385 407064780 101306423 91203608 649953872 894035787 946384231 452286245 127133158 600861969 638738349 564334494 257494807 993921964 2305033 416529138 728426531 903172818 363163071 311047060 177072418 781360816 686255654 277030822 783713057 633615001 109337205 118866146 479991674 339450714 13000310 245825326 861596871 389606792 472214920 754240064 746455933 760167665 464279224 811129528 75387088 810602564 942527213 270185428 324424828 690409311 165545675 373169230 860992647 208457824 899790710 507010736 294357298 593111835 357295256 885803763 755229796 138222056 445312345 477994049 423302663 385127580 304023878 657375777 385385464 360154823 704725170 511673901 200317720 755569036 523785834 499746464 987852703 32948853 587071906 82157161 968637754 713376293 12817278 178911767 406273898 323936761 476071846 76623145 546569081 184892757 699336463 453444683 556018207 942151939 804555755 696990117 90878948 144208581 822567038 241855664 729590697 269414306 910803851 517638401 98260799 248478906 61510179 8114042 882195158 803815712 171040392 480750461 70711735 11847289 849379626 994606055 884626624 383227576 263689307 399835249 806942625 82352041 687332776 347594107 994423277 907355776 855802522 240138233 600429399 281984160 712954857 387671500 542903416 322502715 522306353 268053248 143417631 979509670 706383712 591436357 914623065 241707004 712322087 780005375 187289770 111706375 242102492 645014872 779796279 190075530 964187949 464974795 679274509 855230249 38680334 869259544 185337418 573190673 839014774 893961848 467478226 920597409 258681317 126003860 311912734 374836358 620644187 507246403 573737138 287403382 532088055 985050506 227711674 945160610 970173037 852790607 855231266 755192146 754351466 224550254 869518740 841369349 244702024 154657022 31244717 168927225 834901360 71887401 148289455 209692256 57512182 98510919 650086055 90545966 978920626 225825446 103731254 426436187 322908934 713125546 133004718 772422361 365339681 316239662 967193747 95746356 661100946 448882400 532991019 610235973 640638970 360283179 60736056 406379363 732988349 977772625 471635849 846351388 43826443 531344853 353064009 54551189 518363738 433914742 663172477 803672827 29936358 386709872 357566923 207895337 403753042 884958584 970099825 74462357 509610915 646280945 952152737 675071536 730463205 162133895 457202102 660002685 279070347 117911735 532419348 20804034 131594374 291852143 959446811 601546807 905109768 553251964 862053974 497074824 98767500 369668630 689129562 913894754 914462668 911230486 658540969 263364033 735158518 873140332 564451301 67108926 659258966 32421718 807682512 766864888 172337898 736119403 452743248 93849463 878149958 608012019 458816982 401834632 165923323 680153207 649520671 977130204 957935619 256433767 730255986 743943445 705750012 579610062 112748661 935563236 595840176 261884359 900571131 557678510 156001972 290147852 841414046 321394211 896925194 197066041 534710988 143387292 189626654 512974557 743339799 142529517 544755317 150625848 300078570 173386538 673073312 347456767 80965336 25790469 399200844 796263690 765125885 782180509 739566011 725303914 641732563 731454661 940718877 215618129 515450128 462714394 808025135 467435239 38706633 898529299 169275015 844046758 694711422 90601044 157493189 739249073 953823081 676801899 499382207 353349996 150700997 522627680 896867803 278174499 893997529 146343678 944280751 174334984 680160463 975218004 750852250 704860669 577007649 784349104 217325217 740303881 697901313 288577865 972138550 886505601 185757147 81687528 746099329 73413333 284603072 615054688 825544644 607268336 456472083 231817954 448845276 550116909 50013627 303503461 839264988 582014981 651660048 715556510 867103994 937042118 853827287 461914183 924134758 249072649 330742662 13754067 723110725 58132798 875535459 383345048 371318035 908588772 722613856 978959888 899878521 48339262 407697039 333758203 570526541 686115669 74149026 478397735 935055942 768417563 475466205 627229116 620122948 375189788 165436566 324959334 163143340 828818044 925460693 14074517 811524904 754880038 675986814 617153500 480406658 52944064 529503220 887969908 674275799 48765980 34765390 687022523 826175299 755891488 116071997 239410668 427411811 270674959 559882051 580658229 676992144 216843020 871237087 451428637 948679083 93734934 289059621 584763318 777777795 715058344 899539937 283784035 607070181 505688578 420339876 914331457 422033285 701149227 953198184 779493496 321084814 23356012 328385811 962202756 871057680 74679489 306134850 959209517 494658041 16461677 32523898 299364558 230851172 946774825 292915454 536535051 128855670 632444825 540012725 221692500 880593993 897325192 348198291 109582660 527785891 306623597 85242612 420668566 719153001 585009898 821783477 487991969 348684623 105574638 556479173 602499032 369285195 671626116 555534755 827547628 306149558 627797994 976009231 179125633 715183871 226546901 639925921 356749706 280122148 792590651 845629700 525832779 238122341 508002570 508904745 852973145 87390063 172344009 669154280 104259279 98498528 703329770 550413195 64517144 767781373 691485474 80708180 901653954 888803969 21817427 430256198 547988193 276446707 358873176 151919325 432609276 711661121 38369833 515785793 45284330 626588303 616395216 615903513 756533500 834383642 452117226 921243957 422015167 902942116 699286214 995520234 139031100 849137596 682299700 452137110 818887504 831064954 407427581 101355720 126288164 84962120 272730784 540639322 429537224 784088091 663655754 957770047 971624060 445973722 155252012 174484978 388659424 437374 829788494 83184498 116547735 313378673 881074480 311817671 583057197 223229209 629616218 446601682 172955822 792216076 120476408 184925329 576923723 352333045 395338069 720658816 498431990 510048300 1199861 135743127 126422747 643189804 765476332 6078823 782641379 394425339 444054371 509059134 292533700 616811894 219722625 670896082 924878813 982612979 893085083 566038616 718767680 818768152 99433282 368892410 334969245 304264599 462662808 215031244 89888624 624575447 710602857 739695275 253075772 940553681 377705016 580496506 108946346 475073333 733923629 373202624 770411129 218036745 801957536 676940403 516752131 853734789 353551422 932302618 718029148 995637621 752538529 36648181 711206518 69429739 313568152 427131964 330514734 745326419 468666891 447603107 59856330 493504253 364689282 716348627 707358583 743631088 986793516 341252541 893366918 7729011 868949734 296493338 663200581 902630530 276188323 523540738 79163412 862101677 959842842 386223417 142772568 622501287 705566904 653238525 660207060 689640128 542563916 523279575 793390056 462399385 897731480 167538351 948741748 777019017 537225500 309277549 473035769 964586503 598801563 478407494 657273628 362671585 148091222 33939081 862456422 394508821 932164121 555755750 756706683 774486516 740190321 496818854 819762273 386530556 181842407 70180638 21145969 709858757 498661658 921829326 254379796 193573663 948878762 672434478 810754604 113992400 281732444 600833507 887421982 996989153 320602069 391913266 948261999 589614935 900713391 545897430 583454299 587913265 941816802 68763948 686895180 579581696 35244500 598034864 298148295 155019148 976966159 704661424 805634719 981069703 308567104 210333363 94761413 504154270 971120163 784264397 32448285 202539077 212655070 406541660 450506781 203502621 324788121 783069936 179872561 917474324 848584272 706028353 823925306 865226122 49875755 726507835 452400357 802550799 465162044 637666529 607678298 719878858 824379574 740944916 991293060 838222164 323972586 419976209 459365064 791303664 558155200 710435306 34477575 199048183 702433961 491696229 903090622 364160582 12605772 772221873 243603941 758390085 474134905 192111375 617736778 356197017 4443986 53301230 736984600 190074084 972254575 240260598 496655209 230383715 348469313 429352012 540162861 960473746 743826104 323779600 203511374 772731357 470908756 486582827 5192098 50207630 199957498 891083254 30567814 313284930 587075886 649265160 790601041 12584369 512327814 733657233 45299134 898132151 319068797 992515686 428363837 430889530 510392843 431750437 590912615 579454900 452129108 424668340 717685288 153028580 721589224 32601118 957770237 238060235 418336622 511029678 381538051 552952748 647694053 426637823 217721350 460033076 285278785 528843287 903514716 103720615 77582282 995404030 906168645 351727179 318285222 512702025 985119724 425961799 28564748 542125507 396034562 801207929 256854766 762942571 975606414 642523314 118010660 184613469 587322168 503621810 130331453 759867070 892878147 308906287 481611534 928316057 951057843 213067018 338313914 412807319 275432962 683139971 75928733 453997876 183685344 609125644 915312258 36028230 328179499 853356858 881767001 666962618 65479319 831738367 449336054 468973229 203237934 406078490 9677440 915195032 615561274 873539051 693757551 288103235 931809372 455909841 569627537 514443660 251863989 207815005 483014415 34108474 650285231 301987739 455070473 636947358 441027699 680730373 606249939 387903480 212754087 549906816 129285133 588443018 938024383 593456709 105316013 737938890 343423938 54944698 846097367 512112477 372572652 35905486 817636609 500004936 355070710 859738656 263899352 164254833 581062533 817967001 823875532 813161208 636142498 340736855 639043825 743581980 844824263 524977075 971553758 330689242 939190721 163889535 779411142 547784755 871385544 591236244 866206113 682032127 140894319 763952459 563015818 221323726 354449419 637108729 969888474 717189754 203212552 920383717 670023089 626997150 950126420 460713270 979720582 996248896 242844127 142908385 779781395 361596517 368385288 704955745 190221736 510122452 958651333 365643988 502825162 304774213 422487825 649446822 614821627 850832021 87434359 399533237 570315724 652657662 955808013 295396464 320681812 591654143 47577951 562642870 1804401 745978958 706461104 224041194 334966908 209384625 927052199 848029899 890891689 535367115 914786466 663829449 683778589 958024031 49199420 136109987 294209983 986949299 860679313 573883918 833105632 737649231 200226874 530443175 731392543 127574382 45632278 335536506 110849288 782726460 472547666 639780819 126370876 274167695 775749837 482883692 861442759 194209904 368305248 817953607 985826197 135528712 947762187 208545011 544981040 150148871 467225834 747504126 857973420 863755071 575044884 112339216 317205243 920013131 643308634 605378866 975068539 237547336 690592980 633216180 151896185 584738177 495213562 606782590 279665392 934823883 377842479 567177494 785312503 802284567 820641711 262545019 896968855 817575235 699033038 506132373 184201929 886795622 766019488 606726268 233988215 980065851 580340971 76444495 943014198 10739720 894211793 689245268 380183865 79572507 385021958 382077608 287680079 598008112 118513489 840125528 825944687 538504922 42176514 884399733 996715057 981472223 783147934 689287132 295107032 792719207 381203534 723940779 702522882 99384056 149605861 891925383 782901994 46124465 150765491 232745386 613260548 350598598 736619128 686520402 942858528 47076964 310806842 491918414 898302746 674987205 400390088 986285999 869076859 46256595 349319384 861567797 477879771 978724934 354086689 240166394 822725300 78209282 19522003 85146657 488565382 487977700 278512220 887787788 564422165 836348368 786885978 949600196 23226121 777912325 460132356 515288907 823014680 3071447 619743302 296136625 260473077 407644681 55407212 205610225 198522715 960587773 428288169 618842260 886889659 187815898 607016031 669714600 174816976 27834122 440944843 927224675 832324236 711218491 436513196 627728345 384917251 7018036 519415276 850731259 310789967 564484833 874631659 894065516 704560039 247665075 147933478 694998166 146928225 874532735 68227670 425882415 389765026 191523487 181468726 206894897 249614729 385512440 823108801 545991360 700967372 863789633 189751046 441659355 146818713 124937025 610465556 175688049 274604258 997770738 980723360 792034691 820763307 166458358 919007425 222553176 144632147 731459557 733573000 690574423 305907241 551973452 168498608 787315782 531100788 538286739 650616448 596711068 789284458 585736172 201407107 257485962 252774552 791978381 917032531 948187316 520256636 329602317 738584437 235212816 495643560 673160817 235349768 164821188 194670815 150278113 368540512 66427829 12512505 945496599 522080953 258839164 719176670 594644772 207039456 522581791 666015666 157764774 524554739 134979495 341575855 89427946 50493364 736784344 227372016 997952532 587470151 635267686 888007762 242683362 645478436 268108631 516789912 330854005 536311611 880360878 802346662 951323294 112888785 106133594 200441908 764895739 170430020 452101769 939386826 406427836 638082868 825214758 972503876 648806789 689742691 198649591 975770236 950722770 307655040 445244878 935562253 971890549 664327270 681303871 590837214 353154544 64916780 359436 291934109 642785256 460730231 607330366 121538436 560753732 225881901 832765952 696486710 594526613 585783404 475787242 51256612 910674218 358793914 831356263 146270088 723896752 874481682 851213469 787744969 358781099 267222919 669274178 952139213 532175717 107927618 905649501 706760210 426324272 261088910 56280766 311787759 774414319 165642428 319374070 931152396 530594058 70389477 962084906 802882398 76087354 220080479 361659419 421366007 959775985 324329686 237458968 646101421 392363139 321596717 350323311 698541112 529436754 242171270 863679102 544624744 152487067 683068758 748901714 158550798 62158195 2166412 851519741 413679398 958077133 514251643 399556853 521320812 837454231 603007535 421976251 421411970 273837908 890547595 634079121 389888833 942651357 615502019 357633346 35042979 353996850 29188158 301612760 882799634 89016186 8492851 417042145 451976965 441518559 173907722 943839261 363273255 52573276 138683743 867136258 610730183 433554227 999537054 802542918 484790338 854928869 86620955 423642890 64357124 188213532 66793241 82230509 35449203 374118340 994308886 88091364 695419701 576653661 977381302 871023636 967223287 836270783 173285487 578551737 91333467 885434705 465627833 732001529 795552187 270198657 658900463 138690004 526364302 991864726 786731572 737105885 231374713 90606895 893325763 330146711 17409770 58863656 888127242 556734359 661821895 937898903 789965721 812318586 853343175 641371935 993459787 545100716 668072971 20524327 568505683 452434266 205825069 218265166 179487276 279258335 36529291 953945513 135674781 981344128 235892539 951126503 318197393 858356122 409885993 498305014 575878253 177823293 2594628 872276619 623359627 367125385 854631540 821431214 124154312 932937483 537576973 131904286 429140099 311590628 197844058 598115421 568855188 618411647 859430737 153558577 654201156 39633380 841689028 985261004 134558040 969727313 366937830 778770697 355287822 934376603 463087675 539044235 416189969 978390558 609189274 861108937 677972808 113633436 813249824 920518926 376473100 577428784 871856884 986788030 205831800 712189129 386205882 322970761 507312677 293419310 72231225 352944472 456350590 666892027 50057281 554201084 933282588 467674173 345658776 662133828 5695306 36796165 237719855 346198718 843534563 504890729 703171162 869574577 192279947 648804014 766609298 136326653 408573136 964924551 539219605 755463473 857056629 748363578 333084973 84760543 935853041 801833839 318683831 23107826 133501161 728897909 383444641 102221890 662661545 318270458 834711932 925344338 597574151 517633392 782847330 361358070 505164655 654908077 318378447 364342693 253578491 959595145 498696815 306710503 879823601 726640809 825970124 77553118 926114221 997031630 945822997 734296733 924380589 662141640 543555386 78479791 764305897 856301280 388802614 709672974 324115807 635514129 88423691 841954644 141227597 831384996 864154740 485360816 561077246 802721926 431716436 788983455 959816535 220263549 958741881 402797772 15350723 575069440 708721692 133201946 55848146 863644598 249971826 880068008 709983610 859804872 646229607 420844466 656702958 817080697 31437784 152664947 345389888 959399777 62413030 88096220 438352312 510390467 791501191 362094666 41742577 660069863 615414432 957602687 897974301 928632645 567651810 283992326 808694123 33514559 668310141 991823747 155680581 12900212 199239225 872399406 263450162 158896684 670408999 699603409 508125927 41794058 318755048 26470303 600199985 834808542 222886309 438291917 412836031 552175250 6917146 202011255 134876808 945794522 36084927 459276233 486946195 754036240 167937592 187919726 35004017 353408970 402999555 452176105 521528383 400923285 777759888 841187414 917550886 255921287 961155324 261963901 63618566 808494655 580221599 716107414 485320669 677504055 667208759 263728977 554390922 742807252 316758899 392035438 461023012 138636323 294069635 602705402 886800005 548107607 239423393 383162229 97319463 803282478 427106738 55584640 124224746 989357936 57684664 603990962 76782197 657211474 595514920 144069433 620854185 785702026 497033627 345041917 972455235 172790882 310811054 252700387 621150814 32751484 808719098 307308263 159739497 856249382 607324047 469455029 473608113 691018039 133215408 904059602 911349910 248247523 404608543 862217650 248994656 499968556 950948051 878793388 355066395 409962308 77201345 285706294 290807829 748865355 409873099 947333495 408055049 83646365 207543577 882614886 134456583 390434938 91946598 663721643 320736701 458492848 903122840 487179272 63197867 779198696 805260479 79919132 806347009 796418124 4832413 53527412 588138810 618563187 445077122 851932454 676862320 829591525 826056288 216297230 437694150 562097208 351179565 424275030 865366240 248397384 542420233 315393859 350516625 898661715 174166803 553406455 795654053 970018239 209144870 14021829 944068754 42094340 278833636 477228320 678625527 465468267 297144538 580798905 25115899 875060634 987951866 280717165 665033630 136956015 413582422 769448622 762736564 534148932 307018860 473069643 982765905 629178274 721700757 865471374 667811150 789622868 523373104 119224368 828947742 977194002 653781755 568925257 395945210 346485882 871533756 3363508 145354155 253202309 933891966 629002316 568931119 814293227 2941460 240791968 177234377 300818876 81167821 73737860 754103404 151342408 983410631 95760320 396506206 678127742 645088643 198267048 988143853 212757582 43794465 627960187 163086406 101427544 450836027 857773305 507981320 364313206 865941278 721626391 325237143 229681550 262568952 175444635 963572628 179685324 323979803 87291418 899717026 749836078 658445043 412187298 594137100 222673608 31823166 194984622 371517218 738101718 167771589 436247644 934072527 293485932 656400695 273749698 884536442 90656495 631736893 725033847 83939661 901841358 254155826 503350917 497706002 798482170 677357569 481517081 13803846 465094513 917983834 651872018 934221765 170162281 308213603 878838268 345262245 87884215 80158620 532979959 703090713 730609495 953303913 311165294 630298818 250119326 278162386 502414029 903786936 448247511 839343976 869697297 909967235 744349517 951932588 222141492 526821294 316259245 709224685 250295933 241421558 474731620 461099328 330324282 275006626 963578090 770421461 751546190 903706171 459308834 190272261 667106977 52152915 382328560 484837179 118741537 612999739 524061877 829941602 671459388 259092267 709942689 375268539 927000470 601615541 330386560 984282413 6415668 419331456 497051507 204804185 679220710 289836092 205951781 601825920 440250271 19676889 225696547 771827881 618901153 132194264 294106776 634578757 95267613 40983539 319956486 935473985 150616832 603355113 966447986 501812460 47935333 581309124 689341587 940447623 999346658 359791603 754012825 627141238 127166384 242048599 510788681 381914274 553541717 854124678 337390883 354696786 257476616 127356717 674638494 29865585 662273217 948752074 549824416 599119847 673009641 967277824 584992414 900836528 534979637 980170938 210903453 669638269 251859020 247920809 734201077 821455220 520271945 871373345 706455227 332921960 166696092 910035838 576690074 917812128 234385388 278474038 133172904 960533701 481459501 510654247 922148027 770271293 678381892 662264250 363320917 146241350 210952142 907404988 744753026 505657092 197962053 660759448 616332837 330444609 685140546 895681279 300799366 641450183 170836844 212783159 887908483 800151596 403477125 385025835 189659438 598775441 978454245 34458993 304357241 537476995 354634744 963334685 624622791 414192163 236500119 390499157 782263017 430117520 362901248 29074029 167415620 527979874 910030017 991503649 150249649 439127836 792895729 539803545 128424816 89136378 94185268 972402940 212366251 510655056 666604212 43457301 432573742 891359702 249525659 39341458 584999714 850800531 719278573 764336717 250986747 768232571 53923294 897491945 459966977 180733231 825081736 428403015 75039400 397930739 653279463 324040873 532582900 614339983 216324158 332542423 469830547 516235336 122622622 16634685 203473485 480937521 819408233 445382725 707286473 13870952 298371712 777307846 444656799 497380120 475233838 997942972 201666714 663607805 548489636 584378032 974977769 488620469 80819125 256355967 730156286 429737006 136787789 702735806 962341879 544659070 788351243 440569185 514135212 564115543 781362046 826119408 280473924 60846154 980117676 78720281 163750722 495912479 391265583 312393290 686803650 894496657 622938814 136028639 608049222 190809318 185102576 992527718 913230145 265888550 552218222 400324876 235221503 38258299 870172068 582819555 992280245 166006875 105739455 422107562 41703974 669081827 632453505 157091354 686318723 216309452 511161704 567863430 891811555 356741408 252958155 677949999 845156610 299954385 109619133 882640159 287610204 305497239 338752838 568007423 579308453 281294236 151257475 647829131 939414324 906046050 706367031 146835195 849438961 730753305 705424523 744339889 6744172 169577172 157511394 523998512 965982594 846527315 212706363 869955463 387724617 320257260 508826487 969076849 37478279 513475466 238151649 903804504 377381605 859829982 335505690 965922372 630566482 387904723 500417036 798628297 787075069 156916049 527988266 508033666 774203900 271009539 354506012 855347911 125410666 843060350 726222935 832509382 650181676 195424360 587791638 544262769 505234662 175236892 366648955 325950390 182947085 214956219 998565617 882651565 148916653 348309135 667203533 795903403 605604101 204294946 821027665 877953007 721771931 945884495 693552469 112335291 928108365 707564351 733893165 766822590 811013947 179802815 975961559 458359702 260206893 727023253 958798967 869289001 360467005 211591947 363418163 25410814 481581812 494680858 680871155 669580374 625836955 80821056 49160597 990646674 40657571 546860272 22306579 632915004 890621059 363217672 75543758 192788332 618560209 43139347 993720096 717113642 511015881 405068355 241883676 360469600 163607794 470082421 61548112 418174926 588036281 702379773 294159863 995763686 893385526 714144951 970727210 953132801 471546213 941698120 89006632 216362138 596274228 956562911 540793473 716045685 634036125 698957119 781926443 891256066 635106074 244471878 594212828 973990856 486175758 583168468 860596226 913742323 356519383 676788760 552812394 967804105 281130869 911734347 918394506 67394681 612194591 71063405 659117982 104458450 911256907 844397312 791577446 173232205 353961140 223776809 19609069 255292126 463200625 597586421 457205470 511082789 386809109 11134733 359196942 401150117 334868166 881519025 311797550 314928347 910692119 230438333 406524766 108924498 822984925 777360962 542357207 715955878 37617827 486543538 414196899 374300599 444191543 604713328 40666748 675904708 702770538 463055350 729789036 539760546 997755865 240443269 978078935 699609177 303284408 867525980 793792533 424080759 389746777 237308479 298074784 360870883 900397477 300624325 402167668 729385588 330628996 67498563 777903321 118229130 674700265 278071068 11700824 940096639 426971657 628046091 822131068 732203887 101301647 62351105 930445394 725446409 886771858 858047695 521844657 341087237 429622346 296363472 26418825 154576601 866912717 596301714 585942610 405584545 893475283 680422012 719406233 593019327 500726887 68054778 344380078 784014332 183750783 661239944 695395009 257423862 734128923 40833566 901105827 38609994 100939020 382297895 833046421 899133852 254452671 354592263 934439760 184005431 576620304 393649662 658921273 589295095 201645222 15157502 224339341 771120693 702267056 721794165 309773953 825018329 556131266 766009887 499067796 77255693 704768090 548101433 600873134 752659667 524110295 217169595 195130242 110475785 426814163 72645891 710137384 143615921 424253068 682150637 861782597 627652286 586158626 397069679 28695135 894168139 928940270 283492027 313445805 441724665 546537096 948014944 241271067 901205102 184311902 948948785 202091858 548464386 901463923 748101707 928900192 782296476 327937004 277337269 417636426 775001731 38138604 656253560 903074264 187937251 724002901 90119566 688599257 960635464 4924334 676441295 423261789 318233956 89790132 337314217 469417572 560779198 278285150 979279483 672984216 513790957 594920513 300249824 396559534 371520245 583619780 244639151 527921059 538668918 603905460 204804318 339145876 816502452 363400337 121947598 928398463 290950060 163354079 738500142 606366619 568462871 600364566 144631398 774081152 987471782 677024823 604507621 774373825 544133902 514469166 482344537 837634081 514355600 769108665 869361763 37696808 686822707 447469108 651562253 797446025 731088813 910130616 80590704 846430026 396577033 262591234 327235090 593838013 15495688 568789992 422209823 66996424 97520006 365290060 980086622 779908592 161345848 606419099 866655839 887321882 262692976 676461567 525103979 274485618 452000842 619125122 303676686 571181140 960207052 326482204 694348253 860321308 225614514 403869230 550644142 299455055 351834966 38822556 790064948 198642623 744808181 715954902 673596798 915894948 228704116 35966130 557213716 348515141 548201457 22509530 858098052 310622132 675543480 916890706 177657884 462699164 954341514 412362490 329301563 754553169 829740684 628745294 715378321 28748165 889430648 696017086 37425032 524561961 918055677 192691752 745918714 130859845 39872597 524544913 394442608 619054019 244746597 572484332 373630833 727090701 732366049 700306737 889986009 594290202 194774088 390770023 908935527 303556040 616615696 48037237 388321758 431601282 904881802 248531087 110867103 216116970 177080077 437662038 557203233 350332821 717503311 950535841 8201552 818970582 198051859 723021802 11177148 68877609 701808596 241852284 969351738 213010613 482826045 539502072 639236953 343965591 668521279 211514865 967838566 195174394 369637138 410523597 8817776 639014341 428981249 136862571 633224320 81091805 162046450 828458843 752961508 688418945 813314117 828366992 670142671 375341729 838240988 838049173 421489980 715475877 790332194 239389278 391499585 768560844 350995309 883795364 553674117 255211518 92533982 426243575 850766815 101279382 754836297 689390300 621494268 85580603 286164103 553531011 997503187 354280344 140310152 56235346 998439410 98405846 365070535 449670563 233978175 12918060 36360065 790475906 379347368 523023909 1189800 930829303 594214086 214563212 369636106 781835177 459300290 899158549 758734793 583066005 510380530 880263501 840628722 504476754 318685880 821947772 282292331 401834142 910988727 238412664 367375154 615911236 586120728 451968380 151934308 181687790 434200806 772665896 596319182 270886377 876475999 139897278 514644304 485387847 17805231 972646521 179032486 465436341 115286859 896648786 391081166 304444201 967555745 987912231 666351363 60170256 371197066 407112803 731075659 273333664 462897951 463503336 417815242 939929285 380543125 49179556 698717954 297890104 46212182 334878034 252429587 687978306 7723413 281926593 818688911 395982636 305313596 533847961 808280916 324150471 980504644 75276808 871413238 754619676 691475454 53701589 659924667 178128130 942332834 75155242 307812401 764625122 534382102 832332893 972544988 491402736 206003912 504175444 89210348 349284793 232082856 579665501 990132292 891085371 189920930 859966171 374725486 561482045 810267476 48784028 7848623 643290359 681040972 653248699 932563353 225006192 61571975 665674396 468149894 17134327 504516752 94991864 613028967 977819147 494529058 735683115 772589554 910153353 938648838 210561826 888101785 111115084 395339928 137769812 207674049 413329939 627041213 162508796 892383192 337624480 581646090 298130216 153490441 867395579 231565345 470872417 61424380 420010581 653359476 413301043 627235677 930968715 365895036 520706503 762309651 357256773 86381930 796880354 482771344 69034971 981897416 717591168 602503382 350307832 236445759 130315772 81361186 435452467 511224407 21345686 8226379 456972292 55529171 754089539 848808755 235640094 670545310 995543966 918596701 479710495 166608971 90793982 330589015 832372067 429672859 698758359 189135565 339734669 984183615 699691692 20853580 519845387 643472821 743831370 166120380 604162693 411812847 860400975 882386924 435432423 374652237 597495804 684923886 871664944 961415288 185306341 750041843 164437471 449578401 359627152 609085247 944315603 506530178 331744087 217833956 746136412 455222696 82946283 795563551 510092663 471184025 271654289 151431025 804442024 336631353 857582564 521281283 677680573 329536439 484186266 363507793 315513060 811651642 513186245 227234591 376133850 442421768 957327347 696052300 903081997 370108196 8704080 414093652 945611447 883557701 901713825 349010789 924590354 870089177 221549377 597289558 142178523 132443535 449277459 750963911 317633578 464905397 14264082 412622543 765737183 628630585 98387721 141645061 189914382 997873499 45259596 743732109 389147000 67729499 384730306 224242916 14526404 720136985 787595946 557483662 751491415 424960519 67558630 445190477 229537846 636808633 893691246 524431327 950079044 783549820 259096866 434236458 891331560 569641343 446085945 466989439 615342993 802462316 907967816 910448796 612572649 107253788 388216468 531264047 150768015 483434302 775522816 293924056 737898616 475711248 739329004 167585280 357356938 266341862 364497710 50518828 127449225 721973489 759465777 118096655 251452595 583219579 684323596 633641381 204049929 472818754 513760527 853044039 7881690 138228577 105469987 973755805 65890969 105618655 900976526 358914184 809206850 352980605 235184446 69988445 771807903 76329038 907781081 144889667 42356752 190379916 767830339 490540795 857936339 161570873 271966167 844417856 79184452 430351764 344124775 971516786 861787611 267267629 750068847 925668250 674548474 13362708 638796889 17494731 567205487 179457733 947931357 566425253 520836238 529990701 495882215 851855984 483505342 160748599 184564729 110483732 218564908 979302056 923089226 842029287 19271879 155512089 283916312 182711401 603079467 173939391 316562353 849679774 755516902 447892903 66721303 993999151 635126701 387765110 615710211 707662545 896634122 310792528 898066542 741452952 556439814 710405109 493186216 409025093 526351294 416659713 513492911 112585157 74411875 969706693 417816342 966835735 930687614 407167729 602276757 508782212 183667949 224314019 441838017 321769126 551306949 663404646 83630649 556258920 456666904 598480430 694535174 288250557 887362571 46699558 65415486 31301009 803777513 899689969 359241608 141478850 937694159 817641002 20745924 996797312 953860058 692689358 538184881 979228406 612626556 285253753 798705862 319740777 269906786 986123113 656479363 225799916 322136290 543537705 439108761 796428881 648315595 572544740 400045771 712507233 879490330 912362904 179714478 170818124 782303778 942275231 383696784 73940082 847123940 901275517 849810120 112546061 513267820 582612278 990641787 199625888 596390921 588323164 259647180 195821495 86853783 167260478 848659082 838961855 7541470 663836804 637901336 343576409 447533066 923272500 822851382 816807548 281925012 841401382 17088951 220190513 952681429 464768434 506226191 191365894 622809076 827255470 975287817 991861024 730367848 116125172 672672432 599407475 28868965 966722158 48122646 747268750 405090676 415645248 687404110 57035897 529292490 432459097 591121303 772535616 312313000 9606560 282272184 156107162 47794808 356792137 861897283 662210151 30471150 101020293 560952405 617595778 30993973 39250148 492133079 543237945 876299304 398929073 17513691 697808132 445110195 917061140 546385936 995536428 963984216 224916575 95299082 495655131 913295017 365679464 892963316 370015659 921917826 572695958 31768169 676761870 731633106 325031268 190060964 80394517 116371897 136237324 745019202 397077101 426900590 297550231 779243715 125197301 846565001 746169404 307442467 834006060 739297545 817794638 690672348 265872893 998932730 56631281 989905759 789534385 692914221 547243231 47574976 583732593 99669772 549613746 484382980 476556773 116823412 806453110 422385058 665845716 204274675 405539490 237908989 609817986 940245090 268382643 434143229 220911558 460050893 967533913 977050446 428294593 332377807 151176560 689195560 566438937 390831078 729405534 840062925 772914700 687627325 335171797 565492 547145508 765118564 362011502 996388300 72531003 476849554 676851382 220384482 197146598 486842060 610494350 932794048 896066094 951923773 456050033 307122912 479614858 797581563 252855721 634994089 211705213 713286064 701729131 939562943 895935186 718096972 227926953 224896234 78003321 739144803 167763350 82659897 61109474 319327638 532428121 431872633 938453388 517441062 198703500 149413608 722837550 275424439 224647351 49672629 306522337 805359173 902949373 62604960 683465970 356622635 318002058 805900225 878116836 490437803 306525293 155172351 447243387 636086069 704832554 868019782 944315133 406923456 763247596 651823453 869052996 78311016 386120151 677735109 324006381 879181047 778414645 854903188 681985168 326359825 732637619 646899670 434658965 463999610 441797723 149318416 510737664 130059458 412923736 414423752 314292859 323732422 298421132 132247757 208850881 485990789 284768246 387710260 87493354 970248215 561707609 612247343 634005053 510189494 543848290 839416654 554648189 776656207 744904135 443756970 58486560 576116534 457732855 246501602 502570939 157095513 734512300 792255668 871903350 396576938 113822827 48121862 92143951 724130243 463809834 483338011 651970971 882461206 699107713 33110046 822106554 476212351 452937526 157667077 732259208 448462616 519625612 63663226 332051969 478001753 346436148 537818218 91317658 740775947 690858037 708793170 183518699 674996108 653978528 805635609 475070047 909480705 618388876 24942116 397313919 176922458 770388477 880635019 654821090 546892270 878799657 357147825 680413215 565868698 581962403 367351726 875348441 153262484 431429300 879111747 924248751 623778383 670875333 275817185 523227683 852866955 491233291 712255587 59553092 355766172 531620878 305738177 348855768 541544806 719930884 498911542 409900830 455248190 457123801 43430476 931036657 657980461 987324609 842124924 609084324 218962458 851292705 576969263 433774112 857127039 332118792 246677558 950590505 125589035 565533686 169546928 351395813 195978417 937644656 336598872 144962073 652754719 653632876 298958788 641818769 758581491 37001525 87052083 219037718 135156228 15175014 537554114 420739716 31253698 965211077 801042498 407052951 381949381 985400068 452541613 63349695 947731500 376332554 498764194 257456272 744968950 491879914 234523278 582116350 228063360 643417687 520224211 67721636 973143300 318511963 816210397 228884375 938836396 484179197 386209821 972870504 91214518 630107042 976713782 723918744 656941490 105056076 745829826 388301280 716304944 145569552 657253097 476520802 47463740 236699600 150359901 24750229 809100894 629616103 470144612 89131572 900115972 374952421 462224454 8172423 811024139 830980903 907995038 61639747 436763381 454793130 309482864 109754007 802763062 713930541 379751300 83727883 677786332 112127045 292212920 154887216 743270542 932858275 530334856 895335210 59313810 750854980 885399776 838443191 790087458 962404001 347292042 222609535 177206950 312932027 996389410 168263946 308760759 104380355 106528479 506752742 610703089 453872543 756131920 667261247 140638251 526691702 887963404 582779427 21038686 201361658 8913504 634850765 840622037 879557844 301565739 726543774 439502525 325362499 893379999 487109167 567734024 781005321 680061196 767895409 677663309 7165582 259493047 70417228 143294752 714734563 796548745 82015488 458859916 72170818 931825552 303046547 451552646 197410784 968402278 626339246 761348234 422902927 829484860 653666060 767784235 653441962 620092040 831008512 368893633 501236175 990013402 993968486 979678702 763522704 907582278 852234573 445761519 573463432 360185394 150228616 357592058 983947194 545845113 635128159 971483262 381817078 897710099 190757876 899073263 175845430 701712735 803773784 225300555 587117725 164572690 730029327 654648886 487385595 737457607 81686493 327308991 249373643 722277103 373047762 180011186 26509418 114936255 862958517 308579850 865034036 910628500 815119395 260889606 644838979 830004961 660557479 459314169 813774208 992153553 489273639 97488123 889922562 163818461 542012373 606499821 284508450 485623283 428313205 847409455 139207216 186657126 661919054 883458366 948587426 79231102 181281689 441268350 950368490 60935302 396632802 162609723 427425735 326167698 59407424 522568884 695062491 309215251 230049896 421999586 867164017 676712305 245064045 847786717 929622940 754426776 450240905 496820793 748201622 124882143 216924457 688302608 61587680 948071672 532263029 108840675 311572245 650219992 996097512 53723075 934877243 483907555 486202844 590387023 600165256 304519701 992978180 1271674 327936736 147301594 703191521 374121901 943348232 158747460 820351222 331400681 587641283 856904871 53201976 511050546 62559427 701356138 554322252 484152703 928131059 940773822 435509319 966351300 36326411 936452090 208757833 398692939 153813328 144048439 86707664 117852059 594539688 776299755 839004776 135391048 679271249 960501335 478248876 793978765 261109792 391145561 609549268 314259414 902360157 982601044 114366257 41639040 512821445 355116288 508626758 41701599 786592613 197324417 853880434 679605545 366214572 314918209 178567567 47992317 26427290 604607118 885447954 303597949 958165480 903944667 649602955 128519804 491225120 871715333 632317281 638542365 790631229 435057632 964101626 846990364 793999545 570989578 477591676 780515299 22472012 190826899 984442060 530498976 124506116 351594233 745843248 325751285 287258514 906514458 449145423 46247808 307326008 539921224 126761001 68989818 919088280 313076659 239825161 116547637 710776661 294173858 216524161 569267241 799498804 760808703 498574590 104093979 149043226 596015262 711766504 732158310 59146664 282884223 389028301 420876974 755017961 929668478 851572695 710738599 580305205 463360073 867250114 189746652 707961161 296627424 582556067 99088359 15893685 236632908 39796509 837501675 601287276 136684583 113592626 701365455 730047131 216281710 276123950 768687470 781161622 29401496 917389219 621728149 727450568 838669666 799454251 756492109 141988290 519687590 635571434 772275912 318001827 109764212 487231176 402959791 748754094 183362076 512483899 70589183 657687940 278849213 140584682 245359502 186198502 613497703 522463662 359263962 749077794 623358806 596771930 629271682 51294682 115242414 337341846 952354979 311156124 978429936 814891818 938758631 902899249 71970909 472234697 242669249 612595775 520955571 901633393 469003683 502333490 262944025 583989106 83895357 581977062 752556244 770032256 743299967 901218385 76644832 84882788 857070436 749512816 785491807 956698774 533582554 866713284 203824162 623971479 973157216 861675418 471689315 801439813 4021599 473407620 794920487 157277245 235001791 946263748 997809528 421886704 21297765 983742829 325143820 284825074 680021811 944164341 195642215 149691524 701206643 410596097 884909712 128678109 404948939 848201458 265036573 399435462 925271646 404566107 851933606 784233309 172088444 703108591 158036453 299060968 562661443 29638142 642406128 320813047 141840050 117784701 246565109 458951478 423870262 721784587 571365043 63808472 546082943 983957139 990919217 583200534 217803083 185754922 984256350 571899039 690974380 313961679 832235995 791925750 408240258 962305453 266189876 36673124 504109225 820863634 512492980 645283253 398959272 538803928 192962882 362808664 599256553 237170855 363668768 549340166 48004667 444121473 965127725 221475251 34689966 627571474 81746000 859420394 970416740 524635105 991622293 247361484 349995306 709525377 702978661 41320254 569414122 550071917 355371109 862152615 799010157 864418355 559703244 827284257 184848894 23326240 551959835 132938665 213444803 693326800 229675102 54331942 92391770 240398357 91211687 973321234 944712563 774886293 105800684 276686700 278229049 601678942 799422618 469096126 413331091 619629145 533378871 697333684 260224990 627475779 590905463 508034683 637643056 274959264 360077453 86736056 41240175 205574728 680749789 944418700 430680087 539513009 958020346 79734055 647078921 353000524 164407537 118279589 346966012 66222343 367370078 826005558 221124778 517663493 523543114 323804551 421525181 448115343 439772573 494102354 447506633 57636386 685146964 371656570 687408770 362313995 849837985 29476648 485736589 622617808 711214654 914305983 808687042 384741654 987413744 248780526 173104889 402645008 185941220 63059372 390871043 546724671 15728986 382166507 730007824 104725561 644174327 573360938 975296552 671836698 165709063 436974323 755169217 97401534 136531746 973486259 560008532 797361531 78195306 462420516 346617638 740211253 796723779 41484962 554177925 910833659 831374392 22372177 425055437 482827586 220407272 977572647 620908235 399702293 282126218 259004453 63871797 977259062 784480664 865919764 795821574 147090488 37817768 311603876 713603152 800520940 9737775 860497586 636491910 2982782 512257269 622505285 321138335 695259004 763456685 761630804 81097991 323071200 62842516 401372529 973997451 718866309 576998232 563680465 726148125 153182787 208788027 798561397 797888582 682365887 173399439 530530625 128877965 746823196 165626513 944077820 457169174 756149413 635807485 496956998 926343326 395255825 944646301 545255511 809140031 604465668 765005403 792783333 755993763 143530867 590410347 359217965 347167280 104570964 922912552 624970280 437165253 434356337 565747155 380205750 245729872 344501783 272532424 782848865 15943744 493319740 430208237 225140808 738864487 586414085 345892474 227026261 40740881 593196944 782607700 300842743 350790074 908678364 668068240 833560246 183590556 873649743 679304765 399538579 498186215 216402487 809206518 82524936 930896876 87665422 734430225 698022384 592096674 815359100 922445522 893745385 442862350 650977125 397501306 524312042 544981221 819047974 540671665 384112797 678455986 905640537 55557324 956750051 20625548 143061190 360078635 497156638 150202259 866215387 863831544 17935965 568318585 383296680 399234170 170608387 540842366 459626088 725324882 393069081 113804603 638380149 857601435 433300947 588418613 696657850 394206960 607103730 552282888 258379339 972216369 878564591 778736642 825220328 93759415 486816303 862889159 336612823 835278892 465211486 882349271 279797554 940895215 964349141 808836731 906374442 378354801 624419735 759097817 143834337 779821061 984168757 824878309 236323738 140553701 16054305 457140208 874596464 894227058 19660308 258816666 807601541 690606876 439572650 303386913 881941834 435227314 654050502 216632388 381300698 109745968 602983261 533986586 606385796 773077148 267687943 600330258 42303709 869957480 734159917 882938066 225646627 366180711 35301063 853130378 939124747 952193959 386105646 856781847 850724314 32506868 607125778 335781464 407720825 977114871 231751351 397243300 456825899 818356878 857218016 605768417 998989087 152858391 729688707 706504314 360743993 840491339 478323976 48289223 670197054 595012282 692898270 248518817 466474973 719931008 941257548 89174739 556676634 556446589 433976711 591653429 702927041 780405524 547383322 302538528 812448940 933770715 918340197 710264674 363792768 58711432 17785442 574058656 22049813 346151683 483109233 716132418 716006143 206416716 980628458 696277296 953072338 93648198 500484132 260224202 696874991 239287884 29784699 612235986 627573041 770576459 857455887 6328042 605968041 32200803 400369805 147144392 746058710 52424585 679855047 584586327 189381056 710237239 224409962 46669901 969698422 280087685 458050440 601683371 324830300 644294131 876569768 681198787 987529309 347340033 833946086 567186521 918271562 938595874 768204838 36304442 590430267 235386252 826569165 902990959 349337484 770843539 153551030 8610808 822452075 489798328 863063633 941921279 125106517 188216933 969131650 601311854 900274990 849388252 428413491 210550112 851465600 559990741 164704586 148181866 786347215 774204043 664336019 439751687 605088162 991048634 522983947 38415547 182386218 786215032 195470920 682505489 349499002 309284390 441180283 449699119 277940256 314101210 142931802 164439657 922803855 266206496 915344459 814466997 716305538 26761603 30669190 577218334 403244850 273804194 537438892 247314244 209356848 568683878 238706237 161495409 737485908 99685076 731589980 280839054 980454409 58826189 363876540 738518956 520657733 18665375 347154608 788108625 362703565 184034489 468006441 145590174 787740232 833472053 932365655 169313884 424753425 7005123 226400739 818202649 649654195 685594131 693762982 757051488 28646737 159107496 129760618 3329429 716347852 682391661 423377734 936617099 525558416 26710026 247478748 851239366 882694270 8004010 603404888 528594695 225130287 409774912 687053119 181934125 370604206 35350720 596740810 860394172 99143512 314848949 69896969 905370735 70462849 565817178 32306964 398976890 477431183 659226615 937539326 321678276 133962352 594452215 283975287 289822672 373249533 693522161 684264382 149861401 1487135 960784437 716703605 846467348 805095221 577990433 907478475 146162719 309842171 371936016 342104890 33847162 241233500 979232188 648451114 206327332 849617050 574216332 586811525 658475640 55196835 842030262 128071355 807282588 956884242 845043183 181770736 782654149 502717926 922114776 701333466 918783988 335374315 138113565 644426309 634196745 871048275 826197067 521229001 378043132 204956060 436269147 101858643 605546412 219848123 549909461 805082320 156912391 257211085 865626538 872561486 461711650 166387099 833406828 558355701 741294762 198471080 706827866 551183671 664469987 813187269 653657236 142924903 416395404 325841549 469366085 368959448 614094098 874311061 920693567 297019763 550472720 524329905 313517873 522115316 901175671 898079272 828634579 778628030 266538103 270164952 262162968 61420440 332798036 237047650 922709959 804634496 899697755 233369859 859309256 265812993 456003333 574348253 105716978 22823653 527420880 325233971 403082669 760710080 527717928 598769450 827201520 469427659 174229737 458237022 37791060 474100074 848861065 745452779 871984578 829494900 790535119 476532038 957720420 71460949 856315978 212408272 125169399 734730211 319768447 74948152 406428998 199157088 524440685 238826781 703750590 707533992 846479695 596602193 844213122 962323316 710430431 585216872 948134506 662905597 49530342 834180899 958801829 855645793 143283166 471481845 567618899 130374857 79371162 520175386 254037806 475577193 777214572 655925576 582080231 269000443 780639043 825245517 376779595 442718999 188352079 164068205 893232118 759587934 283658856 515396908 369748459 994474745 910309291 925816712 323472738 271429923 764631370 397594660 789869916 429888373 202710382 487816422 136499875 935982578 148933984 220619979 206206857 614386979 809371006 619422875 900760212 93097213 532013603 103207341 98420219 379987863 762684785 340346721 59205740 294906877 455983765 868895949 535631125 475832111 597509160 357929821 522049987 938361569 779524356 284658400 791831152 156749517 313036435 93695565 799221323 681183563 287932412 20112225 475104494 319887704 765296485 599239376 888894051 610583069 839319611 13495008 664416829 618144771 362964665 161247547 267704097 975792915 59057418 944142983 706473590 420630537 809948336 435717019 859885163 300030376 572053101 752454540 820036456 692133589 611566745 736887798 123041845 54999447 421295216 334045038 637462291 925602958 514468747 889039519 500235010 408357969 876068546 490862236 324615658 984472024 653987279 218136734 968595423 965259606 652200989 870114792 999888416 797472213 98422467 99299397 158689359 899804053 549011244 85091173 244463833 308514171 344610335 40663210 632068857 417524004 138896150 437956842 711443162 366283705 38836218 274257733 184577497 631447590 337347243 547655222 952610936 673437773 630758346 277391297 166886808 778166836 885692503 989128760 895373099 232152283 503031054 144449237 460553371 508576273 300535747 594866852 1265540 281710759 995758747 980022105 75744093 721646666 165314802 3148623 832491480 924510180 632785521 266906282 80398157 150975080 144456777 647631025 41990312 891988581 266014672 955191723 775171262 594403303 574043679 763494100 996357480 561372015 883121454 562051219 501765520 28391806 114071036 373153117 50966090 138546217 440307138 356654622 928514462 465606031 760138603 347255015 530904108 966847933 399815177 556641664 761346570 298481282 322591756 108996259 189836626 66861633 864456850 828008833 368446283 650387837 184161619 189230560 431092531 990505795 536042552 912876108 803021869 131828103 756338583 438294469 794667635 676475494 770627224 370970203 871708720 32119697 439274307 552985439 672472251 546878919 575667200 394164483 449285880 2006028 797935304 925803246 928851943 550206961 410870857 760933301 847364727 971362082 675760549 85421220 267310295 281896509 170356112 572315064 728693529 24229345 950389670 366094291 889338049 719425969 861205986 496432788 863531956 189999203 549629782 188884052 244133105 178220643 845231628 352545926 358750757 678737792 313157738 786267565 162905407 970577328 541639392 352666195 495549606 649606824 158810353 743281763 497138067 56337467 405784734 599204233 499784523 270648873 28847696 377466201 639705645 472469112 306470933 604205445 365425567 787045699 327622385 752047169 805657165 293095154 417131435 919368884 872743486 872269698 466217247 688361881 395108316 762491368 107211001 328727702 700310329 995988142 661888086 981390360 588147422 614694757 890146529 207941641 628201566 79373688 553714452 237610356 948428424 355494427 105260565 378692199 71763162 417578529 514061415 53965032 204066421 879891174 193321359 853693680 336694749 277330846 932527713 714648437 340046115 179773294 935806140 341694827 913936345 537836945 470446362 96461115 209706512 670145653 493211251 60272183 558216662 376913533 487989006 127795195 59695998 707271371 322287229 878428965 761784764 119936818 615773187 937383997 360507099 880885280 723653121 837220600 285545471 561339313 704297457 987206176 610623268 105885843 640138629 27756379 486077815 295162796 907337848 370523225 148380545 641841115 937760109 350633299 953540415 337872372 445960055 502449992 686033461 879912386 375973825 897804212 952654640 751332094 569806140 808291348 430861448 2530243 451486365 831453046 346901424 13601199 897049808 988468256 308386646 336763495 210064500 500114527 696098378 576487599 252627811 598649907 157308099 307228157 456780476 199103898 25427330 736800621 478639341 360096652 9286359 992705989 157337266 966016987 707051441 942839083 147302072 111006830 412742821 780542894 852688648 941407524 414891795 783732404 781761271 993682610 870446091 440631122 30081868 407538703 280156925 650414883 570933066 597321142 483051911 977118422 720011510 312794349 27409170 754739131 987923082 959385086 362118636 844387086 218085207 394360959 548410821 463660405 241327563 746558015 255964303 443503801 385694057 128435342 719012602 710764450 553344915 91749261 207607164 26324688 127502206 879430430 563233908 626452566 670300011 547701096 498191407 634664835 153668119 235699491 983544904 937677943 206212398 883181611 273136182 517495232 146719891 566739579 755975597 611905595 385634192 580128435 561099285 591456323 623526723 949740134 256121772 969592276 260257878 589752880 754023639 662807017 183400373 970182632 898017531 807133145 456405856 899182371 234668620 768061755 365066778 820656525 358958733 899847539 98704736 167777780 433729124 76704935 964476853 60248846 665580774 660462805 525907715 771713565 949487594 215541775 460062707 350883297 130630881 12627240 481403494 364584074 426438042 472500816 275701199 541362291 423757852 390544081 193611732 42735226 660939229 617069057 445154678 627754415 208470879 124223054 945265269 66837402 700571003 268830550 666689668 451065970 158162630 318494745 901491033 589100451 190420920 759299562 863481993 383392755 232558139 621182086 855480462 460300666 763568271 782751863 335053943 953200935 623885800 451014603 7844831 458275338 582112938 975834371 509859760 50927064 898670229 715689238 236309491 453166365 642382052 309304896 652395274 27829744 234893428 549328967 911762353 991621827 283381121 12290817 937377035 549120145 443018702 576382325 819520111 843795074 498121846 667704538 369796779 400922779 322522215 860918952 32308899 740477851 535659314 796592432 574331477 632306953 270329812 668036428 125645580 973345560 725284005 487405349 591590161 792981979 747182771 452081025 246147304 742415883 71434604 189582277 778952654 800058570 407314655 63890439 711401013 51511456 621733802 920749676 912551204 735293105 706061058 139647637 997024496 581699235 334852254 991057988 331993031 290728525 21884244 236811857 329290361 800470715 720132775 169428516 977293490 800427243 672741500 919421161 373217802 518287057 325443396 209784490 208468452 996089324 42506784 10669898 64100662 15157764 919737485 48469673 656365812 287567191 708183744 491210143 51187948 696534257 231691042 369765831 497584211 935056281 937868726 430372386 669619020 697884139 983759914 296221141 936171870 209081689 691965794 24319087 246892025 61962787 998780791 974028282 72362729 693485221 839113087 260556908 798564399 18389727 500656106 404034670 845755184 404003522 469672460 513965353 670727912 527392804 716754606 133958750 293846830 645413006 884136751 376862239 179839380 259419826 565561491 885476008 342541026 798780891 166681993 618976385 938637177 640918846 961432710 822765195 808958636 736901096 678964114 13017497 212694924 889939875 450985992 450038779 490644280 379243234 559833520 819246011 722009668 147090917 629807374 338803550 790687758 403488858 645712284 193880372 182710788 192864563 193315545 384418573 634196665 794294294 907043103 723184388 766101650 858153216 138896528 887610840 253369987 798918143 349944921 571159449 185439479 814299343 14109088 953064864 27713856 418983732 439831823 153619066 699727265 972302403 153759114 72689977 914766773 819400754 805888009 496123372 851899514 579970688 533270022 29608327 227915304 264702394 329132425 366958641 989676219 340500091 113508939 593800529 193409565 199742686 339120929 137247964 655872056 966866525 238026820 147928566 982651540 540490535 769006615 91140867 830012405 561362841 346903125 958183601 189809701 106008897 612074242 712876817 884672278 740259765 408936502 163433928 345729487 683692244 281959636 830049351 925596283 120608238 424193097 328796855 289201401 224786394 337083101 589565146 113388505 639517712 123833834 401626021 475162167 127084971 422604064 939103293 857083918 294771710 1862121 710639004 887359055 959134010 882263711 818439968 297171948 872846108 541841986 211355636 170481187 258292532 778496842 929445307 829551076 280708716 124018360 798711828 101927370 176821385 65113597 118226346 74847151 831405918 47381887 335191364 570729239 47555874 758291883 877978289 431578924 48856038 42023069 893482571 441032952 73543954 952012708 634260873 939350552 788958007 631207075 13436051 519028367 947703815 760906729 99568462 443421944 368208173 302172512 691386939 375734507 648510927 418569908 488109453 562230609 894459603 36732131 731949228 761686045 582953839 767153280 833684052 522191608 570775656 188194028 752315543 215882834 109290484 778196580 120220523 536777330 354887984 587825293 667417480 903008273 660316843 240078034 169180828 592345370 612695446 465035547 252161745 681476062 983144064 720376291 834763408 591021908 180875342 475316230 441749410 909011593 628891414 865087518 130414009 516438484 621814719 650079875 694062235 428002746 644411950 358847074 154652817 57042319 99218328 429284476 310850336 789726498 74160248 944885911 739944045 51804698 174047439 788915695 919230614 912918215 322892880 966977467 220476365 554060350 900568719 453639660 346104093 995219858 576039265 739344358 104913965 517670123 797714022 736883801 909193063 557480437 811234713 746999641 923827740 83720032 966002550 573548839 457863221 91072730 392772483 849399189 489177917 449531310 777322829 80675975 847570483 673212458 953622225 147187029 593161425 124483762 53768782 805769480 310462982 330584163 361123821 714840228 919851160 758852982 711592239 496094655 530971941 124855634 644271599 46656753 804198563 423351939 916049233 6832418 537097947 358474174 339324154 416878629 310096610 316767320 214262716 337621351 316694771 72619260 86072458 158268335 511441483 622468041 233451732 411532560 267632798 301650963 898858907 224569958 115625790 497816769 268813808 859029335 752344450 621159288 406215788 905619593 307524716 725945648 904657816 438170418 17487755 602391010 487956648 905179042 274281989 617730790 929051162 201487428 96684442 481663605 209832645 4492767 58995552 577865920 803627563 854722006 853920614 89111156 938809345 26878979 592607984 826269639 89143178 599379092 316263999 416726491 73960630 545188219 958740619 705904093 854627262 526743266 96179004 179047765 143377814 73277112 692438562 611201708 45046356 858548351 696738204 434325429 546436179 798267425 626285249 647248271 112968226 505139660 975874237 525826444 931625128 816708770 500574896 33750276 664443784 721055115 610921167 875952821 722828949 843923668 413417634 177950263 624369728 419922769 106663610 283818051 878297969 787718995 693148483 439019962 953143602 940841853 839997742 127566457 940172988 152933649 389296982 678555874 466984750 40793286 732863621 379419472 119945015 802480361 887706510 136108926 102832128 16072117 952070961 659383837 750239274 973718754 878973621 126110174 645951616 410313221 855912191 672591654 513999144 321748299 375166153 836715584 505727777 178471422 849064967 321009233 800108996 206681552 728961139 596220940 247165914 5279597 464101093 331039550 743671743 808016805 769700889 427847872 445317737 434798805 908164104 531038093 912186771 880257948 356704951 27610104 698566259 511735341 675362357 464938386 461651064 399200213 229185702 349738980 910774899 596310396 104734486 732630776 502726109 864405413 236241933 955311334 279130201 403226581 421584845 370355688 93691484 75392169 480119346 447704787 773038777 20048553 832676859 887417375 645324572 723905761 741051138 334370966 814320343 43443884 191228550 770707652 292360040 88440687 464109182 605193169 984778407 680487768 304600388 157962887 986721612 813716413 827441602 920385947 978269496 114218279 785867687 52253957 257211423 873441478 940016859 511266086 242872858 382533997 654943567 139446352 424651512 697795325 315152455 908778620 226930586 351310646 829450539 957398008 858889669 501711508 219467512 430889678 945462719 788090652 531040965 506596462 910747106 440753857 459347962 146748004 823787310 622857306 784910934 48471118 543143351 659229559 643501297 956664955 731230085 137937444 819221864 496938231 577572425 225932652 221840072 533115112 766263938 738209295 907745759 863835239 581883139 408862596 146183459 389417560 256468768 947420075 160349490 668319193 679143928 458379193 864035765 705698748 713990711 762202655 996688377 279769975 430409424 378224050 5498830 782184614 251308542 108588936 195693606 753326547 633200149 972159808 666927749 546611761 730834977 250164450 366130766 904699971 23463177 530146276 909167800 255555587 612068508 377929252 700346462 75340390 136634011 628102487 622691889 137654326 223461566 847784267 454811282 86425228 592932701 956635307 682130054 5072415 59331480 460445594 754646652 269369137 736253627 30718628 312461049 54225711 273195710 815132466 135717737 324299368 326210714 387833443 387165895 556948780 72621296 635009713 110316703 232505806 381463081 406895733 990618265 108350841 473381627 889328058 919725340 796195957 756792999 334927586 567536336 141918132 780260997 470397708 436861290 967308159 588138225 318958151 701346896 175142666 351783970 273520973 736190924 335261779 123650107 358257190 993312144 918678903 989064315 65967793 616112094 278107546 886558778 180325074 275958231 870223053 688105504 889115515 208686312 24783795 468834970 737670277 179629798 766856952 259160507 612629094 966972860 398014114 724810224 919623538 984450654 614318971 716302170 385689753 613160780 342563571 202895935 17252435 393975849 847903586 601022752 122077952 4637505 964948086 17942959 467512029 575219065 982971076 714123187 841120213 428876160 564251491 26974546 853242829 768790935 235223178 113761777 370457687 378388394 65019774 843630930 888792959 69528355 294128329 792410599 148678593 842985418 84085447 991468416 314952622 856100109 293883260 239974535 880287351 557400308 692555028 155688655 789268573 739100296 55474894 156752963 433812340 864099082 11645419 737583999 928226070 825282014 360634533 802477929 452493155 924810219 443817414 401651188 654446994 295872910 477949269 362031334 15169448 116510378 879504259 420841789 335593431 245659270 303426232 764145730 127191482 289515681 336600570 841000534 883286192 672742259 389034733 711610610 566480865 32674078 716500052 895901314 510874612 802069654 440490067 454736623 68375404 163097478 354456258 634572772 650718952 228931424 985218676 75548853 414612371 278530058 567173774 996582561 740177587 283465475 831767486 716789066 67674477 50523381 544936625 385386061 602887347 843512099 242811094 885376415 756604794 363947422 363609707 623063875 283793918 425290048 282439306 238286073 274049103 725277850 16652096 408481000 78657557 774467620 532525220 115310435 631868277 148225991 929219514 210946380 989222568 739312244 401914883 480394907 280945488 92211544 919200754 614857671 978166676 769946530 845517547 271558474 19077714 689106770 126230149 102026299 796988911 92131855 522931635 945093792 906659020 443156875 501487182 905138166 975052709 886678576 481736487 490385512 19845191 835091086 650696006 111471010 571006409 12206911 435173999 401613518 953015525 977627312 828295991 564516716 759549061 202823819 584338305 84723920 476865850 818475434 142881815 495277069 703917905 634350852 710973869 55893303 101956686 353040515 732218250 85058422 146774608 935299242 360306386 525800077 436371445 958661163 842997012 536249071 839721214 445869829 56373916 587868239 596921202 20014055 587127019 440615865 107666797 177101117 595191460 703745729 302468396 454280850 154587504 156877642 698151774 328259192 970092489 320631038 559325893 472486192 403057931 87952635 681002025 721150098 807017533 321571463 730366872 961385594 142728369 293308637 326202548 349933191 917132415 537055417 873586478 127342575 753148055 329544050 626841630 505688326 318473481 75562276 942648045 287217027 384947025 559130007 908157748 361321645 498347728 714372296 636921276 810656775 763589171 661753734 729494437 174825113 201625604 172681935 983878927 567194996 908529814 166871294 458792782 712897281 324309272 174119540 397192427 373871272 813960192 638181150 214958606 180193411 19302028 230496663 686564404 968444252 551450748 400192084 62246394 678401157 266092436 533748052 177109893 708480072 514872619 217744869 92575056 869542708 709249194 657949808 338379320 308304164 885990416 299025922 26866211 303013203 665541282 502673741 66455813 745242894 319309914 552701273 129746499 847682776 851008166 766093211 263132975 829990460 188435278 758621664 511843189 172919675 254178833 823391415 647379001 15678937 962854323 822237841 315372919 10332206 670358873 212741298 556221669 584243032 418945929 263826452 266744454 588270273 511848512 180116823 95897829 973441758 613589604 562127308 138258096 807405898 298671767 201158359 451262259 177932690 827015766 902263027 671926794 152634864 330057282 786600506 810127954 965029421 751633962 773161829 85395579 234133119 970784649 262060008 212365513 830875212 226638423 287518421 488633513 428907662 718207646 379063698 118057066 41340461 67795236 722554693 976117043 671070206 540055876 561541977 784141797 228376589 278518285 581876663 730377262 96842400 939127168 759147308 432672570 394483052 533648380 256455400 14277127 472727490 296570397 893683860 212358161 890999057 990038881 217678005 720373537 515289368 356198689 743596501 513414300 339889634 592003211 334402703 470061988 686236491 656328543 426297335 545462320 275398341 863784080 560601157 796445999 382175319 310148355 894475074 224669774 395644162 301889566 527101078 970451655 970912426 452904851 698720335 548825616 85192835 171994984 801853009 14248986 669616008 248503181 886666018 547667117 850570867 444208958 973496964 968225215 386194901 475318707 225708010 853746087 681007158 244018305 966265025 121862491 858713483 875427976 367418366 969881568 574920178 187154412 117486526 193624695 283458973 702061815 217739632 754556939 714171321 946529468 657960417 472713755 292316030 691415272 382288472 377246712 847935687 361560770 146341767 91401981 522295595 123176917 166237921 486243466 571528445 711834563 565858535 863194718 969725411 58376410 513549798 959337205 769810915 552505229 102069221 557952458 25928334 368626934 755723651 707545589 628434299 940678700 872509307 911632009 914288777 418312266 387808037 988336968 371278011 512650761 982688735 34115307 84163104 210280640 777322788 106645801 769687851 41625478 219573535 369465200 279695680 219438948 857372123 998756412 107303575 636548669 251965823 195186764 700493552 446084292 12302210 131150970 627368313 915700618 392635888 940873935 586004456 602210167 19147502 716945781 256433969 939610859 74190529 283715133 722121658 525580924 365874614 531373108 437593989 318479903 613007213 47471375 874138231 966373105 118825243 200354744 300058881 152946329 382822074 517999294 676139225 330004817 36785822 455929281 327309449 51028419 101546022 739943778 536275987 323422946 416500800 237066374 817719922 738674646 261170769 855631910 656439473 883103867 236043600 635689483 117036299 501573444 659772614 483353720 930574093 326932709 866489966 403380154 356631637 591407053 537851692 193622572 821085287 434993050 840089317 181251104 144122464 688914464 275484696 843523710 843612947 763088802 12937840 624270594 154046287 744846811 775057276 853811032 386384653 190907279 118091456 134640005 30208430 725452070 947062850 405387174 253891582 687678134 148844420 952992905 485649292 855806572 834969468 731955098 421693793 356885635 894924590 132413952 551724645 700401485 843401963 51203383 496989858 618385538 376179873 592740308 382856755 828609163 989751440 919607425 702692616 324308409 337977331 943634827 693517773 647996658 237402357 460493712 556737504 327985701 282534054 425599099 650289001 238674289 714658005 364471539 437692210 225430377 643131195 345556703 934403162 624244280 367057105 363758969 250267589 449310433 684895093 935791220 50998688 540624896 387705231 489054085 382443991 515872076 557306657 326024482 956793830 454699767 485641496 44034889 279402136 350514047 251769182 974132461 288024153 708619741 327980792 385447942 366388890 269096668 405156808 208259225 306733910 791110770 741435656 737557652 982226006 440873528 727542001 554592635 502972277 227748444 29445781 383649117 280119855 438642891 452068522 711253608 480092799 35930003 497222261 632570889 81284708 525894106 273235295 206582205 585720720 63178232 822233536 855803082 99276269 415942349 244681945 575670338 2287007 795641011 770379342 467363308 224548599 939023388 542877800 906775936 281918278 768298337 468111023 405081658 227240073 644212420 331562195 194536557 643517812 588715783 88852250 7868199 431600712 784025253 207035770 95613240 932960268 235273586 295111153 765575694 914983150 259128583 596328606 18240598 227784558 712863693 671643603 114530284 871223320 74623767 423845508 425310420 431647748 182827041 809926693 134924960 178625344 735501545 790210876 154705832 111587496 466266922 309489156 351058587 92870061 544886116 258915373 128823898 43682970 794059264 699387791 16930151 912961674 712374781 126298288 131175053 587287889 818394463 874683474 22826488 225454979 266445554 928086147 265456037 586141287 137946466 451661640 356811702 247900549 843319399 598780971 423206903 547899408 791239578 848990534 51714403 296780537 819874977 647628155 482035191 671023505 959082874 205510788 553489249 746603819 900894382 195103445 846751530 21886431 739121635 704017393 989442993 146995672 524547783 868048223 262873165 15114447 825368284 877303587 471798590 526477076 582041288 851048392 617369814 923925915 825854633 815522626 294027318 42473135 883678270 663386987 68350276 269878052 871649021 903480204 807749664 963840781 217475433 690577438 436596637 702063432 257675220 148445837 678891708 312284876 410762084 572462720 516540711 712517954 524222286 664125219 626111593 892745601 788183550 527367414 166204167 601346956 798320749 325527472 647816486 54534903 45606894 687939522 281242415 812345779 986527764 235429652 807702894 175094003 398443062 742955383 658480860 377784826 961708691 293248229 979655233 883281459 66864400 995205227 702637471 972490747 482516839 614861068 937770995 586324612 255381795 630169344 782484236 144997494 531045229 601217295 644767364 102791456 638261931 767027766 822688757 216816832 445475471 634802558 284692562 236280071 420773633 27314164 555496838 280327586 199254241 713175061 131886726 682901501 594468104 980378104 244990896 31624437 563197916 610922941 40707905 521734653 376051961 225952982 895295635 428821362 875282949 847678540 69686143 460149453 11608748 896878330 346643275 619436149 54340859 89064941 204793170 983635973 933950065 933206377 540289928 723648389 633856286 222898074 573032086 27426419 201855070 222454629 579585983 842877337 544004458 613129317 669608115 680227655 628099368 734658469 233995873 963444675 962769346 657970907 298445228 75810421 135823635 121587831 415130190 87955696 686427969 706736751 716874283 576970043 236192832 853523119 814318456 862952289 191624033 97089646 431235986 893529452 426693596 455521968 180993225 382063482 462843954 22659782 97863290 842017346 573685452 120965322 334084153 371656312 345036628 541860239 479616556 964735186 940286527 623255352 327073094 537925775 649728492 908537054 986350481 215296324 845851602 415142786 334332774 45827385 732535041 56079902 209694188 637000742 766923920 247310243 768474685 701054671 851934405 594062813 197547607 203623804 764065819 449208813 932552822 486780569 292314957 988696416 139349656 482435342 130889730 110779350 880194525 343719212 170585909 978858604 301375988 429218116 660312756 111081557 636208562 999780103 845361239 796922382 856980314 810680809 147981617 391856931 924614693 202948907 647509880 721548657 559918595 518526318 366571991 703331275 4662841 971013627 785805014 529407220 847011714 780869165 717082027 332517753 696715850 115504579 680627158 650623124 405328581 2553093 938596599 959020060 321387647 608318044 272594139 191352105 789124375 442296118 342023118 282879894 243456865 261993557 764604934 307954318 516310937 416726616 312922154 460364639 78304467 889876912 311415389 815776010 139995165 571440420 856697934 674973519 409869177 843731491 379404570 559062825 266787035 124097172 695951128 926730006 741233946 822930417 555109991 915187860 458334626 288018893 632082178 94205188 707132428 535974048 951736656 673307499 430822389 95807707 711594897 863251923 647039550 974997129 663293033 718301777 238009477 143937799 707707133 907177676 5705765 322502041 78663330 88750759 307334833 874316550 423590119 707676465 325711775 847159315 346169375 103958052 911549950 780506203 207647227 539291707 949419669 301756516 628807510 323777114 776300444 823759564 956280830 146914177 411898517 757092640 597849347 69259700 250424891 384160914 427902816 539094096 947772237 363515674 174355805 739405543 192023298 590860001 965133317 294429993 749089989 813743764 865351630 444157291 457064797 131387620 85801494 728149227 516982104 833510833 757967319 82857443 941996503 59234964 67111800 40147692 631903273 235885900 638065201 418012216 610578713 172073875 97991855 44841309 397780025 477737052 823714846 568423248 81428604 985122786 733009927 134567423 664370470 767679373 424128086 820651218 39227842 228008874 184105145 295674982 360335607 105591264 671052334 401219047 637139243 153552212 508875667 53608512 664385833 561808883 10670845 839032367 649947421 520891946 310753256 886387526 667007556 47722064 765238798 681516317 488567268 749526600 786071529 110947491 403883791 500969778 728958103 742747414 579194103 857272756 832150946 275110206 580079495 62949479 862769005 422039219 462572674 798124442 965863869 158819665 991370247 793877001 462024184 556777443 416946475 128194952 438437864 961998164 893523173 634501097 688846081 251142715 682404434 858106438 908615138 208466121 298527962 345778470 208899765 110523981 835364904 56872164 623155467 730342811 613005238 777536217 221659152 376619898 269329204 251459964 928686476 817707787 898655405 683951155 787568208 957974709 220678900 358487087 397652453 518858243 928746081 127673844 427006509 891704547 748746205 447863856 465385877 620239339 583218417 715604472 741730729 647164664 358666059 732579759 621334350 293888820 144839633 526756142 509553086 469307112 293981620 237535492 198396916 108638345 816262538 930050693 73563016 504728767 614488048 318639097 247444879 167087117 510415587 841763468 639154434 187610993 529944477 540681474 524260225 783572059 490277309 321844184 744885499 301518385 938338094 658332632 491294766 729887077 695596081 629026340 439052679 284948313 270206876 631078144 392208765 313940497 942399251 632106606 195110631 163135132 395274428 898366827 43171169 135989653 790835254 905789764 611460547 873382955 780480647 506776781 555794036 116717543 620571523 129923517 485442298 40534954 420370602 491864361 79966959 871776541 970047317 940799175 569673664 367694514 212726323 277067223 940405700 827578269 594470353 223728585 801743790 897220662 538073044 226110754 329956421 870245027 288878713 54149719 710899808 264602834 814951700 681628336 711537398 762365841 983652563 331897614 320264067 793508662 535171289 366223230 40714458 153684887 411060949 399660577 283021827 624174843 11491371 25527230 40658791 823238605 941042042 654158022 419231220 903569346 317127252 125939090 816198279 358204292 494495367 99005166 699431533 601899043 919643064 76890842 559214570 162743208 350226365 164285611 588607579 302771477 38631776 103504832 322583993 342941763 27977038 375569292 514888478 385128121 624621934 29486759 510400587 557227986 638304048 382392640 244216176 161586868 694392941 427304394 851995286 420634305 916714875 151936312 986824051 394803757 577849929 723511417 115273986 876446422 206006016 146402650 105156742 150094460 578484246 231857340 778518822 378384019 478263244 273002173 533278553 144850101 450191101 490431972 897761695 555631073 400486853 81724985 568113501 109517159 306371346 741562517 175314821 532394388 374395278 413651536 707425770 263893436 180639390 419975309 498361478 948829566 734751539 213995233 412124764 4544507 466992385 68753073 994886028 834031336 874181347 125717857 602869544 929549835 259881916 228812023 297407435 210130378 739922158 628079326 59303646 226870941 831250670 562019348 506294368 542998672 750096903 381438516 654160787 613820450 261772554 579103580 960496232 867791794 295866974 22169544 371597849 792377450 351768973 168622911 632707495 757057696 743596182 389766849 544135586 910687763 995661408 298351112 592245013 887388674 462723178 33371682 334226381 654925641 160241537 59837277 682459866 996102853 138715282 663952113 870703396 268904049 515259098 544674960 427777422 274084993 589396515 387212068 985366434 621744668 185610702 793265248 212616876 30429407 986385631 650855361 914703005 856154451 153067981 875663312 883308564 64712492 767227978 907026295 877625129 510006992 787900940 822666327 25791493 695207434 717894950 527815948 782135483 806908513 608655094 664555137 734553069 166781674 460375755 607902977 665417572 634895522 712285255 397650316 418106503 636301394 310357572 804588937 792799680 679125854 206661270 821598202 439163497 836685020 342185387 794000866 109619482 439120266 546372010 94724039 2518069 14314881 940847107 833997586 825430734 921840272 211550252 237438922 825521528 48148441 971859947 601823281 823451344 291242061 658960875 980880150 599941319 190492771 85216728 71084075 732635747 491270564 518558853 200561455 125832136 129346254 895489764 980862984 791229857 725817962 63416634 468849100 506842697 417039084 929999232 185912010 845049568 168678981 413171741 338597172 752643357 540307885 295696085 900172893 322784270 584739617 159741691 429911608 782938931 388270934 324791293 287523757 924240827 17261303 315573389 794099903 310613808 800671875 839391548 126202477 743783453 679778554 636377356 399083242 557802076 565719345 652106238 186542294 564227246 65755153 981160939 545889613 920073062 930978005 980276568 226128796 34987126 835607292 163177392 244637559 283881816 568834446 561005949 489272119 616135574 252371262 358568592 788452666 643346487 723735290 17762080 524104700 339226557 625339612 436579890 489674685 943440057 435843207 427286795 185892665 182968085 170751351 732971104 749325077 193394980 836896766 522450355 116359412 215652811 6462373 202181056 274989921 144621808 595638804 545427626 998341979 394055300 355982140 404300370 272837329 860894388 623417026 419046870 225149742 485019591 568345625 558511252 238660743 553485778 728449603 807182976 770476072 256301259 352421044 36936400 820437220 80964618 580643214 519132964 691137648 826254867 771389953 510156687 259741579 740827515 936185923 323479160 420147496 62910658 389193756 84805429 699707685 347231738 281709477 277511107 817743971 418931518 646175480 381768183 17927268 977474770 362422336 940390688 140278516 762741571 920520185 854339309 869714046 388265672 1603175 973918707 155115391 78646601 701392162 243670942 996455092 313628113 377306541 216188370 548782975 527444845 543427427 868408294 269660746 641333744 20769852 862568004 649401398 969141657 479922228 791770756 779739556 544544453 793053566 629192063 360390958 539878408 227606668 620009865 976039798 682907890 729061832 430306930 885604959 572085937 492021628 401007084 160676929 614287664 474593629 845393982 959928431 964114889 876929894 715613857 650387690 418507552 310771999 936834210 407920054 816951659 732506201 55509544 331914271 710879213 846317851 307721813 606939256 288143124 90537868 84144104 517223397 607535859 553618594 695209833 924032977 617977716 329573904 231006269 342733623 934489557 115296584 822912920 811476334 743905466 463064595 928003114 103551608 835098810 830783371 277523505 814728137 558181742 220559535 599670273 103802733 964129987 263143248 909308738 470141534 460845891 393313717 615717723 562773017 158264410 216539954 908599378 312420052 285619770 92659856 826820246 755524074 899470936 546781443 939892537 979847738 850654425 380368426 615999745 11080884 278039537 453767978 538188855 125809199 927103174 881411183 350655460 289547067 870600316 827254656 623680100 795473541 291091555 929675894 912601654 346051071 275659792 951223475 337519516 811416458 848515838 347627714 743581435 100895909 371543644 417252112 399471251 163921758 235259860 845972333 220352113 218175362 782231239 296180978 852134166 862353368 693944330 176266513 409086794 404214805 524236901 2149172 264518662 535470595 34582818 461359972 758584243 557766956 610031409 591419135 713249340 559825670 227500474 953203379 690335744 344888863 124793828 85564650 450392534 615279548 401562349 237122572 629872409 114502303 472678817 312184778 540282449 312336163 249613217 988646464 311988417 502833043 641909516 307404564 756902594 39108862 264335217 819364816 176568855 464862590 722570370 482979331 264542689 364926166 697923118 783634835 545908927 844565494 891304600 505437685 77821884 883775454 14700842 802650627 135418651 851397037 609906220 728437357 210487680 185504443 963239907 768892475 490757709 92017229 293854007 714299633 544963288 684842017 158771197 860380892 235665239 287956589 651854926 997391787 745500157 547824395 105735630 726702502 64604606 191655756 576838770 128547375 521786221 362261271 529933801 681972267 433471784 971903321 70652529 412309322 743211953 663161629 870992479 912372907 143070638 296602007 24448081 392453970 350729158 559019756 560711582 441215578 817923944 301433391 692098818 330550583 337241973 481866563 649369259 162108728 507874807 472227475 3187550 548663198 173087322 32341564 431456103 270336327 628068728 324164798 740517115 58902112 324170 971737524 266323800 497300722 221466905 325764988 541772439 726090082 260517320 556428771 139377560 955737281 615501063 535271532 949598617 892164005 376767503 63821261 207870020 570951816 840937681 810146595 710521459 157881538 811494342 238065026 247243387 718159659 734424207 796204273 155224200 367916953 401069598 388684522 494983583 136184896 116458099 639086367 85826151 84621282 961765624 900029701 727641441 191370179 421436180 530330487 648970689 674794620 648414364 589525300 18471244 829846083 519495617 154851618 863943361 803580455 51717832 415034694 809186970 311433389 123166972 393484072 100053102 262263050 293867235 466567217 734284529 927899646 468502271 593509429 771773028 794139812 203773923 924258638 335936734 382250480 704045157 273474376 155082698 795273732 458150454 71596471 919380684 707303891 616296466 325002788 658613915 146736596 952762889 294437245 602794120 378131918 878536788 336442579 92988531 124109344 469744591 515552828 577682008 321699753 721385456 452463444 989572935 57621226 866308181 992175374 937344771 529009727 980933832 186285576 177341285 297601724 793850770 766327389 133712788 55385987 345282944 853846618 547159957 554884154 55277120 304642980 993425797 872368522 629628267 499413723 524682630 362479367 292140111 758158168 250385870 884893782 626510504 371104174 268895370 960244512 166560864 828328393 440677230 69711784 230564742 458333442 631144529 906659232 318949042 847870475 875994637 882193921 818835094 333731412 359805776 239527902 907209212 429561834 558228937 79757239 42132398 989905543 601473627 984022831 793751494 608295717 160054274 129534087 78667417 358996312 910153049 572106585 962052669 514894111 534365609 966026987 645906573 694659282 501699031 102089217 689141737 84871637 501449500 429424251 78954010 390177636 764931419 899512311 331719188 188620558 573237772 249416020 786777570 353239497 322291020 417958025 235012747 11001608 995104637 763431219 21711395 868600735 77744744 79265980 99337680 302304805 899942883 737934788 634665308 773016482 361226181 334059726 198384042 110506447 710712614 993414109 523347260 559294563 131478144 374968611 253944053 628614277 420116313 336415085 131274060 143469111 491764361 573186305 846039705 866110085 916820356 27297523 96370449 888525278 81489655 782202813 156644998 963801789 298399491 160322221 160648309 904999534 847530082 965544669 603342994 756588222 230292226 740574508 251147854 72082526 789348443 487496654 801035490 147956153 898170252 397738232 345078427 941156889 100870065 675559991 747486418 546687477 873348453 628526605 419241324 466504376 208593483 72151017 519921131 786863645 776444421 622464441 806594297 807056950 6736403 263945548 836889553 245052077 391818128 426131898 457777159 644113528 906513363 985268406 557700372 779937218 254215048 904101886 79346417 210134895 437181966 776013566 449033678 24867522 670989829 510117044 399008334 174197360 451007114 274127824 242172188 148698940 988598378 132409280 702128156 157114817 166951294 604940337 578280690 61380115 759376473 172492872 951476264 534017741 651672812 6168095 6354589 755306094 866562919 656161681 688566963 215706572 364452296 766664098 686108563 285678775 287927860 237791813 299679260 3893296 160536680 449357172 783356830 172001694 864891806 109528398 198244134 301327544 153014184 598808059 289992392 158010610 120460745 636807128 550616573 374938942 661863785 734206886 859965099 551614368 984464538 568018917 751656574 124263881 249552603 205204385 152628375 88861233 215662300 393534022 188347647 797512851 724084917 252835133 158177380 280726534 881545655 633337557 488854610 817608768 382313161 902964694 767331203 569273068 913522986 294327531 665217229 479677137 41783515 160488349 669499266 497770792 559646677 752676170 563632956 425076925 263106458 693532455 495059229 296434581 211362543 820905049 198333733 858627750 636248941 106874300 552725443 406940918 322255450 697181533 732527049 224729446 481619434 848835488 172204388 642405982 350475767 10608130 195238029 920519734 590718673 973605132 393280439 64158033 141981887 883945863 187181041 858754050 912546545 448617425 645697651 946275911 566090880 755531269 815839703 557951031 555280731 149506208 449998560 399655790 493521962 559993664 379665065 300112302 541347617 108996860 179286625 576814739 958597697 175163141 611002518 187453483 996013907 286992097 447212363 133094835 809287476 611934212 745512851 943199288 721075084 177152203 309921592 393748022 230758702 575178177 278256730 341967824 989667850 258089663 247893164 163131459 460921332 732339967 558001269 558631194 276359 900593353 503001339 699530618 340471540 15064957 969834684 20969812 484631260 344949164 302112731 293824414 170921685 970382387 881405879 758645332 222294966 186177626 795957605 242723371 799096736 11780347 15016014 212012732 193676958 980537806 204656847 208141851 986331634 319105928 339902745 334207366 637062880 761081372 579394618 101153924 354276267 774200840 852788426 490286723 949817069 879309876 946445869 656235631 423364216 127927730 818028593 113322782 866502640 1099035 805818975 566566433 110636768 640554787 579365759 474851346 574468637 720464706 871289623 854787995 293401354 745652491 790195106 856564548 3730312 249823200 458313316 460003665 864925721 299200307 262301701 583445709 695043103 916088540 863114543 27120978 303899106 521725820 186253458 521219685 230373098 82707709 246615806 768352642 358014548 831647989 557805820 38219822 185635539 883204531 920266714 352350687 866399852 108860914 74878204 694912658 579679102 775289017 609347386 189227214 12364459 840611734 216163525 594820046 553803718 433085200 66331355 978851568 957349799 814406266 248092196 996460358 85367240 73105363 163874215 443643686 262329822 883354309 826995216 804743811 57730028 537840390 324297579 542640455 252314908 543640865 975905859 487336609 956281222 985786168 36480578 480755555 380967511 231045173 487990100 113447516 754646861 853799389 973259040 28232033 772847176 760715488 235502961 233180574 604403009 95734963 634328999 225802952 112186340 122297922 179157926 126870139 959216728 696244948 501867026 394036842 50111052 561518934 625577306 762093062 230067136 880613300 527181700 901471477 37235203 644934696 47612557 288127595 855489727 401541915 583966655 379409177 390406762 381537601 727262038 999932292 804456375 974484376 220951853 764563228 127415062 697006265 471432757 81839463 702411908 120254329 760020831 441711229 878509488 90210915 160888523 175558614 103101245 258512207 7370812 334950816 636924347 51588024 975668991 206732265 626501062 184285174 790368656 186428819 843030021 963322933 777461012 452858029 151965973 34729744 823600509 120857241 65434967 288392671 93900193 759585840 335324969 171446235 914222243 958517705 889869540 725753216 81899192 718122057 201160572 74187128 510805344 285959422 155127193 795812767 371369549 867339134 939213656 223456583 610041341 16616234 522411126 32761651 472482176 823265744 896965796 459448382 839555966 64186460 91063979 206963708 408260602 501327941 954669861 217695979 359963505 760228129 293629379 773517166 439668275 960777217 90578533 685608873 351598119 110348216 208541971 345676405 508674166 254836620 991867808 765496425 161377984 633377337 473763252 632138913 850763048 125823828 810697976 186668843 432016049 730429139 144924604 282617051 592927288 242043864 357883699 306754651 900181501 202796820 767126423 392604124 49519874 12695348 471762013 98709968 446454823 450102924 639031346 416168517 678170018 250538954 487024027 54515578 237210445 310165703 455202607 576369513 737913880 764622871 986292502 672692104 588699368 97543384 268578692 17060313 706225458 491370165 736643744 480846325 289332471 623589328 360972746 413939956 177750014 79479717 351031686 232876331 989538824 26679880 412767896 577219662 308679099 3897084 509129389 98066665 424116902 416719561 856249271 364381036 66887147 238994477 476011925 195758367 322100706 507229732 857883259 456390059 441066609 955244092 136578320 909441721 358424788 233300909 45106687 233025433 801110228 255564706 812069511 288011010 539900753 61133480 764989528 175176348 377645888 979698506 239917542 630449607 607705289 256197124 909842482 993252011 857117663 501098082 188806807 128776203 94489456 244606790 918136138 296596193 834183422 245621399 221832571 138496864 253146960 689033084 974149517 347338993 577087314 866581635 489248711 973968160 230781476 482069348 798700515 306673555 994652293 29236919 376474751 753467290 873207528 323410177 859302843 140853621 169135853 538853870 847740131 567566217 991838417 72251648 942161523 35234832 524945848 413432781 989966804 935234313 366824214 76353313 749274309 166063494 160910435 430628638 782998470 278701645 91333474 369529339 148555950 243348759 898722211 34327865 69191300 21422721 131917022 341961746 859018055 887510471 385739124 608478155 982285982 268071791 51408020 380337348 663978723 534447167 403756549 209346928 50106601 743615831 327514643 100457309 660557504 911224646 455247610 162256341 99459977 753468604 536005980 151730631 114356714 586859340 708500368 584128693 706340934 144001419 711429970 337770793 396748220 296512287 233131352 544085374 481311321 269154975 587000238 59523887 731333877 200033831 845463454 58869828 205467381 241550499 952214523 996100489 673014782 440492239 542393949 712187942 608807216 825058489 287655880 130844164 119707646 974990505 757053290 515623483 303720010 759234664 175549274 729069278 414643304 154130151 548172425 561843673 752436941 824236736 749691893 221545088 613254160 457502900 130349090 489881369 540981002 607439187 430571996 580506114 886064368 629314954 649999567 566126729 685637527 483123904 369266230 693403868 545015541 75074686 852160331 830078356 116858090 393806554 190413344 262030925 974300510 994126959 674600336 752172527 67471759 735888410 72320332 754654759 462659460 859566692 520332035 147553162 341044465 581790896 395600175 696676614 155834916 561554448 17010155 542217466 886897027 974829568 247603704 287601853 275372844 475395629 763296908 62319922 316781232 461936849 81223891 366914948 719388632 248172135 900017304 726394891 616215888 342174286 319995997 69489403 777598882 654424180 28865288 96810858 578711917 33436537 100475699 949627708 497410103 20725453 283279254 479435799 683027903 712719691 243143881 903051193 692817219 828076130 43610770 44493027 239723590 208057836 942753191 83700268 108141816 395974339 798641487 200257692 129975125 9627874 884363718 522913544 909808937 800307039 951132706 481948243 320705001 850953854 186200272 867220977 156080810 785131240 664414649 11894876 159274375 680818981 525412022 169444503 523580012 944528768 1747604 857166418 14046503 59911403 278142158 119800588 45286492 758071466 645620376 214797274 71154869 825264642 292127942 263693399 206832053 42150701 791206993 697279484 54612566 829621053 345383175 306614565 442816279 944168258 39242885 974995946 699634257 169865303 690388242 810252431 329125634 426193049 310778383 439026273 941880904 629830275 21581558 814461692 565216475 22212510 147046108 362729746 559542443 118192431 694138094 513555517 128905959 742803966 529483976 903204176 896508256 748876909 832545407 947193060 649410371 438459082 882881990 808131483 1710083 962476078 756484900 303572056 522302053 415299046 238922011 175650465 912980511 655387708 982103427 329217524 248955503 871799715 955142668 705770981 529913937 256227711 924009118 890292763 526351480 758125346 670575866 671700845 263645776 395615404 320589835 785302232 265920366 185682476 828704726 262214191 407766052 60171840 459429595 672116978 457333211 371947820 352248419 24243880 442875356 926217190 450610737 488930663 445336064 508775294 957689326 628971158 145014902 767943168 135096863 57220717 227665160 820934239 478542594 901448134 91672808 962943565 361633037 675389224 610761983 36709761 329545606 470895279 245618002 208173902 1821912 959274970 241642212 277683314 289679907 110987206 999265107 870669471 34100478 807150004 493340687 715508841 618121519 469344829 893502418 742017223 256802545 173760720 432627685 870067523 77396291 409656733 777267180 996249950 288509965 902830441 834198632 617666358 820145590 734321212 975583505 644020335 333915302 930058786 697673854 39224027 491631252 315349696 571630334 921834817 830501859 509588065 617711657 96082701 380081906 331429112 414978883 546011187 307200354 969852720 521893018 925930553 55675264 388948479 898295784 304363791 689500815 65211283 681606798 610833166 973551811 677353112 673265691 863351319 540002282 664480024 488969152 42756894 910782654 249895328 890939885 532684393 487842117 899238717 166914983 569640479 129258767 647451251 943310801 494864072 175264462 88613728 54033551 207562260 933635972 239290418 817720634 570137730 698738767 917345870 707830104 526669323 78425679 986904371 888161913 526739308 605115083 879386371 919809379 94178825 48766564 531398268 403637790 814267461 529251631 851656338 90938695 601306240 116181555 664884721 213143373 594061287 554104356 384179881 80332722 308468654 385519760 7434861 417096434 47015149 88033699 531348522 491933175 886372068 559529898 988578821 101322825 664016197 73245683 82103530 405953831 337981527 320519628 723058046 739300177 741500629 645026037 139697159 285333910 963625670 887182484 568145057 142801708 239037862 850889660 723782578 801874421 314701441 652782056 714025535 489877692 904789983 237342815 719778532 220888518 596599313 862596892 596025150 500606830 760961896 971889735 883117142 219894714 497514805 8601180 156104014 726989493 598532984 269516155 972854227 609166397 546846965 139108224 318212977 12278750 417976594 751662038 228290567 749334688 910288807 801697667 339736405 149909653 295284475 553728790 977492044 123176185 937667666 96299944 108297785 508031845 296304034 99691740 379001506 832853233 183939664 254112470 713031238 611864016 285970378 931434202 64164063 349764410 665865642 151486746 655460911 762344410 689671856 105173339 928765037 200164099 669830968 994657570 672502492 515883080 200737974 367554652 77903711 815753436 608061437 166291999 770640442 164989733 76038192 244090212 161080465 654809657 851054689 589969419 600938035 813567021 595722163 980614616 150310335 347006361 501823495 357791281 976206680 416172783 300192050 925848529 783578296 225897201 984914379 404892564 817031164 279375824 804201249 471671271 727729750 907434237 722725113 38461446 635100676 612590536 373978752 563853779 986886697 556184616 584254023 442375304 408106333 600192014 46857691 161107564 422504465 505837074 799153084 533626291 533895822 715750401 135997064 866772614 991289471 305350338 674957371 839462099 821042716 530116822 921377750 485600937 727187 930351757 224055216 576295528 856613318 188871004 442876138 617806235 689593392 73355056 473865106 809754755 99640544 521450713 447876561 209082965 35997361 256529525 622939311 576920837 69591664 997183521 367065033 427854226 622766659 476100376 130775697 604856248 326854241 512481148 337918491 296223699 795153615 447342021 38964834 513791311 860742962 328112117 13490910 211375598 271915507 641084611 580502699 253826387 191160566 204524456 471775506 808149438 549498309 986729829 977513790 430560012 84253326 471516578 652360870 403645895 664163189 66245334 202098151 650273052 781336103 779598321 409080802 570563107 979043198 339387459 244331713 531545117 324845209 51188323 364147597 936623353 774961503 37480441 822713494 591321868 449262074 873340880 439202692 594228756 557403855 263514692 34139661 200529805 672942551 176273891 261922438 521973532 120371347 564323780 603847927 295357563 251073696 732103872 71478788 680586616 19914345 714698230 490495481 360225734 134461653 7080165 125103948 715680725 973367213 15274719 369258738 905916184 188970575 749147072 760340404 581839971 45739139 56086189 273267797 630750680 276156275 117148110 827297412 989706707 647990753 973743129 788028121 675224176 944966360 830425591 96953128 457736863 571747119 896177347 888330939 849404745 682833825 72775918 50193768 443998691 747744317 611270382 889514258 626060020 952859783 700129357 847581054 601537492 55041068 235075509 189239247 371821011 562860374 515064155 67309950 186259606 835107260 953920947 719117121 656208755 48128218 62463671 682016939 428281372 99719778 986098419 695139440 61703424 90673257 871108883 633730548 677512652 445932433 129355863 408759738 883336094 336197808 624922799 249189153 353558402 275870559 779066999 179619089 388484092 733460686 333323312 129416993 629017184 812340798 378698381 768375948 920399194 842529037 502690236 248075016 805203329 928406763 812902367 156273703 60871023 906037529 720131346 513552408 87829627 152927168 744838122 114471015 101160884 233928382 224712326 814167633 89056994 181213331 58943325 30246298 933513542 677239586 244909242 765217055 593150610 800741670 594429538 595997810 202584183 617102766 54682028 714322241 42690006 474426532 894585605 503269220 657294811 865038804 466171823 627477625 128885680 97830720 517072521 109318519 253861817 66243895 2817447 989859865 313806223 894263333 694851734 89921268 825610559 288664572 47775899 435604175 951064392 654071845 262145092 239252739 876138338 681749990 771072250 149334101 897470476 91277761 329189496 840656054 564198537 613821748 853987031 246617814 729203487 945484883 637776388 427074478 322800671 326636700 719430040 449119773 223942503 58722246 78445319 512385966 64936151 297334818 811865424 636001252 466365053 168973295 47517349 39885564 507607778 693348526 345442920 569938649 984820913 570505433 93234787 966070072 452210803 250642431 386240355 609839514 437079637 797745271 278522833 403613276 305412505 410579618 605332898 586110976 217338590 865967975 388371294 272267427 532133670 422777339 205821478 863852549 881673264 449047984 75789471 795279132 913609660 407478276 249823765 971863460 261041961 955016249 490122914 809839782 479903073 233020150 121643298 270783304 82810602 429462743 953294068 669338258 485103433 727878021 743204135 106383319 64147947 428918218 646875826 565850467 496557108 800005058 794536270 592316968 503256522 244630070 815051148 161154454 191287269 942104902 759267763 777117034 580501934 644115432 357908612 978059652 113040479 322165306 518859384 982160411 624681467 972040669 419192771 178325231 98465314 186598359 759865635 904071957 253096386 846744032 538186892 250024577 261557806 373978595 756760268 714993381 263176898 739806897 470192782 789080817 849490220 146678981 926301447 27199823 896106991 383016662 394869734 856098551 190602907 84038639 919966715 711033117 81129561 336872718 573821309 816536057 610324810 928127429 478084693 961847419 316847294 367959276 716069764 389223185 779993605 637239298 397472889 239235325 463686830 338593606 690608003 327693821 474328170 64082002 524229211 28684821 984705902 147243204 650521528 582782298 679722791 807424627 822612203 67729466 30069569 592439459 416560323 523957060 961787228 379520601 91640330 767451078 791413613 741780789 940060391 852288686 709113241 191225294 579262466 52162808 744840184 578830864 43639386 873482356 355357339 126009800 279655672 889248137 738210901 97544993 544136405 394264360 884172918 267528482 319732500 507387998 249029034 747199193 384183972 680468159 809766154 196258342 347700569 761262182 69157008 658167625 538428710 580071894 364251307 955721157 508328148 86535286 536823693 817147277 601786227 40883701 109812497 329618203 768460396 831608073 91572560 266429884 13044441 232402428 371300050 890973632 231663817 180323448 414310146 528274495 874042587 865930807 245249384 695623428 684711350 977851519 470156047 636960117 100043275 348664420 125005756 738381037 470639571 464978073 449508137 451011477 817372695 83435695 289231663 470367187 89696667 184115020 407627733 430351535 358150203 518490913 582539618 996122729 752841559 195945164 500182939 867567884 532524608 952456867 37062884 36534689 673912789 502775791 706735025 843946941 779234992 197209694 63679984 849614892 891589479 855607530 181485779 874711846 751345493 656560292 411065272 234351299 577141038 110595629 570332135 239149350 531526363 507602589 807492584 198064567 371881936 590294059 89206809 327475320 746128504 871834484 417060157 874702308 184142028 330728179 835285048 455178607 604963526 387621983 375005604 881774298 859369492 638140019 686261674 759203935 882507591 599550773 424830034 292428927 599790820 755795263 438270024 328235707 92519041 942669508 593414313 839804696 187045859 986290252 114794912 671323587 665608231 33178643 710583082 739408753 990983743 673201626 921414963 601842290 906208328 735513206 64225204 94308255 163819659 460127946 71534625 518861306 926258279 929131979 254316615 719086599 110007809 56135963 47121530 589616435 782660327 818028567 581702091 41404863 894841464 586736646 776008358 106260249 334871746 811859399 379665577 963607113 610099031 963559408 937113764 105491999 402161378 502419678 225618414 488202438 511631265 515680441 975424808 749726177 121316854 898562143 434973584 117595360 13820614 163960599 838090300 580662711 142022291 887737347 124842331 639024816 567884349 248291021 708579432 336397577 747328430 501282993 924771368 8949001 137538971 352477404 717629595 327946590 10971474 851449686 54137607 22725560 708913381 143975000 238018958 502039301 119718567 349148536 416908733 785876492 44314309 502761058 367894245 849015485 712629489 543847349 548153955 783516073 986835063 63424875 554900014 275928645 815024240 338811909 813617873 143740344 226387862 999653732 20420190 397355692 298446533 929848101 792357914 347671985 290365194 486557543 882139640 791493199 514748694 182708433 577287936 792258598 608505309 625263834 330785323 699268900 279574063 242028383 604314400 938458528 434189249 867981123 959622557 271724886 33639608 325876626 896129420 298697675 396092285 868802915 71673723 326112967 10131923 586267024 205759700 467038535 131584561 131472146 333683820 287352324 93852122 88357534 73681464 607221877 337849926 983992409 884559746 371236724 279139808 130777651 855831946 120909188 875060821 675078456 3501532 61937019 209246442 422738362 350689064 279737752 367549232 626374558 104102378 329166255 685083639 555975514 470247210 8568848 16534902 659753988 581243514 924924771 350397210 135619691 938351820 205437125 204019169 168146528 607947740 649905621 123851030 343235509 359363797 874773955 102301750 332589027 9044291 16095915 364931538 139907740 979862852 716284116 882248755 961659454 563650853 88787476 830747139 354655181 485671000 90329710 907289607 602945705 283004492 58463667 955933853 711107509 483685137 776476407 123715403 967593565 550509153 98241879 923488946 238881447 301420314 112065710 988949238 713129350 87073295 93247659 813106033 96603248 12189230 585165531 228397467 29018617 84356882 485495642 894031053 799007757 63505157 155354556 297130862 55955608 770366141 269974297 292701168 762328644 976393215 390068432 809162644 850068344 309267152 758476025 864052656 110953964 47966977 336738948 931534082 964173989 523237938 317357774 127746483 180379145 305287743 794894277 227827035 466958197 337795607 155651087 868858417 19157234 694910330 797470029 728292551 49358804 774708417 321837530 261631050 594202255 85689533 327715529 779461798 184279842 623569808 5702775 968172235 485585368 12360704 948815602 303639244 971542074 487532830 98523434 545471336 378214190 452620918 304556810 983679132 29086332 143941778 623784755 253158987 960059419 362076730 685926562 112716992 127192342 952159778 437967105 687821414 470215312 726859920 717376974 445479129 967120281 775114303 184902973 474401170 399829308 456823441 674628232 251911996 850459009 983847377 732072565 636900498 49525771 846565600 187296915 60429252 57062718 509557221 27217006 871569747 178150884 336493280 315851856 880677179 711456699 526281688 555293814 246334535 931690191 832350176 66468694 709008357 6545584 610997710 313354121 459782149 411710258 202734404 458374553 433378476 359129164 708830471 180774111 789044740 938007663 723424862 570846977 179031348 903982107 703559875 870428727 281333564 784540494 187780611 236706538 549010890 395416364 130523630 470512600 765102736 874105440 122361766 343991626 931641301 317988509 325148951 619750269 76197824 257042754 179172902 158296466 653874632 170125644 40287516 198898396 477284115 249286676 754517526 558102081 208684555 931834736 690497695 112032410 951730071 759262387 788153160 237111621 958861 932257238 668737203 517909326 963580715 821069972 385652650 792334937 930051096 60581357 791757977 895532246 923011974 223810240 299608985 34637979 644875541 211426769 231024790 561827122 16996151 562085049 441809045 819897705 653229073 760236110 249844848 621869623 827752441 539418391 124629619 91760596 144350599 850885496 157051120 831652170 468383901 889303316 703066725 185405765 972042329 919722653 836444899 791272964 444258856 682087228 758735963 669767826 467390449 997939016 826777682 689508183 751040806 613377819 102231067 106932614 433637909 716214576 201250997 458518907 461985115 297818516 283943150 854599101 224526418 814297530 424852066 341410112 385255475 894035936 321277628 163544764 512662060 695089595 192364524 293903802 272460426 57375521 142208879 373633417 437430764 929542929 439523453 685658605 903546995 318262178 555898223 312603969 35485681 652777143 706704531 280809532 553563770 798480221 658553337 664889038 35217846 86887584 930401740 235563209 225822197 522452634 99777612 161160179 862252062 919116906 371379403 190454906 394975098 978410290 11817880 241778390 657276404 390111009 825837329 341558280 170157489 648209490 874500294 247227789 354365554 854057244 261877457 332601553 50928212 6486499 233750113 891915565 866882898 44212351 624387858 74425965 774067200 2763688 639620631 368892338 351123169 300130399 107346998 754108418 937150576 732602228 260512325 28499547 522753871 432120118 941770241 693727583 839295137 897639430 200568899 329690551 134476327 556844274 510434118 948909131 62017362 969611075 11726066 386558765 229155128 306487181 486788255 930679747 475511566 956827607 252829323 142520662 258764802 870074969 63253293 180312261 505579959 684407516 136347682 357497778 753255387 393775378 447120058 568114221 897645867 129072478 157969923 96615153 244004812 294050493 127551838 308186690 513587544 955166073 461322212 779997934 537450676 832748381 10220296 739497798 274665274 35947918 457471213 812076820 814578674 871137133 872911812 965669113 526587678 913343995 654222880 751608145 695337422 164234438 247299374 336345963 599774794 199480383 971234166 928885309 270868189 529005723 281050773 434943650 622381635 978463113 463482794 630262985 478528106 408496997 482546503 823528591 57770020 127409551 150655171 89005541 111687973 25473838 988006626 117150530 960136747 562093300 201789544 47078557 477331977 309233430 136419530 275255097 435865615 995198610 597971909 282800170 237448509 627553820 145901125 350329161 862276451 52819374 12727450 194928276 828228325 520948084 816280955 88349993 670107194 193028250 3394821 146974053 99937442 98155733 838694644 847554152 524980903 880088723 638860536 265784824 547323172 429242833 21554424 934392336 473190487 325884657 840724676 498787240 19985739 157034761 190210854 436451320 868792389 700431899 671306545 581474445 364914210 136135849 104296227 835625352 924650723 949974197 791216578 332201812 759975850 694849006 521178338 54699501 475180867 343342137 311298774 370305213 537526985 334416107 138638626 367564800 833767833 407013871 567350989 817031373 572563250 780552417 968129191 148440777 698529421 360522033 397003851 675341412 610680744 518203667 496940077 255332787 5267462 361004475 65555594 643686212 314306245 942203572 179049091 20102425 876904820 481840458 686854740 123690697 84261597 696305881 524149727 567077468 620459819 431131573 86418132 66100834 92711054 628926761 256262643 269327806 89632130 349628697 116019043 157709311 489965685 499908999 313018360 422055057 676283650 200292943 330249627 6296815 416169722 555595592 186563463 418260572 233580591 708408076 324594843 459534533 174627678 201975332 168415957 100154544 138768403 146809914 39072598 406184714 753888961 407523211 405264580 653610537 442143733 473394482 965866713 627437210 821064462 752260262 70654895 809265031 613497606 602207676 616239612 747037096 343912187 274351019 734933696 385824019 430949118 364063590 997071813 658604087 974708209 619338686 576773972 552093291 69167891 396859875 604407174 615013770 866192937 650745097 731736630 503512718 671577483 895881626 457230826 453140311 59594251 803569302 766300227 385652345 525240954 250210454 143453398 997605022 251773147 361376557 422497029 936344721 922939878 189686819 173638989 464319129 379550678 60651307 138814453 281799565 140081083 255227581 126177956 464830536 125895013 148262522 811002621 560578551 679267852 115635143 570137669 771913274 820582021 132604706 989916180 292333442 973188845 883557148 450158959 891645423 583363838 704186239 17444991 806515302 502685793 772720075 876310354 960809391 255559297 264493905 945269213 364236171 768640582 551320465 299032561 136055139 451141547 236897789 347602719 401176128 446140983 704254314 15422535 752532678 691525750 146037391 640694037 583548431 182190498 540966963 155734623 43908239 411501181 296516606 892786316 76431722 87445525 753665322 804237162 775828991 793905063 809600970 921911353 277212943 194314052 966960988 637934049 611210416 211796681 247760327 875366638 751874241 774179610 98739704 382675026 69864971 631831776 964310865 730586778 706389376 127207435 923808471 151177189 357277998 63214550 377417148 74446488 34529999 320665599 522748176 635448295 123072968 444044688 977390675 820364280 78341863 955350492 200032852 403415335 519573278 707695985 141504077 865802273 950926787 632909845 148044903 4908017 232181701 668997194 965592139 554806806 357563471 800295670 798105683 965607445 320417899 965625962 914116748 111531799 803805089 112430888 799212271 135975518 943102879 750479399 142701702 630682365 805267097 751595146 226986787 628595231 428293528 851884168 316401708 158603040 675834559 155778451 126982855 341954755 756833184 103939094 255998822 536492160 30199865 609542412 170813548 61764277 101917360 422040353 222660040 359455691 173361405 942805395 322531178 121543152 498263685 931236231 831876531 971844032 207503971 88799649 109398317 531745277 928971206 592353444 393921460 15461924 797977739 699294141 9902461 196699438 222302256 164251611 687072563 778333924 771319066 480839300 207121050 540877773 384206714 336484041 163701201 243929456 951596790 768066133 956809480 6431114 22547493 343348676 365522862 482398827 957257970 877591511 409872613 764323572 109027788 212616687 454165694 999675168 238905247 852536359 720739522 35325259 249817654 778483110 786149480 177733081 121945744 800849252 843602085 461771124 495527328 283125130 618722482 505118220 139065764 986857231 172240840 488102609 850010235 623823808 352979771 44405072 651101004 433802930 914939082 886197484 534912742 200009958 169389518 90559660 274887259 517680342 973147248 267212978 60328829 157945269 634283186 655704083 103333006 335391005 854130784 465092333 706006506 638926007 177137824 611364172 447998959 542841712 873109658 505113470 286739060 317212958 524307986 332473604 602650858 600434354 28624733 365181525 359958124 605988750 25153181 75681581 401270438 466868207 929532809 685865100 143755445 195980448 395324557 142426137 560155847 929713615 25536695 769542845 194344653 392355876 841139203 89626285 183563980 744481413 876672011 47863290 535691240 348032931 123321040 996015245 892899961 20334870 323829735 41195037 293246440 197408219 574861177 234347404 456994215 992264043 525327776 620918884 532219012 56519148 46084301 101836292 146489987 554941082 961693536 260672287 196786160 734177197 710283604 614579324 473186296 440497227 99020174 496367677 737095787 904496629 343898650 871014391 288051970 856856298 216410426 868783920 824288642 17038547 737072206 845315819 918379092 770559923 325091201 289934021 504613772 658041794 997708243 38105426 697959856 236649152 46217805 6846092 577472097 40654321 40679134 343522250 192821702 29705635 218833628 482111571 229575867 247670114 717591026 410154834 130057365 762348620 166155021 908795120 609269697 223456473 459331210 507986580 264005769 912532596 912786383 504120413 663216553 270495886 369455304 300372413 836320257 45393256 944590267 328135397 395243797 476060283 132101784 551779594 917341344 509868354 11394877 983333929 633648082 1424871 318031235 471892123 406703359 952554949 273325466 404494465 736353502 362444753 905584803 235559497 204577835 947627683 149113378 260343860 93867345 422110771 285226110 105878653 563079418 917506515 318681885 620381767 207164047 617087942 275507749 445310921 927044268 846436655 465768623 641747985 565177422 313834051 286261127 228988499 122576133 110370978 790124274 177943504 696246916 847776114 442226243 103556734 60743996 974004685 367479589 643237475 944123973 95343024 821654394 142104039 8333221 950753597 875196711 407560108 154725711 859143289 341180407 672540896 633402704 455750308 393249734 517439558 309874426 411748272 380232409 197779210 368772060 625844222 726144387 170766222 17510979 104794647 590846265 386817532 352340948 388257545 5429203 570533688 862430057 920445683 894399420 727510160 462396818 395915951 646988372 870835108 56628740 803232046 557047866 125672544 58136148 121209540 180236172 397594803 6892676 325267702 222572521 540162066 864181625 130715964 718880885 768749445 93278409 667094225 886536103 475662068 456895549 786154298 984040352 44831626 670705234 573765061 330753966 507801690 137938026 757750204 615283096 686663283 967315723 436364333 766594411 49780309 544777947 837330528 257693799 29226749 872240404 775742682 847933171 586968320 978691777 731766155 810976124 642908405 283237613 617741684 208219720 808052563 333067768 949810218 798254695 971461392 725764459 975690635 134932650 599193308 724846949 567936071 96592016 220791411 351277456 143936559 93405023 72694781 5431709 209422475 797774166 179786692 329631905 235671622 320208287 208581892 6381537 973676068 303517126 767403879 258081480 868941564 140827394 848840691 999258454 894681902 76380183 76850409 671224203 228788481 596046050 845701343 168645801 562529307 151347188 41663368 988047395 589330622 249131037 977634101 891629975 876388816 44423467 611869932 267989657 101015534 449416351 770207519 971605778 515110891 49094022 510236849 171595176 819391310 788736132 368879432 959436769 958035084 877182708 557774549 451630944 633859373 491709465 113724805 598318903 330787611 606787186 735252749 104210576 555281703 325929698 588246798 892055823 69141147 625289507 470831016 488740243 172737567 329451058 661606653 928397053 854823362 650615599 21890591 524236450 947147553 584775267 479799746 243171894 233652121 258290381 643512001 66838826 780462860 133472967 354166045 514755507 640265877 548866851 385013463 843638612 907851538 566863768 100048874 101357107 635552104 581273667 242025783 585442048 937016014 242609029 515465042 571013607 840591858 483188824 729076653 381784659 384244204 206949619 18343378 392168568 390984047 119758790 669336308 841636795 24168063 561710948 170828597 16826794 799436128 35857472 817638240 260768464 896432121 852958043 47726066 676240261 335411808 727787903 975763208 706608191 853312842 542685903 418712198 996983450 613289485 171743420 277068007 104946664 459510982 354202384 270699305 736505169 876810430 709780461 642754816 388605345 792768750 171803217 877637854 416377888 236177768 97435269 463268205 763928543 803080240 47224794 481787667 626098426 519452203 699915428 179197605 579746547 526540397 778313795 192995037 767144129 996486447 486084084 32382680 947911699 141042918 106623295 17508527 890873303 217951884 553439707 264703473 789850203 283686201 876736143 184314926 712041936 226790592 767281989 867165839 642789098 284491908 332609693 784050650 992863491 398151235 616391169 401761550 887760326 159562127 555773150 894503471 648907445 455476319 809558934 798502131 600887980 34585995 713531138 248252687 787022151 165050661 42465288 109327961 973384491 403522572 648988551 545843256 184840653 401788242 790353696 102437422 253683043 428870824 196368844 807906787 688242841 856672883 440226758 118390259 770042248 304269701 759705240 454600394 857923571 771595570 646136248 151945425 968507925 865347544 252588897 560497714 151252832 369195422 132107447 103031546 918785203 703875690 248990099 617969831 919438414 145723430 29984405 325589538 127332411 31830513 915366560 182849373 40477350 790017959 89722656 684305778 606520167 620391400 382193977 939520321 296373659 992514717 82322626 942322651 735127811 794013558 654860828 389425907 749909723 517545826 651047767 490946959 371181882 251690000 19567901 508384941 622163550 489545685 951475431 828698838 894390469 775686719 450202766 694644976 767402474 932209351 663105963 739157526 929630249 661142089 170470475 817637377 657678786 483166601 163329440 798615498 938275569 923600128 740906919 973493452 455057543 233514791 378268019 988584933 409194154 40919093 93078699 677479290 839929445 747022195 748802283 330439981 868581235 637729673 427029377 640369805 75837433 706241900 502085757 536105004 195789782 901622112 500666874 115609125 969919428 109301150 424560723 348677946 613374554 725030609 206028388 551210159 229470408 216875203 284673342 322944276 554719476 401116993 352359284 784706419 8920369 755454952 80965176 529922066 301411025 127422444 129955027 131773424 675171978 485565220 203559058 770457674 923297096 688795191 388436044 190102468 611089503 760682363 270628919 722448631 694781347 766523356 640920492 963804706 95430816 652229467 568599816 445580620 458675008 979019431 389358716 730640864 775476856 179220135 690675553 623933627 833477114 971011706 290675708 857738958 254391888 124269240 357093514 921960746 72840648 303662954 927353691 677375655 453458868 648611073 339989853 555597730 106720792 279260319 972882999 322920599 89047698 527364416 589412397 97414486 905014943 690593053 757411338 678274278 505233814 161413852 36776357 636346995 984447144 293907845 669482143 412124440 892192531 986073339 51422534 869824651 629167670 909032447 226244180 747991900 25328872 593039308 811567093 70639712 662358257 423335758 576443997 598365593 967248727 878152767 105586591 30420613 1923059 670138227 590718342 505443577 984479734 325086149 970915272 330679645 433081802 795773142 784099177 548779955 691967383 705231845 630855058 649224103 872982143 665570756 648616730 92980515 241981180 883402982 113511730 844408805 467484691 992314209 914879392 946289558 624704367 793125254 257833574 94595503 485470763 204286552 424189525 909035907 561198810 256409728 599150113 971564125 567330841 5024988 284882760 972711845 140133332 600997204 635528084 324819576 581479384 677274938 729849388 661482707 358400010 477613550 925137491 164104366 921306777 184113691 899343437 321695069 555510896 151528859 316777480 879646992 200429118 447617715 433579098 257553979 73407556 269515355 632726032 884128272 689171843 546508099 237653800 752314676 542261602 396639749 822339799 577447213 45119696 11372136 299111711 774496692 63028182 647446965 549357053 540536350 131570824 576073637 878237978 920548586 363265110 287080398 324801397 498191337 188241020 382090787 321697585 612452081 456542141 622341079 16697288 648846613 99559452 783259807 429990787 6110025 804449748 34536006 812849394 255534763 763051004 290223625 724931896 832167706 893237966 743091586 744816488 298953700 360875655 49872784 176671579 786301643 320517470 663367692 212128615 415603944 592736979 893355723 941350402 919172116 193377630 838700925 26811610 884569745 734216680 666499993 259973063 593720506 584157711 510675393 927694731 584644858 976990749 275036552 954060740 720890857 781429852 13191652 588690908 35036931 504695358 428455176 950034926 660591725 901418623 305881330 730513837 275940537 570830136 878662680 431919186 149926997 507686424 965641872 963105140 180978635 663917664 9546263 371364202 90151262 743020257 869478734 48429860 561566317 269510969 247009258 395165045 811908146 38792117 388134165 974541792 687607671 735176623 85276262 589295934 75857096 558949133 270464973 111308118 688356605 46841009 112721278 46123647 652334331 314184646 293341396 988221908 59079233 843851263 299654675 397337993 266188951 678165907 328209689 615429395 134226569 172550891 971825758 823849628 261938528 717488392 873188295 717934725 802020684 603923108 176723697 982061121 147966373 872214244 792858283 85811241 992272904 483838058 677741211 590322890 772438742 389874163 294589620 70308940 625574763 753179371 200226557 840824710 891715856 732221798 176938533 439273136 417618844 657217961 981163165 191853780 418121390 879319802 701763614 978617325 124250968 685202094 886431447 114576995 126831865 466754532 460346122 837675820 231527379 697871756 671947321 87834080 599705638 192985278 312341217 97032724 945880827 387702334 953239297 85371162 782956840 916967724 220868148 984630470 784370616 829837697 785247226 567444508 361759861 702625101 413878281 394206935 818220188 114426479 532251859 961397757 526040498 671541106 208462284 570796490 851822610 136905570 572468723 513195208 252108509 171469579 94235012 582556977 85712251 290046136 886434021 361399984 549992450 210932780 743667716 402328848 89018860 162004912 767114322 808107997 69866210 378689675 36721277 782214770 61367994 590174855 358114022 803391823 798514379 998492234 976872532 168512085 870897146 233925156 528678342 281853999 907525896 824508198 62549889 584109942 245046390 782856536 720299135 812275043 351254857 365553552 862063382 733931419 707235617 924124395 769615104 668796244 292142900 433033324 141019856 918877598 514600881 460458440 147353521 989708574 189168727 352091062 327341930 90787307 467712904 540423524 170400473 674351136 498885958 95129127 210695224 910292706 794612400 298542405 13256537 510488905 57999436 662186573 22274559 811771112 627943192 694884538 211530730 783512774 854912572 90660179 376674087 459612777 346763864 949165166 816017277 686463478 904638744 230487723 106208207 62259464 574312592 406715740 233035566 61547221 427265923 393834421 817006572 910730366 483597406 623882774 803122924 509572132 182791530 496471520 471887446 25937112 879795392 753177597 30093215 350466039 39110131 619106929 431104118 89326825 107042413 224079608 684665584 179927191 352228568 470923077 541455254 842922789 606336901 767032249 300054274 979839251 97519516 365801783 331664346 376889507 785976110 32990059 816094543 358847918 916349961 986970052 907268200 430326369 724400080 302343897 143285965 990601701 918408229 263889500 944984411 341317330 872304499 846743117 563480889 251262562 924801442 506075971 967695209 525738690 683965301 84246440 754842512 100190768 378369237 188961150 58139725 44072181 661556580 44506670 396891937 912111184 774388995 501858131 348623949 32561958 685956019 176824772 781277390 122366245 583990089 736747949 702150518 764451162 891901820 676502211 752098818 323345897 681252780 576660038 618811030 64054002 16770617 830584155 406908489 752048760 381480127 765202613 464758642 908441266 332385881 723324261 595791493 183316418 981996766 62254098 446143448 729558124 986329677 574215187 775779688 596449947 973209673 900086519 372098029 197167854 931265870 182703671 768862337 795038090 332197918 634821495 2964183 445906184 545538509 717074287 65520669 47073308 226090109 151845036 813302776 921477003 334857513 474318412 474050171 919229555 282414383 372948362 709144009 816292616 506378636 2171908 175783835 348836111 277113172 122596231 615388372 592350273 462023151 427989175 928116556 326244171 74277638 918646167 912918876 659848167 154203572 923212614 873903060 108236704 376466712 524673881 267496860 782524811 970628794 438121400 88993224 397652940 197921898 300362569 262187799 206546069 372724392 85140616 642440176 172097750 444618066 597763293 176889314 37523572 175686228 969338519 107586507 263428541 579506779 85849011 141489432 498403358 431174644 696254249 73617760 481127774 930511306 298128686 166330837 614968546 627001020 844036692 777456480 865966006 962806175 522025526 455255229 908915414 716491280 173759521 953054263 645027054 404431310 883360698 169292576 842365899 943562976 700834162 682263360 705378677 787112391 851513840 817691184 216716853 801654024 73788092 136360300 417001297 510443108 87776224 844701862 192243272 66965885 276232848 566867288 432134583 688720869 565154200 82734141 291371270 853018063 850914332 821356957 925628549 349264213 175085066 858610327 354910614 77980481 395395766 700223889 124884405 255592847 45306395 740375712 24358501 671189421 571211127 865298198 466432843 89730745 121045044 449782740 834922624 853242316 189641377 536524668 153047919 154621364 473729484 909776719 363086310 954926758 956332864 972589540 85367304 208016183 89893795 186282574 459551787 586255398 680778557 55831673 737226906 499027950 842160371 851369029 585780542 14659036 929873259 120712678 483745744 220970264 133949901 465720743 957937543 833457277 748311651 134677550 461903812 991561821 199367880 852995175 709792080 730681943 151091901 512384176 606139063 421395799 751314034 689211181 426624124 101197202 176778030 314431809 588054016 283232799 432157113 20682786 339153550 67794861 977666866 39468467 324933513 542610366 639285413 185721292 806574950 796722607 663423055 403085570 442079086 504340415 629960475 339871671 170411808 2680557 209806129 252282357 164107763 193253830 518803569 941117621 996457983 408084917 744407228 448691176 249924855 807507250 980339604 32554783 753517806 925810819 117927614 867654832 280901695 351032278 593506656 527658251 843923682 793099394 109692180 482640059 460743268 506227676 121446953 378185286 894107414 820327051 891317769 805379915 233924957 582074699 584509125 218196096 990039537 509778856 266938294 464398152 740765367 321393903 529683005 790110649 952663325 56327748 554719288 20491695 428088359 882996225 924018526 881389848 563915339 203442858 915804705 146824666 622773188 146369020 732671039 129924886 287249545 705957716 304445632 205882829 417700642 956621855 363260392 366692301 584541749 788836062 341631255 766544909 56320977 943940926 463771736 970482602 375627154 226696752 523283494 528921914 63392032 218107672 752408960 160944728 443456511 539861391 91138622 334092788 431354111 683349320 398766874 21028470 493737345 531725380 812224791 944280729 404687414 464167327 267821799 149929260 319779554 297617031 757190135 891668846 295953477 109817863 70343052 147591717 569868958 932752531 603775831 195354144 352801373 306935351 195045523 347765575 960724358 493540705 68729051 708158649 79902429 515686878 265911296 636445057 277312813 684778566 129966279 805389289 973234996 305372011 553676870 183678558 203610535 836745501 779869414 113093987 817149953 909876484 751450092 361777117 624473537 521400306 75406787 933857915 624442650 65562413 125077714 793961177 890983695 849156205 993011472 710078145 113271521 67314809 74807521 148548257 818879265 79646657 264386007 13696705 473698147 790602307 175379741 402135348 285079218 72645313 156888414 282958974 406881680 150686672 553398965 381721180 515096026 987510188 989913039 67413188 550318959 368133885 255142343 958660691 210877891 570620007 360167503 851071155 746786219 1990080 817922744 622982133 1810673 180544226 982700011 378505468 471696931 936184232 616769389 852747027 489171035 785019729 508379577 499051132 250393955 596292807 132752108 233124609 166102650 163215915 633867118 269740874 345696839 173022976 475193310 272646660 886937216 150124532 252358422 116021998 631582922 719128789 480074040 134523625 610567181 588753335 771366304 818458527 103462663 429504440 376502506 406869766 799400864 740007226 766525261 256778108 838535992 833671681 418077438 36333623 756138291 782438697 186096611 410006436 392624968 855845490 453044459 257167196 607291161 12647198 640726917 122894199 869315031 307353729 47794268 436335152 289391918 428042174 713195795 700922513 544204630 427350428 575109642 687713114 8762249 807021018 850068862 126756210 810119077 679874285 71701056 198399958 254469569 453402330 535330210 174879364 462547553 500665523 606990392 198497497 15258696 625477969 544667030 100215043 190888374 785260885 687018094 241061074 160516119 917976389 539062697 456836459 712823449 775746946 813381805 71661755 159308549 707873836 589034649 911975325 47007701 502211132 461815320 312447827 646138315 917387763 92220756 383149650 727057432 4304341 218448462 809259254 905853802 576230919 979971316 65564161 526567618 772918170 365275910 848775975 975832776 520426759 17716704 176314033 977451717 382005937 138589705 703261635 760725365 735106423 705209795 68666835 601095669 43907452 288238048 102055615 3863108 819642300 457199501 312274668 514700115 636134784 644186274 562836584 32730772 42336690 110813421 36820572 461302408 647413492 441080100 252877941 946246093 9862429 569385199 157968795 551262598 434209562 370189152 858587452 528363580 536965671 404967223 453040328 7603463 524327690 538610098 969686825 516996312 287070780 602195458 15211142 987874415 83262521 158366665 261056765 821272778 115266953 389543341 707611559 970501674 283319269 303235526 290764974 948642044 393842061 119670825 671530062 902163133 920900084 871346937 364909139 846886441 506912778 310004115 373572569 318764930 505320470 219746925 455136803 977509896 556672683 263462513 188772877 370072636 100092796 464106549 430094139 473383433 769005352 200757332 331040254 940906610 619607055 385160716 858032667 892082976 560132270 134891963 296274680 682791973 634486511 998450716 562288994 104714674 380544318 104098820 982152592 252967200 776458455 499279228 222909535 54178797 211479256 453278072 455762165 66735943 296552692 659029021 954874294 396081907 316778965 571113974 132487976 46179401 494710598 97833430 488259454 408189189 39190668 64488242 348008739 412436013 32184684 349959626 774660403 5454931 352085664 287251060 425508319 665760796 163017415 426962740 781701923 168865473 155546961 702019121 671101752 461557677 348987296 426448334 869296311 885386132 885500928 759747947 686176156 887083362 676919922 586270272 559741266 865794445 719588315 920180900 813185920 799457047 255466207 996990844 705709295 10157350 761685465 300969121 680897439 494572429 507047015 432257293 634975652 795142236 138378115 308365167 648699050 322038057 233355525 526570079 191227934 915317107 67750169 294910069 541600241 968770087 859520017 601997620 917610674 647610710 393213645 943225404 539262833 62267367 445371216 699317276 345841429 571653755 266203481 600216077 410758753 169753996 501399594 106730676 210397042 837700948 796092611 393317482 808347363 238801984 603900557 68353815 516132319 28505731 429652527 811194453 279650365 667928309 147983466 253855060 588303539 929085482 432615476 493541721 876062267 202745357 165111031 621366331 5444393 325395943 478098 155962969 873475285 389076341 237209648 63384969 350279588 479550717 772419866 692961944 320443779 569740638 993246713 739222131 806424593 441951977 419859576 868572294 47750078 721940231 631026691 102502038 213128362 742734951 910103381 724327253 544891234 51336629 325247339 811493395 779385734 491888679 332829745 852326385 945668092 172433079 551319211 31747232 467248614 161356886 185586224 216797897 309369767 545054964 848361247 907188899 550277937 327931363 238692943 899656677 986883920 629486272 72319012 447466302 844094374 980913269 731514339 82712112 687004148 244036263 477153568 583313289 818423711 248112177 701822061 582684517 77785632 866903781 997027475 736337427 380852374 349786197 14040371 190349472 263428087 819563181 502573590 150750544 720876587 751956165 847264481 955278556 976157156 381688864 62725274 384623145 761295828 267831082 960564013 155917605 105986438 307087482 97660519 18841612 623349280 114223077 409534907 632642004 674057698 240021211 813341855 743170231 297490549 386734881 471539737 315905710 299764066 402831855 353300977 289251261 64145308 970120914 595292144 441807643 427872458 23311079 510770800 960371296 981890309 272503621 951419017 459680443 570070934 726152494 41764820 418878700 951592137 17093619 913106143 518350839 169932343 415763947 164188601 648997237 873764095 944063027 472013521 26134568 66460537 388191808 878484227 437521795 669973955 36087110 594471178 580977693 150299784 418330803 239899363 75638884 36434775 937904686 765183800 419823436 924079066 169169141 698055126 232124244 304707139 383517669 834633114 330326548 164400248 826423770 457963713 632253937 598598650 377103445 61582166 157367630 314465945 483757197 305037085 105487328 768111002 421306105 43426248 659979847 965811436 482204855 61491454 728680642 778527555 936896176 397859631 436254981 913075577 678717935 66668269 565399247 300420422 415788853 54995980 584285208 256256795 258262231 658111605 561909524 694975588 667127943 952775656 446158540 671478745 556649693 575974178 725329659 821200062 157287314 312576211 879618678 73718744 916519458 924676083 899703645 769973652 134718212 573055024 337023389 899014973 297501296 535660779 429958367 700177475 638979368 967632433 67704997 261425662 491045569 969614195 383430055 937112506 641261910 370283415 552656347 394548914 585472600 81633660 913635283 725782759 173609148 174007694 499083332 192785934 602163205 398389222 427929918 15125333 592522225 880631287 79596843 834449220 418421576 754948480 3849700 541145682 234075699 106350869 745600547 470309005 927658680 775556971 760472459 451368874 98353825 434528858 171716741 465785566 493651779 438606967 88966894 288613348 452673857 732856612 961130240 48443169 508795855 32942337 52703296 825058325 331738759 794903854 63962130 444733190 852669092 48728995 276266161 619854344 90776415 359494633 909688064 234804805 457642824 612707776 155610270 705328069 297793190 959610306 580878077 154794640 558956283 537042979 581762377 719936364 782560895 4891350 486264947 27247640 382377671 857670344 420933775 586286734 738289000 870306439 287837088 664406006 820061714 65407810 691466033 1532093 742738931 159888888 180949893 164109507 505380751 905965728 310965373 305397407 198552764 239451267 7027973 177185538 334493009 869570127 953659598 366408680 768822680 492446284 915594118 271232834 356333788 72362402 607653871 204704612 19351921 488680790 74495333 568161623 634174018 462046229 377211621 962321973 781762930 774460681 486102660 24285175 31656307 836350542 790840808 826230856 939481052 201851042 438561960 767056886 543271223 502746976 304593393 45578995 57074293 775285207 383052294 658043100 606207266 872630668 295565116 339912617 89325454 307163760 284658834 173164798 854710304 191619995 190130006 788860898 751519172 846950395 268390378 732853128 154031392 996982064 494050953 44905966 149197176 505379215 136099091 313653151 622376677 634210354 421672134 297823175 883820474 479050169 808230848 71966739 331249025 987998520 378159886 753229429 965618949 275233559 31358075 585338815 252179832 775148018 216893483 976074470 610218949 712521319 938193646 381560644 304197331 230827128 58909987 646949580 458620716 660348335 9094735 914102679 716265300 571125626 500898982 297577984 671096033 134918917 110186707 402217365 697339630 396978318 164567988 633358064 645538811 950255922 864322155 973870581 852985165 810792854 13053786 557284390 939476640 293879758 898553991 177639080 100124928 10818967 735322960 620370577 470400790 14653759 715111648 777318713 374312467 146584869 346788730 919172298 274333048 696001571 586868959 446896937 338429184 243696345 369550362 321174608 548318708 1031048 497030892 344836114 925381410 732583176 453244535 685337379 538486018 755309992 922001577 822126089 919028782 369344683 212899642 439241583 192199905 901014568 511167801 144829661 431685798 93206276 937201938 879988436 377604698 5561531 560412729 793120391 329059335 700430485 67251485 83722462 301853107 477569482 231775880 559191442 322870688 439505215 797003804 411682234 576230519 264665363 16599973 738562164 427427992 821402573 759207795 186073597 120923988 403068237 446559838 318174785 111182066 307710606 177260971 558151998 229964969 444119732 348500776 440565697 975659289 726566896 118617426 801970880 164291632 807936728 226688660 957242282 749466930 589628259 633974010 478355183 595553230 228123170 556773649 293297750 359703493 536985987 983843930 406462365 928011535 713029990 227015917 517255736 376473746 887260364 929928903 837422901 143790467 676572857 572086889 624428580 36263462 816287617 26580276 393256315 156261395 659821038 767012355 784014482 159536562 565624077 544099545 616470244 226361088 598037647 192330892 23949092 957472311 293779855 177797856 18078884 803543874 103951456 935559154 109184986 936613752 171991240 130702586 169291466 367841160 357788984 763395872 87960746 587487586 748161319 493562265 293331196 30008742 330710775 375205869 43784127 489397023 262219925 941831065 439751174 844727291 421727103 644039527 115690563 61606831 451032071 410348447 277744075 326509042 469879004 697110608 385854367 492679771 942502745 512127933 761448419 820531980 621718039 260002825 910604492 667684120 404104265 821173509 38887434 990152895 722508654 719851784 757307514 915350235 316368940 447661763 523692341 604550808 139391451 306147889 861474815 475039953 491346802 866690902 520217243 136765707 243876880 171887077 397816305 863866522 727574018 297171592 448273238 363299161 481094488 508899519 413008225 785055050 364647281 204488259 847479819 533689380 203487297 606294592 865293913 765963773 131990811 942443400 276072283 179403505 536404625 44025662 485505787 971050711 517819143 902375653 15202102 224821643 564618018 397570535 910977327 967543993 321949150 66038691 783348007 955118128 893716634 762047556 484359281 80243021 881382058 409349936 973979605 749164747 908350067 725740401 582690125 284139340 676897066 291880387 83834085 868068315 553602007 541502073 532669043 549081997 954419602 395617387 674091532 991423511 857876284 304247364 871293837 191793245 131902544 520241994 552519890 723605262 391364724 111596588 108086599 704464848 190313487 77717203 263642615 972132164 517066124 75235746 824658416 236912970 936119252 842856551 83566363 660094393 302778391 510880995 278661297 256087325 343935527 565249037 418648711 642180612 201010427 143454147 721882258 891996165 227948359 938562738 228572116 815911852 421444244 945964713 2928664 833932488 407736217 622981877 81287406 353020492 222096047 98492058 377649718 316663908 505877105 622438505 841422174 29125588 757438495 295140469 991222802 62302650 941063343 6016181 160772313 621339189 153771014 669401696 51767282 676472419 146663538 154897148 178860224 57848534 715777058 481888386 756754771 972558992 182270796 352673633 231303696 659092258 536182395 235966577 170660308 290375106 736433927 658936421 911522005 230151322 816701952 504706780 722372572 235270056 765277616 734449532 779934325 914964216 357457626 708377740 516546783 965275733 444789709 685786133 674230581 83336882 414373395 812610325 412651405 430052785 586582167 670142595 219576598 395964863 341521209 34391036 491281219 341162555 281058080 293948484 863473322 298396686 224313719 622671474 938667970 614370889 657237974 622046857 110817222 906435657 930543302 390305515 631106275 611791436 655885313 85001853 972283712 718630503 876623908 390714216 232376635 909729072 205775654 715894299 313815009 939456652 821622773 51824301 303263687 916186163 24396949 9568167 246320505 899056296 739846824 791315116 814440584 663877473 527270795 780310430 624136292 366310423 806002601 77583505 742450852 875809477 648225920 62094118 836172938 526123721 675403058 567102557 916905083 512553197 294931817 888250674 47161047 111067581 756913927 193630109 450160474 80954399 934720020 978005209 450151207 159872011 952952667 244925481 511079555 882801913 502386650 760452458 219176389 906788205 891652252 959616471 839294898 4147143 236174675 922311831 786222776 852641665 51307871 515208010 323648994 700311388 709817590 229669959 96885285 54146880 314821755 260971019 50775833 473077629 34106698 84013814 225495727 427115714 601877017 846634770 630334939 87260705 11981828 483245216 311013676 724331607 993071330 955646528 802942805 849200951 442018315 704879963 830933257 482259486 188598786 194602163 460378609 308743690 183960590 791443927 161373857 847761396 342556725 382564306 319791450 186940455 188276639 805191337 63455377 651888352 354778239 679773172 756311577 588957746 173171985 839217550 170571960 822145814 573913381 655095686 524249032 967816378 140500131 244509467 303208110 289253727 125716475 157396053 49976882 394038281 89902495 666498498 336710889 753702091 203140952 683094444 835770411 516315903 256830571 235680556 883029245 429398144 510020663 807188404 556307555 467848394 53761394 178249683 66716658 572300395 673540366 189699842 878354487 39212888 574350410 99337936 950999810 543243676 731327013 212120633 631406592 802961378 507238139 911371553 100632515 977405378 411277556 996771654 871447162 184328269 964048263 210477763 290403888 357541080 455373399 52361161 605679723 958268571 873090371 510852007 210376923 930810894 106615520 884665476 876624471 138128764 91345360 41557508 840838460 106688251 30701206 425432054 855135556 444094216 646779389 54104171 956810643 798768484 42265465 277769454 491018636 807414626 707470456 326781525 995353579 940825564 558442088 113407283 204687314 380008000 479117758 260858325 619266354 883211347 892045097 462210578 887853057 943794706 60738101 78241011 536568421 562073918 698509111 433697140 207449171 372492229 709943682 977208152 255508043 763025180 57406349 416620745 514611272 224276532 332959110 91471928 499807353 172168196 412952650 15236744 398255703 34175008 541772745 349972736 519033525 589252978 448147008 974950203 777830819 208524606 964465613 782577542 515526493 990870853 626241002 405366830 386492313 69547699 410599153 558692284 274375615 946484854 548932241 454080703 165137788 214736473 262755655 94059474 589275438 955831777 23245252 215681299 640986593 419048081 40675844 609280902 473041552 694458523 938312036 713333570 786624741 917877565 614158648 102392836 961109947 980048520 132590515 602569647 309855588 546672372 373208708 492630406 766366812 168798738 383985648 300008186 477529742 232227297 645632943 783757602 931756104 746385169 376175352 520628513 57622720 916559839 662890214 723498847 268821659 997860216 372330376 104106619 292578199 979578629 764965336 916118241 41677242 34938382 810055706 331944223 101848335 428766895 40051723 573226578 993055697 756169741 705760922 587566534 279014335 650559821 26279432 866398626 371579368 302396317 940700502 590862296 347812092 229944366 991750170 963738674 3665360 247779904 386078818 684958953 787398189 239787968 754179896 281385127 98753549 825500499 433576810 955515917 106034787 973177446 251332401 735280263 28444731 318928785 321602335 196538252 351630393 328014687 479709186 805564226 339709129 545644929 939006398 618559372 488249512 419524292 696745009 805502495 446328667 154136880 488691522 641745119 14089494 968274710 812975369 908239707 901650312 866276094 603710544 864073151 824773218 436935647 703351229 316144743 670391364 591287805 811170227 773061282 849406143 214197315 283517862 385058075 715072086 639289889 925092739 480729941 168086610 681432117 76863721 359004135 687297999 9106200 697002217 481845796 10052279 77458725 755676024 92874141 192855633 596399303 849756591 888000933 629634680 774377819 540526789 893046262 186960520 828672033 372401232 366589381 888107018 457725608 149866792 485921231 725594053 11253931 497035320 931197750 80966685 939374660 673133011 145370540 82803237 9110046 287524420 999812148 78148484 494627515 347807419 419981776 931669837 42467889 635583328 534708176 287491700 605404691 496412342 520146941 128340624 928965456 283393956 534549737 204912632 868975767 96319525 285029175 247289272 626170351 66049807 698611713 241587678 429770519 802013176 574395434 92500659 120297092 214926653 522691018 294130330 5051203 557295995 877488810 240462335 33196853 248882609 95701149 741048017 381770585 428295716 532263941 356641823 680173263 582584144 138099584 318972925 713897971 236541058 261280488 737604189 618479700 898686915 754394214 782559692 838258456 829535952 298933487 869836740 479764729 803949882 583051489 915003821 966763693 470827559 77759436 912641292 290854343 53844290 546378683 102645017 122475366 734379145 645368825 984109224 709118300 63818047 995144041 326473473 244927719 339375260 27571688 808435536 480429717 693598744 301856579 537332331 85923280 699294996 324927390 467986099 775540751 694579917 156954435 103459399 611869453 32918366 161745733 51732486 738147450 702146103 907553283 724319108 130200688 620245763 735653439 615873151 614661250 620818617 106416874 422216634 935012407 400982726 601625625 312047957 283678234 817725016 509186684 200446840 802494989 331389091 48398183 851510619 536279284 556867980 94995109 899333583 19714038 682139626 287358961 794899948 370948594 182309824 98715401 869646735 906981561 273262560 64938680 639169118 872563496 696109636 635747171 780123582 513214664 176806805 82625283 730178840 335010411 628380812 344253343 808357760 180572987 680538596 89450091 594491098 799869251 636450105 673460947 476257799 672658931 649011891 283415532 346889522 61172183 917032073 602705592 675021180 186861815 758011057 818267828 771896936 254265445 327896627 182257205 968600513 588448359 104159419 295114134 909881183 979969748 316819932 655402373 172676876 500481250 631362138 745540896 673494644 122757392 267914266 418260012 769422395 105557236 583395902 266705639 588299654 865902685 105176530 113623737 746600673 725209371 465269827 169788672 352745035 482427910 404383179 660402055 246701495 658538737 122343801 368268530 168646195 489165390 484093281 62107752 931364010 384605391 311464470 284013883 794935975 716253648 508427906 794561785 157559121 469384226 24695361 664357830 389680385 98990654 3927680 231128279 295569845 159530476 420170058 950462703 30951080 679610248 221614096 997051583 158242741 134738226 203350767 974741772 610503687 486598429 130763522 95317675 64156678 604019826 356006589 225108452 530030625 910582250 208598451 153618414 43187257 413633055 811039482 157372490 680191733 621879414 339023107 814813233 192348952 159889062 213564741 259681445 508568334 416836890 21931074 968000888 38369950 551771345 272837737 77702115 250171954 716284353 128027546 530958647 28754701 111602265 990580077 431636335 507144951 701398244 56880361 557256411 491337879 943985731 13895558 367689637 337806312 365465045 369212277 178550845 583067352 140040334 167073967 726616223 932263739 403101593 491640158 458615254 559128383 553120715 541884641 842504664 200570586 710952553 702525265 84830977 36398258 398436150 875148224 89513921 458878666 93355226 22542212 909341879 860470036 660838527 299543549 96400516 775219054 347360485 142208042 779923195 984409946 899229075 671045426 85072957 366864546 723076769 917332428 352327846 694609306 593513829 233801172 989503452 950159093 858608545 105812384 458857681 117437773 534248645 227107779 255353358 678862612 678056301 262784962 807331863 731162445 931109676 536398359 502605958 8268060 431569693 938237307 796769368 513194719 319994504 549842170 205591049 304054295 14717173 412159709 437642949 885506171 536519408 394856084 559654168 665590145 191462151 113065197 692647358 815498026 145921153 321689524 597333778 925896363 397100545 989472597 131228748 661752283 596671655 779655422 439250180 244662284 257226291 558255398 673332481 361512772 724818709 711201111 59943162 621850777 849784147 477621871 985067228 561381033 84299859 209808637 747222683 386711550 990230592 455041939 13273912 190189789 861806229 544830414 46825131 26079650 47306097 657648737 866862786 124014906 862847180 502651190 314235420 761395466 128491247 459066826 575068753 425292812 918719380 473726271 372684317 263891514 343272096 334468021 861309358 51154515 68977123 317315248 887471594 175420633 785267801 318230003 673775706 870561032 693293836 27090788 667233672 658121799 361092937 579868749 221297081 78444227 170444303 797000740 578146335 337643517 280101039 993243689 360127365 470666055 257941531 923700233 986286821 425242960 234264967 583736591 524409773 119346878 300664939 488142372 525115280 403622883 710027792 785933287 921965382 677195917 697795112 919733668 778677446 360802288 794263436 585071157 722076646 414071819 413161288 771448283 292311404 302574891 492785290 277942462 659328997 655900415 957682808 939812550 311069536 777350500 513617660 187568112 357950430 286273972 349836672 346139638 69677141 991134804 354916234 149301234 277955148 12345317 803856909 427847152 267450009 45140998 650032962 941806935 477674522 869127418 976985892 911285585 708203200 618251242 810565321 45821903 185575179 150192830 706472655 863790100 316090199 256280628 561435599 969306757 765984110 433751342 978193017 683422739 615674626 671941450 310399994 225176042 107807767 9886886 50884015 324329510 583394082 149110371 705972511 489970956 716392689 189125811 487663263 134507770 877572712 21870770 800954809 344077857 121009452 899887149 189414681 907798142 600066960 822035537 18985002 289991108 139673338 980403937 822355071 26333204 573800975 919778508 541636184 553883637 521430845 489472456 781480600 955015993 273970629 655673986 520433118 244185473 198070112 989236726 914051375 854949859 324797928 167029734 578898967 933184985 949273480 553646382 179871529 986833466 58774579 376064664 1675429 295732405 824210312 989157195 656780676 221876708 345956249 837122340 934695501 899682519 707536397 519403099 820109273 777778398 384853585 275298830 608899576 254939519 905613952 270527391 293415740 317457314 984810458 460761598 395288619 794290231 139025083 72548976 874640584 228945427 59464679 862790827 929112550 66224270 948398422 50576708 466248800 291070112 266649636 416138262 757390043 252370720 324391017 586180430 182917 753205012 139117966 717650297 914779721 183914501 141722654 987939094 969102645 441377507 420322847 350044972 428195078 791339501 840640119 999400655 309134683 630437487 766653538 230859495 704112282 787627297 214386148 209895913 825036671 948725049 10847477 786233137 34149984 956031714 981594665 783937374 844857883 908672846 687807508 965462562 583280010 655477341 923421489 826807282 407980577 554791112 432333867 871207613 7172094 531616908 34865685 507889873 944113505 307180051 607240408 482651820 477854468 686150799 9030310 564967555 994696623 435897529 164424098 711950722 975838853 219343392 662390790 440143088 106981703 867463321 2317946 698729978 846552803 561539010 754146956 82198801 969880055 684312421 611002243 750370795 842780965 119149308 349420338 290572189 223983207 365644942 23663542 951155151 39427622 143862655 567847794 671271414 721532600 21095870 488765245 415576040 244731888 424228783 77665413 552798996 524963604 761103104 935429551 344598933 545730564 408718023 153220345 857997718 558376325 402385815 650999478 566587024 487901791 954475580 829556015 832836378 281044555 732970673 507748329 402084341 329305700 878974599 910811058 742540726 273824332 678722619 771998423 212798567 531300090 393490714 907933316 218365321 418203997 193397345 337393510 24295125 474710213 950824796 525506625 691951259 271481836 482157516 234455031 507849348 534979297 994280181 244588767 197399138 867967202 233854417 493106815 28506281 675498123 779908462 68950149 143603778 714791293 47815476 185544305 241288889 585087518 852660881 692382002 744114349 596963243 100213000 382761829 145505662 980704245 979264198 355353470 322312668 226893830 226871666 768534446 267410014 900204773 802471792 140858825 682978029 549193026 584950491 969997536 648037900 313758817 133274710 885820922 644062824 165894675 484650918 131085442 30827523 947519022 846920775 177818431 392085229 797150133 30546337 682717797 36930704 998867983 309808985 407847973 829238090 243393495 746516900 349078 588916830 506771062 329855158 521844638 680530377 497208031 219078989 762950204 811275187 486360690 472986533 897957648 665035273 722563774 532995267 236415256 40401256 887072587 746670744 534595122 725162716 125923689 669241683 299644396 579386040 35966847 321378214 729044454 909193623 48471159 281822148 729642842 469504159 501350560 553588324 45164142 87892137 913638919 848309967 658151687 757968448 708711276 314804087 246332060 610131727 827958862 554765474 674463720 312986029 879649305 243523556 318100788 897301179 894169742 286908631 699722708 243395832 373194113 291608777 164318722 512934677 402009269 33960344 466160708 177485374 970470744 613210068 226776270 329005251 209529223 693260608 503895483 949816760 644666763 958074063 351485725 312428944 731949007 462087375 371464189 863305437 861758932 374634533 202567867 978669344 982674598 936360484 99049030 761003876 865916881 719246220 978887377 221534002 703675192 765305482 986057402 859714145 299640700 198979205 832294735 236885042 407846460 191384342 272109651 113230612 418429863 184692853 801293493 993722136 150829850 406640831 714039610 665375014 385177266 742577968 984493952 364019840 739416160 768597145 610805553 5489734 173780817 348489291 989343000 810961443 213553207 321024264 149322579 460053178 738649842 758413745 68506828 183717629 691506484 348959633 542405499 502253042 249027240 894205715 761529896 327534293 64502627 318288534 44599675 841887703 690489038 588187820 447281662 510268635 304838012 207653 905296922 904220612 249866907 959639442 824153810 569392774 306083585 44143038 946831464 299794765 237164208 402568663 108049567 164745121 100166285 132042051 71602425 563734269 525889056 883347046 292410185 464976757 895761872 866150615 473707993 315123126 751770547 147017906 532928731 486189989 561332399 8393374 776020242 341173468 778804966 665414630 568595025 574975564 625650147 526891821 687764843 626216440 686949931 572479134 314149906 261225070 841164516 510804087 286885209 746292448 57525989 525123518 742161641 523130597 731445575 912730518 162184469 124852890 633144108 160036124 447649779 675676339 330917059 744627334 805045032 928133058 686365989 274132068 859596066 540871371 129928988 191927609 214334635 444295964 251102856 592870121 862207997 112405962 381345807 865188496 131241593 83237840 13566861 47266537 225654221 459791804 413279109 583044606 9694292 818373615 411523631 892702713 484710403 354598088 752090 272571894 726671633 819098283 271568622 649681466 308757479 273240860 942113140 900722074 436589435 513515256 719238945 173763309 740383725 592219238 876923976 885457159 665846683 614134715 558854631 125682279 763174309 742174503 750192700 129952633 789725783 187218135 790407219 502702006 872724588 895096799 452776840 665267126 343070950 818290316 188473046 867794957 277657605 443719285 739844269 279695580 984350499 87897297 580536734 195690775 761927403 147557591 217067683 353846289 229358927 145625011 263366985 298379479 948131694 320217018 421125175 577507436 544545477 410482144 648833983 916549926 703451272 307072680 235881402 502171300 310576546 614717587 281146205 990448117 475636809 766655751 334954834 445237215 393776223 160358264 359247208 674921685 470227641 85844670 859202692 28549886 272221893 691673100 665310784 959929379 970739837 775324006 957851505 610150021 681546420 162450568 805364177 564191631 179732997 871930344 553618658 410078750 991811029 443306135 105889198 750136186 5926684 646135213 255381657 589968187 464222292 135115350 100447579 419934891 904358352 216211611 924604185 460023266 633104449 364665176 413503848 560358449 970322112 373593793 144187697 483572408 682800214 425253615 498002127 505602450 872170986 122665917 826692205 100400698 142542340 379547469 30974846 651833765 256996765 571120784 135561347 155507913 876694697 206340352 841598491 338232813 806542672 701776111 958400466 120376654 169071596 314831839 309263462 368148662 501894033 492531931 127286173 503937720 598249757 449061021 783360324 658438840 590201063 372551329 720552162 429619482 817301131 885049077 559315599 763512276 574170328 717384121 466867313 602455072 308360615 719623998 473495154 345363393 964595114 813508894 420564015 55552855 991908998 995897859 603088245 858650368 374274871 664546275 490146885 87348277 220759634 924834835 460728170 613124574 494694165 875672097 809627169 603014014 729283623 745996106 850777312 716288781 378881653 685417581 907819252 289594318 441704963 901335219 441080707 63089342 130747753 390310571 286233709 980387153 967937276 247898768 42402044 403289854 452458917 637473075 176429285 375981457 846403901 136699566 833262149 439332643 915101200 156612539 530311725 47735454 149704282 987752693 702201844 952578137 435482884 627907692 548469439 602557716 309384402 300768401 220303234 791605711 450781086 479049207 699083257 33858462 631150190 570516936 90032550 837567692 479360473 156025047 800451301 914904324 164785553 437470839 685722059 19387359 257662094 504099238 488583786 981536598 659777992 956173391 759106213 126624608 971726484 623063499 560678773 525335054 966716358 978645161 791026939 870037864 587523102 896406321 65538689 628448079 114010960 81321592 103628475 441247097 178485601 95992037 728009656 310415836 333963468 237881655 253451634 782924874 562382456 265032773 750922478 887792903 770896348 135499658 989129077 245931680 336860727 524202012 336510715 754173514 509643221 925206858 262985655 271890973 884252367 813935541 783319458 164302170 638805498 53738993 804253380 16904078 529798190 938532589 476014107 238081359 878436619 126260817 364728634 636515874 65420890 468063209 183878529 910522213 934678727 980292913 574260550 27977857 721977098 234651850 514436912 181167971 623112368 232116345 470186609 21784744 276988433 952787298 46823909 214753686 697064055 29686930 360318520 853248951 556516617 828216860 436906333 430859903 646511368 231176279 939703246 251584816 511992693 67463188 357951844 525629595 87860098 991713950 170882041 542272995 192061432 666795293 301054221 196759931 222681381 305494491 683171520 443190244 118531049 479248345 275820447 336772084 991333269 407090640 966809115 303655917 520897534 554118279 658427686 945291397 173411023 8402874 536866252 454703672 752644459 892345518 240886234 653117338 904141230 925232526 766830596 874656931 141862612 271868366 767877557 483708503 975845167 690597 456481118 432349926 880242455 559717698 961706196 829622303 160354111 908973681 718427748 891127659 810854782 517339201 399261868 878558240 375117538 970162954 302347156 214399414 454687010 243724624 827690718 640026032 173693110 440733120 752154903 214346798 763371151 376322934 676401646 382118416 211463429 40901017 166706048 660386697 90041076 918482678 567126923 762152182 427237865 98571323 986564028 653838944 280528234 154672046 866705686 851969598 945516309 769211618 288602985 814318562 302592826 437738390 20098118 486110605 778431727 138610292 109110969 140967240 257827465 656642937 345000997 858781678 320892218 688410889 804698096 534307515 988402957 879954224 886196123 438913038 411639291 430453897 658042484 421001841 374470731 798450776 173914096 488238061 338754037 38728810 34560570 654637774 343903227 417838615 247074627 765665289 977198038 674806575 190122942 100900675 281651746 540590227 99183467 794074481 147494981 42160324 472187078 412304874 696151270 131603764 721385053 259632642 944757338 27260326 106171779 46684220 665316292 458409464 117126824 662996475 438057492 35350394 983892116 427059584 742946662 798838708 133768458 787658296 175538740 505183389 335498526 956496117 342679228 596153089 893131631 53974516 99102836 476656681 29858173 364798371 563288178 816922318 140331070 482439417 571464382 545494386 716834795 423143934 126163410 503417159 992760676 68098727 678275802 991361280 298767368 728180973 620940668 995594964 797329324 271103189 873401419 618377661 98713283 588104006 573599629 618658263 775269213 204522849 566227981 454458789 207536077 438409899 996051425 587785404 444583453 67340590 416693035 418423105 841450742 311960159 783880981 151871677 845039292 992874088 676892044 565625561 452724497 847703521 116599021 637082382 824267107 113052527 257240449 53462650 96782921 967270815 915267432 655104603 153361086 619444696 539895332 312376636 734025395 546775712 790797911 736858026 179621701 185346808 639491707 471768949 835301613 154513744 469225469 60102715 78475303 203312900 147040398 985467731 372991884 235822546 213759498 874891300 582010160 352900301 876400276 81497759 481307173 373510104 284224883 247722777 664188442 937175893 552853054 413896603 605615660 768292459 907543305 574102564 714225963 602526957 384974634 22321252 897601560 802139531 343375591 709279998 285096161 276473552 788602516 648082958 326822656 979706091 564251086 907204985 263731422 282810656 745220196 229544632 711310999 894357402 313441859 70730067 3797428 360103610 371614040 473778317 956070706 952579954 226371976 687287205 571883676 835489451 171203025 203631971 347383695 468078470 144770402 171895052 394243509 629445788 542236034 163825667 597109649 678282618 534721595 441608277 893663704 619603006 134427392 714059062 516490568 532688734 72700960 370621947 152833666 871498579 784709893 908765151 399910896 536865692 149381652 906765850 373532514 227333382 489802173 205616625 276254960 24768158 848641251 870792835 81280240 776875468 159233008 776766747 583607857 344658776 528201110 212624862 533924890 277023238 834041436 76376383 823083367 307412234 87186710 563034311 292134351 760355507 914031915 154811112 50805588 993781520 227912833 274630239 394198826 451347459 267380699 974390255 818759689 904387788 249100539 647675152 947476573 666923585 930147109 978582665 514895133 430672734 724579289 193387232 963153472 752848426 177092416 45674940 638962590 425756788 584370652 661681238 135911205 662423444 219617243 267763480 316163657 979179061 547996332 956489613 588405570 847404292 679888077 718930552 824284562 886790477 444978179 454713458 704196979 422231749 749508713 345200689 947328191 622731390 22848529 116276775 343238986 351104787 632864622 637204678 755829934 136906462 179644384 678244125 623716994 156003441 457400720 77712253 864845258 234079530 64699945 848458753 99676081 391616562 761554793 308356702 489144324 280360455 988594577 914330992 121916697 975715469 990934962 127317531 392030016 997385753 93753004 760322261 353374981 74497342 276402259 731093069 842860198 653060733 403874277 736300398 948954299 586428624 4225240 719848910 60525772 266444686 934736655 285159687 339772717 713912950 609286520 558683706 673296963 640678403 572796779 568038483 677846360 446329572 227188258 486975807 631442208 386726628 650085350 721247944 937059587 94216934 152321143 737806219 812800267 611486843 322245840 336463672 194803871 475486141 222365572 453981631 707452814 13005786 730916980 237249980 197820592 337157560 646739682 239299542 831960465 637846751 8037099 384279540 294405395 205819036 464403211 790326842 267465557 980470064 234709949 179838980 842362295 392978411 410540284 685435936 116364249 333733026 929330823 774459175 513592498 68629239 978830930 318976113 87897807 807605743 550324714 32805137 245287061 287137573 534995897 937374889 567202893 206667043 706952786 256793205 492121402 715132853 129708604 995096813 73370312 408618063 550700267 860060490 325567315 241691543 156404460 147657482 263192553 580141116 853190957 576248273 7454900 430166918 389530627 145608556 53965758 465485415 947960688 766807616 641368274 430847906 246817675 100625 459971425 17032887 676539996 556588157 726503335 499286134 485963697 782595559 212189954 710873871 413252026 285112923 241310061 206014853 550189505 134266265 924785473 771873296 317811631 628836513 477774599 406262165 90141380 849959098 939937441 758985245 567530721 250399288 424733830 762196454 882924940 830795821 715620873 861376281 113031661 575414723 268467942 259475120 892477696 405261892 403298095 825049139 905079936 800207173 554271542 403429502 648954834 409004014 654660924 717384261 274808026 932896019 583299449 204971684 684883639 303802879 856927009 268749143 336279010 836524310 620470953 421279358 263617114 633097740 415592104 234104361 363798575 469135631 23433232 575120995 401055601 859553039 26748933 105035683 726583977 400133500 842260078 470550009 29976944 134266653 43971562 965491514 399759426 653887536 257005797 601062196 558975815 872922847 26440061 623961202 534660122 671720212 535341640 871843044 418777303 197587925 563627734 7854769 78422586 643061498 690140377 562326034 988951252 812288045 471940314 98038150 746523325 21781306 772230067 744157870 76913664 160220649 109997652 670210887 196906507 595624357 895516729 232180906 475210540 494162673 925531912 354072130 129112038 705660569 548776215 115892030 106039044 292758191 625963493 85305979 431825590 557029208 609660581 864852653 278086917 968182520 900289838 754981431 281674722 757818607 877411736 34695871 138176225 149001368 305928483 531681345 410749858 537474489 581805488 526564946 31407934 584355792 109514252 390068238 11954949 822944498 690312124 760349295 730611272 427229598 649968502 360844132 947686772 9347598 642175407 705935603 587430126 542760698 76245803 807876523 948632240 375783028 471704266 445294418 494146434 128232743 943816963 57624086 872325769 333851021 556064480 857015031 464985252 211539343 654937206 388994405 744574341 91788179 253234542 788827140 941628878 582325221 325949755 628865568 447740979 742566154 955650585 104875870 203972175 473300461 94988413 234113798 550620354 951814013 788237714 144652189 300627491 834309559 460412791 288707765 799672501 981894696 824934426 157299917 178191807 177402836 560667683 42055576 535437597 672234621 465515947 277947080 832259753 839646632 136285124 765568064 425805897 785000374 84027528 904097146 549916616 826191798 683653182 524617214 983137305 343158537 688828656 713810061 771068734 896755881 148340904 425753451 540006459 910268480 486198478 310953852 922875916 516479037 871307209 97768857 419949116 14814843 404677147 683691710 585789297 688130386 361914332 600322392 126671415 11417700 171671045 22613249 64281100 298040661 664446509 804432016 614144073 678634006 208463386 730114078 578291139 33226839 974284976 299506045 111068482 704090348 338871132 83039407 116679933 117007854 858379494 321266873 547034082 986738491 877599701 164497476 832462488 235899433 20827111 646778297 808001011 422974530 52265827 583199562 313413068 407734189 733432245 448892126 869207630 326047383 646862856 135839469 643062611 26318433 82270051 596378868 653207485 141833958 648406490 417026350 536566699 488555196 392714676 416851318 753542651 523129419 390081702 972870610 78521387 903265775 669812581 140749978 131538829 36965178 215754822 69649389 661629261 398981913 558114675 170952897 786788569 367396592 91610117 331872463 243508960 643302050 947340543 270802290 460135399 131608886 539916101 721188659 340992114 256589426 300203085 678730280 5466952 394554901 33536159 687266343 98570958 121133507 123980032 886387990 96040876 630008840 18703528 40007623 548417435 359650818 360351169 723315499 706721062 356886629 76948732 692460774 8604791 664254848 461814746 489568591 915716390 909908681 326863725 493372060 653648127 493062184 318569988 796273993 159679050 183600958 597514891 228365900 578661544 820421460 52191400 611775994 634831543 701009648 161560154 138295780 211130192 44036047 505535354 414945564 162424770 236244427 193993557 27899398 381308069 549653425 508064607 491402741 133731420 583890587 53235247 469669796 389436979 541672275 660725988 604568847 367203681 101373684 290952204 308920634 80576204 808486087 556182698 329294138 753380772 892525215 217550460 838163902 319454675 904683133 539836704 773809883 192181429 759777781 3136130 996365795 759877010 448014525 325489594 225929812 354172415 641684224 82709549 328054722 603305001 445724098 627859490 652435715 500085554 79347900 21174387 209109145 680668973 68018437 830572123 144661421 993182637 744068476 118736124 691785489 425769038 175489028 176819754 231855306 618723569 454421832 837288560 52128891 366550900 239622565 803931411 954255082 768370016 363240501 862226173 174901778 581733058 240123535 696940970 184371522 867521174 649659221 988420176 414131083 763454272 800013226 641617240 543538296 342785816 562165735 452954333 846396285 691370471 849728010 165428729 684794078 473146719 609926447 439191723 145435343 409669884 322048077 339877636 310129711 104961132 241847773 882623384 972586841 403005573 651174460 31484940 298498870 394263375 972965742 138540864 177090610 670155633 169530166 499493462 10435775 355290012 734852781 161621549 943386668 602323987 794977504 327820806 698869305 303423649 352413102 202196257 345956099 194029478 746257234 838313091 432667317 292383742 297551660 710596764 690000889 845462733 137013680 971251684 297760268 603048935 257809316 904094734 962178332 879220967 280224143 416802535 244100430 256578586 222958567 873509499 776285326 472170947 630242463 697784858 506428692 861671647 954545182 206709890 660416549 941179956 688606871 655615197 388805475 437734080 537528914 51289534 280363930 706756887 634092308 18545238 757218910 663048963 365208107 36307988 971973539 12191435 300678378 640288223 683979212 882150964 402538591 28219017 378382297 538027418 412831917 2028889 448454602 622116584 894723917 209099607 859085922 115394426 840134975 779953994 775679383 322293896 662753876 155299343 35944305 277100054 330846380 299681559 447477102 630686536 322279964 226499255 454830869 561661013 433783894 290238501 686313209 415307425 556886758 777086923 400460156 595758725 234633523 158721124 952871037 413905687 12310582 948649320 462548969 22971654 803088250 967488924 40606397 568173590 482710803 61533076 506465514 347853120 998260719 949504125 960210230 755590538 341622730 12599311 478025661 159508103 189412910 560094423 890873856 815915195 818422606 541584499 343719654 662521858 94988397 922695281 293250686 284160028 935245256 332321676 838070952 374636991 370467051 580227623 32729833 694015081 390176393 570988050 293997477 891575971 179429245 627426546 990486938 751687200 191012811 708382231 101471245 643996443 574878808 549712435 441971923 918539242 232113444 916993320 671467570 434192358 373552323 393819645 108535667 182515791 42969178 616796192 274568711 873831723 941248851 970749001 827586905 537824486 251821781 750468908 895357526 150517701 285317459 3540460 643589263 251812921 762037547 262470751 402426290 687349381 565397949 914616133 65617114 569933832 453215342 84409331 612999735 300996598 260510239 53932611 784162573 708458400 887323067 496965201 565723739 518207647 745262852 917591802 663414301 538389257 458017368 403577347 882396640 803751219 150905413 910945499 927122889 949697863 448945043 159527411 959232577 733304236 35140438 340077553 440838217 26766153 486999670 276068432 936049794 584978360 260603731 931332870 248319537 495090100 235995526 752787672 874510482 922436531 942698212 764148471 550772774 672355718 447487776 248115881 172755742 847937279 717255509 349125171 530924913 949839410 373912869 45029726 163654958 972638519 82722855 217885233 758882314 261672632 950724393 506122437 870531214 661695095 618145952 382506202 866746243 500510838 386662942 588745031 59847321 646904795 101278348 75211830 163551390 225044934 554504441 641099872 624919984 402699673 80543530 328137676 236898674 770243554 429934334 546657878 617721429 598414142 442352999 126813442 919290899 863146127 416011896 779529237 32375857 64864704 588914963 238603890 129925573 628814588 957996382 992281957 178632660 273066211 544623231 924076712 715640256 561614325 880576274 162408779 663580048 580618412 863722284 346124399 115676468 338230142 910597241 206908272 529743367 598125422 212869902 236678103 236774223 298713577 549654321 343910311 198980923 118623528 541779234 14464657 757930983 314652289 710298197 20171314 844786014 711760386 839273454 983013747 706721023 332488872 53624840 625496017 176044290 255212406 734333568 974571339 660228426 271641698 242491857 28340613 806485298 654820502 147104473 553758983 439819709 647112694 300561830 450505452 29012433 421696716 296746542 550316836 85349223 465754966 220944105 23859390 922410888 483117552 169020480 743535905 169377400 575929889 463930690 327552892 139533942 352725836 369328577 906280284 439809670 14561536 140305057 305785260 619576470 458132881 102831222 300538292 46428142 382551214 605399141 440223494 435450631 66659930 27081861 810448862 386216563 214875005 363662045 435409555 866790817 767313987 907791437 374717114 713006517 923335072 657028869 602370376 300342872 549947471 541354512 855710613 678336626 804484610 784506367 19445645 737552261 155745163 230368101 712713171 340097646 34126489 744755434 876591675 466347179 792468595 407827321 589182108 947826654 748626807 377510725 109754217 543543976 149594900 44103789 379515057 38566387 298063214 373031301 691204755 750246830 458183625 850503352 937609161 616260962 10388688 869214338 2434018 571038045 266480545 905878409 233225078 339878526 794989675 115116047 601568611 589363544 738022231 715610151 263481988 554620839 96369305 976216415 184386 206174449 582692075 218803342 926604619 634984381 608738359 293622528 581290582 49069164 421738414 402832654 638610655 18063948 211800673 863162718 21392765 492037776 190034155 289865739 697674280 393676389 370174353 270178246 772476473 522787849 433773596 264520210 928785015 870528727 26286018 932597393 416116166 23732096 362207359 512540742 977717975 937909114 624150888 593362549 393267019 551277649 455843954 772381102 318954923 947778760 516652681 754986739 62040214 69379046 82185235 177042745 869939488 766223723 67709876 389295013 614711215 974754523 392502031 26709830 254253900 980084325 728632053 11424545 200615672 380458303 612786045 693608117 668069746 753278095 165747815 181865946 632804849 62231873 750250388 192634008 88803808 774893208 590794591 949670571 570492267 134127663 519662288 54994527 528920778 616877420 111278580 331509236 729805316 406629621 873414729 159960380 691678752 133469929 64482596 650814807 583544638 421809344 371300428 692035392 337870275 371768144 26968252 819427462 670113080 663646043 491927402 703269519 117082586 215367252 100579111 624734813 214408073 210733113 815116258 448539152 364111452 54825153 554064546 236486220 575061625 722804741 121782694 907360279 732046199 419643027 937774770 985807267 47704112 383008327 405445692 799500316 56034360 353015509 312819445 384810415 545884694 230992178 920313164 233744154 738590372 324019987 434250457 156933576 420054626 571581543 324414531 596692824 804070924 47284439 863991768 830712905 179711854 962933594 857111423 445612649 786990278 195028748 615731934 658871989 882982195 164900673 702846837 108315095 463404960 258444573 466746662 743418856 756327479 486395977 189983664 319099681 221522580 631606455 741223143 684827872 604249048 783862348 610680153 999156942 38572184 225675715 329004873 62289662 83545345 140180652 508602783 204207466 699229854 355607413 436425615 685379468 133662218 996812154 374204664 487143318 143344380 466466738 585792832 722659212 127290016 163842910 661588201 769248163 754003726 290148767 119112375 295759448 872520783 697691004 728418106 533851906 504063434 962975983 144611926 297046716 676395339 151748134 781564803 717130724 932034916 275032644 256958779 654404984 11818494 522058896 5302492 353137404 607016177 777875994 176005903 575092713 554018917 839792631 792954202 964777364 850326188 122134147 53107738 64944341 107484830 399877396 269752920 38925335 178818149 460443986 421722472 775969845 758558240 275709057 511490399 921057681 72141068 917243454 769954023 369775503 640960400 720740434 433286534 242090497 632212205 133078799 429831670 313412402 337434900 876433258 341336467 350375908 747760765 296119621 708349440 59505937 991843357 480266374 781701496 193775278 519662043 292587175 439171287 532325947 675462966 898831890 829668991 168480266 476566218 269005445 357025981 506128300 209284090 732262973 268879084 499848503 856684806 72582364 542677656 167388760 890988321 387440313 113728762 429239465 931954150 638535901 735575137 983017258 628397568 549002406 961696066 883901610 808323784 644660791 863671948 280594536 882515229 361059639 651889927 300035638 567397594 987230527 476378505 374656374 214559504 933907334 535332826 453818785 837880824 607342293 811464982 41159916 805700009 390979170 408414360 15453704 648053645 426121323 493335929 470372061 442041168 51029267 972388373 316187303 535422253 735504283 602273077 217942294 829118960 483571399 978822102 821988084 804667699 342969032 131754612 205869030 941428531 26171168 862142817 738094906 600130976 529195469 818694145 466550399 917014109 221242870 44110359 875232951 929536122 762630938 90455202 375400260 656047995 538160299 255037815 281077711 864738829 351778776 910987721 438694892 660832033 69754313 908835650 935205552 718726870 892725298 608562793 86292330 390271907 277631296 936000661 914626976 283122273 691831399 206670094 140861289 162017996 467795809 58587876 856864973 710118082 244374201 449484958 93492730 901429322 528824984 812377115 32007749 492475389 161625615 772822534 318608107 237759001 422268214 461779817 867774221 576455840 50185291 964156423 273384874 706579079 227175937 378013255 488638490 818990337 162443473 570970796 528095835 474282907 557492425 103855912 914068589 612616316 203022349 726141043 517429082 317280441 404952520 944458798 820275390 410386499 56975390 889240521 686550309 637507784 608914934 622129006 446414928 246857897 251704094 933512126 225062797 262083591 787476717 745799118 339632526 65696145 959696679 547244234 602340376 628018897 75805930 838598842 405416164 596843455 466970194 582632098 940293116 741697302 186791652 472350611 640175931 734767096 91937171 886229664 427992255 17528251 424354569 942685768 55599019 57157620 339824703 826947697 245925458 569225014 142169085 669274994 906658536 479629642 477589965 437464163 36255094 705771034 545505172 911940848 761945748 280408335 787859361 401254523 544930170 263376547 565451444 699850111 361700153 130359237 845335833 105013193 912382205 806589666 769969202 792125285 462304871 591800950 281532051 189959406 210616296 332318086 368043996 463441129 914435654 23817413 130974161 857767003 643864027 49659408 657743237 479978917 801788004 321882535 814086010 996314276 625813968 918916729 204637392 671623437 204236462 240568388 35583606 194114382 363208159 817248042 972976432 302606615 711768142 100871020 495277137 465902110 318570383 73779612 538885940 365996270 839697285 221776040 141883328 93953394 849355372 949923719 677746961 774480951 350872357 526759298 865649797 781917047 260616373 763656442 898224615 319325629 4339998 599922379 509885585 833226931 795333942 974619277 63990607 756157118 467571060 338915305 804678482 597285178 876232943 357699439 934200650 939220975 62648908 322384451 857361802 57582546 688063398 330309817 669711287 228717489 240309191 504477323 933114301 49164803 854303898 297320088 524145926 613332894 28832991 756766372 803756255 991453300 279404122 292602036 659955596 608337211 174615398 585709106 770841881 434689652 341030768 563668801 110646421 930252782 669867600 577796529 311621536 290968670 82515386 937259899 958441322 855487622 157487045 262157541 442801827 754389528 213894983 479604713 195288112 729152018 517011612 669791799 302845162 694468619 4755342 117740048 238333294 848167606 709881257 104408578 553313917 596504027 201690088 575547949 784444110 121929804 148454804 612169965 361243268 467962519 128434615 641686949 182861176 522169398 196778267 595554869 272303644 91344476 467224623 498600964 799079234 766014132 997807293 607485073 753769543 100046421 329190075 805978373 463146585 835074560 392488888 249247482 304830502 847485508 465927678 647424832 841918357 943543895 768301388 493229996 302657623 616431605 404629647 824846187 721010034 649832634 212054451 179264067 577601390 986466991 468693715 621857130 450606396 409539488 850076582 677752954 70355058 440121243 681102616 710755262 225263878 929731658 815344110 743113233 473830080 384991998 37439872 751902164 249914033 931248416 801118383 25635868 649817897 972206737 94512161 621769010 863202860 849893588 286427221 969735057 406421226 19761730 643133858 353997933 463940505 17091678 748293070 230675277 969014102 277010070 799660454 929916439 887294601 240705460 143210154 72267292 996680439 400295848 287471475 139823114 911105125 87450159 180877165 403036588 2408208 787482596 931620575 692305116 480727052 2921775 731847690 572626561 243537318 673179252 216732779 418734699 689071988 818815678 353744386 355056173 459593743 346247675 328923640 614172804 462412190 25201862 516489060 431139873 791415221 189912911 354630550 881305423 117793853 204199339 509521471 129990482 831565674 438514225 515213398 683372632 66276586 700723382 512654889 213841665 745569444 499740066 956112049 678646214 923508515 96491442 208082815 938387919 175718917 452103395 170245352 706842213 494447016 333303867 856297246 227045791 184605819 847770186 395696831 229426116 358544093 878411060 991760385 13924500 762281789 373489371 561833075 660373287 474416730 9444014 966412264 378568171 816163860 607558506 539943403 274630207 385270638 463062755 575536359 475805822 32954791 359204242 972828285 468642204 966820662 692971654 632979129 558121688 386822699 514544352 677717808 796958313 366985397 362569915 341271373 483573017 2175803 745619683 785138777 426334759 13844154 360244595 868511936 545208885 160965337 789612611 736309246 370246749 22483105 869663691 44242005 287755722 814769991 507242196 157954946 848672796 183559951 219850986 767894683 335179355 914299801 717641318 812820702 835023838 594728937 234284674 143947096 467200036 36482680 648373902 27408222 829215557 275596771 607126760 537339739 516880640 307044729 952035594 951332667 178376310 289115860 99579650 778445378 948933005 83328391 470933055 751710157 31587355 709524985 19191699 806399120 326878002 589056493 349299670 634904592 341234540 693920735 916960252 565937947 406220931 219009814 652874821 809531444 635899466 61922276 630306802 436078507 678003201 428289735 576060587 726128420 151952554 373564521 75334798 152645737 752155331 71837222 391844066 241739667 401505804 441940011 76865511 812383544 278402952 147338602 685156729 312856558 274105716 601864554 423824301 262402680 707575114 427236432 23269189 273017260 71583709 734046500 45437039 856726006 211789047 717749062 678468545 428236010 801931090 942034183 497216170 990951420 501895004 715378877 898933030 105383136 354871335 160128312 192744164 570750306 719456578 490524133 3579230 563730542 142079020 875234826 735734617 29942603 193222387 402717860 123996345 367312751 299043654 387498678 538696241 928470553 563631356 142491116 159545636 20552205 91740978 637293957 765534598 199574326 772522460 662358818 678804017 523477202 843114240 678061622 443671223 45051426 204499909 907348201 76694088 410759534 433101175 496260150 873635848 455554762 665465342 82079297 106640532 710349617 144541017 827872344 210006771 410948568 403100334 581365102 800544894 199779831 785849593 876037690 994003775 724446176 311678128 473089476 832671574 717115722 842361113 342526386 667438015 88062536 430578021 406550878 986241891 460154786 980151607 48951974 484186333 956147547 89376352 571708464 242990312 822486854 119393891 530607412 213447687 958868650 560393393 288923955 14419657 807564421 153327730 491718462 59828154 673270838 43870153 915747941 88168833 817133362 393686932 668699440 4648821 504780624 585432113 95269678 889962477 399317422 695250813 604380218 171269705 583992356 130212072 395111099 389069548 659037886 686781862 960458584 434140863 468756662 373557775 397401520 444531513 805823294 801316868 598481086 113379328 427331716 516065377 987097863 90160928 106049162 397910541 562030388 60157850 400140521 394394195 302429110 300358900 671600705 977139539 266920680 655163145 761912487 936374177 383447644 860166712 826018285 304318841 465175360 543074569 883551044 459324293 817751889 909533221 673646276 611318773 682552980 330967646 154219827 750066791 651590601 543825847 382143493 848445766 293891030 265791640 422612269 505089981 812304737 310811226 245120735 414826334 755218205 941383210 157268265 444750051 868190720 753765791 213473758 835448629 853551224 799662377 136866298 89081789 124991262 407354846 384502726 922772389 550658257 71478051 378005967 482864562 470776513 566244195 21517790 780063510 410506394 305780802 859155150 489028924 463473283 122546616 155914352 908468319 528296539 383952845 635587974 183176510 931404603 316847909 927231960 839177613 893560779 202349071 335270701 655338701 969752566 608387211 110197927 648433952 556422539 446329880 271085022 814965106 41825377 618265742 155459964 540944646 137606254 590448637 707412077 566922133 971382170 108707782 623908264 514515298 331850537 559817323 631925870 566553119 437121867 744466897 412447532 875127287 671872510 433944247 477285022 58235250 398075514 610887149 596989594 214086615 117402995 734646958 348551708 206796181 452966485 652347137 370126695 801775838 220405041 995595228 31480922 307425965 466460961 410153264 546722147 373289847 360172104 750628294 491439478 522380281 997528490 661900948 473172744 617300057 197217332 250419598 207488269 117175481 427713909 404751342 289350073 53700040 635587441 627742964 384992146 924003349 542895691 21701073 330228140 700029248 123243430 235069891 217416530 954582745 135497845 268656157 523836787 565339988 215507252 678011870 465050948 968202704 707915174 318482720 155716871 831882659 101262605 213723070 445261750 385442208 353851972 374904276 265117864 598045053 459639504 719862200 604077425 458754940 904958404 329059532 225928943 711012967 527610055 56756187 787943777 634817042 744842488 473407547 107360969 929033132 167311175 733579705 280989052 539816660 639532907 733702758 614323593 810161855 104412311 581226154 121501728 352043690 914539402 121666791 946526326 948084717 987999513 34850785 959468586 738753263 918548333 173918458 559460038 294321715 385479784 745392320 104453658 57425517 623049257 87208237 980220411 661522709 731923448 580682997 575212715 85385981 450722137 691883131 269218651 924551533 499402073 435089335 336449309 943175532 679712880 582501452 72998526 530953797 163548589 597741256 929670656 652999394 469330666 118631510 126404175 484119754 713083259 365264218 222382309 559199885 125408940 755080641 809306444 817698562 58914837 433823741 929349066 658993269 295568356 131474285 734360065 291456589 469442625 951929577 827399259 118663234 103493498 202824303 821963803 424672060 685414586 331530354 378330251 738676380 580243227 391039567 140949336 524508535 513593969 511003292 156082133 658125196 571336038 436435808 170761386 301313462 633711623 764401688 212136423 462916775 535518443 825909695 868137272 206532063 558303769 860703111 686323559 214235341 203715004 536164245 184340889 231235763 979392306 141826890 640423309 383699945 41632643 914793243 44102142 779659679 860664178 4531534 771343662 512373871 734732313 6808281 86586054 445503541 838135287 287785757 924964588 367010557 859267588 537318070 804165821 393024169 604585100 187662770 697995139 520721568 439088029 588567578 479709458 849037961 443901025 349739621 366594771 645740153 635527638 573128164 999988355 632280972 243227010 720675877 137674488 303426512 671027081 741676252 157625709 673792941 802293358 25042360 821812133 857529934 640813161 66502012 347339320 630617750 269114395 431431082 60112277 715081393 299590565 234278869 742116009 947947538 80523942 278829586 445319276 225215698 422192674 906828816 419857473 163318503 841675925 332360259 456263966 406703880 113135691 606911014 949120105 98024567 30886268 390848226 674178686 607710481 394785652 42321857 666701331 13402926 895678636 442440581 67885454 699019212 344819262 563050612 326547763 124246904 544470203 419860841 839723491 3692433 278878747 3889420 188666355 240025786 666584403 908235977 449160906 866935058 969485171 628247751 971851793 377026291 81658518 828759626 683419959 302094476 859979552 612357466 135452176 921870501 454071789 239801510 547832018 526344520 510309801 395557590 961774321 273417834 828614670 19516156 676304651 835742425 428712992 337343870 600432144 792322669 213241272 989770021 318808797 51196286 669094925 783872431 836978475 425752016 895893750 760666391 537694635 370255761 424908197 157399430 880800003 712774188 173637750 715423691 29404131 193720192 185679687 425909418 814583355 524163693 64924162 877662337 539772465 3519818 72701610 316968519 764725024 802347118 242100387 524042214 211090696 860460922 388165133 555980665 854301902 21637629 961285044 292740503 463353880 917585844 902655209 197745588 218553733 91567974 944359130 202669255 575091176 331194863 543908815 444291345 96302683 948223960 907206493 758296632 916745467 331486934 366585270 229980383 298417978 584938642 669237509 479358504 502994014 957409515 893097021 159283855 458410724 898592649 547753857 895244115 824336474 463362681 857404211 670869563 897218540 610793026 414274375 629139463 503719274 175025201 108622985 926625956 838382608 368220044 557344509 721898153 870848719 331039479 810033761 921519361 382456454 132431655 331003565 770184137 778702237 373945850 24141673 421261492 723282811 834984494 804244618 906105515 339354215 989786060 43248606 554777227 514735600 286109539 122877116 904165287 552082644 728668486 418998214 984618342 439320466 764949289 221856705 327609038 830862426 121798858 305923887 207217139 629758936 570484446 762759414 405089709 420873538 893691363 700029810 591619358 608309868 805923329 870670395 953340143 759886811 13409224 106749484 142869470 4932371 414094461 10463255 454786505 964600973 454587816 556095412 102209063 273402821 362890092 871655765 37346602 329846080 971000311 309841141 102134016 21590099 403209331 692637658 955282701 457134997 874410056 890102572 84106814 468600732 783091091 491237855 789022641 961375540 452719882 864639672 434347025 8858270 560616744 573069339 931057800 565188832 419045620 347378082 805426190 542893238 496506785 659176406 160079306 994528698 890836600 204916725 383762736 281006223 766705405 925404339 512827631 685961047 286884401 541469370 738227327 101462065 304218455 134238196 838732029 366024133 982271324 651598248 810344293 45389381 63091096 452974188 189796013 407741977 942896985 245786819 148892143 547774863 984653667 719986498 232502343 923066416 912449371 528512698 997817413 695175238 822139429 864904720 675652295 75839048 557911175 897406620 616560338 38626524 570182115 598754298 582557584 621666285 88885259 390351273 430493992 799704005 425636204 499614585 795288068 662539442 334767072 495145664 263630972 280083800 573373844 385355390 766733225 651000817 302184020 667408671 816348560 845315723 889541641 747969092 187740131 358942254 985870253 724853999 795127658 512610314 837915420 569142603 303287625 780818996 580460847 442290616 442057414 185816619 697036892 958055007 106928740 777280912 561756900 33701775 837930814 981679134 540000371 204345661 570229652 701107512 296133600 79380004 991377417 223746869 653373457 990844373 973169645 140366064 541360089 409901826 490599558 247265712 568347568 601023483 579064566 718423536 75865256 216052997 590291742 806881223 612724130 495001591 135927841 301111373 442879936 961284364 452480488 430621731 107825846 781105856 883963391 980326147 114976150 677029387 596749430 258259513 703153855 472895458 89385400 996921287 554664574 886441911 957220497 836159895 811894425 551365288 890274841 333975838 219944605 526213706 185432615 643200481 489269372 148107024 924971913 510330579 996256822 988714053 409634233 3572055 894641130 5329823 325392158 736197187 525578028 986554851 522289138 983479851 832762119 943564487 975584198 266339041 195819620 444243308 89155883 642086097 196158337 950289009 344561501 296135702 691209222 701361542 545557608 529009076 938054765 493154261 792036766 203686991 581048674 672570756 980920032 670421230 472612736 421498853 455745699 654611134 687709467 59353515 291334394 287418026 748661099 295660626 536229503 354747438 836211097 329686639 935120621 408128106 843044468 62569699 535619040 730718148 67828409 386443560 289714884 695309383 113736827 897119545 946373133 622911594 59636499 591709931 806802774 685984391 116750088 582426668 175296998 66534076 193374157 195313834 447307996 369730829 942202260 814325601 568339322 135304688 513824685 530584783 282133588 787842389 370234997 988356280 741728665 882317391 72405522 223438647 311967044 795481586 741103865 485781709 767142287 128854588 361688289 938699326 379719348 613934355 178564543 886080422 354839567 316227505 939705088 83810511 831174273 990770996 231214590 74272155 517672951 81089095 776878477 397602300 839793689 148900137 614423402 277831791 636864914 557901035 451760796 110901741 490632705 75223338 567371671 166504402 788608927 938118370 955543143 200214884 639062165 865485437 726324786 909939461 562689444 353530081 892938041 870058051 137444063 38465914 381743684 233888212 268728197 866555036 840273956 634040542 110206601 587272585 616535917 103779596 48036858 491762680 448039751 705826423 766091980 803474274 251210498 895772072 543649551 966162544 458628358 12270225 665289075 118480446 570631410 338196235 748709758 19905862 964104114 429443743 622417239 633339362 710008227 467119014 805589617 266182631 518583279 572657066 423365363 822327849 92490 541842086 166921473 484465193 592884396 892918893 587764785 206700311 878285353 648813748 882325414 594431462 89666533 24737862 301324153 153590677 686509818 629651694 226947515 240646024 464433194 946536399 346179603 505467423 926743521 543442108 278971433 32595281 742594031 334405910 748149251 51170158 480563875 934447674 858922315 251067492 925777602 774974842 162254583 531349914 826568545 301102510 563190553 958018361 217642217 26650640 115919866 870739378 408019471 156696050 546392480 737732656 104636610 831735233 802420691 752283200 840335498 888730053 681965309 35046832 777979980 205286810 852586525 819071243 231371452 447704788 889364179 938366237 875825547 365095794 724908126 964979276 541591648 362829819 179862956 358826226 436766857 220776062 828469909 67748517 986033263 448578805 606331872 873857088 420388233 756455475 367344082 98624639 727016894 50908796 70934423 902619764 583384964 709402263 17663153 809619808 17382541 540819276 110431783 637378954 409618479 549476837 41664461 996239338 949739572 429174590 983616209 747214324 512011561 991081755 299788195 468051127 676934949 508599594 700608486 311251406 299707095 189578670 318866567 437949913 384248024 592558744 664310559 190684561 704184005 32775827 222060625 371530151 538628717 991471465 210142906 491010257 824399866 571506686 126485032 576364953 227802612 481302326 290977813 952848864 466557635 875088321 687162399 865462303 240928064 769649144 676345438 872908609 418622184 856777052 103221066 8894053 705645124 195733523 991284404 667597304 472687455 664470470 952442309 43689156 299880218 67534240 394004371 489416899 889121449 766958614 626547111 850713399 58060627 808327162 827956191 339809053 528794802 605961727 870761303 185604124 702099220 202490244 314611143 157539843 575368626 783737769 918529367 480562959 821476098 720403457 666211928 150578695 525171332 888147130 400242982 616293794 312868943 409200453 48880817 279811918 269468343 827621193 980402472 439061622 807653765 597666991 432574730 564754412 367571418 337164591 29828448 943451840 654612537 921614796 736206655 772665078 465970117 624708637 631149692 653255638 872348331 245081347 689535276 690757051 148750324 279040963 176163786 168582089 688430265 503592056 96894940 223791084 935662886 438874163 71388335 994092478 779204251 441000365 62342932 981809045 342531105 588237537 113777755 222738572 57879338 141012323 808335665 85723779 791891754 326610817 49771247 732538678 112067711 811308930 739065850 504935387 640972351 811709318 303520954 882177523 328570379 871493378 44506459 193677004 766528598 852540336 330313322 584584949 147680834 297574723 479671808 158833757 725180752 205441880 382205607 560700443 156497522 432683791 233848296 986477232 680682064 955217679 83570412 85490406 80115989 276868463 138867860 729888134 207660299 82351989 877873928 16676512 249866726 834144062 830680744 530972923 962238202 351545948 631305931 92191291 124254699 610085389 508360123 662858063 265799656 361004513 482321457 767463153 207204687 318283162 980152451 117422557 107202577 118958980 711153138 363585068 522474562 468377938 414623436 833523889 698992004 807603344 17346976 408090189 303236632 632197608 749312496 881311439 485591730 662827013 248524169 387063957 15775897 341194711 295670997 287303009 646173149 23489498 338621506 189006220 338585 813129953 392964531 749786384 848280917 415047918 284404546 227739969 59188647 379928164 195035196 136344771 247976101 818608749 679616787 664314813 452573428 374242750 343628334 866828794 874280818 59036031 697591288 69064024 99331306 452991117 715880982 110203239 422350775 733685648 629743488 296797537 810049787 883679973 626499809 213538854 12928939 352638290 463898374 169123669 704057201 836195314 377915598 692259984 796341092 958877271 370927201 335378962 14846793 762249462 725970429 323486670 450061744 210936066 682362370 409804402 141072387 124637998 379817342 975405702 519547682 763167066 813186796 279288136 431214300 933184482 402236133 979771290 792801593 882493468 740228026 599543160 520249507 842731641 535832114 764449860 59286569 112566489 140233756 776702287 452727155 94127121 406553101 165499462 689457136 191794294 298431866 500361480 342319884 558807395 525382179 108778899 265651742 609800133 563665421 30118350 814318230 810356567 479208851 204395569 522887242 720164498 904176637 866641158 225336385 746301957 769532701 91401332 91784296 577292158 531223014 486608160 851031049 148140455 183572411 479312023 271101680 391590468 966324390 158302565 945466494 489557090 985513181 559756174 329423496 579455730 970270843 944622141 496265764 858208073 645499452 743460423 782545671 748528604 494976099 198530889 880392019 627692316 817464371 813225231 240550012 463383058 930176128 282469336 917164600 249301793 335915262 641572976 696797405 746772100 869003549 231423841 231121075 504230586 585725708 633544704 762729227 339378800 471031720 933255291 37180686 570031302 29328200 333251888 308384334 207357824 256829106 965058221 462054115 848974669 685504007 365223433 667430853 812184545 156817604 294027081 216955022 731156642 989325160 620554232 793235384 800439498 240992224 813286150 591510080 648837658 783818380 624299210 706771315 692988757 539277076 12552715 265831304 982997981 896431842 3812362 194694797 549477064 711549688 812618153 798129454 873913897 607020199 398696436 80703876 960445095 162968186 474085677 75156943 107387916 108663108 17828883 379919592 119841400 932433786 926831614 177002265 168700079 267807854 783366996 349872066 325968326 359716195 661342937 395866994 457691017 5079826 917053821 448369190 815065238 265459072 604926353 317090385 291249742 677764259 9022574 63476461 535966582 447656775 184759361 927591665 171366813 419020993 640147297 642660526 244445972 477020758 810114568 103472235 765551708 465389739 227480920 795968951 749286438 238316777 67649080 509710498 402127538 905239007 392324712 391566816 921142327 213957685 521016740 287631903 405347857 13829293 357829484 867721809 40736905 820978139 232481461 432552827 219491105 87668465 726142994 146544397 724740005 718067286 201495139 864479995 136796320 774569917 857637380 815633442 842687501 35292302 892453019 211966498 309422088 738373589 685757490 92232009 595230123 587540961 611776241 667354745 454154321 127587777 25071712 504948618 936047541 714299654 180293704 670240330 122847896 501292801 263875831 407181281 612802659 926165688 150700103 744855611 564993181 428295609 861723185 966448100 247298941 660865655 480900497 119566952 943808337 226912937 807225333 722012556 55415010 207671966 598088074 474831697 240522799 31400276 100410234 204642650 6831619 642968441 257121213 971308400 905311002 900467988 172827128 512467979 585812047 753966861 47308280 397976373 543105900 528644424 165091233 659009815 817746516 142487670 909104222 811960721 649169050 895162643 399324655 182354389 961441125 393797277 275307152 120704084 599586928 974290076 113896298 621776785 39595185 384850601 286297094 872569178 686749451 282084995 306853513 486203657 954344900 810484314 674203902 253850337 616634693 943944045 740449096 67241638 494714187 474595932 283856625 634202301 381790108 694698525 194225833 988504072 526648304 253167620 162593108 840484381 631002052 176831231 697504836 859391680 815831862 401593773 823425405 361709454 787486391 273913479 377349826 486489398 624257040 940254547 41081771 784428948 19716091 613692433 598709634 404492513 376061197 177692041 628141063 210062547 813202449 374301714 943947185 571161877 517512495 381454223 364721571 312272010 904448103 211105235 232645040 474448846 722587786 874336732 774070022 549702666 368013303 312297830 927467965 38930333 440270818 940176099 552130747 700257018 758122499 109727320 287875845 12680945 153565497 280914316 37981884 656031862 604433949 281877424 959245730 253212961 329926598 181941376 851958778 703919150 794213096 194295640 750704442 232596903 656573487 299435472 452535681 986666279 156214070 330510302 550326096 161090162 548766883 871777729 245243458 116570823 291916918 549372509 58185936 494672209 159543891 484917563 969089908 834403582 752630819 631474573 753597125 668013296 633667308 120882841 323792222 122906975 466195682 450972610 510743319 347973196 667019632 820041672 126124028 754612632 928880578 677030955 629699902 688630678 346863158 110361054 166802343 607494755 536170899 560011323 570392129 93049797 515853474 840006091 297242910 222161244 26377956 209588867 974245614 316707476 138450881 554586687 155964326 590499681 525909067 302080037 569764748 9007183 175087985 241539349 489428516 928470196 517230552 818082827 52444360 178164087 811158618 336151656 308500764 166424616 51363427 764613458 904707262 839581404 378701953 946236961 979646083 144715012 334176654 767379182 231023969 655075932 852428485 21482229 369422474 810329399 414028241 78667017 117179442 244013940 38156535 312338787 494394222 488941533 694474523 432865451 821154092 631421973 434465931 598020165 199859820 756270761 253428842 365809342 756859536 410809831 66659432 637843056 95280543 941313184 697935834 221930439 17141361 870104746 887270769 870584678 987951924 704371713 63507885 358236851 860528269 940488650 681889047 160728850 297041684 375652298 224773776 625574470 149064509 126173370 973555232 364874495 697611339 772751745 2826640 736754183 426912028 280025404 857829141 439991849 692768488 544731849 314115964 575860480 683034683 868716625 635935045 727291191 740980874 144691568 791113575 389558196 948328846 987764768 446221904 218296422 405776080 924112304 87043244 930216400 273015023 207387756 938845724 632592476 505772555 17571778 821517562 21822964 660370012 343889775 632391491 408559777 95117223 207387552 238213669 503100412 391096249 396430475 61736520 267860445 755049342 887311319 574168543 248669396 362903689 129404487 11961357 254357580 136950399 534554512 32639862 692587538 545673407 301048965 74642428 870223399 523957466 850181667 38121900 176051206 252698511 705469740 962926791 967005869 488057176 114470335 89812426 634464538 562527153 400346582 604784178 980707040 398125526 539993645 310892467 55423066 269241132 381966516 740763259 23779862 113467818 802691786 487712458 803095781 925411621 343541117 941423284 614562914 802190133 311244111 162270486 826334753 884711098 664420703 936173072 172706827 926296551 84349464 665093827 526614051 204177979 276051878 305150053 99296651 835027390 589022353 565217643 388289335 387547432 542610039 791937241 628939390 633454152 53860601 765318050 799618161 203492211 579345979 699678176 899966404 112489412 588739607 262719617 600793103 125967700 646479257 507233845 438296426 101038318 850192800 147553698 630344451 828055341 139354520 396372064 277426749 132037723 799102073 170340403 440154471 884197569 249930634 570659425 524693173 729929419 784995121 924711605 277888451 549170488 983923468 271376276 829205164 581809100 407432942 944422478 43211319 95653281 723490575 174174082 553336790 945692814 46868958 972032915 479414237 294115229 226909661 623816413 641864499 932210981 440039208 279119758 830890608 212890623 792092023 231371311 119757566 184173818 126227665 957532728 968579669 290188966 733193458 245984574 163315978 352615560 214579427 334498010 70012023 514218830 96200959 260105895 964413610 254324588 661468708 389509275 291753710 508008194 3969233 364122074 895823191 354342063 240334927 720249365 92062945 414465741 654013589 223055170 589175580 21328167 535933220 211329260 216233893 573138329 428102375 164570349 937715069 650893055 971952588 383245303 375780944 132419820 663110146 803923149 25548022 218674884 543034807 700446280 988349974 410079365 11332802 323153307 128585537 869354982 200992790 533220946 219400298 572322889 467666437 669430178 63655404 827021918 789596937 337972987 47343588 314887865 825078637 256838357 972059374 352908317 758271300 926589576 930656367 540769950 881963445 449439125 653279484 640602793 77063540 62247334 973169983 882620609 451585261 373656694 894022389 103229509 722005688 80396995 751004666 34735944 337297954 949082850 195467305 732318308 346474066 668478647 221588575 316597705 383726223 891848700 667232113 217155563 275575419 20963662 844318376 902431970 47851191 429037655 672558908 172635100 698770384 590534613 358008042 60828056 100587492 701375313 306129948 715511028 929478228 662407673 825902715 118525652 895542962 888273907 526334008 150581566 559795857 139710703 940547176 779107134 444262552 317557440 576062498 849045283 228002065 481396694 573179669 20394699 677699939 116521168 928837685 513309828 773068461 721920760 577231163 846792684 43504724 835710346 932736652 459470220 839426684 778745954 408949960 952283194 140990569 577309675 77812584 301707304 417247292 800372402 691031552 167184153 792630950 697202264 61909562 787496813 580474507 801550879 584147767 158504113 988061815 329202136 383081861 543870654 930617893 38753694 526382401 40447607 179992306 219696905 844101753 86039603 778888756 638665717 544604207 681404691 475380921 765343507 274257695 232879406 369738318 144546577 911842869 420865765 64352638 413458112 918005161 272994584 111615223 396314176 151904803 46589628 83066719 199072411 431644804 128991427 809325852 490157758 958427758 706376790 795827337 913716213 498956067 873901117 25019438 831187527 523536272 638019983 934410057 395468651 946126630 752700121 40020245 713829991 703683344 965128139 356699349 278396723 974439172 801300934 614066590 706256962 594279593 928733125 923184680 37360291 960348670 315482870 42677337 572781338 859110950 563914307 609982528 646492444 913051908 341457042 424242482 410185603 355817045 838983357 519075977 960209344 292178104 263818179 323449413 932291575 961421324 611267646 991531969 512963542 584439440 15217512 564326179 826580919 212324029 971357536 752607357 775839494 470757309 49075336 265050248 806650258 343809096 695998645 642427256 250253539 662229750 118544434 765769443 602527289 995912816 803236582 193499447 507482420 671913395 428394072 217653785 203260501 73868085 447124917 924078825 45431051 588689985 729362494 672226262 420054093 439388741 268730302 690645555 659475809 635422349 466556917 578085070 853441758 257413135 91707641 871435367 134976879 699807296 729978126 891719816 148097366 211644318 243190909 272872071 384018335 698103558 212146184 431442753 67953638 660043974 701885959 162558138 478395955 664958081 333021487 598656707 808988178 627118542 663946464 251208452 968123908 685548716 391427251 694160344 118175405 573504619 61586856 71225357 243296556 435033142 291835146 586648207 689864770 449728767 632318776 130848891 801871072 503293468 851219122 848153959 266955391 691617614 740321114 657116894 974820334 539732295 286103408 636541835 276362828 903706156 489180868 542221851 385999667 884288856 987657909 885720721 451041093 580291398 33247917 740800410 940225201 65136233 135379776 722045144 50913955 382189803 497022365 800100997 878217750 129375327 650778430 77846573 673015876 581974004 151958974 511808353 422104122 754968141 209128023 994550081 528703709 342937295 773099651 841478783 80181793 970608404 990225243 586594806 733096496 98570658 778767309 498690594 600900733 792216389 148127897 250779976 50176933 79814450 412181283 221455477 728106292 615841550 948442268 117846869 117209718 347073485 558726619 324337138 326494568 895598899 617682311 528098311 372368796 908195024 230951521 445924117 562545998 259513004 272930617 658971212 634292141 872503086 440986247 499938266 988174460 277845950 61309444 35529456 698446994 263891421 595738598 542237801 495119993 415315544 408292052 38593921 568172359 930385891 724086545 696142905 197309657 142357365 274326979 662714916 145710795 397719291 196809019 84707930 544759820 365930976 963318689 597291129 599211075 531610095 716705418 12595510 182926731 843872120 46658264 727800311 986451283 618614290 110597788 48862330 173625081 844601762 115476299 101539079 633695522 249676842 32409432 534011587 742552559 622568093 163322722 588493223 394206440 628557591 449956159 199299100 966344335 842318267 650742491 140317125 422388812 928668563 801548653 263775759 524146703 128731787 128999568 544329310 224185539 567822697 450875538 685128861 79832420 894259221 640993461 229459989 534085326 593743405 768886531 722052102 581921265 224567642 603662478 61358209 987801945 857083820 320582253 950138955 462127245 368247389 563631907 191320560 500854014 458605402 953151413 396552931 254652302 580923983 614813055 730907676 129507741 148923930 596939149 247319169 45958604 580135502 817216382 843169982 400106998 550728299 134097897 297800317 632283676 559169450 392371289 141982896 328372908 815141611 741418222 769441677 23841628 799301285 372236390 407147867 246419035 689437435 751745999 207416598 23841750 976258485 400703788 456788141 837780160 494257920 200093876 949743255 180807457 950712753 511824034 540368948 527447911 604813000 661448644 393782661 118044999 351369560 840339795 257109005 457687966 203765276 371652119 597160685 467459138 47084799 982977885 243757744 866685255 156705944 674176442 914286312 411747024 631495658 841013555 355231307 394591060 205580911 14416618 892220266 64293929 606597774 150303921 254193062 67761477 316057606 188025878 199422682 737920458 601876490 220890102 175720003 197999922 426192731 900586808 986619559 575501582 925276670 139383286 636336946 442819373 571190378 886598629 863938217 800636436 14555766 142121166 157566144 406841908 810712274 124648486 933426024 517273462 198395652 175465671 521073964 371063335 711032631 357314822 704764704 572784034 748590517 872986614 320776589 893404237 18117690 492040967 458107898 326560490 239692415 134681848 303778784 415722515 465129445 214752434 507298750 20231042 616994714 985019178 134263446 567724163 602868696 212736052 237836139 813122742 281499696 628644038 873092836 98978860 181811635 21334690 853031847 659779758 417703691 575883356 495126854 789399592 902366039 628840155 339007566 870781762 84872455 210856115 236756658 76479184 195357646 451924842 739172219 232643279 943408353 189587108 174070620 789320712 792417459 135553333 871339139 588420057 140394684 486082446 512696195 187723190 886854693 647534721 92061585 543604015 456937085 193005628 495625387 47192653 872709831 437642146 382461994 681340817 178157803 825287940 730929945 616365107 193040277 605361409 360295461 710662785 666103408 132757178 836953440 755185411 570661599 665747370 180050760 226043743 947269353 953459768 16849832 106102279 441589113 892658745 512897069 748440772 707802705 767332816 377103328 715193358 123717245 853481252 855880080 385802518 157708089 430295526 418143736 668110056 484151777 440621828 277719142 737233753 613697766 832078098 855918127 92305547 694956178 601183931 568761414 827034003 328826421 47078723 379878647 141634961 254740976 362812981 395269870 990048784 518643808 645347442 317675901 86938963 311857173 577132253 935508791 739966506 380701264 134263796 38373913 562487138 477016929 865460451 892756502 467570977 286935716 320396601 611011276 783754704 111774120 257466041 871875164 364892985 804775129 581601535 242913806 928865703 926192578 837174823 692849866 668034723 800740664 369044541 435394209 697682341 304542276 119228566 739078600 262839904 116402158 124832221 784592931 240058294 797251568 790519463 193663886 674300683 183047395 952842428 297126910 549768796 969470348 246249575 89893819 932391308 84963037 793085243 540990643 759049675 522676163 592445455 353623473 925137378 380554568 553709015 25272009 78934631 779341321 525234840 352007894 669705726 302719809 652381232 444428610 797497732 891605779 210303698 402236313 108229910 727278255 227493859 993863661 359960419 88031360 542366013 328095505 564103013 435373770 727059418 455154353 283673149 596866888 604443237 896508966 17491189 778160938 560284617 81303914 987042280 248148827 802031534 388441663 591350057 127365708 626504273 525517622 379525277 939749193 944564216 83827818 596886137 565548956 14897809 28253763 132364793 410194017 52401087 821660264 82257338 190300974 158248209 461343862 177502525 195530767 669384968 720982257 988534756 855563880 48869853 618287516 181798937 919787313 643053771 146392793 250314809 591005031 632895121 315080691 19295420 826112496 737013232 661728736 370986744 512515454 327659994 700546599 982101036 360139731 784933576 730614297 137321487 639673876 583882077 159604196 374065459 845766344 726574418 193012328 743273919 40680794 906989514 830876657 939275688 369335127 458042448 353641257 971908957 589530066 244431785 216359281 688291687 141130468 615856579 6823716 87042895 988707777 231284401 800831525 503074656 7355952 968833330 272104515 766213298 176446405 215233890 196222210 391206865 411517626 29918332 142452925 346015424 992297903 427317892 726009169 757539561 411881696 642867459 311738244 66927457 803133944 540240477 96012436 330794096 451053951 866099501 431143836 701443377 313028743 61547639 307106318 302181610 878176202 538586060 872963061 432385014 561894576 346929993 255450124 575528598 649470047 173891013 491702251 674644910 610504518 722952537 554675726 661953898 952413281 337618928 459997131 884564663 431330143 995556024 688310097 681987068 839899596 489223435 146632471 279151052 675589898 609885224 723407534 600546615 355191641 62538030 474955289 185095084 974865934 571753028 676657655 688228614 113928933 574560867 501997952 569634866 518929679 346318495 496118380 570799826 554603372 533544183 942479534 256345525 359238416 795675947 353841353 183053616 236331191 855544600 659674283 754061428 34931167 858101425 915158519 323210578 450702878 272694430 417688702 475236385 566732645 406450735 148584325 648755573 126748477 806399076 417778354 987468961 306202780 789549135 660678627 766223800 407630973 250987919 447040460 991728877 814200761 100732151 592579877 233538265 388703107 15664775 453798308 452068202 756037705 302741103 378308411 558673381 296357779 860800101 943111752 830224584 513839567 398372271 408976064 171308086 297121711 802042213 512438871 491008712 531694695 785482110 194566812 182948373 877934161 45653911 537613968 711390988 765299750 222373965 155886302 943558940 140246754 112714613 767005747 666525297 223048356 357306407 430735437 459585450 601004898 940180591 66161885 775770001 64769102 943993497 821053057 336428647 12022218 56372082 608716416 348440499 363488527 798269213 378721260 92684844 697671018 164832367 966503685 279138863 553123752 379614569 407820037 689123748 15653392 129048995 586224040 164069754 98769991 427586370 441544462 387052095 905123917 445202522 907327096 637205544 499619844 748065763 281502770 322677658 371193251 537773024 757154351 7526059 668144491 663941044 37346973 401690937 991056282 524023454 647848505 705733906 410616503 209411179 146120336 898665557 383575368 279513138 29636480 946381397 444501718 901997058 270173068 971466559 164689218 842141117 376890014 731755785 378767495 655558746 674477581 744246565 363663433 474507127 886888238 534020075 244479716 544356391 535393460 94381921 351495192 762781143 856651091 834641894 923398181 754115737 200448311 301825371 247076875 808566071 547501968 13173493 310510202 570130645 269448529 191419311 902794917 778211897 163568091 60176532 886041707 621041468 534206869 583748874 248563486 270286541 584179673 374666049 568753487 33645670 927890871 331485178 141289734 698864782 45211350 933692206 987308898 153197085 254928619 633113753 754233461 181125991 951344383 869539377 427282373 183562919 910469632 127883702 560105146 256855709 703157292 803549216 426133591 198682030 37104610 350170467 865469923 628607303 127186977 637662350 725107317 126371124 544110535 810628161 63383826 295324552 313266769 747192160 396377667 727601455 891009817 408401319 254043829 275267292 264398615 832773024 555305156 647244096 684586215 690200876 401496488 777951043 181987337 693587963 197671884 392339020 940257016 380811580 770790963 965165082 991447661 999440623 748077662 980652721 767320283 204207350 860854683 529132061 803372370 890600112 30648696 751994505 672553563 443362961 446794210 16464641 115524951 369118497 987579008 615233277 751071761 118654050 631671094 528879957 822932739 724294544 647652646 990844757 834369305 714854810 878638277 731580928 826976648 654456396 320199927 252687570 803846535 336852294 190252372 45287969 256346670 582567600 856235231 771143005 315340084 412562978 371947844 339618943 402144058 345307233 414414878 156625329 713301689 699690674 805184275 931472499 705710357 483977163 614091784 151646309 425826901 889098618 319352941 934443570 110534284 433302564 993285938 677749338 686353624 74143367 52792398 380998217 517416791 884546761 339249429 519491307 907326900 15750183 649678321 300620915 229701080 147421438 112730447 942752799 288875000 16182275 711730502 445434391 746192573 823806522 388499457 500370991 117273851 69652386 94053657 531087938 184811424 899054297 984480320 942812522 232040079 71319973 8566047 179581879 972880983 862917201 426459558 893270742 492393230 969469603 651502717 93947252 701103503 960977410 469311315 502623469 463586031 249531453 359369922 177145197 872410195 666616502 985138523 201186671 905938983 281695174 280263156 493748601 125124137 568724615 381335258 95902695 823404735 240240535 388677970 815318424 9264792 225334742 639556608 444265728 14817153 343491750 376243541 26788479 275927645 123164532 983403549 402234377 983078598 619794635 500947727 943900151 874727983 628270920 432733865 746410956 898104171 269385968 860308172 185668621 281721529 613598756 549779476 777666207 261618503 379790304 152877224 308516903 162372427 962536676 627510722 744790778 641044017 343633648 98019283 251030886 533098245 8699031 992427210 306382361 997743399 837130341 304371855 53639607 204693027 887864482 638547158 802673342 147585306 996399365 784515105 880878522 350896193 116031791 380069603 142830240 587676475 762267788 722683092 726624917 283216133 735123227 941329353 741479470 103281728 252441698 601363531 958292276 142569570 403496530 557923093 89791014 465335188 413962193 365844944 963133710 515976525 620615159 851986010 63991590 488556408 359574518 991140300 650568429 805904127 856114939 462671068 96155467 439124019 521568033 512777565 805015594 874430719 579837468 466554458 609272414 324482815 467323016 729528400 618415151 310914754 51000141 542435106 970834144 941935880 551477924 991107078 498288454 780326256 241500591 404163140 199916652 324700648 841475854 469470911 632586108 632112796 474254385 300888133 498600966 294028814 130643548 578867624 400982386 581489333 37672063 162153007 227414088 219397590 86473707 175880550 580079979 948245513 657677775 139838829 49745929 276400333 423914413 382346368 854588728 768483323 104332743 234759041 29952994 767234613 532488012 178425427 735774976 602686807 839820312 225051508 909821601 156966825 337903854 341265574 585152500 518244950 294360849 29654413 33239500 660574000 701542508 364926865 58114669 209551789 135733345 449325940 104584393 495865693 316562457 427068180 609034401 131154853 316571783 409865508 262406127 125961327 188658773 291623930 654893571 400851079 121720440 171830173 770317779 793310869 399548763 958309097 417977572 61726439 755591975 428942253 834722292 221895210 730578083 100088221 956853900 743103685 248924587 992131673 590527014 486208602 679341392 790325567 302365442 950062191 527897435 101406597 78584482 699168750 182140845 789454679 913043199 736016118 925591188 24336253 396374375 425103249 662001966 2298896 890078365 990737711 216207898 878948147 136265906 618577099 97912779 331807077 383140502 814810467 426169902 342636886 959149034 770806726 30922447 578841967 217636417 870587801 936992946 682582879 380663993 8515279 680577509 817612493 874059168 431702889 945122424 337283545 625662138 22925450 889915576 83482250 27606785 166646607 353016326 32736460 242244097 482408183 919136304 362034150 98231444 853966982 120759527 227732186 114679947 543496572 303184948 665610402 819944288 179366922 897972985 77718612 999038422 838027543 74831297 896167424 561470568 432266172 691958729 676260798 372994465 153677310 668799822 944660574 997542735 67368785 970475264 486586424 367345288 171942426 320650846 930377730 35897743 36352029 596777582 101263840 418012112 185056797 95963196 105997995 143537051 630170207 711600932 325245116 758258946 488908692 110373338 637076061 423604270 631683695 706193739 318162722 112137917 913213922 483381164 23994879 385568793 789047919 679789537 9278594 550945742 433167389 264283314 2065089 56709120 353246681 711766217 253323409 964648663 329875561 994891388 484791384 535257755 440888253 87419013 243592763 532951987 526774668 406103677 504235555 57802281 514790900 731502165 605404193 748553919 370614844 569467837 486393253 825437102 714972908 729212008 670789013 438104953 523042683 113126342 18206815 749698207 126079856 43094721 717202188 456190890 68861951 459012340 653357342 542604404 175240605 346840656 464168417 934826731 508997826 655394847 406540855 385998026 114498886 403121596 51717293 666792463 930856029 84643427 471832739 898511556 748294332 632825843 971243044 864189059 997515078 635714618 724409572 250080910 895219836 634343468 580336516 86969240 406623682 996982914 896089264 162355192 538191098 530285260 412404586 194517368 82099544 34761647 15066299 103041814 717411611 366036901 716320165 452534422 979163131 861090829 254790365 169432992 884800012 767257162 455093107 763805729 334863488 151326922 972554895 915779675 175190360 720449755 684964869 488282295 377336060 831568475 36310033 46903261 959193641 886539651 962456348 513614159 550997894 256210650 685972797 971150857 479681040 133557591 718344214 162960456 447364142 339788820 678160244 288639898 422986913 283998332 400979258 923952672 221851706 23354405 406350585 846178751 788649322 530128128 587876474 143951400 787808323 827116537 565442537 278899902 31822757 701358635 320375152 176222967 313981353 895397872 859409533 512554381 343694857 572558976 711367154 34502538 291097125 99179394 223744503 285724296 358190356 440217130 683762839 109292916 569208258 227752558 470032506 15730312 392713627 830139446 952045391 650962042 729860907 447458709 428812607 271581052 844956546 587721476 364795502 768798146 923043928 430734601 538334458 627748650 647594624 666544544 915533595 90864687 663983795 447552951 921914216 442046956 995835024 298546454 856542202 979248591 745443284 585388047 790433656 984496076 390648414 768595426 258755450 546963616 406785452 265411575 723662634 90816242 718642583 732448237 591659292 428547075 88126465 707207518 533854692 705792750 756794122 473488040 941314416 786176744 442765815 596513148 615177112 303750833 892356178 321870741 465788517 598964193 158463621 680499461 297590165 79495389 592420608 813500353 175283559 875853095 4793779 190888026 484422471 461288732 400739480 846499594 15161164 726620334 388637437 751596732 939254264 514523024 138933048 76665451 410524604 100456837 550828809 482268547 919796574 373798832 757174404 599986619 676796376 922388103 746649458 387354098 105537669 991979716 419646610 397649597 524613553 90934627 527415367 779258902 807779534 481798371 232002790 556097479 731748905 429779196 738868674 504658913 114530357 954469015 187372887 931590349 785686142 662833376 241161915 440026278 901723147 868153657 439870545 113379547 944031598 616901380 522126401 468486274 331095166 975684064 792315666 563927240 239745364 427821515 721471752 764649521 795190383 584001751 850844408 866393581 40504436 387529905 969559727 601813932 927661993 348487996 390266164 133904859 627554054 656412081 202056452 883670493 389615337 125459457 174990470 117560532 450731324 33664994 538315507 879797496 831729706 334365684 505302861 341670010 860858762 194176626 161108942 816083765 138465867 177825571 246617120 541860668 77314342 562367104 863269836 886503830 394929263 28329077 268560012 311265234 502853690 305455179 382755179 721070505 214507855 194046513 452164994 249461592 79614384 989683804 341171847 698745952 779062155 498647304 548755769 717532207 170578330 322814231 318161004 175637801 31295739 759760630 536644952 345780629 791675149 850824793 739872281 7725107 493904585 412124283 669790395 906776742 36664071 694795029 650419300 575842851 603699473 66469546 171722824 828733019 148327060 67478596 421991891 455235584 261500956 912886999 440773939 239537598 376569215 499202674 893252776 11070380 415331439 121707262 232823284 867996165 816899622 285310730 822924761 242816387 977172977 129802855 919112600 172458081 464020001 261547313 905058244 463805586 273394042 129006635 355674397 347203944 286454137 359219098 472466968 662807181 306663166 743893779 294496864 145338423 929935437 108025748 146595685 863160271 138123703 889702292 420424572 337408322 894254500 590020881 199018757 852308540 948568484 203242721 547103660 348316502 650594056 455735675 884858975 842139886 903508338 33325779 55795722 511446375 873003295 211748378 350826128 726378969 627789545 585600995 512034427 214921199 447630194 7221121 923683948 996858828 650932242 27488752 816502657 879960234 244950022 607704722 383902699 874709439 365043490 807450366 607369050 296251975 595601542 343521051 341565718 574699349 434745981 940565784 919983040 903361364 726171535 48480025 810550915 111185363 537726665 617064413 333837911 662516024 887483683 506698959 153679285 69096543 882553462 71661436 969020757 490252214 401085869 487010708 876489659 971830798 29561126 92508294 986285768 136622749 479745062 857189312 566236699 705172711 49974309 120105068 192305117 322930233 952235310 958937075 662958539 8011673 294123716 22962065 429150145 207280926 20932861 731468179 597845725 615210711 905882364 293800585 38708557 220420991 307676978 850674329 147420472 655674652 130169640 105241201 100910411 57883600 153973395 551001583 651986268 450421549 762189470 112558716 673906747 802865254 401098372 548763648 521836253 179398881 419153063 921084388 719590260 657694554 857259782 911697511 886951519 157902710 477812134 74201463 556975590 119077893 527068695 967937639 940827110 259911870 972956481 11405174 32456498 156567925 956132969 650147550 848305478 132255775 387184627 886592102 202603266 230808816 178066462 688366336 155338207 226070320 979545778 317807659 899428705 156201644 13144435 898329778 230439585 544543755 411787330 451967809 556829151 286066991 516519415 647430503 715807552 992859986 140360066 161284358 15676175 177059542 999028361 322479264 343719510 855632859 500167271 444800710 235506015 32722132 533506381 347056756 743896220 517632174 523687621 451118492 950236808 102111414 284559141 747035265 837660689 839588969 779102381 251394672 194558413 188351222 220768626 933019552 147311278 857660080 466550154 433611392 981223088 823129970 969088900 191338610 961686786 268633223 169163127 894300665 626760581 116991636 853663186 837722705 866779715 483571293 437046329 550785846 91617321 348261961 412794452 878310232 351537428 849680780 437339478 767466198 701692918 364355167 192077296 938862814 409691606 669941823 21548698 831090178 760609657 37809469 421293726 721884148 472496410 139055154 859859244 955703986 163885087 697262442 584359860 753609358 927357082 18199340 734076319 815730173 958026025 195334375 902287124 819658058 241793042 352656314 942601031 589692470 898921166 181393381 335682635 415735181 558352122 22613608 253672495 115775303 915048349 324955661 883667796 769532893 833547210 648328042 107687579 273781810 619439573 72473930 47914278 264750279 502519304 351928525 60465819 332667906 261675928 949703058 158611576 115349472 207785665 686813997 125891754 513196235 672994305 938827853 583981808 693167474 348871446 361565082 262446525 284181105 413278929 45531198 392735387 525187633 834654940 360366773 217486705 154944655 288730802 91887724 953354496 117078758 851728509 485497128 819140811 651941428 215033832 742579819 357070207 385693766 31333587 527257271 19544891 811677428 239494925 546622198 323790889 354817052 508145539 832034819 106254275 313364898 898692739 706016158 72063130 491591589 769533481 613825384 12714616 9156741 413403856 911686041 338362318 125654489 351747463 777740824 224597688 927305955 313306178 666237234 797364929 776626919 762607597 835560326 934560139 878375837 555120728 224282455 920763575 305046913 367227458 29667986 142598848 873147698 305369967 945609063 66528287 995526515 454179140 539623685 881912683 260054807 515206847 305582013 906128938 615688344 255732647 566030713 876009806 812649501 31774848 975652886 597501409 541699621 311056552 976194259 455107145 889141697 936566066 363557321 781247959 358598987 617468401 545568231 717778202 770501466 989087514 780058091 978768297 928315381 891971490 677634761 977935652 588299090 467844956 159128157 129578734 550627153 409095788 516637550 724759479 414921682 649587485 83942774 803793217 984189938 83493815 381317154 805904330 515850317 562375200 29114657 100933732 75096379 935682734 641751663 136624049 617318532 604422943 397511477 492519250 68943819 411110813 662158582 664825960 210802851 217646951 356652461 849797147 487060807 363806725 210982861 627440378 250593155 689727812 441874306 735005285 535954958 118211165 954876955 194016475 383575436 863286088 261318186 392725622 875562208 493435490 533359394 85338022 103104133 81588772 748960154 610620819 411271050 386280722 191947005 773238010 523997502 434989147 357657062 534157192 169283696 428688039 833602808 690179045 906145987 859537641 353309258 456259282 754584802 670651455 541432833 166010762 907297244 912193345 431211794 160613408 40963104 156218168 823666992 885848787 899228765 694110043 942392802 656760878 286178115 564062942 519238972 659014633 147487224 710538299 294023148 186888533 238978730 936073633 513098525 17331213 712341009 639337098 357122279 761641644 860885348 975681581 753810048 11425848 779367509 440923712 436065445 384927172 338986395 501505081 111333989 378134343 769165763 51946429 499802278 923832830 976100986 23041864 875976843 112378025 502134661 612438867 223898302 5020247 323640424 458707616 839043153 381976167 404517363 742792257 560325397 162902025 926409753 442141502 738687799 309976281 929085169 80676080 645499692 243626837 542860814 664350782 88396219 335006356 665630808 774365971 503786102 856981686 67970081 17278410 193500757 118030517 803299788 147247709 779793450 236038756 354217332 949519453 863896995 755794581 316896192 903271928 159791392 967517572 627332986 551738026 889380992 530296501 793242557 969493432 110438777 371810455 745160594 643162007 739312968 130037927 532166206 382685803 829632459 88222800 685437920 779399471 581676720 347015250 697324307 513719924 615793453 521823294 614341513 844282059 786566144 986262289 891193723 605854394 442159265 251266180 479067845 996095780 829940711 484685376 398822780 324795210 857200326 535360095 766011023 792167452 461373572 841786233 568620081 756679096 396847807 933590082 383278851 528032933 40698374 547729122 539486631 429341769 747228198 533799390 36384138 588508943 485964748 376846954 896546963 585280759 568200507 424150389 667346181 438052554 451003422 96372844 756364826 51678157 493024412 320670587 767505087 548788612 206121042 192208868 124870269 177919269 125032688 164759296 689415754 184025961 109033373 511941868 169836129 476300964 933256436 554732302 485780290 84207203 502553626 272067015 377669655 719351373 501618700 787535386 62759896 423400754 642388823 250221739 821400344 358899741 414219554 287050969 501190072 218032525 934286108 838555671 565540500 680329168 900456640 908137786 920486721 87601701 140528627 570550700 436891505 477837621 625301173 529252610 349951657 529834580 746691072 823379034 2905163 279826495 259282199 927051991 447411791 285149113 167062041 9611888 526345921 54180894 428687668 24575097 568198851 888894126 733571431 303067187 717700925 343588707 734334443 910971462 211766333 44019671 345512156 846296586 626525082 268609813 66533921 274015444 608063172 811563043 413965626 227687375 965117510 737133294 379290648 851318318 870577391 27904577 41748445 87554461 575147903 296375741 49648376 265926281 789822848 699422945 140177221 811763506 250263650 586636826 309868989 173637074 52142565 90693817 412266221 61364809 979784599 658274525 689721298 92479895 500514237 557964579 707390857 652229024 218122138 379816831 834203687 780312301 64706736 968533922 376817768 680305916 778379273 857455443 607277159 937921891 525904973 661719821 27876688 51279615 286534150 138005390 20083377 813982764 244837705 309336081 129153502 867854236 387194469 657501403 908321795 590500871 595042482 962240179 730181053 748493876 570771459 565776128 471564646 262108563 413539680 542961120 284605264 307064856 486543902 564188445 541561373 780505785 816389873 752099036 192161349 306068722 506417321 597888307 720272382 290396051 132764327 376427175 898857972 95638060 889180111 605720109 237450188 102548517 615088651 870426983 92997280 833375541 870619865 446444072 30240762 677806713 992827801 757709408 50991164 451713892 488165913 230619248 207743368 880305787 539075019 872613443 386069863 701185580 779446233 331074090 658890802 999658189 32226428 916255261 310440942 420047434 854058526 791315755 997208041 632407072 482431308 981442345 418740120 620955265 978947197 982038337 484286795 283565988 74856953 274033788 561698318 64844962 888166749 281964296 503384203 873238447 406582867 479253860 383749710 905563823 257970698 51179472 653769457 90327644 153479019 940204484 298680798 163958596 986847259 886713292 530183471 305279189 325916014 528219274 175535567 12254940 701955028 128137729 710487507 724656042 397776234 624837071 799145793 885753718 291135113 485269992 101246791 933479290 388908736 977013928 288408115 71787302 361134335 784324631 566733592 752178483 859954959 22879832 825987072 610674292 213875608 184063368 775834050 661758924 873923926 689252947 714118602 928380001 184807440 129147336 565087572 899196865 405129889 836520657 888348799 862507070 544331547 465583252 878678572 36256397 822402513 493080958 246858705 139651978 267560479 268269003 358364022 11359727 430452464 411116766 340997848 798468842 729713913 238807187 436516877 880112328 145727304 665593514 761538678 901815162 362138770 765900903 231648229 510724292 215727063 898356241 372436308 34079866 387391228 423806260 446260052 716744792 908970605 799839004 109655655 407533286 423631517 109530268 623590901 534299469 50699193 610532372 867330247 608228299 926737055 679221256 368190514 346345447 443239328 672570399 875670528 676661042 536691992 419236045 506139796 292788590 764010802 855067735 510285226 629852044 374848189 73467844 404044145 673217068 724200389 152522385 410685292 974241347 92144120 859945967 767255764 535483288 895730221 9932048 456014576 202893580 521636594 946959209 51660907 13585903 925284132 252592997 593568554 822058006 563126289 361645224 901185122 930397785 500977004 24787417 819014893 969501268 590778416 854700542 530365988 482584203 718188264 549568436 946247328 294164204 716423051 500215491 852886759 899618711 817979053 55562107 201854875 96115166 72698377 25665785 743874734 348273747 805378522 323866547 220684746 715628921 737897620 936728175 624972372 268000883 195653638 431531405 116124914 558036851 302868773 113475359 92806124 884624121 192679999 162312688 302427668 977126589 731211539 528460607 761016777 34307376 670167197 641964869 684521895 603537638 674916624 183022415 300244290 977076446 85039010 686638921 785157127 835244737 338563460 597455210 148857716 64808580 73568207 812132722 802262047 666194792 136034571 789007947 538370358 956932588 174227127 568311309 190025856 183654994 190563052 828765807 286956960 944919243 695812721 587046543 71564299 906014171 178594352 56718620 80621549 285312140 886249865 982419307 45026965 392898061 640307155 626111905 410817145 68820925 887177345 723692147 871071894 327357669 864776702 53308998 624344213 544944203 923179057 183376538 457963522 611992104 10612104 672975152 183498207 821129321 991809830 222532672 10811920 109761466 766501398 517121237 357547664 751478447 304101483 609713940 830054878 266168887 382751529 870798409 920705390 437155643 880724648 608650436 682533477 712424988 163436461 947026526 991428009 449227312 556566536 101515210 329088444 487875339 642018672 306845957 936688023 930156977 899078593 685843333 104945544 82483047 135042731 250059037 418988177 498779004 513424790 771963589 790613296 664362966 420515721 231366813 834903291 117719260 257614672 807537153 367085654 667373647 515780792 680906668 624804782 28593048 25200887 107983983 673002170 784414761 869596439 511362436 601339210 895090086 238773225 350400542 223018137 825670950 20304366 818986498 731383308 321026956 686221603 99684241 735264255 161824997 170548984 92169613 889795970 721911830 287535206 160834028 446889072 346039928 556307154 952755491 714350530 479308347 725735858 132567363 372907646 817093625 654755580 518253877 501585463 672751215 585963003 502913822 725126331 492768592 18099389 434657571 589678158 111247092 743510397 182398293 754345613 331082445 263798232 589633079 845000420 368426323 595133115 466633786 219098553 893499565 48571043 445656609 994177492 311486274 918154025 380491162 919629074 244115896 18046253 480869848 883310649 36422370 888521446 656558787 676274602 312310650 413098356 425413128 988300570 861962986 346319706 230138940 941414274 944462738 811366372 197877578 460632496 70051488 626917695 728121449 103141489 583622046 909925879 654069731 128721731 980748492 602652442 127346872 41604622 304694557 324090245 30851612 725009554 702674545 736621484 619711315 447878702 469094175 615752606 723459255 711030116 548394769 886398163 304227227 355217450 893718389 449497509 901398397 374989541 520819448 444064211 78877307 288871832 628112935 511810925 78385929 16687308 7621717 219941606 413955747 174381551 857123516 879317876 664860073 268104479 267864812 501809751 546099371 988501502 630083849 188534345 695502670 840391944 389038590 96035253 913408823 776813202 794679951 151656731 326720423 560641877 477342315 527937368 277203083 225711889 244161125 301160302 14947840 189405267 424387328 711296358 584944918 716738017 983626553 189603635 124119383 966278243 600479098 836811160 686653335 148278875 785306395 888612087 574673630 158800865 117562133 752625949 438347960 985531455 611047535 349484430 303416463 605766576 931458747 236022638 570571489 105709062 644470780 732021596 986460994 84702904 524272279 450175527 417069116 487590470 536819207 453689119 806133648 423774093 220310604 738283120 374064271 492677083 768348489 341693172 734760803 460760099 731632252 844146725 469857524 747396889 536332601 885727946 874312430 62894640 372804362 333740090 502944234 664524952 543835400 402632012 801013555 460341603 986485325 55844454 789624323 977727138 288990061 384121543 476049131 853074951 378439237 613220069 95175736 410603030 940984649 254545011 460439889 378637836 7014589 207269323 371964604 930924983 991642143 236951566 153797503 581115171 30417014 702640634 840773009 266180766 504881258 502812051 61894162 13805499 247773396 213832202 263451304 181006681 899126711 769111136 891259122 149434520 52198574 448372749 911721098 389064870 57454698 25382282 764231389 24698496 185306184 734808088 29977815 768142489 413726627 307300386 857882201 952779579 393803127 166088261 581269740 553139712 133344566 380053667 668466759 867005480 217787856 407378455 461149996 639004532 130550761 538875291 383832243 947443660 299110026 176997026 643447509 894759577 314561874 823941597 197324306 495094253 838853984 48315291 310377372 931392304 85955116 492197526 429931136 629442339 469334901 822942713 255099690 497990429 14012718 917611673 269503927 268812336 94957068 707041921 604301861 977286534 18345832 224899528 612687529 867685607 133227589 99560023 504081904 832656329 731340761 608426179 575536705 717659352 575283453 18927365 940964440 947995640 372449787 481717352 523384542 4762318 710378785 833196409 412292031 208689230 698911946 12508211 948970087 10575073 175447255 181816995 704698587 754705065 793011921 443873967 901687874 327277995 642456425 182149278 907651713 395724858 154281514 599065820 865930163 813976350 476529735 94926244 506423839 68015337 374843284 160589261 926008848 848576482 288262789 711071709 61434476 393650866 977676 597815281 683784232 378712147 357234812 586951431 595002924 725145299 135367599 18729139 891482237 961313224 593079664 361382123 2696831 976025524 549935560 194302415 96231370 671685040 623643449 696207068 89098433 831960911 936250314 394023996 351638589 897813535 282280672 139178728 645783624 649814194 138124402 800211790 381004431 377856716 650771600 134281937 451805230 517481080 59843653 35743855 202727721 293527354 31221606 756378396 691855019 967874778 474376286 766333775 520184097 7274239 15928683 372166351 207022183 508623304 116845038 124913415 61377341 612179825 346730978 881162280 824639878 297853175 782987170 322635355 780007082 666272966 853096408 926059071 447783306 748826299 497682621 36229537 477323702 716969589 816641868 550059307 771235091 262112435 998592567 245363389 514639368 558647004 564109227 434285497 242393156 818497411 420419760 528569155 873886419 638230699 287979949 54585773 173245157 694934158 582699216 174041278 913251653 223762728 311220369 537600855 401629395 150377261 498995254 887422038 492532423 154548949 338709207 750054856 772063282 636921798 139701990 324203571 487594878 56719562 521146747 250610906 712414198 856352781 439947081 426429588 123054820 2990906 535511842 646410490 993957776 600646358 476646715 242711546 468237154 432628908 883448573 764834691 711798203 381716455 324880157 368940978 908419643 884773090 360464868 852490712 752200476 593986661 716389410 688327124 657960550 312615647 663080766 996304488 414039129 24584753 359714984 222527212 489396940 525539359 949315434 166275162 516029221 471474572 47995217 510519045 746331702 592542810 203856363 912939463 639922427 878797333 628410866 737328553 910991883 15852009 948257726 772927854 886743493 952667535 245284223 488261420 683981594 380651380 402426811 418904312 448781033 954688243 575656133 949635675 626106827 274846493 16356557 958626178 868516461 823753965 970905430 310770083 770944031 485745961 173435941 995584636 378936609 17468879 512319378 83195610 375078142 336987287 33828553 279539569 937351339 889955427 920866170 643236900 321784791 318205728 208211903 971309113 432703108 188856354 108424705 856155843 70973152 165483116 157631385 887455682 976578533 264403201 200328732 919488526 46955900 86039914 442296431 527748850 403874743 329180303 30746962 283112239 898560057 508734597 947123831 35900596 671007121 90706453 854559926 9748517 963276608 274410856 184117057 282699177 653770855 499891816 214126105 104873944 195837473 881089784 742134945 420083057 335068167 196308307 571829617 979076542 783892529 487438942 251314857 250504345 382264972 173029150 149461531 566019253 824937064 929557575 205606934 290806479 971693659 718230743 726190925 233253046 811492616 978055694 916153146 22654556 319520493 187580964 120138523 353210721 409347667 293580095 656746428 733111224 638205027 12189397 628692724 852431372 564448079 608486017 563956833 284051677 769916599 269657221 501084356 834823735 768489014 841721481 490927742 107354071 746083363 283224537 619406271 365834354 399562095 351474330 369376837 426833273 999443336 808164977 954126367 396705976 14830185 962144121 73530914 924073163 22147644 377554682 834204042 180022856 497356079 166750388 490340420 119286688 393000750 207761469 647798477 131183774 66595320 752211946 990963984 888597896 607391810 272901777 151439324 110386904 702198291 441001482 64572069 698717281 127401335 733086945 242484534 410826131 177290565 936239137 499325870 193715435 838031337 463421477 827193386 256076091 837653722 705312209 194995616 836089122 130748852 726802612 411052137 156049871 268860213 228760197 248983974 654480055 674553823 516126000 991310624 828866119 881669546 227572449 90460356 671638079 859535924 784959625 184277526 988643812 431055481 760957325 161637170 996323262 530808105 713112204 693207034 826147754 814497295 933299266 654870326 745508855 546741679 176528579 142887728 657470361 570213545 395942662 885279296 173916832 984984881 190788208 666284195 864439658 456209972 346268181 183841105 760873977 311054285 983480058 822518350 140387609 270646559 957354702 812742257 938176513 883553058 485748085 588223386 196908603 534253866 815994933 705215988 96188967 498201009 590509194 471250940 44640464 568046 383233659 811077384 442403198 540634526 263634668 911976622 843304918 500267900 622129883 400145613 612550285 818438327 800497151 40629168 109290671 751761008 511981620 293644925 911028052 541572113 675437787 380057216 972319354 850716041 289210620 486431855 403043200 66465960 798693159 640647131 95314678 943880300 855557774 416470222 535265674 709286809 540439399 801076901 603562303 414124090 836193139 926063200 492701397 850966633 843948483 354401883 584849001 732877252 619418016 581807181 289977668 411535219 527310736 477818152 177463485 275977892 971999922 847948916 759450504 735409875 911214702 730761981 136022340 165728058 199818803 75604408 885174945 228763937 676191491 959598183 465213848 466652283 246477329 709213285 216977508 520332866 771452523 972415917 67347687 743369682 480905785 681357469 420579736 214442159 413236288 839821954 842065197 555567602 717143016 697830786 653053295 667753873 350318825 468820384 783441749 859091326 24313081 965550108 650663328 53672411 836193186 552110233 894098031 880560365 663221275 917311452 843187898 438244956 751959867 180261030 421092224 252515577 867888184 883538655 850734253 463677276 740116874 141259518 853332151 136913484 279688192 585800611 58537769 920998673 384335812 44490893 517490266 816512360 242997427 41353519 219649129 430332546 658549126 378807880 361780059 232829068 206489784 153117896 634139339 230548858 271867923 996501144 577640929 15666392 128657948 548049560 145109737 136198593 386200953 673920442 728977109 616212498 78923074 819567 411596670 300684338 387638495 62170339 971908327 615004579 688474914 704510435 509115457 597254811 40785410 639216292 707375040 841773493 629707282 425575945 158447354 425425768 596457712 154008619 101820455 194493508 753809655 700080886 260809414 459689298 427422739 247533987 333062313 191977888 523025588 974477558 360020049 804093401 371984416 867583515 399861921 160074840 849168056 690791449 804030122 725485936 529282721 903776306 93154497 260760703 692447173 120591296 670525517 640465627 203848813 662836001 543534769 937805187 126534920 453955556 161508247 700242692 869855782 739235480 812399501 181277220 49306885 142887246 852904666 308402899 454851854 493067007 519277859 163599857 251079789 743836290 276670945 824212500 968633417 13207765 253357662 994207365 596905731 558924777 609177670 44752914 538342690 188383584 673276579 220153722 942333007 686565370 559811243 617155030 561202430 775448108 108313362 714224163 524822515 916454825 63758282 936189399 623150184 331271534 226725657 325952607 515908060 672863749 141037099 847717069 356472369 105113454 1134900 504668203 592967178 940339206 773035739 638688159 393529913 420805490 832335038 79804200 655668882 872369557 386979761 363856495 107617423 572045579 910688917 806465324 68494130 14647360 424261059 175293083 86967171 385856632 484113174 360565212 111248706 687622866 325586074 980416878 560095107 973187699 671900786 674103632 781059859 875481495 359580192 583423466 188486664 767565156 391439703 442304442 673384866 597028369 464198405 509897594 76897496 660978261 751068064 132425189 120290166 737233957 801064996 776647922 121045894 314733921 280138823 925098777 30712053 408531287 457471713 463436175 367885020 360701348 998262360 400278357 831670007 719456082 839576625 855279132 811129731 879357448 583658725 739100490 6154767 103508926 313673865 591785112 326151628 589119519 493189200 740557953 664819601 220360346 555584336 161240057 559388420 533009837 969966798 366362848 123961313 89414145 198586175 717121918 82504975 690609727 678732733 355648763 752582492 75560609 883573949 802664959 557917395 24923049 941662988 594898686 667025453 497935051 408185614 117618048 457026741 836638756 535472891 456903687 491745814 496556627 603676335 143273633 135014452 179258910 692719611 210977330 466995033 831169348 595242382 93592322 889724898 959603956 774158306 747740167 571091755 392581870 636404387 126977961 527093541 543903028 794571030 147625265 755433107 797367839 468765205 816767511 778928522 642842281 93938716 310246603 570398361 773701619 517115137 784376421 74377155 629092112 817725919 874311349 25760399 562195923 987278751 946171816 666538788 414656924 671628039 599407927 863723384 900016666 844004630 438378672 996971614 470374155 110389520 632795377 29226664 969988007 455397798 358873835 923742704 885631823 513778109 300212079 80909175 387579055 840878822 985485828 913808175 588265148 250218837 409973358 891624627 65459463 909901367 589925407 685629468 607415098 350254097 757327511 20263584 417561143 806495448 153437842 887159952 726231920 392991241 292439707 322272596 32496929 963666160 23004866 364163504 509663312 601856042 816990720 882806861 800080060 574368964 13260846 629298892 71394533 704036039 572932041 838369944 689330128 637426701 466825284 67118161 135507556 126592540 885602457 99534275 334877135 401497282 914846460 618857396 871075346 946452335 634057316 683842128 907426151 633145869 496396892 215134009 832034028 206591187 851621506 815856388 710270467 785060417 353555805 320305051 94415606 664612684 440505301 290932954 183028405 734130363 19472948 451393991 751849166 48162924 698976296 350080083 866369401 939422947 467434884 226916191 356407930 318808098 347562877 708105251 46964417 665489284 565859665 786836399 593792719 778001901 806973643 756311461 656807270 525123994 853635842 449870321 986215443 677204354 9523498 902525420 214692779 297610794 519669015 702910306 232295422 792083236 163229151 705490528 92086986 958367541 457279381 557768243 253957795 369178265 239125303 222391241 165248310 443144058 568295905 909327486 135547138 560017093 116228800 552252161 313534834 240845333 258649846 909131358 197809038 232590461 147581736 129054441 378482564 245722106 806438831 185782356 967876775 160034988 557034905 943732016 793975385 406143235 626467362 537407251 315369574 767776834 480314951 319689584 74786931 160198623 289798849 578657463 521928656 229831811 503821104 478659334 582748522 854418821 268765735 587991558 368460830 428896066 66317345 94438566 368754608 166547878 55761938 31736495 64419739 529256522 710815216 903082442 139857415 934844785 461058563 776087679 326299943 332226884 805619875 94097134 105786966 939578479 640534788 444315280 992423331 265315474 264071221 97563385 81456156 495736746 608535195 951777789 556146546 855264069 511521175 9246842 393234537 926576233 29490714 101271388 372641872 44431597 588830230 908863100 800232965 626561691 980236393 653682930 287026383 684026933 157387033 713436219 485230944 221699424 155380468 858942054 245719270 137667414 564699598 969209458 60625313 281150641 674437596 82391517 505677359 308245164 977727350 617747922 243534111 58997237 980686724 746242576 478136359 700966292 412957321 261352331 963989939 133357085 96871969 739270665 910764605 872935392 835474766 951605510 211079130 422629909 692180185 907034821 92271928 526683871 921031671 150676168 803614838 290201972 941093627 889045431 162085271 252580043 994152167 926348250 475362128 474613792 527764362 836325292 23263612 626972328 754964746 118792227 564319885 26618944 593379039 490772293 562933694 863872314 397421528 670336414 500251796 381936124 278382192 816957964 707909015 180519398 118069107 826307562 854854309 625507585 797452165 615872724 360481734 9149489 345388533 537025243 507738543 332695891 481210390 575973174 37583617 259365346 455155979 298043128 554721644 609918535 86155226 217107340 479853319 486189707 494765755 383755722 349075238 261240171 165565591 85130626 603194856 540815943 740469686 770686304 977719009 168667907 772383746 147104984 968515854 914254547 546770450 845744361 11462797 631891689 675945551 105303179 239804817 686274936 343022686 317882567 876206021 937957577 592708896 436703069 746360646 991487699 485902281 562960359 39624176 837037062 70846064 824576426 288332325 56128680 868859997 935321040 937626221 322111411 107027731 693319174 451819256 406026695 841472008 264298366 337549139 695192330 125236892 205855377 958673078 442974750 58154239 577872013 190306672 668667592 339027523 197688421 418321062 104018517 660391169 538183740 695023974 462512681 639542738 301852384 796310153 815880502 599616070 861241125 335759232 340406150 382323351 973512271 73914334 645312551 476754215 414281022 757995986 338812887 294080183 481477530 590868898 868291373 120212846 517089449 571058835 619523643 121453066 821566018 68383922 216086355 843064486 229565378 295082850 607918953 66177747 311243806 499688841 507014622 762110524 727444467 330089117 24345188 812334038 706342841 418039751 899741403 312719057 394912792 75701967 903795125 869301237 7176567 265728759 226668005 704814984 621860004 62804474 96811050 374026059 68259996 393745983 152835824 131634125 953074247 464350702 289080922 41872049 775527502 612289825 730377045 373284389 458889390 893778319 41703569 59988103 76931047 393324200 851467281 388037246 487026858 2032430 6135221 750279880 461995756 371259414 612193565 481092205 353210853 586181281 634238649 196803600 30316317 5106434 597369654 927187469 333891016 43788409 384245203 690674340 12232836 36229053 423194549 222426493 70947124 718010638 642941371 755682902 948790157 256069721 891145094 666039843 441998809 274597574 993857228 884171268 105868615 566049795 522387092 714107356 36722394 714333825 145334959 787610642 441554760 914215014 763742572 572701348 184617070 802319529 764645850 991812213 161678635 376926571 579609903 699815338 732017796 609415063 195193104 354933782 575010126 949936749 447563992 35184750 827490464 517423066 169722212 625701471 8961822 350722445 181384553 276068792 92122376 438504664 918904804 213246351 577803971 40841917 448380856 743430794 917509966 319301560 792634270 659780204 206641615 387174624 167263325 741552991 147764845 594314622 288005461 14620233 642301111 191481851 766625060 817541153 242921237 331612708 768466492 626962414 577578564 504404519 584806951 385121286 307201721 644995238 994765208 260686061 529318089 267686497 763675512 519681125 150020321 488834215 791653958 954458488 509187574 692734348 367995459 11333437 467120531 703785743 178292378 563324642 154092705 54478137 950335280 122271299 780866684 110613106 797450066 793808490 991306973 205401947 235754543 85613133 235030190 111011565 827324874 226253900 855925966 882222146 972715763 424984693 520984141 783080697 817359966 398595337 239753948 673155260 470151025 946353479 103330505 987876642 819701255 672904576 586949601 584528761 625242783 422207177 402429282 109947528 330131422 966603133 240806529 477362658 21349147 291085005 253735873 574830115 906924331 452164837 95285190 809928255 829362965 424822151 820108989 120433165 418970363 515088138 194980553 833014347 730403581 154508679 237078102 685918532 281567343 184861787 334048861 705524189 886617019 950750266 91863643 112743120 145804361 43053137 793162496 392297988 685527962 455899481 825187042 868978963 614400336 378641123 319072973 404265426 325640338 589077043 470402675 992571500 220895745 206370471 105937861 14536201 835971489 856749533 100468850 916320123 980864581 169179188 13178592 502786403 267165895 198088906 476508609 157371502 721181046 91998119 104440150 726330350 420678951 150091367 328206486 840755222 877051122 750718587 930195191 356607099 532027250 980951923 10251885 147300614 380458893 491215596 472199490 838675355 409504346 700678096 83103801 610671079 728229925 952681399 785323398 879729062 854410585 262533421 604833533 741013947 766038350 610766312 92852112 526739613 436332698 442122945 468247737 704065471 294821588 454408346 206461203 438221146 842079277 941637090 429535972 698020276 317222921 398598583 689848469 377130193 118562712 166173840 36059387 633035438 366432530 704185309 583961770 550755763 689924237 960204668 732973812 839680562 664741015 84843163 221602370 365082553 984541800 311901310 114622902 612320022 672838334 544165204 240302106 252913136 168454009 912289689 708536315 185667247 914554042 74073696 314122606 147768858 588301375 861965488 496312215 543882991 874091523 628993346 497165664 447754672 797800199 332238122 712765713 990761633 542096853 918696299 649270230 599708006 771084883 138656643 805682547 586084221 312279572 346380090 798412670 813690322 118232909 282630257 212084509 119806933 234153604 363405691 587834759 714658889 548299351 487396577 373756996 582848640 394598389 703863038 230939301 152824715 166410602 73886874 706730250 928235515 829091649 383080782 77187011 250525949 841157394 902528906 875020565 479509196 792637158 683942297 534989084 101944148 946646556 398852608 922744800 641464870 332434259 454626201 697307507 853151022 377680538 435315552 862520328 528858261 592503015 193373297 322722198 999256973 363058119 918915780 733382245 156371417 37302130 875749305 79430960 786860623 170056064 620681757 670651475 779006391 256219472 942219765 611151747 243422304 747262641 753594002 19910720 346996289 878883828 859909606 898814921 353933825 803404055 550493957 199635309 494794683 457726374 474112775 775094618 89530325 307355085 422237145 760081595 126906387 475364489 79715592 150394681 864329052 707631634 820138269 648239965 43753746 516476214 544977904 573942962 521778750 389336292 686095674 888581669 986224395 110879100 940056724 308163683 245526848 251091944 143216453 433612528 768346767 852557435 765077066 9768770 434574867 614207896 527657262 125885465 912168290 623154348 105048754 643310989 525140472 62209147 894437672 612959485 454796302 381825944 764914304 777400263 786410482 795574574 729192271 486213817 485500224 678302548 209999753 579488219 742670667 432192556 736363773 950912721 781600327 383009846 840234901 670888991 311944062 600742163 737736272 967795141 561646554 64576751 218202759 720237404 843303468 953811332 34429155 68349428 607394888 107065479 164264329 750828759 934395616 37851352 601094176 950427682 839462992 14986203 571773061 601440433 988812647 962609276 977326430 627956993 349623330 245654156 569355509 698715133 337795149 375756998 463973532 96350956 749919715 121090085 198720316 385136797 200401756 838477857 521506841 362062508 35534649 697808773 563378010 53953991 737889325 504366457 210625211 56155541 725146183 358302807 235773609 124184634 384169316 265158500 688703055 739490314 732420487 370909717 634139679 113417361 569928965 546772422 725452496 520365609 974506273 757432546 859413510 363962339 554383254 714914461 680159292 266857137 86658168 512442765 605397227 826524584 686030924 922257394 767410498 387207771 670865663 760920139 504817480 866811702 840808335 827146231 226773663 570092959 649060564 920305576 338923532 160448831 600940454 779315066 780996109 223401368 236717429 415520637 543606899 31737290 166177535 403292244 980312889 341928619 247916235 506418684 811614001 308689616 300646732 315615149 723188644 655733451 284499194 21146398 411055973 723906493 684617831 860807019 958864365 370847975 193945128 718379136 286740564 351050148 678820131 993633451 392657559 428303474 539342860 167739394 647036643 417418290 819015558 866047644 520506869 511082625 125688396 891403779 889509389 519148626 255837818 715162370 40250880 775069718 677234318 69633505 528810886 872013535 878628595 208757683 356579177 627258191 323732398 420898910 814083434 158267544 570167113 364313356 631472003 861659179 571459736 56363402 10795818 947933802 47449482 620854371 469337473 31481998 691253104 220273655 869019272 586245452 445716430 898543549 138962805 836286217 779284774 324087510 63567014 953041188 660626058 115639008 18799578 632236751 534698453 102378292 147296113 894148670 709331066 730194201 676041600 771808049 996243460 169720916 630206642 5877633 816057226 177385140 988623696 266615082 141667242 91420974 304445061 612471552 645581439 206991794 403676578 143219379 474965386 848057383 56674741 969225615 253974274 289060441 546231970 311640451 671210568 344737478 862446998 356236587 890470839 795699831 122913212 834932184 923713494 4922932 501566152 821774612 818996066 983914680 952374194 728942535 292651337 807777027 224936252 550730277 380460064 171351252 357520321 51914481 301166010 296233826 99213130 761706478 722014638 579866599 600743917 399878659 557104900 421149003 502038826 866007547 278972914 427710252 929132577 628642691 285495022 25994049 265471699 901931014 695071041 923423802 792203620 138790950 251045329 722213518 538845775 826966178 747541962 845489462 562449796 856654040 221321734 620337279 854565310 954582755 287826356 153391251 984823266 316678838 332049445 860025395 645302996 444155535 351059332 515864602 10311341 313767035 989468906 117976984 873752743 544156305 637938040 604703087 731144198 94286326 459839639 837763164 540719470 817190261 917647101 565377651 366883663 917746413 8256570 816553540 858480427 874300318 354829693 620309716 134309434 527105760 251317673 904806311 899815189 602827436 872854845 909031478 834879795 404326462 586094970 805386973 66390021 990019557 937780213 383136911 887457135 555479967 984914723 71551444 129118391 60100437 177020749 219186804 826159658 589924986 762638568 476455360 569403295 733235095 708153045 439014278 835015134 252688651 639042406 673573227 593005620 436104324 110983521 870888903 838371651 219067588 442350296 965825707 544701263 243121656 227552298 294178707 557219734 397269228 458232304 511546727 901892518 571322116 905207296 320954567 730985358 876593037 314147232 895000543 585222061 956831082 644302278 465495441 152970701 79217070 519483369 376428902 875303864 303897007 647485347 646327127 895034007 84867313 106306770 361540460 474148266 204420415 119172302 572790097 836165684 411704516 639777718 285173452 969114687 310959969 289379771 848787012 873718065 970286658 444421299 388869558 109512951 735499250 125995793 125961993 255554086 395494518 269335339 58125705 684126020 21582437 715683029 39831274 889321259 240126628 99193998 976681306 508708579 594975913 5932764 19408270 134474617 655069713 322046735 386847881 119561487 863421925 101040067 429961000 262930127 518841327 518944323 21018237 736201016 467738051 545630180 671941604 505620736 736267179 992787888 387900706 240691905 21328520 720085724 685763042 509712533 489992900 300525412 425995494 205787026 921649054 935183826 428265839 900354241 223069415 357482272 750891589 964391965 160134730 839746733 413949818 163604337 297147637 664601009 628684669 350438805 109015841 156072477 166041160 500809697 608804886 248170857 573571199 52465041 728754254 127914797 611164804 650744549 903148708 684564394 731004989 958145850 806701672 769878724 785078882 182652814 800233469 238310283 391245275 587563371 282540842 83208274 515852394 928170206 726219797 153508526 754885885 83272181 615790825 456470717 125012757 455303059 159274764 215831899 725507318 268705357 886642051 349443463 253061920 279367338 948122720 923999946 696778731 250324595 165390133 320207962 143859795 38431995 24107015 389856056 537647578 972336408 283992995 586248011 873712136 742117815 708990562 224245124 785725027 117058025 862463766 355600853 29687172 960455221 8818423 361368055 921704789 453588596 923915561 694350512 895428130 966760505 433530408 330733663 604533745 120587038 989792702 239319236 79457054 709698647 815685902 543495280 810223271 309486470 592085767 338637739 973253323 901614109 52471462 642422281 133924530 758819768 459302433 286698202 381643881 619614710 502398310 590810642 755360790 359831013 174444141 681372487 649733298 48154695 737141060 940168808 340127234 994192789 35053637 808567658 537561296 81852009 833458610 355899638 342543994 929084591 506836723 590835472 655346529 109105838 346543643 741758244 617726962 731204512 246056704 177261774 208861851 646736551 966644710 515956083 631418583 236383806 823636484 916002810 412282968 322930432 121585901 534689530 42543373 987358261 332391226 636850046 571092564 939065676 818801383 334008486 62291795 740015882 160710534 961965842 153777988 355436075 851663756 211728696 298097937 632986344 767233578 353285287 44343422 193832289 825751727 773022081 455711312 448095251 740891146 923067493 483945753 264075077 735886354 879575646 94248172 3211787 926863751 127153416 373181547 574025049 632739741 225102115 586145958 718040145 535869731 790083648 114837090 585800750 675110613 112709309 568707758 963873534 986797627 104143314 268834200 9287847 417358050 258273149 607833702 775837567 223456748 257003808 108964471 901696664 49909122 594486861 593996194 379421074 677305931 184951374 968630839 939445313 391133004 588184959 170526610 282224294 937438146 499522171 869764729 964432030 960263479 87962096 526809596 229757599 810272059 695436647 782858200 435664241 752353639 251990500 543266304 148538773 526950240 942845592 110045473 206081129 112206726 414448902 109618314 55910763 607198089 192887018 614689489 216122049 468148281 239986196 229021445 386697195 635255264 253283017 495748864 869146605 693873646 422706859 720869990 541369869 726242517 141736539 193826481 836289622 378875465 808391851 985932018 345045194 590972735 699524664 32118272 418328650 671550139 92517950 143573357 138382491 977432707 931414741 951863103 48626646 550574733 532037123 597472641 708041157 706241540 745572463 155306591 340336732 968316786 555508994 339331240 461283946 372874811 645522882 111426898 402086938 80755695 900936218 409878722 578313006 9268938 478287195 181721521 725939236 186553065 669121184 708091776 848883958 219207022 858382323 333837269 919322750 768748381 66239101 687147242 500428144 329600036 478164098 442956944 863385603 881160476 918015675 922930129 423420796 362255853 676736123 246504953 535730976 544143422 101312390 67588550 524703345 553179481 544647981 914653419 180657409 671937270 154761382 865685731 67269085 510116271 292972335 742828485 305120257 390495498 258775708 49167779 990803080 726268593 572927119 720277316 670555942 344818551 461493333 285219949 986891879 383570618 623354715 999772044 657915465 23022948 763234679 253219521 195626274 218480005 678441865 562960268 807031024 255162246 912978188 867959244 467334097 301159920 740964322 309191614 417712942 657683026 937062368 374272642 119626210 940572444 379858981 112311700 995280874 608398774 239470835 258478653 347209322 474246194 603709440 349894094 457391955 256315152 238024919 409438593 382043512 323083517 11962305 306001699 383108170 338343216 448030101 595484540 33162826 992892156 841819750 487268146 716424105 768321320 881923390 537738272 989402488 816996093 14974773 635216661 463667320 596889683 310780058 572718838 226836666 976106280 708391760 62571325 113951210 875547674 78053812 248088670 979409416 659746399 769481235 721707760 28399795 673622483 768790108 486775962 213760400 389223074 325202368 935481782 969888654 416677042 715568300 404899445 896971435 898005331 438165647 165952375 89859185 152890315 220434855 724713037 792544732 82053082 182033013 983430215 737604614 416704895 121460737 814546564 236663219 414895033 725459816 111707880 146136718 985747709 873019784 881066732 8814111 983306046 844376367 60454141 920752855 107195826 926756527 775673283 933878101 838862616 374414735 752456170 612294409 484616708 334644455 334096355 378282096 814387271 795264803 282501894 108632416 526164818 733140798 842080452 458213179 973877682 36175439 327279835 600053376 682904827 566766963 188903260 270423062 50153166 160631706 858137928 114427392 562848280 33052048 472673790 680682649 766241078 231061675 988047207 946549932 161946990 620690733 375091735 53871098 104236454 697812875 853274204 421683592 654949571 952820171 460178547 778142419 101555073 304017199 536190139 875269179 649544795 563437410 100195490 224346503 254515444 855238616 599840080 289644960 644839059 184927641 202720333 7042502 881179804 557460788 340825795 925617825 54504832 870884361 872962432 918575109 691881590 548559710 810591131 17491038 926456328 122715614 792374096 11403041 950922302 149740307 727995966 782928954 385100444 890632272 627160505 622687850 356907441 428277428 87513415 511962872 498608186 589185549 437106625 996295093 368896474 441608068 32186161 406862137 808218267 44076013 374665427 560728363 916901389 650289261 392504946 158504203 556163680 423705481 145100148 457414967 950647231 377408720 951950078 548646524 488452099 652818451 683592382 217613307 186080349 185410644 370324566 259096041 687131326 202734491 136189903 341709020 561617545 501893667 38454327 189907818 379679971 124532222 626380083 638971737 448782362 25886844 330338733 196679700 149206077 80612202 102536606 108715689 183649590 297044419 460387424 9639128 743181667 216779563 77437367 228001936 933201356 360490863 203644731 585996579 546837321 213457483 534380433 126061765 713061874 134485599 109738440 876884109 344794439 141184827 283593670 141265624 275138333 655937956 33183595 867190783 29756061 369825921 239468403 77694553 256626445 416931080 613322837 477066818 289663005 446202326 271976248 865460712 677646743 839071246 859724611 266347187 259395811 266315707 759378194 439133843 429044587 393043439 482179512 842173502 707318285 899725544 699381951 298551371 967451991 680922537 743915619 203827695 341764211 478994543 564106620 413354189 539744323 989644998 303554827 447826154 762188867 611797863 459897580 735265988 672162454 366069994 980884738 417529752 508052845 217282897 722563288 631308152 765331133 354400693 326999387 851727001 963707490 587028218 139890217 576777949 487938869 474812594 746151335 709672939 325923410 490389050 348321984 401632474 176398648 28419514 437854237 239750212 300710762 368292129 279300941 720900139 904902457 990760648 716441949 693479383 61435119 326500562 950557926 190089369 927244603 656862000 552616037 374010591 684561741 940604518 336573301 847854219 230819102 383630664 717137133 310220628 815082684 30612748 448918553 403933138 937400331 335324321 383180548 47102995 653111191 286787738 570612771 291632953 156129735 125163046 132738137 617207026 376262172 551818545 840170511 865263964 544987434 395705068 935659779 985924779 741110296 612483087 322652890 364626186 2232740 861156564 60175683 400312911 514375133 74156077 259545589 735871149 251659690 161109451 74701143 846346477 75123875 632081916 337028900 43963327 312705375 187985396 372267474 241297480 81526264 883376709 418786494 929646235 761276788 938984415 295991461 71511451 965454273 287275429 563550500 593464200 600561012 445060601 798850480 196342678 553879845 550222620 527737381 500045333 917948649 887566293 489799927 514582159 914744602 243356791 974332820 796571600 986027371 936265863 407964602 312100895 538935133 813260264 407599830 652868277 770119886 569871145 535261430 947514001 357076129 47425922 468673389 581653661 145968465 740980002 161435488 474692945 472275009 647530402 942550851 706544130 558964511 369447484 534801840 314078936 386016305 58770317 822601211 674555339 356904644 529131288 863633625 608180045 526964164 219554100 190650576 21419046 401425669 810221123 522974879 100284280 102038533 994746125 333662127 521166892 291482891 179991843 343633962 141674446 146958609 376933254 309030238 436944927 80252242 973991488 537630056 383630224 814862098 666932326 373576368 273249962 963333391 834473073 687288847 129821839 968343772 39495247 437194269 981753936 419762913 864110030 989743146 481675416 50847458 251765356 369858757 510259412 385442564 600757102 971630701 441821840 161750864 528920827 604994162 894811630 176056247 414786669 105562638 970373302 414736730 47875591 399866929 313914189 117403571 660534778 118934827 264878879 625993476 170228692 254045416 474881429 112708732 687040766 34819654 669991238 581455661 704534834 252563329 8300033 584627171 90173343 83531527 533627371 770833405 916570612 723532343 227195664 856864402 615585559 293732010 482662866 876990591 238455759 495469640 948027618 449481664 996452520 114415283 23266091 561316077 879816934 177045095 831891493 88749374 308330941 958028209 835471034 148086470 781475144 666357305 748851837 477487370 401172086 656932828 459375706 543821190 585766513 593479654 298687122 836881413 857896080 178603093 643906074 401965239 51579949 668475744 343510620 671152971 94306672 272671810 614746272 816674339 248045030 725890808 568699787 612091106 554771729 12688364 788264454 386388113 709088409 754177572 958758649 458625800 742755434 744547173 597283805 271280295 911038119 503750433 842955091 284059850 832061679 906507935 891820525 387311687 79551134 7596956 686898354 54299746 575022990 776430607 704181506 886528120 515518807 277941167 159051764 328143893 245242278 374223938 837109687 678733304 966341622 408550626 704238633 991598166 114296878 792590680 253719377 615874047 7049631 12921775 371382284 654436845 787004006 513209707 639014327 409538626 345907366 238858630 890576975 240388090 188256559 416513700 650003002 894449547 802474801 463735503 602344736 458686990 318904976 421519762 77211463 636528680 579824934 846582377 368679033 512499322 437862432 575678336 793693436 395147825 889597247 722061758 254624527 410528523 157033347 818622345 329946854 404719118 174663311 200370150 532241888 319903686 379477719 57998345 112654620 484833298 403687302 670226815 408295056 187808883 767219533 63047216 850068281 196169436 374744602 916324657 21376649 544564325 21116332 967776396 808709497 128972800 672207723 562924356 880712549 341216163 276185622 324187260 888621448 666106579 829760872 23569227 839707487 267849969 576340748 392370816 324610460 862757205 858379155 926433303 588891121 255428662 286668226 846234592 524520456 9473266 786923003 137047374 751111713 273840062 610558870 869838123 826167800 645909648 364970956 996159326 486111862 922328529 762159185 222012202 705301116 313468935 416160871 274673870 289371703 535554477 581867138 703860530 338782221 300171406 333807112 611979108 92428730 321107655 153610706 247028711 488067589 691592389 102437785 211026534 773307450 980522532 12021037 154766809 783012006 28253248 572386416 106787849 500184563 427352326 520600616 577470211 491723293 589446525 50518832 896592408 53838026 186040324 671330194 831784318 969188819 390813969 410352804 656178554 419915525 875100028 576015 371494320 223901262 807232714 427870959 705329560 120355560 32415203 798309618 490600488 474369914 842555433 799805252 784742013 774328464 63022378 391475177 908020651 944032841 247128120 423183563 189427092 855816616 306859796 789162595 348010966 323032671 41743379 741289307 464528421 724204503 839772365 705877997 911897521 594232836 980920630 432829884 620018069 36892349 96345006 964431142 199922735 420958712 393392865 231725353 677089394 726574593 352848310 300698182 376345466 86522145 540058917 732688989 945202406 862722547 955365022 157336486 478935508 150709488 68121640 963787421 272543664 43724374 70071881 43728052 278103335 419276548 191301429 231315220 525702455 904917998 698906735 294169310 653314180 677868562 523100074 688687869 53937227 23595515 824773088 554520808 196863630 302597150 622579548 587732412 931449708 807258796 252371677 927738266 969394001 417490035 693245825 13712320 863823930 61962677 335800529 563562605 226610624 392248480 203314457 182436449 251992942 48366423 27540346 785889207 195550388 892408344 77522335 407288523 795629020 279158126 322174849 201597053 621562151 897719176 933297848 954810441 210360833 785417079 497260627 178863483 203084759 720678432 102639172 297927458 307915569 415845739 26345972 440469505 309500617 788811957 666027665 841046094 134313277 808031517 770854591 79094522 22836965 477226879 420958186 405972340 889640021 39599693 246207237 660400439 986286991 399649210 115289312 376969524 803716236 525110563 706773374 89107040 78617310 276948993 669179539 856123253 932325494 917587561 573901582 845035966 838533421 797762653 117685258 36368341 917867795 402872280 754236227 210292257 718646805 287285176 180714240 539717190 744197697 300651436 619838803 721288846 55126067 408219439 788308605 595113642 791504138 817126461 106630337 74488846 264148497 709801947 882701848 728877512 597900565 663780327 968914753 831617087 523196568 423749223 843796917 852821381 724978758 80587496 399260235 724182674 215794727 249815080 604347280 530051543 346627905 449000646 139593940 642595996 463676560 352199554 353946725 860662870 813870554 104113954 244918905 992294030 484880071 306837986 289214279 417792897 235003010 491297933 916588621 588581995 646616081 671498808 967398592 578609579 648745993 864285032 150902070 735583452 191722747 27106820 933269284 124778538 668359224 58534930 562449129 967620441 573141845 105352915 940339233 153615746 986564112 477838258 732974542 35791558 945062262 658804843 3703598 884765476 436933290 486043485 315734722 581982729 521719675 430144604 418033958 683509542 322427680 453491658 622955410 228177833 326705804 611831233 302866467 785152803 835083423 580162423 188097394 142295861 238525404 26482882 908500954 696588345 563325253 787022234 154685211 999405627 169908617 922920492 524460851 478220520 114791003 252484846 431733492 320445453 731626706 903881826 217039342 117493432 840798566 949592275 173705085 692846275 687255773 275675067 313884751 964622704 885498194 490937185 914924772 179050501 923102920 994530674 683849002 34840308 836896444 847034206 846096923 781229905 861273723 705591204 841640930 249076830 547733538 505775311 127162426 360245434 87129337 388658901 540091814 48239282 228118020 643237676 20295804 603709789 800571044 67836507 117189846 588659623 729579744 359311409 119050576 151117102 463493463 375072047 612002729 903747908 825090556 999084960 319550191 783228463 470977851 162531419 87811542 884362202 68442509 879140744 571705400 672496687 830988758 455357840 844614102 815749845 274439157 23236736 797735605 824785940 633149616 230351713 392832966 565913271 216442147 13488061 329672586 146783078 557484057 322784829 253378213 813202016 874750592 790381757 538700947 401043557 454394244 253547131 346980584 71899448 44568784 359956821 344345788 978175016 391847879 25857382 281871995 569432876 557289174 224443072 309860320 659493786 123148188 129040142 308020029 6781193 992348968 996735389 198659278 935166189 518946776 744285278 804914459 831316348 592378104 54009024 308366777 607723875 442799106 44270352 247236653 854727363 318302359 220337806 339815193 173042241 34635601 258019458 981904227 141108154 203972703 81144383 115866703 876148939 198647792 17221878 68930018 351219945 342244715 649205784 812894820 84526687 499091287 186590589 639240567 587802193 946779421 555335893 186479890 139706026 87693198 542204913 479144586 312480992 68132393 905154812 562024229 764908902 63286524 251949329 444860196 483519393 203980702 110342653 966875631 860572360 150404562 741887534 225234780 148953360 341819256 708367977 59200306 650757546 342962266 471569887 484233137 609681569 949364339 902605768 808034866 138736298 385693012 978713356 644404069 348375969 824201473 182206064 76921989 626943982 721998628 35420847 290786330 551962346 471844273 268444629 765697173 967644626 265687825 541322160 729137381 779804879 987938324 421484574 155490262 74905746 163326227 631070305 312109832 449448433 850638987 810126763 586022833 29161863 298730598 33750742 44543972 549210444 718955918 327473947 346046240 364908837 293187609 397698127 517351383 190808013 988399351 450871876 172229477 181164470 416674374 407336883 841026630 865862002 309110447 464778137 363355883 891497139 850849702 460741760 611364816 74567763 997795907 811331214 583506852 427712265 277105846 594489612 428244578 538214731 227130505 230958368 672904476 972786688 823948052 764292776 66651008 371468067 408640765 439235459 582799597 812495816 930447004 381195540 398806074 341345419 43218606 915371220 800677875 233721412 913376124 874867482 689739981 164171915 81395275 380550024 497423715 499550761 794213670 833605489 368895253 618848382 598640957 227570686 846133838 146864583 342058674 653671048 595979959 417077120 423922631 931121049 415107785 469256916 978704200 266433887 756770826 65251824 374867886 699899860 993738049 655063549 678597051 18287969 214507007 682757885 543519188 642917486 145146942 768159423 615879195 288781615 151206031 216521722 990647610 245679629 353600380 876535600 203896776 605980180 109046378 665641237 930918202 679329695 76505240 176799231 685374350 388429569 570780593 689665171 365595092 454292211 559763723 239613801 122950740 950065672 66318286 605294761 367949836 853736259 72480420 506818027 977024594 624217820 984881715 201573707 920031503 260156344 275148816 609558711 60803327 904237507 227691699 672411245 463356114 822080426 255112914 173665859 119729570 943868301 450680405 997244230 953370239 543727123 629035913 83912777 612110336 409237038 984483111 652722812 204426903 988820314 878455785 456047346 357469131 809477977 962833555 468588183 390333035 919757438 792714718 1156313 603495260 482859457 515687906 867678055 101910706 337861087 644497488 874624226 611020445 931552367 303881905 938314503 31579734 437582023 170207015 270478533 301911354 655815118 815331514 996572736 508682665 59466665 619276469 556581197 880210466 341881252 863198554 177577789 266699778 906816253 777482358 919142596 444875675 569271478 783914782 357593598 199671695 26768441 216230464 486601442 247715828 183132425 156727798 565840197 980287425 112524661 828455085 865927233 728192168 33089105 729091823 178041920 48913398 968683045 826493139 821024020 843544118 572165583 438167165 608068093 860317466 166009514 124057954 497347974 225404852 463124033 45429105 600588733 934696611 995375382 706614313 319283014 24579395 745867351 328013371 203620683 169244937 931699102 959262839 980734934 642507476 387887414 719794215 627336317 228494609 922211014 478426827 813521158 330118799 621475528 539187963 734176038 420308778 549322283 716768791 623680712 568946505 341411608 979771745 809449795 88332825 414427967 449433833 7275211 988211914 829191547 223590557 721499022 130276931 196728875 522296659 885756612 284039724 524967723 329607212 804349518 908102717 137820510 764073663 737699089 4524449 423388228 851889493 271276368 248142231 607691456 132030213 60144616 165429261 151384177 300566336 30575184 164755355 766752379 940552479 526211855 423286210 573983835 666568184 232005723 590436731 602694857 423347696 89688938 825081804 693164475 210238326 139577282 915836891 108602013 689245658 126166637 708677172 639585252 670511838 765421555 541982282 965920886 39752738 185769473 541027182 979215706 240133280 992532455 867035235 104048188 409603962 561857504 359994896 270515114 836344946 914152316 593491200 335671339 705379320 751433364 114402795 510341423 746389183 958321113 993361383 665611642 996060804 390393528 143792766 602729924 925239543 287929831 786256809 570286914 252956244 618795482 50503078 338632779 884414624 992057468 182201530 675656406 67639048 161877829 388236000 460255793 217078157 954707548 866292446 250125931 870880516 884546255 282150235 123746429 777082112 626105275 887807162 726617392 851040113 402589584 742099425 783314940 589719336 409100132 627942023 126469767 677681629 447757479 626379481 766494152 204184480 65734477 298674653 898305902 764274154 16526049 921358074 596164731 205671935 694273811 409798861 839671047 23461458 983174863 719825389 393124442 304902888 702050609 2067252 21386594 756196830 469539048 828427719 865954622 341644110 738603587 688454474 551260705 676433416 392125615 383793208 19322980 722103284 292536957 702334872 176378605 212193458 346332157 441753424 16804925 418150486 745985749 310714583 417294574 225330387 334868782 878025010 576278127 755869995 467604696 367942732 941559248 462845624 287773965 102550646 19074086 54928860 533370199 865991297 924077678 920417784 636267268 812200910 510850930 57916330 980038565 639488579 301806285 368239046 558937579 57400352 665852784 918333643 544598003 165854859 4514374 388253663 672661175 730481915 309915874 329237812 953402489 545240345 562529417 44070871 113718648 632017217 225957101 613463240 265899679 803095564 573394657 902143914 161562113 824186094 701547873 845092830 298569369 965305694 365515202 398960031 554960552 493701724 177602710 784638221 83630905 825900812 610062543 272463584 26550646 18188975 235703048 274022702 893834909 150245748 213492357 487154180 961281208 486513782 984792875 766486146 691605715 881141699 693994641 71500229 552223013 301985047 849002675 14535857 138233937 958991080 330078755 491359850 838467522 290076079 623186838 609019329 600020674 787149617 169837043 290440013 923097836 809726691 700194329 645673448 307801956 816994232 871465477 778561564 885189651 35067651 212399119 225890124 211031693 95465774 628133150 452300539 384967346 789246280 475073575 385186305 863551874 918472661 447424454 170322488 507838757 224865137 47224319 493786872 73702682 741863268 511965380 399047922 57688789 34225671 568859228 92377925 821855557 154734964 220602855 275424915 318428365 145717637 166172641 677340036 957536718 930459151 501427449 384262152 721116483 857122781 191249032 540242908 535910067 714444747 198817131 817527575 548570906 474303508 287364847 439194946 575391978 172040683 504128722 143405263 600525309 388634802 740065064 244778343 386331454 775316365 463060830 1265846 767252416 659711053 351410007 93226014 130837500 814765843 567720479 305099469 995310575 721876457 677839562 988194776 45253577 803047529 248489166 824382560 939899318 825329514 186780502 559383251 98622450 775915481 995676549 732001409 217458891 935322343 149950034 371927586 750304052 305677510 707438887 22726186 340864902 988196227 700657111 538173431 820215283 638432502 203737958 478423023 764671106 549405297 484756926 56746691 400772459 651747209 32001205 872746161 791858559 689294106 915734487 52847333 860723446 810006534 343705712 739224395 443327971 685380612 476281733 897209907 251232144 814193102 733890150 168358279 601203178 238752168 137222336 86430970 341093110 761069293 260383347 352907285 477815483 930697177 507881287 973532690 964011395 75808155 885986225 743883492 54266951 73433817 596144012 230988067 232265067 205039414 111095761 726600812 417057913 831805786 931141347 596668097 197015126 661041402 98382301 253023806 121334374 89438219 80322054 934788143 838598307 765269999 609790547 611185579 430134721 678361437 393624609 244329115 445231758 363563132 824428136 511955257 641044788 54498452 972670185 643009533 414175938 808537103 441799751 690817215 773515171 167351914 351028956 107318116 382675441 917566060 824628899 811393087 339325895 356516476 40860145 456979706 319084604 256178203 618533104 205307844 430879248 951060505 168465087 445231621 184301029 609457386 610146782 675401470 949089407 55416753 904850343 752159488 396858362 912920686 583362341 61881978 148759088 872865011 858377555 286740921 856402702 180808515 816962323 237370020 384407324 54555271 400931710 910923768 870894353 718751376 951771009 41660413 100376025 362914279 675836676 276886930 500604950 808384755 798975986 523315203 763746044 186385385 348614314 222108297 838360903 532473341 780595138 191801373 948126556 186464351 740016406 894812512 129733915 415117617 831975830 277931770 702693275 525759265 536882551 472980011 371135042 81810614 958047534 613902662 456001505 720178833 687148407 44466487 400870443 760873977 655366487 792263654 395981352 101313199 778385146 361463736 84648989 419378222 905783289 263656195 597163684 659621338 125837848 966040246 159590003 54924385 515076530 957885506 317433570 935016090 151988285 724837363 621263285 381929470 846378326 330429213 90338107 779048707 465852751 902560619 83118260 691416840 688115145 24024290 669714373 453749476 372328826 328942179 881773486 189296463 810433925 541328677 814616357 771077234 359172579 817666085 853795038 529051309 631708169 448841487 167740597 156649857 497493914 696902012 958035127 37672188 704037719 714289085 368031082 315768629 120307201 202890004 743783005 322644970 752675246 733124517 422986617 656140038 845434811 865662592 257637069 699360489 891551331 986182532 344733893 451011160 244280401 955369189 941736335 306515480 588462496 557641057 18157169 213096364 606591132 109757859 272769732 855560863 610112775 196185804 698535640 93188838 390700127 790034448 500352799 30521108 813963413 854367998 81077387 100867482 2794569 927527458 45548341 742256906 406998126 944008598 41426199 955567666 266592568 738955214 503799090 149715096 479055088 639881312 10642011 916195647 654021309 80053920 153332075 591375650 211310613 318931494 760521602 622299497 27708564 415057462 648281227 109516006 629925394 581856794 256212962 836915611 861693404 892607947 675057298 931872280 73287854 711001361 954890590 249202468 270384465 468810282 7924576 808025554 712373542 559593384 433823271 453352564 152788541 168249348 350651380 849859194 903338692 415965156 666389327 162396209 214170542 981512467 939993389 794756538 456574851 863351639 309223844 244405427 643220356 185117629 220523922 996514942 587657553 137682260 213248234 243246631 976029911 749133153 648631906 874847341 394584774 236589223 593815320 411275655 37627137 857934683 934760284 995089764 170830474 555310286 22348971 243358464 623089708 4100176 102300344 349277665 723661415 542393838 884486777 469000120 891437588 49395907 435525991 865702101 395537224 583572450 419631946 339938828 396333731 226218084 478912538 736919473 8062271 639699780 383352436 982341916 558565772 803153774 50048725 556466218 433073410 865484734 240132365 197635009 732381222 957072505 564186443 219881243 39558719 720591699 721109173 257168091 317400083 523286158 950713367 868112658 775171914 462025400 624750318 534969102 189481149 405188282 596168782 60424068 756536021 384091181 918667447 490606054 918244002 179904991 352661722 508235968 494902924 292659134 669970603 238860749 37239069 166494051 907274238 451206359 807481966 474973592 22268674 966376119 929747104 351819216 423195092 675874894 389989619 404862479 714341314 757098534 424453129 227427991 129700729 550649840 769923289 293732904 298485716 127063012 949393991 356735344 817648027 60554562 24060842 187070694 62835802 212659326 752736243 906497773 239173859 318572042 841514361 273761416 78319323 511079976 341171267 213872679 861125919 242133709 10876586 498589705 308352190 717403619 309990167 116340730 456326100 961280074 726349321 856030646 533938430 899882739 992940730 17114160 761984111 507080045 321115378 252637738 859389396 925535955 266328320 431741636 579865303 77028992 944018594 673174363 729119572 111793934 433410497 502440950 363221629 311715579 908756293 889296434 282176198 990635161 49618494 865669136 836080408 499599324 564551028 59253071 270220399 889816837 521807605 883601668 392424458 819597432 563938842 774187061 89396473 290928632 532549087 139191033 931570032 106487253 351886090 709811438 440013222 449006293 371942515 334045703 701727753 607561914 292042193 418525712 911687984 714592380 229789635 18178221 241517469 494818592 610732325 759219249 619505840 426218304 144506371 278385691 882989801 707422538 707412399 636311660 880461709 16919365 249101894 319847748 188687069 101816257 280670275 72806145 76832316 484309731 545362636 265920698 302142448 594052694 185939372 32511201 152949635 354038507 765794076 967652738 117491807 342556813 605474415 756322359 928001587 69873570 449967919 37941141 362795758 422465451 303658910 971311322 753200608 873155584 180787926 148932631 51516687 618001806 735583053 19386235 890265262 498346324 707853926 82816947 69585251 129486257 657227418 419013842 128665118 354593231 607130162 353886004 764650271 5456506 748329506 422203376 888127926 221808145 319258811 578270849 628799557 340851875 320510120 799021834 904749035 401961349 24225916 977005634 846837201 889282415 625885737 159917145 530708153 591712552 927790666 5522254 728702503 818488525 898648784 7181185 833294908 907355555 723991319 893180855 116652215 400477798 105802231 370666709 35620266 186360105 124934888 313576683 464293304 855169979 122424154 789547839 745107225 406942975 290722716 886286365 368708681 348539778 543140160 869720154 571180341 965512038 706722452 688045424 717713180 270730426 474634722 108415916 935888738 582106820 787580666 531080555 822001752 425484898 329948753 808026199 461066291 171141939 653441597 14744589 671032383 730665830 469508523 994850768 851377946 820184952 487921712 93473939 771721367 846100780 452429170 846703401 895561234 932136229 822023600 416748127 444679215 69403398 860438796 552871496 373559751 670047137 358248583 938097005 474073515 783659318 146591873 531962955 633946277 857585528 406829898 130380809 534830534 476687229 981684931 737132886 649734145 332399829 445235296 729439498 946604188 284587197 240809956 136892497 889773693 464532282 700526250 709870247 512039173 782174465 66356943 215668516 469060067 860886124 229123013 772210007 717850788 618013862 5625537 610143431 813819023 313495471 619367179 131934932 345801709 370136863 889107139 292328517 693422293 182638997 222998264 463761457 982617282 711295297 691395784 540818924 19772759 343474321 457285227 954859465 956781480 885734770 192806719 102562037 817845148 91755624 590651958 482665128 961883631 85342733 47948977 194134981 48777194 17304648 181763357 276953456 877252613 678898424 38568226 344517648 496883092 538914862 162358789 211900108 168471912 10122294 847282017 539974889 486939179 352089731 794469394 180115407 693548778 279751219 799395182 816761672 581847489 965008557 422748302 304079312 590501414 754226203 862155576 615715568 383842151 265603136 438330915 519144009 192350106 741705864 918355269 316738341 117814454 709626163 770324095 479119717 959631514 672122182 113643204 452403519 113663981 427501586 593422048 793837998 77079457 562386505 556028717 774724443 229300896 474955167 328093912 766848262 330158943 491920526 185306531 971280558 329051510 888580981 119602559 715343885 912861253 336614815 557056122 386376770 533403536 580574392 979836486 238868005 160204280 627999228 566161387 860990319 334560444 794063432 409006146 588306881 132789886 240876405 298242853 329710836 679061705 489560098 56249578 12964882 714947511 868894110 301850255 607264927 826585610 61132902 54173056 800373403 38549456 959549096 156209610 427330328 618877058 145019201 883444340 868280028 892297278 79493261 916314334 536697195 360572737 452376765 273438989 677308159 515029885 342951411 798417043 639496044 345961941 348442400 30468787 772663251 87497540 225625122 594197054 501259107 839352347 835212460 225214293 974935529 257533112 686398591 713430893 431071672 629319985 595972846 182063855 889324355 891468937 884522725 238018284 783625799 733270688 859910580 892102922 663232236 349495612 230827514 185434992 46033778 219627152 43824006 389607779 169759587 590260124 83944266 357978630 331153760 538421219 192642971 680835393 360899867 351901607 151544482 790848896 321233262 106927774 550069195 676428674 890520355 863301420 19824116 7895678 322127211 207680035 403658591 57050671 249067373 70171156 632065534 303985583 346121328 771991699 70927470 151765793 893877821 619112022 618195502 814856480 773454094 329942269 826716124 803799658 332512527 518355068 778886755 962905678 245246975 541981393 100652017 732943917 465592603 622311651 722561083 904563973 883565908 887366970 838074877 64226518 314593526 44083869 862543162 161540627 468724563 690153849 750981783 47933114 369355054 170315426 829020854 20020421 663831 449021870 697527439 628642676 698262912 733222746 689671344 999190656 937093772 196999388 51568306 447162377 646596387 383759474 106870270 242984540 951008338 274481997 376850853 957079541 131184724 471333985 915418925 956680083 78954247 920777209 751341145 386857253 304421305 797851858 993539285 670711229 607184318 346273219 272288890 905552484 718757603 414280301 29328072 165586193 980599550 283589866 720772060 53770728 821874028 945449929 636405525 9525176 300691132 315063 379356987 524479672 5170912 797288563 152596149 464560178 15390004 27335259 975865482 750852229 307051495 823712223 484741203 41173890 442140144 728483185 588788683 166295408 137256739 900686778 794493999 922692585 547758082 17562909 876029368 845610141 332166046 77896548 769028319 439446489 462882487 251712515 682002285 814335978 276604518 369567799 394742168 814307429 676736741 235377698 967134186 493064471 393811040 128270022 367663031 849637242 998601077 817294077 854697562 291221536 199701151 427415324 901216117 567625599 525618831 26469081 913925025 940978783 931884718 704935150 27414823 815022390 309349592 430488357 407803000 219396361 628036200 302545582 575776694 349705934 104548389 36103480 806439320 633712733 57539124 733781590 893738011 242753533 487317133 343562541 408197367 98884315 310289022 338828723 371686746 418297390 491817545 255493440 426248133 663708640 137286549 229999459 833850229 363184025 707030089 111304366 969094012 392001557 920949418 254563957 9345091 645289657 543920873 510086587 482192800 703355557 634777578 473352399 40795061 819517987 321978081 617164932 750288865 389287398 15592996 950453165 613863681 998695448 656893785 619968626 504796036 600762334 988559206 61700186 968793915 950096543 806721366 710671487 276693283 95634753 100271158 581368869 701312251 33181719 782832315 702070993 245714795 66978308 270949341 122274576 51722178 641809647 699609574 653117050 826272225 310758839 73974049 91536193 50952356 690412377 907448455 91642791 628752487 686572604 820922887 579086102 54335016 526171062 442219565 512181628 887802424 88372488 743392559 740642870 895656878 315727963 871363632 595955941 150419814 471052202 297401815 418409121 584441639 785940501 569373817 757882335 853988578 519568645 637983233 369640612 594481720 191752987 780125895 370841026 449434857 256496440 223243417 116573490 713030834 769817949 287119101 389828218 580643044 745567373 689435289 911662983 616541514 677245098 109095137 441023620 389007487 530527076 271464863 186305508 422886355 482875950 638057226 557568391 996198729 916517630 410629034 475274078 890807412 278886909 956286216 1036356 254367670 971367805 451769912 79328216 440960263 968884835 701657499 902943484 768942111 927889441 339563164 1073419 848163562 750651088 841022831 984425326 140515455 146145186 337307700 706625788 365558497 417424439 232897284 414456898 546049319 856018646 171268782 227543111 768924866 188245447 528405698 83477337 79081189 271281963 257655505 32646610 245111074 571253656 128789218 691096632 233602529 878259894 603301484 307513262 399980704 229579623 644040605 513294521 665039356 881849514 885232674 360254566 556134395 640821413 285748315 191382701 39014281 611252721 243899952 593182699 29354622 437899998 291568141 815610705 472719575 888396386 334204671 893128457 17343529 111715297 29733804 508129870 631295259 700660494 988983723 36929061 186900256 392137801 866922807 119301829 343437704 846860235 102247437 161727079 342930612 517736344 274096401 865514237 261700709 103406592 125710063 777014767 340896759 791131428 997479014 528554779 956633763 209434839 895417842 298451785 897229646 626186183 925779111 924933314 343454816 597770744 555996628 715842553 365428387 210713987 409817112 286992427 236492113 827481979 280326487 6330616 369083128 813838930 125259455 650518813 9216454 194395351 482088317 406114542 845663672 808376454 553399893 550586812 9097199 340919070 144635003 633687634 155623376 577680872 368404916 837951732 386280201 263905767 442759572 94387049 443597663 256672961 254862782 719151572 798273013 106948664 92323064 222792655 599431555 785709668 459678890 323608994 434540531 620196580 419865106 9227965 969025521 812338287 436800061 117896589 902025347 132375424 87895146 528235984 850788947 376519118 941721603 754859626 440482488 402091518 162284304 16391845 436283006 319284214 879891926 442180635 60497657 539006898 453218046 220022623 158213868 466576098 657756817 380777500 593199638 558165935 885984793 25004688 323802344 298157864 226727242 133433284 749410712 836096560 963822410 312103357 286658322 163185669 23063427 702555414 298966820 889911105 300403677 267439816 560389347 639559354 219763879 5754253 897130617 528802754 643425721 844318135 436799402 545255218 533755306 49614007 453830756 294385350 641088906 532267818 13153167 869518471 969296426 91021558 217180050 820211820 754082799 11315871 431022972 120270970 444629955 765314116 823196907 151900008 987091819 402710515 97462540 481048039 842575414 307778843 347346889 765090536 932977741 298495493 157157829 234704628 558092332 112687630 966406404 874722980 486616270 556319379 293444065 260732004 431315257 697957423 329818381 772980909 571481921 625124997 455257114 454885907 156570834 368394081 398079198 229329798 384566734 40020081 779221335 401384191 490937573 140317196 578973377 155413450 621346407 848102114 247312481 924086224 717945798 830343593 754350325 813832006 605895369 734345023 526629356 618776823 829226101 218217985 155151782 935511472 501947681 91736007 939457313 170150314 637174841 54046706 967671046 619507044 239913341 179016670 407955205 573019522 731313809 610840410 346653906 133584388 902893556 51542420 587461755 867413962 422380959 897486052 537424218 232332295 918629531 456904046 37928864 228295873 342701188 258885668 764191059 518493188 563638428 531580767 49414426 36068470 870587609 933299650 246385797 107350131 105538459 417506452 999363180 612769368 151666413 273949261 237122854 890057641 23770169 129841603 6297833 496152453 702728931 603600259 43152407 150369297 984236123 124694865 668325756 701245303 368971378 453336231 576251098 880154868 848562217 838103703 478449987 869618461 119209708 914900567 439590437 318144624 561190511 81182817 669644444 935031823 989800804 615790912 290731540 728048118 839458024 650621158 179618169 792640276 666282426 237583577 84452636 507289824 16250023 230144891 481890882 371576460 750001396 41616854 425295787 946655157 155143608 248243385 931887046 474171307 960972431 148660893 655448751 657538512 633975829 184116760 411826553 311809821 28277347 310373824 754289468 62250316 658065968 185502622 99997168 686923767 669014775 658437410 372495986 743139186 146555973 630968868 593212548 685998495 689464053 114375086 803002326 516917984 718742524 721013952 297320405 397050273 143205385 194329167 630766119 954008 6126554 265191091 855854682 661341472 60534183 734736242 50727897 843499187 241566047 989581648 599839879 371375709 816156652 583873165 12074522 208075848 301999318 339688522 313425342 233096174 121223668 919645953 262498673 492490009 233888284 740877866 808824788 966590482 38789321 51246043 889589643 570778302 864315695 838112047 70053139 729329353 505425387 554290993 221939040 226423137 942326941 760128380 312561957 269763768 487739401 790361117 929707678 35227654 741522917 428577289 850125705 365447413 322920288 755481304 394229033 77029608 20625789 376134444 302123767 560955410 114426970 309253966 825655423 59008935 413623669 432518133 560487461 163257936 96452137 846918103 219093729 691888296 814630192 118747204 464638720 795780062 763396175 881341109 454922598 431802124 594628882 806752534 950272577 999386343 701860807 605608160 299500818 502513518 186894620 531041943 523285347 521733130 876366516 695006899 25015519 64512335 179131510 820275932 638131915 83686835 56793970 274783079 40417718 474096864 603551578 922439462 314271855 808510000 293657995 319148838 133618267 546445923 872563336 152734352 37503785 170579200 974257835 699791856 400455170 432112447 139045635 708460064 422007784 860796865 827096795 705927498 48382412 666168207 86895731 686438235 955527548 886228875 642470612 820791953 339214946 585560756 586528140 111917960 144644268 891281256 957451540 965709264 191013370 894721931 100050996 639401428 10658317 789387775 107759190 107045558 764057401 827021329 474736206 970640846 295061752 2628336 185592867 364348515 54041983 854082078 532511090 994016346 825787328 478319594 859453695 397085859 672007106 887646406 151507168 851150968 992684251 957170397 124215343 206532170 941775743 764807876 154472178 60414000 667234247 435509429 938169885 833780092 323253990 255210579 71032426 52784274 199874598 704935555 862667218 34529584 531089608 414196753 999268344 60978657 185329784 454915650 885029917 394652964 956612045 550931346 988073309 916207859 817788756 816437521 716595869 304754163 338057968 426054755 431439113 693011047 154348803 56249046 254941799 666691875 327144717 59928801 900632085 181021912 679730239 608937972 186248120 545689074 503755587 413724164 873558536 904966968 530065584 444296355 883733207 569782893 102210676 855368061 509273040 198517650 86553692 454343877 837802313 896941187 222256932 164293507 479160105 889550490 564176681 957828225 950887936 176196528 722639280 619351064 117262014 866062540 219140052 544123872 880784254 105144338 72638153 307440832 74649452 286383708 541676622 35382618 582659722 55360992 75366211 479078257 488552916 408638886 198213084 25946603 650935444 2305666 508107879 759402053 964519685 3357354 967794905 226229727 972064069 958459148 120285868 419086652 655319403 505227926 735020018 649207668 906017982 725501318 910436358 224128698 521680598 172821704 680262580 597076515 611353476 178310854 942613508 117887475 34352426 673315702 218199700 554865118 212363298 275462031 985379914 952187414 141940902 179003279 628675146 29101165 783744161 464160840 107732549 226884756 730657845 735104185 279631517 326998313 691258674 300637968 18557552 876519964 741785670 852102264 636705651 733540966 410341882 775663228 763528989 744807670 419746046 294203766 536716578 419534610 892805955 855709462 873652046 567711794 926146749 845808216 513553023 420176058 160108816 225531042 565571881 36238950 65908874 183352563 440714920 917961919 8464408 5482798 795458517 311892821 251074304 312914536 678133296 985648216 814191790 478043408 22555479 839058620 349012486 681926872 471028428 191133069 602455035 719746192 697463993 275395613 67606181 207484541 736357952 387980657 126886382 742188784 625899694 247934894 39353393 133345940 269415707 961155843 41148281 197939385 425050481 868083079 661602834 493048669 716481113 567174926 907302047 998971052 182683883 555360721 460059543 292582002 187697766 552725 724966003 92626762 676920356 259552458 781698736 926105731 159098103 816116099 178341905 796592650 74912673 611712287 575861205 655727499 349082892 808227858 467937484 83267709 870689230 3334941 436375960 342771157 191794748 316525100 714142515 582608686 238228957 180891450 770678380 525196196 190463481 595100992 389424971 288400768 435920318 706649237 877350585 891321919 43428552 883869707 615555936 938034303 936871649 627281739 223055431 379611862 602593846 384268270 639915714 839701418 942655005 387595016 139324605 780348295 381630309 245946887 276063475 836310935 578010493 649262054 653264128 501567654 989418634 635685175 317909396 883077856 622462543 288977126 303816774 327184269 343161182 601008244 835561099 191858126 91391963 663857874 76274773 368815327 68204424 555772582 654098922 309407616 528294337 658097037 25479218 299488702 994889482 315783245 156217669 131590278 164402197 719524282 724305034 426221397 383634117 781176613 520916482 484081534 397120880 407300687 874078346 38438148 408162708 687014402 841344166 892020671 227433009 63738499 869788337 555483764 997826725 103259980 692097374 144616797 503481213 47820325 176633666 55954755 692147996 729016176 796613073 892977465 822612599 817196903 401290132 184391284 644140484 749999851 193944610 945976998 663313864 351869433 433749603 577624127 806371025 380570940 267570666 630253942 784999969 562102450 97278448 594795166 688844417 745471650 588386250 505760181 506313585 803115551 678046449 90455824 342302113 81142029 857987686 472835859 964506773 613051295 468512728 668583585 98070302 522345884 913306543 354370800 274150056 567742534 647977772 771824395 624063551 498559456 910546706 792867179 148649686 866020392 497698775 712435919 688323541 812497692 231116628 907689221 585935845 995500029 86428275 502563776 832961979 780483557 923592193 776578819 487087656 835739463 101605945 86912875 690081668 567816328 422607663 594932373 905611424 67910416 31197073 549287097 524856780 513124553 172145591 378730569 870080533 991291937 606798017 961720809 411595904 166054257 578613648 794526913 315675047 88298285 257758321 629319338 496905761 562338797 877281244 745477872 857558512 41122746 592625326 312112744 636510890 595275709 361915453 963312825 10807886 584962714 537275269 304811977 672561304 979976754 121690870 480091927 883733473 375938586 159950262 637918476 735446810 280878782 862463975 784295149 104893943 863002611 657046220 908427145 981099202 155651816 956503536 556797759 123528615 217700350 509845318 389773184 56584441 128881202 577115607 665273133 677042482 944554495 289496337 830515309 918241815 103065068 924028490 171552877 146663108 813540856 258838020 46873073 337164462 167754755 775868137 20561304 793603068 792766051 233174798 174798832 667453362 221218992 253621360 680388959 697528330 904091785 4106012 463549792 994348474 170610188 259073217 574763312 366514859 407734759 160900045 436307284 460008849 199337155 551565647 87146107 196257630 342701889 63868200 571788740 476671668 320224615 624380168 825243344 678606310 937030967 737745437 695325554 105806736 291061059 955607148 470209907 933642222 11045192 674938609 359103646 746648834 536646017 514929765 480661212 509646225 65141206 636527886 838091093 566768502 412119062 69225491 693541985 224908002 231028175 49219028 70196529 8540264 542389029 799006679 519053754 445816935 281853334 877446344 47937342 265971015 197908985 528914955 444652443 610308690 498096387 509487064 751199739 373999926 491779765 521855507 221958251 679718097 998929691 642425190 200370589 132069357 128222889 744887404 630255823 673516994 106304593 991027947 211017329 155255119 399687603 338938757 104285059 107124818 337883295 675733299 368154468 153532432 567197505 226828393 234026228 430513685 304056249 946165012 745515530 655108644 654986784 736725258 945886218 150255127 173695972 579335406 206356977 827964244 734641062 800143272 3770 688639226 7788202 508904436 764415158 801014882 331822312 918663604 182308143 280393008 366433028 440012674 18293169 974644283 376137232 950999759 868491009 775447891 801108920 129455044 570334538 324368822 370324495 64683873 995787819 360599358 813173376 719655668 726047860 370412642 222152469 866170912 679086721 132632464 500154087 220421568 450796934 208456750 872549491 962705295 527695156 22622035 912563743 261958828 308903738 519234182 68716107 869998774 811678437 781034244 265383144 981453440 459443084 653246029 847154535 515155085 509021197 49354953 229015361 247703451 92273261 518767528 140848973 893903363 396392765 789032 540476282 364602797 465659966 905232851 620129574 666119635 644562045 852845456 968296880 668383349 92708207 909531344 21181708 548389284 634167830 495367181 48190024 583484453 789774983 301762741 447945239 724921041 177438122 979179119 356087506 142183698 514466411 427912495 704049037 333651431 810066220 708469870 161591549 992543993 110266233 768606721 926203981 44226490 137706812 590509129 363992816 390509963 585407067 891021268 462955276 908276193 772293905 815662231 270318843 993005669 839515492 282079960 476635725 169284199 975864063 907658778 420859667 360358887 204259370 596355196 692511880 376301888 520999931 618677162 267414327 951663495 516800210 653946202 762012661 717065663 241771370 260163056 402273963 446398339 125969982 887207266 716336352 402175925 527035854 520691658 302570570 643545137 144878985 723336067 153256134 87614872 577506780 51167507 237875993 711471279 349237497 534047942 172051971 429199646 875019602 744978060 861291107 930954607 676485644 617036602 331197381 686903569 657170438 90909419 72787404 747571809 961281634 378390584 532106968 402258169 500393431 232260845 875533642 30179859 210011693 863476649 132960981 90601937 442864681 828153189 307500165 78364768 896256053 289452702 755333749 330449927 661295606 771832185 195793395 622497716 126466825 732356642 7049500 777229709 457282382 12301985 629779380 194225171 604509092 842884006 723265107 995791078 787327780 451394513 819292657 270070968 904168852 662898912 647350800 761042665 240317274 970922263 702631504 808905538 556173850 354601213 91403042 738435457 84377566 959399011 229441703 784021894 487933113 312139942 861121519 317389183 640299217 650609073 852832300 582738826 719365943 910371463 218088264 83197531 584937632 162608486 432296740 729972343 429379664 263464218 7366132 126571906 95888139 216225568 935405484 162688304 355211744 60483111 884901950 799700575 824019978 450814957 376079616 966545926 759608844 150629431 316076146 304002192 746571798 705299226 922230948 58335955 170251411 725072763 193011126 484547173 28856182 982939905 762632052 579918127 690225872 766848894 311121906 664892213 423220000 710778476 323000827 849357625 464651644 582466778 610125196 537745225 946148748 267384375 286133647 781703085 414861039 922822034 176359194 767523744 917497220 467191669 971393090 788861611 25072291 966478905 954150310 701158428 387461239 288284068 768583677 296377338 154264508 15453146 784348299 320946992 838062564 152320298 225065625 943030846 886548858 722491701 645081387 594128026 691973328 314473217 34553391 498333690 178038898 830540378 986290364 631739517 752180686 239755918 647382515 76638158 34113580 472027601 555027593 90417688 141606362 452175058 298082564 282755119 394502381 250139817 639105403 713120576 19142256 308958440 398498503 22630660 318485499 929813467 335247472 392050556 87636219 105069776 939609088 739392135 405960906 118300349 546056900 51293743 978584504 893887632 20583788 398048960 48866406 583995888 794220654 265806878 234897263 641113853 206579926 374938629 252336454 923409966 116188836 672764636 795893773 679286285 108239457 385399506 668811383 541941083 431750807 610828251 640466347 508017468 531216841 218365739 526802575 486329773 405872444 845894778 688185271 25236205 326094166 717041823 565164130 271174297 3180378 900686054 633316936 169341577 98972105 623795020 948577371 107083990 584673809 404127888 927550347 171909113 899611938 909993449 33969652 563389613 402109976 534413418 825083315 205238674 321080698 770531128 755313543 70225371 889600297 490051710 787203066 282722441 153267349 651729979 684581573 139061323 713056738 383287042 973383939 862251891 687910807 365678317 128973395 301155926 229036506 156859285 967803057 585635490 233692635 134740992 352664286 732753716 742611412 943333481 550454015 212321249 394012672 833695905 250265044 546150547 967824805 21350593 609745869 647454156 935904415 544356139 270503705 399079367 769584451 204405585 797648913 948774147 205312390 519867106 314366196 398184723 478116826 807992545 187470820 248341945 306981830 40111435 750136745 581425671 408665609 38471539 465413672 974720457 502765365 900665517 538104142 317903003 664760777 724135708 811974893 758804304 791968877 486955871 260704772 745273283 853709310 324690444 572716194 939467606 357492417 654493872 270930139 42881501 626211030 64173156 828318455 141310807 432763296 737445864 80550556 473689098 420767126 564104584 962989378 254257727 795011327 526450119 41320358 300244126 417793509 270597625 447912530 493856639 783476405 380151907 601835144 171231418 153292728 697780300 105996575 854642027 981183610 965237164 249072679 835003078 242026013 966490417 978686193 953942530 267050502 761361847 981288085 614499870 918302732 603372317 569453423 430319057 700568720 941439355 819452508 341444944 244365797 52981519 80674814 752273677 192236558 917587268 634985030 203988773 716287458 187314215 619491654 881570286 215754676 172808470 724644630 226717946 612745337 467350387 878572608 710932308 731843714 418909990 155786729 455566104 746775801 314525388 859356086 15523264 84614589 331335606 315353869 831512965 887244628 556626562 245458867 128259162 944946230 845622480 760149337 247001257 767290254 560734441 701612030 956380215 867351941 421407264 313479284 106622949 492821194 601218352 866956250 458034001 830003543 634620311 268281266 643389664 709531677 586740105 469802595 998761664 561282190 186326244 905985838 482327823 948892358 735216957 999703783 848212933 590139090 214058891 139133472 552137425 689214749 171304158 710886891 383110995 415243521 99136916 354559001 230816365 153167730 154344238 199528252 480408060 305453706 935575239 623837987 573169476 202209819 447004385 490888064 710193590 206566600 22747198 82140776 187184984 638851540 379868802 374590497 335202343 247263419 905144363 729383197 374043602 332714670 643022836 746259145 103759096 581284507 70846207 259082974 287959956 87763129 217698960 775753844 115159936 433175378 846221009 908982628 203140043 869913557 622551677 13755884 766833210 952022041 938380492 509132586 71213966 249344607 678714211 312502260 812265697 644791973 390001833 635841998 6102833 345773099 873392683 113470019 429078311 95709611 4576184 684307622 163552056 245007999 988917177 881750836 968419222 720591218 486702682 63336844 100529624 527582922 301881261 534285574 292443263 407315658 653999052 345061376 816746717 640898234 778699214 274377158 888057333 176440101 628199479 745771726 712298629 35213837 972270224 961156298 401758328 369713903 136460210 641430096 935661540 1387424 372968797 957299868 371352424 640067604 550083891 623068064 759333778 368881679 575965111 370831013 246432826 528811245 723206886 846952034 668635939 875052855 895924438 637413252 509603432 248081686 946431405 236243972 719026534 741429710 527726962 538041262 680698465 496480438 478745748 391465171 113549934 473640862 268720923 155798862 833743981 354406821 563126794 584185914 906174920 614921175 64690833 907525454 37337671 113981899 534092293 509322674 25045644 65211263 465819237 73518837 821057439 680269037 984297393 160495861 540164286 168648614 246097950 197877928 951152776 482400622 909471732 367320927 869234647 624738146 510047519 520082455 922349425 348769751 99749913 638422813 988270130 888661254 869131142 580086059 924753469 366241245 911165611 299040391 360638638 135065235 711875832 704433911 523246189 428655459 51485962 106738863 643572099 109232399 746052859 477614025 357541892 889713289 687650169 904208754 820170818 40630424 462375058 293066565 902206529 293398587 808087845 64738809 248171437 193059813 630436896 739546809 665444018 159602289 732404129 42266696 403450374 472540999 948238887 771250328 982163970 225871019 914046702 892144632 535535954 714341170 669156232 633270885 818693649 146348145 452467620 736128308 607610880 647671559 277480844 180072927 232441972 155477835 828010359 366452955 339151078 26028092 182928068 448864259 523117355 746670024 154331754 838509360 533095170 929681517 721924262 974823673 523301925 890942410 392707023 173313670 575750084 824091945 29348768 436268472 210326018 348901188 976534309 928112487 971117080 257496767 381232079 558500474 973907605 208403153 483778536 434215619 221950251 457355191 229375678 860865054 255803399 482916504 707863405 390516565 317330140 757566256 908683328 224901089 768137249 925398550 759773255 921042446 51395461 455465702 798627557 140687003 180381816 384887125 994231697 47399131 346213416 99709020 527375033 314362847 943771191 871311384 835461917 71880396 768736645 973641723 518577389 492915879 353093970 966306594 976252189 280547299 750264791 380523743 580842490 675034064 714413150 522004387 920351404 130489918 532805789 261271334 985938174 696069004 555330689 801466051 82140311 897204442 355531684 387575629 211617688 436666267 997861941 334340720 589407896 854156077 730383705 757515215 443496858 471637005 282979204 294001423 75697753 730409218 894960922 135228726 477979219 148733412 596120047 337608537 979102272 185886496 994899490 260768418 939909856 833705351 862616235 727120263 951822449 254325823 212279535 367268958 985440703 708871114 265039875 624099080 441564341 895472271 913516215 782026993 182517155 347032006 1483378 751758834 308765585 931008146 177156014 499557031 182087235 660861825 653550822 753233250 325497852 753901315 900883237 355671540 373995650 363926607 585052149 478765383 106116967 700984284 649033327 285584581 818831021 827809614 813380540 767530076 610928669 234656913 42346150 515612057 308660059 352560974 79894981 306889927 914463582 686154488 2829 105692907 467895929 237834947 105972912 910717896 683193247 765478143 930308399 859850770 53644325 362737553 342559213 906142611 265963363 636616195 616611613 257846341 961144404 264152323 941801619 843557168 441620245 942818842 854382945 149070479 847783370 744053448 774378464 868051848 270483373 67439295 761106783 162364175 846020181 490260791 772134741 937496563 617823335 927842527 239074165 397817264 968343031 71541371 865516087 498510142 71444471 513221343 972997596 820804403 197800129 6332310 925860400 412078001 331939338 530756493 206483984 666904768 538838578 896569020 265561762 38881561 342005154 77540367 973211081 630471071 612225042 719643495 95854110 932468535 911660501 986995158 406517630 511517023 20468950 895976137 762029037 431896004 687397408 641328832 598407046 816130543 969967027 29357126 168128082 521380805 204028462 711131036 269420992 353835335 586191282 495817813 966867931 366112700 343082952 179956892 108616735 728149390 370074099 66630630 119541448 594218458 86554734 945222613 225813994 538281487 213130308 961850954 531709465 269530728 124251360 430635875 812548786 135757766 546225686 360638270 62463156 844143162 519642249 309613681 83918455 951062424 869082010 253104767 627121710 329927141 60319979 955950635 799210720 619147877 471265596 625514860 971983771 943734913 237876919 211154895 891353925 333390348 361440626 781272217 465016529 296066732 589778402 674138494 513499485 911770004 142383934 772809554 670407469 137099226 102710880 363486287 257183119 122896196 280257463 94636280 30925426 325501560 734329057 996477754 369603971 628421218 748248642 284697881 401107683 387679948 947478438 210255200 828087743 568939440 505962042 404095483 840791264 819618199 252652893 401268399 156436246 97381602 26265464 704570510 815081103 722431108 985712273 465804246 730674987 401887277 640222661 332724232 349377522 322889216 387227081 980489048 177057005 38238701 671298835 38178489 396143344 154269030 257988806 320756387 282939739 258410351 818418224 776491662 82755710 189639034 226507775 58015038 531970976 402185848 826445556 223050099 464370111 297610782 994525668 193511055 946927266 924974701 481905723 584011649 477070806 179162200 325598176 930086271 91277664 987383213 115901154 640264480 914506215 378609375 375582235 533437356 628489561 357132151 283555920 884071515 250114110 788086013 975316533 437888537 950555746 298539211 213610960 761981443 360846640 35434280 274432621 772093067 970753147 285340247 50819564 324392231 401925894 329622031 795633668 126994394 224942632 419605382 776179947 319793250 956394430 904729097 605227301 206398807 310655116 916661486 431020942 593438343 883372522 173479936 134615126 839337886 879612162 628763208 29304392 806407066 532234525 792749478 590087363 916834149 454181361 119268916 619941083 970704967 896822941 787478243 823567411 939087974 779325605 975474194 76643318 539718727 758497579 401081612 179096793 446039084 432654758 181170477 241550588 770667219 936980786 28358160 477364344 313148291 41772819 25701064 14541224 865450035 42696551 558969122 248547066 714354092 185856415 329102702 720049847 576513871 812476922 614623137 470408836 316277801 547382865 600743826 812704169 423195487 241873225 158815170 238901933 736996366 104717520 754757063 803223271 728563476 739914916 105010264 540986024 257998319 706359394 540413867 959812331 40188892 738787672 236728937 837015807 464014988 683238649 552815314 808722259 270088931 309261803 372032733 40589883 60555866 964331163 952585512 66370030 235206513 205551947 703116991 57236595 300402281 553023534 597828011 290572863 128861901 100463467 290833863 415249384 689453676 330372009 814332326 214663030 139053277 171894158 57749376 224939186 516727671 613192815 838072738 521385246 515931357 318758111 232468917 954247520 640110411 219883837 64624087 294445238 601729795 148737604 3141150 299360716 275341751 133294048 327290674 359381239 937739721 462768355 637857963 609549695 779355799 629573361 173998280 640066431 562880793 693879280 132645899 914902247 153472051 841832413 400918636 404918024 139760243 138218756 743326398 758815345 2631269 44214820 110529193 200986202 169976249 668404829 458452109 256341459 611992436 126363941 118428482 382663781 97895268 604578182 829311710 451236063 280808960 630595528 33866569 968318860 818916852 892876365 603493165 417664078 392984429 260482952 445335224 42171094 509978591 856323188 541860923 555633355 933487277 244707419 742540304 781408967 574134233 123821853 275543473 898227744 186864863 290824211 785395413 613377776 580974391 469612277 666349123 622737127 278386936 93641349 683661865 148113341 178928860 247446500 332379237 349202854 814136056 491080648 285669577 757360544 811073305 938505294 656743919 828334530 666792958 104584250 911308514 515081240 674220716 173518692 575757166 563629251 942609844 910251883 175586806 112601823 405973282 290833659 18707960 218570758 726038164 748229171 732988533 366388778 676562670 150189092 772676099 213184923 638721862 692342733 638668225 273883874 528595471 85545363 121734417 337568922 547390412 164875810 645221442 213921476 237868114 25020906 364375403 863025339 482100699 898590078 495608335 428120640 585740621 171831592 420070603 947605070 193440710 786415545 926784212 711168340 545922734 21799758 457174857 350945375 735632112 237732340 576330189 781319547 804196691 59509777 778107945 201562481 642385007 690949823 883478054 651189069 589988170 783318968 504892892 361449001 163539847 621309572 582604427 304806705 969621979 730633575 82630039 150776987 432533165 129893538 918266249 191737731 183279551 678059731 235285986 182460793 850337254 23048948 503978519 83776018 618709813 870498194 881035690 849969203 409458827 598286500 702904135 275645364 213870312 844029543 504731847 67867867 531802370 784302846 478008822 970021029 220135965 127392655 92937499 995643722 616151226 980957928 602509577 416655350 954674510 201307827 404183380 43382510 556255397 504772982 319715230 515605836 64826370 287625220 758538015 968376157 700116325 814575119 564257637 706911154 636540614 260563784 990458882 674115197 54278771 291770265 121567179 749229028 613588699 580282850 551840183 876447268 103996955 832214841 956575708 256211950 672618422 357374651 427112087 947105862 949607488 134704795 351777812 344705234 477428778 707286985 829012290 514459137 21823319 846380956 96812635 253940710 377532999 182798976 910257812 445791839 560760562 923543769 30945413 289448353 749562139 416809160 722900971 141578719 28571801 613999510 394814718 926433438 332134158 832557122 572356884 576979830 363987711 130903497 853205031 89414327 510070255 982945093 105130097 132210537 900538911 421110437 277781183 451765662 71273258 834206150 657585207 539907823 112540916 417072866 419020172 936761297 771045248 181742637 794956465 395205075 65906855 742510158 412933411 894499449 480766364 242354828 496067097 716460496 426379351 305108734 94950348 618645652 473475928 329733739 85848710 146306739 266943931 331855996 654814455 406300083 328217574 259062129 715442551 66038237 432026908 120117773 361052928 277442039 362846197 376890932 412383596 877588642 79108890 861833529 230779381 309271628 72236119 820010249 654197456 815094642 782352950 607094783 139905121 292999867 598942004 925006941 619375180 99282771 327733860 324007675 846421950 561463949 79774544 232140553 789451059 347495804 691005131 347551832 892842324 508945176 578439673 932880653 709991995 886675108 282986140 378458540 999995119 840399338 18132407 384565732 388694788 161493010 477878740 598171465 787712441 307205734 584754473 208002045 248539046 191850324 152349004 501935247 717713713 887173620 354347037 935903834 640038523 1698874 77488671 490918755 996195984 145400554 494092957 198440972 202546081 24224440 242221179 341523602 169910416 670268833 500439420 366839652 133391909 673436853 122938809 129260257 788267085 472803271 638959584 45858280 776629146 297054093 20125864 555736567 289540926 993500809 933525089 301471180 989652751 769728315 594918190 125651655 565643683 784490747 546467714 482849586 64644015 277839862 598594357 202799196 221288489 821219517 152205327 238574821 99016112 237987153 190770117 921028917 151415406 6558982 370604718 902979611 911561549 243409940 990972162 427132592 882903343 214414258 560921152 699181799 947902673 280120397 514729801 211009810 485020766 8917601 297365458 412478316 813974065 228937409 929041399 423185373 416792124 63121066 959493080 484647359 850527564 646776985 914744573 220644625 814787513 689452214 41333939 401526285 875795563 137498422 504006295 260071510 383930896 722959498 191495310 780365788 380257070 280130864 792842022 769024106 219010014 820993161 157386495 544716142 83949130 475725000 302662576 946231097 842766417 757956974 798258337 546633495 485713528 787528210 65780642 397141086 864153786 965708049 243456197 399883101 262722053 620293233 81369395 218302411 468170404 240778515 201780659 417573954 744271801 639319227 892970387 812517093 127344020 465378809 626792445 448238454 514448503 796908507 869449501 676022908 243974526 267525994 971982279 782074780 223605078 140404475 671501010 183310337 816037089 448699196 966916124 261520003 996801533 321455504 182092688 664884718 273546008 867657909 903960353 372269066 416998090 347416466 772209468 486139551 776040966 366454940 910589169 490643633 178201381 459654601 18334455 425043981 654211812 651839654 97828918 24418111 72007458 488044007 104827525 615389406 4535767 936688632 975207923 111250809 389677950 344652965 48273828 613871781 714221950 171300969 768867122 91186443 975078115 444072443 426106406 141617575 484108360 385362653 908330323 8254015 992328853 996410147 926740573 249606759 197117615 405532436 326667649 474242139 691821835 951777849 531897113 338326377 555451655 844827908 778549170 1882260 323294948 932690385 324271744 3538283 302753189 689473432 435655444 854325424 878701951 651852341 308833732 515257038 434357790 814282895 136793411 701845136 976238779 762671984 399854589 933476412 962558073 67768678 498486062 182227120 852708230 119244596 218359487 791390616 424821214 751484882 643163455 606814959 679931049 880346174 258172556 453988142 249938552 166911195 196545506 295383369 947722258 723829584 994406427 454205670 16225562 137892310 249332050 92674547 762452479 219546833 92757167 156583738 52428943 91043443 462781928 920144458 50616548 741968729 663761514 800107240 616211269 907565531 313562354 246853911 830412959 648869729 143091518 666484057 207882894 189673193 358128221 167075491 305650172 294411065 357211815 660876369 727396083 804907922 773472493 34628962 750513710 590550211 923032129 307123939 757501921 107688354 740132667 353808091 509113379 499174726 964606202 208407545 829237234 560119620 276125745 700458893 677863951 517166901 807184440 529301197 429240781 273376949 994812309 256461588 958590527 446220796 164382899 639975797 419375246 682724796 112532267 617745454 382422333 426320744 692869865 255648348 289108266 283510682 52515679 93947782 992884195 30415988 819435115 255678087 317221956 873557135 555457545 13661113 668265372 614580859 78804363 266359508 434055024 828935864 907336640 516691593 577454813 21604523 589608576 159881513 753404361 49483878 759378511 836263026 740105723 998300086 88693587 979238953 776161686 153569680 336874146 869507750 517437831 552026093 700834573 903336976 248948188 400956101 633006066 211158551 717734885 559477857 21856378 41134084 231195498 773266680 258277673 95942564 336692903 50401237 107183779 984787834 899763684 617636180 836842638 597335012 315404633 874900133 228673250 661425847 144218845 314655491 694077971 145563108 106450514 250064076 806231666 567113882 985423759 72299973 138183407 140464781 557463771 498744518 834989422 97159786 238897948 651884724 504359175 638823577 78783691 907862282 779638932 123395340 184801245 527670199 467130834 942109609 386127865 611257937 584441855 504081063 407279449 201251366 62634499 856682894 165136478 389058177 840400380 209119 909349945 180170773 463732467 107353321 320868161 670183967 549641138 294293412 329418578 684187757 963282060 221485259 520927984 980112726 279491876 801724120 115614800 765155750 604987377 545069090 376280897 928842963 407502948 753156065 693052063 945086821 898255550 792515083 590976280 177921493 819468396 768527395 733169712 134898482 478681706 344650773 874578583 553562730 758091820 132983095 725948981 760988688 48558317 283506495 114570996 503938489 80105675 667169271 134214543 539971373 60999352 309453584 618007390 232189626 795296357 470540003 854540537 901764189 962254937 96301789 42924054 209000347 428925499 607645226 939862962 955320751 497856777 229589870 670965564 559071367 316652853 177302858 545867420 185598781 628714463 504952410 303548158 286941309 205346038 15146368 130871562 644651430 368992075 921788193 933260205 606286123 532840633 434948449 415695053 782622131 843953598 876380377 38566576 346883466 637515332 76136297 605750718 263449598 709157698 160917939 958798322 874750474 119550305 144954197 965940233 440011215 234639921 181935667 200130057 498102689 956676848 448280462 725023502 564544247 326770537 8941877 195029790 207227529 684046812 740698035 348952977 605176739 138721280 256735026 740868889 761652956 130672723 451132519 322939492 441176499 832204087 497480092 868742335 725650145 41896201 60653171 753166160 235788993 383328100 719969433 825267907 264470989 609548532 338817472 679965801 523392672 305772091 712948000 42418083 984248376 11679290 50501935 803306636 535106564 462610623 116807114 539884512 640370016 759925121 605336908 445908619 518585999 438958281 972301459 737287328 520348424 100624168 558601184 859530131 841102335 45190173 505597834 147398834 582628673 303461688 835363660 14039143 797736257 758811829 578924504 122173252 571176267 489746871 570171111 713732914 810138780 440733290 850498193 186459762 446455857 812337068 728021632 175446127 569238367 285094057 602755809 222580255 367725837 491937194 191575680 183203075 636660566 980173321 472522279 631964828 337672837 953297073 456811820 781130793 827257028 606023544 471680628 485963759 126966865 254387532 456714633 909041852 354426770 912262636 255939236 365333382 481376201 846684478 50450866 874532374 890985722 50386205 925699528 303297143 703822828 43513429 837734896 634779592 515125088 657771182 875331729 263937850 16349863 561480317 964509442 48662287 92343117 472819684 351077996 812722788 354331414 404846516 582225776 650710167 107665333 518039317 928495542 860231275 512456023 243830482 914272809 443319361 5312636 650697150 67074289 850942947 463383449 661181784 909878122 315462798 961206768 971882787 361014987 566737953 785228152 893288600 346170766 217454834 945777895 648483065 764300058 502920531 100134182 80228425 992691950 962846683 201268416 868774830 108214554 128804566 305096229 985596497 898125409 911812889 869961553 393526678 871507622 897287287 787472008 124339003 408094150 510124679 212513430 644358476 444279090 222157258 126836578 151090028 951405352 857204479 733478327 716451654 763435773 2788244 674863849 202376143 404849274 428693067 365240056 696560756 321550776 209181525 102325375 387681979 490080892 53233021 193607808 372742567 645031085 527019491 55495207 749111693 14284901 915136738 813007303 832893288 25469438 434408941 754355811 797024919 842583335 473507986 616687511 236958051 407536712 145332375 429291991 280221130 833509473 837366765 637867313 247001994 724347462 573989528 646372887 553285268 850649767 309903271 197495500 569523197 798338689 460309708 826700989 796379250 525568935 514578936 785111845 140565282 757920670 750779764 967358862 778772478 363426095 886042201 827504954 147195537 980673676 985665601 562938131 919197469 95190457 9779296 717666394 761670645 932219196 585382579 22501081 499251816 25771046 920664977 250750559 446538095 236571337 215992716 490908883 294782890 732625119 731093390 138287099 830959638 192465460 352549321 656060589 315341034 996740813 122526981 898837452 681973923 224835817 109950863 544821863 476306544 460638326 530638668 728728598 794440265 725063532 72516608 437799903 524611581 699031799 38782487 396768760 937887146 436376258 778370610 182011151 455134347 52453390 418734696 561149093 715199253 289245335 236690164 448788031 679719457 210495967 862565550 167924217 340928538 82831410 418247202 53869091 789944124 68725458 416949920 103400198 43629395 48674531 358827551 440437834 61015537 302145770 237708846 559233749 472347986 113713030 89113060 655002389 592692215 430012732 540784840 832487651 883041199 530815458 475989043 587245661 592305457 543018447 299870065 611875566 388268597 163699799 442644766 457279518 263244720 211558262 920324230 560720119 229472707 102455446 49073585 915601351 770117672 553858979 519413581 22485116 615653295 353348712 30765668 578284028 302859712 927357549 789201103 995715319 636477242 491533732 420849712 163932425 477056093 212908376 991480745 433281901 261448733 551428139 349441062 249704307 676496672 126423636 44142037 79614250 774440195 957110525 322554469 410887031 267484541 717501457 514522146 360200947 431109531 905329633 46122550 334922999 109001384 664544352 531942892 377889190 879927628 428890429 611707244 859366294 839431999 468301798 401494000 26196561 143406908 652247813 130139266 282786302 545228553 267367158 584159478 670715535 993253105 31511405 404484455 955215965 83511142 126203859 455891028 611238681 356391643 876968934 133903222 895205774 823669452 287114775 497239128 360109746 46497881 320278935 618706472 873325381 732989873 993389742 664052997 887518440 969038629 35897026 363859958 368454293 593509068 119558286 663234497 417250044 129970824 298298137 180793289 120027525 344651993 600436100 937044328 370083892 547166579 492558712 515561288 561124992 924356560 773979016 12690665 400865886 159114442 759910280 770230587 480699135 362416497 882460923 249307154 21381909 715165305 256871866 938266104 418703448 931192371 530603728 831017018 520176472 610680309 38838571 686339947 652402645 10127272 868919505 152632294 55135420 242995019 15902540 696230198 737593714 497017480 216119467 992737502 516281469 698379018 731436983 937271749 947702242 25710540 978181157 297457443 761912418 148475278 849029632 979879668 191891513 388356213 106838660 896961717 15826454 844583727 624753182 353740433 50212873 316443890 336706748 541210231 167599351 32618695 122091229 418027741 736503400 110013543 243757494 424173088 506405804 133603898 846258572 56779812 831954928 957187129 506230788 817489777 854339660 253621753 796677486 173638540 103770758 434351172 32218243 779365379 248824989 451130154 418541229 378889430 259157628 775654509 83928833 554070869 270871384 259406572 476850125 399761977 696715463 230882841 66564973 300640662 508361669 18193127 679474652 805547938 399600217 863642860 244013629 873345564 847218585 247741146 413238479 869996099 167108773 707065452 190466238 139937917 175294714 793477706 547535677 714811571 614978733 395946310 498634885 287015372 19179413 526515315 449791945 716872385 436973781 7049285 579842285 955939155 61538193 898352957 306237405 193999811 803292839 960408097 217769147 437211608 527882708 903099614 545954264 443402509 230031513 707746369 137422138 583106638 316542604 828757619 135389165 189687344 371556257 876120913 431277139 300052104 844361963 597131348 423857660 558206249 542075794 382672 877348940 144519889 13949511 770153428 507854910 637650211 38188326 257934378 424377106 620996424 244757956 483472996 573507334 599683608 627381779 463834841 5926340 583032123 620266633 929762869 940210548 553222581 550421510 294806889 642200426 663891727 600311541 434194988 492369303 669020129 595044182 478904734 874860663 373160041 171992280 855519158 86114952 656103317 512643133 741504193 177663930 556565695 198556940 370393387 181582158 451869650 773746817 585756536 235741783 79238820 271575071 555472197 159446217 214636740 272697393 19330831 361484019 858954064 182751069 713886063 843580351 337986663 332458807 852342630 40050535 118678047 515652568 843273891 689069337 178538580 712081628 450038658 940867949 641068539 538500033 550432832 739447945 11116544 513647403 196031985 171097704 798108122 109441043 923235616 164122207 866415544 75290812 192247389 331950262 893080315 725009125 928806803 514629763 390907875 830407030 162342052 275359960 149758212 739708377 838024877 681301261 3630347 210371312 23097830 412557333 880284872 878648235 330580601 848671206 517254153 425692735 120185209 164710038 347289992 107738515 104535422 105401566 525660889 27174444 348801994 877489999 814792699 996223172 696015522 4707854 484429944 732271541 51972276 85866919 217760037 329498414 80775441 589785243 97564908 728857555 874527969 379441719 931669813 482176294 116780094 226790663 481139892 600644763 635921664 135671780 180017735 914261506 659921336 812901554 221226905 49476028 82967449 403362047 211366055 596804495 173451299 332092068 347059743 73028627 575556662 75185550 438379562 910287095 431304745 947465103 633983172 482279049 8850563 691283060 440420108 941116570 113773744 943830542 796647848 707511062 922979903 623478527 836216745 880380761 297543699 112034250 876910725 422098577 931847849 676310595 92452209 589888876 162561637 191903359 688060000 200105102 368812973 47975140 695370197 585902156 360111328 136339581 420282142 769752282 474859235 976321133 373348427 277093697 302373120 157753889 576098791 343898652 221468796 590168582 423499023 616231864 92720243 628283145 256482636 515506001 900916399 197606004 916153002 747228910 866743630 934216903 678898652 686455127 958050816 909643906 588999541 536231838 720645757 508001934 845800168 970620396 366675718 428987398 905533803 443697900 32639102 642674618 866799206 209675346 421516268 804123596 119977302 934541321 48359657 18853719 62926969 824876950 311538171 592048135 899815886 653921721 34697513 843457162 56886606 760566951 263587510 763081931 165017958 399897733 369351086 805830856 117213201 436225829 296104875 359944945 770596686 568491096 647207001 750983263 495989018 846382020 320975386 573061014 176653497 748470873 720664955 226879294 890520977 591656812 387755104 28707850 762333707 265311241 859585225 188594665 774445521 300707732 515524988 573766001 499757898 205928054 19881829 181037680 366813991 949538355 323784719 302824170 306193461 188488628 135100229 945045026 872651717 645429249 963930410 644131847 672410331 330386596 648004018 694370660 192702239 319074465 727514747 434537589 396144246 750864786 198688987 56935961 144203938 564782445 736164836 282891553 22290892 308395418 349840958 404926116 822464780 163940739 456350332 593272339 888788594 618093401 757634616 607275054 117418448 895481477 150163024 552748735 330513732 134920230 109588800 456489908 759463747 524254182 361707842 772859987 466455426 139278690 921241262 780255280 134612923 876164565 684550909 157555283 492134854 811364128 923377450 293924408 208769356 151701678 849091355 660668882 166146526 363094983 707141617 760771144 151717892 180823699 852118361 401773012 15905923 771437868 710361448 776424146 582988450 223942239 858233228 579670670 61788372 418327244 651016773 318447197 34141653 945270337 554014232 321087444 373251470 562980975 530258373 46001930 353184702 351607566 515159786 462395935 601097607 424553844 645070325 519619392 461318669 769422371 980957709 99895634 635627664 825579385 345305788 65499703 344622017 328833845 386860533 696870679 538897943 757301210 633058981 135642380 80905404 860555064 672047695 842882400 179561341 802620639 226893458 521591588 32079169 379778308 916429790 453859936 798354868 736023130 159097339 236491622 271351196 894289673 756594448 797964700 588864004 647742647 736581334 896897481 314959426 400184335 983200130 194852436 18643569 469215927 505006795 139261607 299813817 637327725 434272437 284518738 937524654 187064738 707267894 243252558 890880717 685081967 729696890 868341845 31603911 242565006 113489583 931425832 69570577 298861249 704542275 948973602 587512035 257820663 779513548 78774120 646467806 902298327 79850645 812831171 341200278 998127371 226237805 713182888 110088794 48455819 908937460 290182175 207732968 900283865 268343904 769238463 68139548 653559949 463418280 125223847 964532852 942360507 36515136 809324608 631255439 754062822 778494712 351936672 355960844 364931914 919227056 490334549 290500005 920232085 95049304 117161818 899626930 533935152 49655636 815352022 936232980 410542267 144676740 13043960 522277921 347114618 276099313 680588598 254589009 729877472 700348045 597030601 711031791 245722952 808309047 994826386 523997722 753656836 502603806 554163430 818899460 69622059 640212324 611043227 731308238 400046019 295575672 617482100 993347090 764894765 557204179 832242777 724023962 508491772 453883896 574782694 38110948 143470103 964264521 488999313 797375640 788567986 341473963 9944244 918254304 966797052 638081216 413374170 640294928 175232167 576055963 516243709 453763062 667594064 294861170 314041156 93145932 380799729 93383951 930111718 130370710 924810934 866202961 443572190 581451568 264581176 313733558 940501984 901672063 896454546 929547869 726258163 609063937 961781096 355236929 230030520 674942796 254081090 418105337 121229431 489363842 765651670 604091496 830098246 793465924 538610046 278867603 235970555 356246672 653075701 835209507 936491389 824303224 809653218 122534925 209266056 740882310 333750582 896416287 236145463 175179404 250612811 464579610 899241268 554793580 236734029 435841753 182048073 87052166 965033271 380919444 187870703 182838415 292981846 116444783 122642261 57167616 826243805 723463315 371336356 780423267 603760013 318443028 670647422 880207416 360667961 219571167 378606895 168356275 35431968 555839865 691658985 614412975 144025428 995461066 654221975 367240093 444517743 34749863 884326215 397399547 446063943 466409300 923542170 29752555 743648120 11194015 554126053 609297067 810500705 15145288 261195900 364818812 333414868 814990939 673378679 808053325 68769662 108086212 203284247 305849466 425895871 396298344 190014004 882076053 52767156 667102211 951126785 474028654 888123397 925739982 237783677 841130371 694956423 60391801 294793361 378912940 455741931 414863245 654044812 892976162 827340071 103954003 136635765 152570907 170729761 606027892 783073877 283017108 56882630 469850156 59994533 424053216 536865107 593648206 689917253 20910054 567549893 235763228 515735802 103467152 421780491 714942256 458826043 746010875 428322613 678610007 259022529 474343475 362225585 754952973 26530743 845650579 589301982 219818475 832774146 108677363 622159794 423929735 23799327 170916053 432418847 994419945 55669575 17929533 610087396 99284133 243898901 344303040 179738193 99475164 611661403 764367768 136345114 408110293 994921571 629343518 229741647 953434489 859173340 442592399 485094813 464383943 580014647 231341838 863347133 948769859 504209374 81846503 282497126 804384639 354553051 226906345 271421955 158078441 987086616 572780458 327227875 224840726 69283124 507643496 495015725 816456813 444989303 696211517 961573145 508846384 765855571 507827490 678394529 952216418 565495174 213224911 384036335 63103070 936551557 438277177 958018527 243034032 796687621 829485561 621327554 966957516 37554981 863647854 427114292 774364236 361528157 877218069 531774074 42714775 835032988 947167378 480550908 887586432 110366310 244359644 831989666 701656406 534386393 333726053 403589540 163651354 105842954 805602484 327387685 714377854 752946581 625469777 803542764 611456982 54123799 60221526 482649623 41074533 119124982 642578004 319754399 302652133 955936222 171924815 585404030 707484496 381087948 834451024 248034780 922314801 321644163 571272185 213797164 252359955 359852545 930943275 698351439 13510911 270680672 524372212 938122813 780158380 283097136 914787210 658301047 794521607 364916594 524006656 838901085 127425925 24768877 701628436 375162061 700204910 168194548 57455174 486437781 722252627 625656536 364117780 949980834 394450094 653354116 582395426 9409783 35359840 17990432 260311738 248470829 756930721 826084659 44258412 70247962 298622002 758990382 265373225 55665757 140966554 670401531 40393651 655983854 443380326 182974780 392845888 581341964 188763902 373734526 408353867 4637213 89839554 6561804 527433612 396042699 62173984 263320790 946630465 619595302 788695163 202430855 646679782 129010672 577822783 817837250 631365297 993479678 210239263 193338818 193390636 326292030 896534730 688591581 190947214 692404002 303615144 961533479 409916759 94939983 863750400 533597948 212197723 698276843 51027294 235090321 690282501 277689275 705294654 108708990 113041462 941715828 369618650 467917406 713399583 54217459 281298018 535784512 110232384 68908362 92485610 265685701 116819545 220556439 821932471 458603006 326755817 705973432 929066380 478512395 883477311 938893296 821006018 780233285 452035 391342930 944246684 81314473 157858720 23870722 660206862 975378349 942249978 245653270 493275374 371173361 528256717 923505612 242835152 834250301 602564788 952514458 916391617 269952668 134280656 703730122 794221487 133091928 797997351 760570299 414781437 246872975 314902635 694263076 774832045 75795841 913692868 935828114 83613956 4529112 249862707 838776977 385616177 772585490 400190911 834659445 662387304 242980994 150225310 922099154 982856036 631200379 70915994 678008616 770225028 547047584 541702675 3500569 259519020 482147740 267660416 251455278 288505794 279619426 758065773 30050820 306447173 956372802 462066829 592379408 566659603 921681600 424339655 408585680 563495484 505265786 65477950 504731609 9757355 396949841 992493826 334565549 557017390 225323975 726764761 338198127 592798171 961352950 214061443 462363364 617714585 843648355 95314617 695759017 702092184 987885948 339507879 105586425 137104815 511570022 121014035 103886569 100400495 626697107 517560952 808365346 545723266 393622681 35891272 199679220 978016468 530695771 747272170 145160628 76414076 31797241 417504759 72693983 42778084 101449628 427161089 365919907 476544322 747767125 312734556 887395059 54520871 770360758 856438337 605850335 950795017 372242419 718707508 840479444 477148207 916369718 732923141 634633635 404688011 146172807 778454612 512153374 528906564 552502559 899181455 919475249 78473766 293389661 731013833 230494667 633553097 53194545 783433728 860004363 95960573 995637587 605520620 2129414 44000578 230610323 740705120 841086014 485861449 646221038 954781812 617784645 32871766 30574570 548285635 728135731 451725568 428042317 962602095 357553531 520219246 224543672 810872054 733144067 747380914 348889784 762528075 442688207 301335582 186936598 762064468 691416425 617927986 142898473 798739137 139718625 272840093 85029741 442356251 169679964 376657737 162979550 172209635 400829193 686561514 13363958 928031128 249426753 250307721 246445850 51584085 524159710 285954699 819191352 16659087 978773271 273698927 496581310 738585093 335296096 168083805 830115740 375568524 975149290 548183993 242925171 543570494 520366237 398465233 149757610 114218453 748602360 441422896 198168884 767877163 686934967 980808822 10835135 965042014 752047987 973314910 160772784 281767183 113522197 762430581 781119265 278681886 258076334 17222752 567253862 587094163 912771703 472182033 223071285 598872688 310531572 784160193 42964307 717741698 153460815 371453714 776292099 84665338 917168514 604485199 964249874 584271431 705961052 6831909 187510702 528757425 222605273 268138937 802154411 360688781 201093800 318419261 751556987 278073124 342851492 941011222 129850182 268962333 58818015 301495938 423866730 776532960 584777545 42592512 127360984 875301087 718344076 607096654 19151680 511584071 681545760 569332075 765483275 196218609 510699794 936044035 632295484 67227456 748122037 989148983 862210406 916594770 589662159 933908119 431524487 752377784 445979546 333774673 147644276 732518802 892684648 822434118 675660406 711422298 265482723 753830695 896731608 836414281 660319767 209573704 330229883 527794244 385560002 333906787 152762237 832167816 713532526 697914581 655879768 807687040 78899201 690893070 4163316 620826956 971259274 615243021 952193699 692558117 916120701 669206979 872227100 670640980 240736458 855587804 484407177 1448311 685380054 765483288 837553946 409540877 135891361 888088090 124829802 717633930 976814438 584715752 465906364 263450219 982901241 459266239 124279333 986697907 895684355 698782703 963887531 636414182 371974197 400523852 221628249 576754183 405968218 579900104 677944657 725307343 735011081 455515673 975784240 131517356 165385432 763612085 936964845 928811950 932618405 349458164 451102980 832664595 30027118 914531450 578867577 495537759 90225362 163772994 502803339 369563169 815654003 903258991 429762304 782574 835437901 490868894 323074107 405788138 756760597 364282692 627905508 729691453 249528373 568798811 888885228 178247018 242653039 349725771 480631743 66731936 482506256 908422986 231607127 687481913 667207516 251474156 249665707 512951531 169271155 891558952 675707172 801773495 744245361 8821846 3913361 821529576 297532831 577656789 587549898 454737726 347539583 550217088 850967263 413359425 129538736 279474890 144220363 299506816 740823877 494523437 349250179 392306150 202322045 231344823 924354211 857329899 675882294 289280397 631102250 680042343 7925419 656898838 8079674 252862919 250255329 957502922 807974508 720361756 560229868 365583028 675448028 608993088 609620575 545754427 25966581 751144331 352584403 454262374 326114480 978198510 514252057 413454202 647338822 578402256 286078494 135560460 514514275 380462985 94563655 549806696 605748056 796751952 144880248 867833970 119535865 355821098 567874194 602321990 6680469 908871857 855572827 999938842 84110694 349886866 419857380 798261209 264466228 500693394 144635608 503494588 500148694 920669019 34126659 6643200 500614572 660320396 100200825 770535295 700261041 7735555 929077723 370396415 496868096 209619602 305890191 727286025 596059427 175121174 819013247 473895176 21771629 464856955 42440831 700751609 997518520 516164310 709528683 810998585 875815937 760924170 473261808 589335815 621270403 426536911 362134599 810982264 250410353 102913979 661747754 510437373 762399621 322151534 354515853 905444210 55501399 609964028 591415594 720575270 779255192 212883658 79898028 551107543 480748616 356227147 997004573 324097484 620979622 732124332 583092008 183951851 997829010 325885611 792615746 60072307 28658407 420514594 891498668 660277450 681589384 787371350 662087557 135094924 672967786 943303057 907561380 884396584 147221681 894230124 764628873 31158266 632947765 975469858 195620868 323468535 750086080 56132194 560610414 208832887 759949815 860954224 620837531 997049039 752760646 109990995 28106762 333546862 282551690 992053363 971042920 467969868 333744678 809229238 426201969 150637305 909323785 777855931 653174300 407425432 431181160 940062445 496163115 206944820 546300612 498943797 652757103 670821739 830215696 961055632 168562660 33483901 615291277 457605315 526215084 923084418 943504094 937085452 470966601 49269920 575419273 909995373 458656521 939178477 967233088 659861828 179886042 428078886 236082564 203898824 57621649 716240113 241643717 118763495 215785330 7713779 771724927 165747958 271274699 308746542 895580768 330159209 116534600 124093340 328728581 784337375 746491604 451558864 355863196 432125459 869755235 86051386 763926837 830223812 478500428 225058715 304929102 665909792 713042713 168206641 532002215 554851372 498559525 71137193 983647079 899183329 124503408 51093606 131818589 891343197 78925107 960178009 111830187 932235753 676832991 295999479 49723496 808555179 421349864 682760815 824899327 587812115 247166517 138961721 230835380 486657069 289130217 878197157 671473329 658953978 902730124 62368196 941585772 543208453 996545648 214830302 408370045 557924725 440733808 983915792 359102084 278737439 173625162 886335249 208826402 885624003 152796846 521685110 991060227 809891336 848859479 65164683 73834040 253943523 198882905 695295199 524792360 280075823 854526924 404021273 675536327 824536695 618220290 786377872 985432555 279358449 307266661 339477498 928305970 945551262 239350932 992084368 34403556 45282949 607979120 55402323 210947382 918394276 776242784 361016707 111446618 693299478 642840580 504630790 16790530 136393414 462312141 571483625 25382847 661070847 929170718 764464281 872929519 28014810 332906140 978136612 267556005 122930171 271611705 335615385 932605380 618030042 297734846 72350424 916549094 789168695 401954039 102810808 417198342 465171015 485811700 186286794 442411271 828996263 130254401 549914756 346349431 933059377 876463447 521057808 601010503 926800706 725060635 407382322 433022189 235945539 254450578 597614779 845426622 734308950 500819616 749964938 742592031 875597493 165085242 149490378 423895051 313492841 564883434 873874582 388211713 681729409 432213274 196340326 473834053 456298180 616855034 161474192 596746463 17807745 600641423 304432850 650015741 375633859 467037839 598769374 783048055 446351864 788291661 424292335 35340829 459461412 67367560 109496639 80345049 218662511 180863836 610676397 235943830 461897740 603200073 442895490 636740134 99948699 752800181 882965374 132378964 588619477 655512364 539203254 429393953 427899186 223594624 155037020 481805460 796879173 431714619 105975686 771967026 184558704 533810445 515526625 604230899 178627185 521537346 934686103 612435855 765979364 800354600 937298597 496374858 281010847 653173642 958458216 711736224 607404258 147212037 856825791 788399688 44730895 839338217 238746106 132264949 374129588 142916861 799448250 369808996 447848589 305760516 947593799 363734283 348469756 814516983 90173593 724428666 330114729 273878456 527476604 13596407 389331143 554245817 836821666 316223310 683232437 717636279 195256959 652404617 683594106 183233067 743505413 62114767 885240283 318316275 36132281 476699420 790804325 795599343 258539811 682072233 109807321 135336735 763511116 987748627 711188789 279624297 627578822 780672683 425729987 882590478 522547098 740401284 502654938 163523271 694431419 913201915 109084046 302753966 568080013 751612173 371142134 180531211 722708050 774544570 168961 424220568 291198023 24147880 363505048 158929790 594079067 171070431 430030056 463574826 904126629 636678513 689680732 946797556 485987427 231169732 657096169 547986251 452550458 545621523 388882533 834112528 874703608 264798590 634975413 905314474 177367405 305704507 634610691 69826841 73530564 279644766 398128347 794144367 185846887 99598716 214224851 767007263 795203740 135409487 358061609 232168328 99855211 236584973 498927802 837344755 161792864 613087871 852219685 537738068 378418081 27479248 125990101 330396530 521492605 894179705 64048874 332596725 177464060 815159759 414806160 852019328 652506276 512309453 422779170 151285942 58695152 650165981 397389977 266415952 141754335 588005681 976478869 580082986 883125890 757212421 660896205 387020867 318136714 541388266 748499776 14734965 523601135 830190543 505467774 100141783 416432851 175248606 305702608 325898880 457067813 369365867 995162033 816288962 944746115 671162432 349409562 113622108 342934285 48866277 913422449 977318525 407786313 277895266 955692437 174721176 654539487 530370101 241542360 949085887 302853097 129140448 752203026 565529414 776402954 756107114 388046315 335644882 272023676 699543433 563448323 286589940 579939959 804864179 137065016 694308510 220130920 605944774 427526266 688330896 495350547 809278111 585413916 911098550 982760468 887567574 701393063 136470295 442637483 6139792 225104762 724464304 996084227 164919831 176966452 337289676 257448063 64264067 85551561 662258346 29698030 531662086 266508055 265465330 119773534 928307597 949652886 317738364 947983410 824983972 754320099 394025021 183895618 118169342 632470806 587917270 680198787 782503968 351943050 551191865 501677012 357774894 319365612 223165644 36857766 459437308 479677242 170284592 965668228 231086415 69774266 980568440 845955454 339678749 841141212 795922199 568677305 531596419 622864642 510910839 138816829 242033549 346970861 450530818 883256754 450288422 277221990 988545727 934150960 610168280 323151441 698120204 824803238 334469262 942172353 288668878 377393927 27643587 577443433 483036857 568700092 736247008 295487874 222675328 798036188 488294660 279987937 59083274 760509566 433291352 930048578 529125027 314623486 989828187 456836835 900111765 278589059 543114648 124172777 786744606 433488821 545809997 404796136 123798732 912817234 733219947 410562488 254879956 425554643 243679794 424822169 191482480 280628127 878903509 99512773 407167920 361074930 445139125 704388461 668501986 313863675 373367779 12591085 496573715 555723730 57132612 555990987 279198409 241516467 544363020 749400950 618555522 325915044 311321807 825596103 49859956 164930490 645368268 736013094 447544433 970176181 608701699 507438484 501833292 441870937 182336445 333214325 867603365 625837048 149142752 4709111 404140629 898420265 312473128 245503043 696135766 770990054 622848031 874757001 341684641 334686926 523094111 862854881 678458377 718599618 103808252 448727379 106885325 737841333 822796656 447385262 97789449 601483689 460796598 199954866 586428123 42462903 567743275 630332504 547060382 526942205 492800791 64246587 82073272 531016752 423049427 686839073 910815182 174402271 763319878 313666827 980718079 508293784 317186797 66245452 343757923 169483670 591294893 776249354 684354169 569881980 25689597 229087080 29786594 371626957 982134301 712911279 990671277 3022538 559754303 873919491 771167978 32678231 780043707 259257176 362215162 657807417 292980765 83099761 888500591 849372642 609138748 101476383 628994430 644466533 680135491 321568627 86004385 345982751 107650662 314534864 724952752 94172718 182390156 305169630 175301856 502583220 250129034 526395079 159847979 855040131 150068735 200097496 561701732 327207724 358305786 741227822 450225575 196696763 178625794 107726918 607402399 672361979 76713740 895979492 431340356 811039815 23705416 372164274 194923756 929990268 688960330 91260927 482620824 621222779 474278995 728395157 980327485 484892649 677005093 56390381 452444502 119300666 594658978 594496592 454946901 981310832 916429170 966646801 5053863 49115094 697272101 884884022 382753027 51323090 31014092 106532853 923344147 148435096 395657808 632221395 107657155 597884275 214937012 888192392 895924985 878318672 759299009 355824737 871960614 378520900 297931671 72772874 925191940 358281811 912057552 422609260 463013727 191017801 263312851 23625253 400573274 442057615 935590988 711050119 141907317 532093770 241033457 469532365 371011516 129141233 853285466 984845376 658516844 715123894 749394872 861814647 784352989 696421133 405570811 182116938 308467169 357290034 558794468 471415070 984319202 848657903 671654449 946378192 36206218 27691893 638934616 289398562 956683657 111243417 279342036 612108052 759402066 723332923 814495311 708386835 357265194 661241802 348604679 525354548 21545607 66422186 919840343 690705331 923637729 539594218 577995556 274751070 96481758 833184732 883377334 764232421 487064421 158272129 854509707 446079636 660826345 422802813 428866085 195989464 132360283 330903423 71018134 238588532 391978907 393466938 466574636 980652502 588331099 538846668 266302557 212965203 432946081 473032896 18248162 582159522 128964998 244532 59971614 570297541 292766897 90411618 418896166 290245658 78183608 816078121 350165727 279907247 573427707 546057146 813285705 43738637 174025828 243314703 870758567 596008934 572878262 842595057 312539830 764701554 43825941 403647210 665472230 595031317 705507131 805620244 710109902 239835702 679332730 522669582 870480565 569735658 178776166 528364410 76177751 995510716 905503626 412559873 986300682 285736948 513752798 985527744 894432217 219732835 227211374 301910636 249063415 414666316 83394528 199139420 686852183 334132241 602338098 387531907 913432062 894772714 866078287 52241542 888541350 884097090 119634191 158309731 588568794 471723684 979925790 808951240 902422780 559610352 397433127 59876125 154961591 560742569 336751056 49943293 85371841 521908757 332498919 745838466 244752738 220343435 582064062 837267312 750037190 306908759 205929848 129171961 246360235 529173262 173051732 126786660 318314875 221115847 417555549 305933120 790895260 583688074 130458928 709086409 377355314 344287636 851246795 927888636 500437014 813961410 286947755 826838663 645957391 683446848 333328350 75024969 734841660 568971015 60406644 605102625 882837336 991481348 524478352 907764904 613124216 919010394 49161957 528757451 778690224 42863492 713403568 69804933 695572665 875971020 243018688 702461396 896361409 868025505 354719277 584856843 778288415 233960361 572151786 740668390 181586065 423840093 900259354 451602749 192845517 407479404 628484623 905106190 905589424 26533917 747540391 688712212 717177046 727554669 813064150 569925223 28089073 800713015 857255114 212647108 892135279 324588721 312910147 992389107 913398757 708861367 142655872 164887791 296743534 485822345 316038803 400776188 255877098 658074407 724873672 133296550 302251938 354703588 460089823 513384848 492012697 105574803 387860225 775938875 446948827 443713656 360455135 968235221 612568926 924992246 139725025 552269774 729220778 768224862 846331113 392278739 210252039 110993256 749536019 943094832 627889627 387798028 226252691 896012230 401306435 747559236 564440845 444050661 694149229 723231540 29225618 332059777 280497879 154509830 666874307 983067249 799786442 689838280 95427919 412446204 999162930 624136600 955549468 871973199 872959730 367618957 454052728 579954085 676643655 628343465 145633438 894677242 393504579 758008342 721726589 365504856 594099103 431527387 651960818 739532081 27018688 375953792 638189188 695121172 93957567 266815194 213033756 812952823 927345909 883809480 644103061 206149929 705794942 327997532 397168003 950958428 408939010 771632768 476327366 184973002 906013148 943459152 430867518 370201318 662066471 263156666 606578181 234493531 336743796 613679650 749959460 286483328 624716482 908438976 465202266 837320593 626030921 914087519 666529816 13693834 418822085 188922673 560572839 639750137 736062902 438373260 982087305 520369902 759795989 855743480 788712267 369324035 126180224 814282953 743381998 821609799 139957709 356124487 880535719 931370833 553238627 727405739 80623954 132813453 872357892 647537608 768794424 458215404 641786374 102995617 327163782 569328290 437919064 404169407 73030504 7164413 777162131 838268032 934849128 226539430 749892260 346840685 416151279 944021268 627554676 794533234 454929041 586554060 683404818 808962014 778002888 392631319 927161342 566886589 921623931 982001923 647629748 605105430 632920755 177355354 777670929 677350234 378220855 362470343 841716235 799814824 662961572 12806605 878919603 873704454 155339939 290595317 809445507 664516733 147912879 42762360 121906915 316312665 101065370 629077363 211459202 392408682 930282400 90358540 995901590 960334343 430058961 628393413 894971955 253472983 194908190 369319088 885928000 371407988 814187954 768768650 561900513 82614177 424388925 700265826 353086735 848695624 528477422 638836806 358489823 487905350 670668007 140564342 555086644 938975429 386832726 416092076 989763154 576499465 129064401 397189071 314707939 351381569 940470999 443556576 786032292 346379411 407450440 135323532 248334960 963343756 956142765 92120354 249215728 599733969 660616574 920275376 682825253 220229897 689163301 825388469 613504230 497338084 434789008 175547352 45221858 763668649 749602579 274385002 850202935 924939503 34427121 454625189 711991892 246473119 920333769 76647104 760917153 427027837 492456183 397817245 538441186 417042728 850805665 534847993 971026916 902785051 896374363 621913089 124985571 152672347 433113783 974138867 627033584 941412841 753804885 63010852 107434541 229963450 8328170 620182522 598824334 44564926 535160161 847501321 876519783 312935427 201601418 81284497 928096430 392852631 901038754 506635034 547743010 801465563 167026818 652790500 911276725 739592602 530295001 272146263 914842141 196288726 732920915 298269608 379999713 674577864 708515902 921075104 390882124 896737735 373436230 116349232 890827670 475688079 307288062 718778103 843014266 511759196 35577154 43384842 795725378 856666525 493761811 722723333 757407229 89063936 148582325 986257911 964101360 339435790 48377763 694580629 444892575 306139449 799686064 471400527 483673961 579744868 347234997 469651523 420834925 468681295 15840868 21783069 628760542 75575885 263165224 286435424 822489392 79971231 577241717 449587991 597366871 224818935 299909662 356001655 697365466 357347118 10027171 707383602 27247411 546299059 953306656 106792538 692501362 626081998 804094141 150144877 998633535 344765470 193499524 594870996 997597042 172009770 279452731 60740938 490436443 988319902 489470346 979501208 362679394 165301435 131358846 424445315 759196741 826917848 694549615 181182043 832973501 952212537 577004230 907976938 953181734 688607717 451043622 598979967 478642870 531075562 293609066 811082561 461789615 45572601 211755002 859277833 557961640 652212924 860422376 307695192 10053101 264764039 643080884 708919039 770726082 437193543 817026718 100414642 864533516 97310941 357823685 907288933 987140339 144894212 253491406 497401921 392802081 345190491 463521633 846492335 269533363 177326664 770503763 273944670 674419498 896061644 323988719 364061697 153874437 210855159 398813450 660741096 509623722 845272156 321335037 212025870 787735409 700471589 62913236 685177461 23682763 281592913 792551949 644889003 870900151 286697505 403735563 831949611 534307434 443243686 832328537 954817268 395660468 284580393 878025126 692070356 917058324 632307544 261131252 188660277 433368891 330136688 334033189 857248390 464778620 34320890 426167988 368230448 306141829 761079828 358775325 342058171 575544955 759530644 987675838 190306074 170717991 412680333 4784650 101319067 895273384 979542497 306959887 626887599 266720299 978537758 480940777 583021875 880698810 173437638 738220820 44005849 808418906 340358682 357583766 130776541 503094388 956645405 504112791 911689896 13955495 150417683 936396112 807743538 984676873 411002089 859860587 86714340 87578486 40820592 575029570 533112873 201083946 798471556 820049915 360220373 463322197 669345038 772902521 292981465 95829057 318904040 750182881 157733768 658910461 342473602 231869999 452885239 358127274 576573298 514811387 709410720 625932410 715300396 79330451 488551836 43559377 532240427 809572438 453454841 621378234 752912045 773615023 650912851 596580333 741213845 535358427 109358845 805130628 868370873 192690882 311916571 216408279 553786083 186952176 336135447 724094474 400514591 645756137 762187738 495962476 698067955 714211660 216909163 616437781 487307790 246981954 65589433 524754016 129763278 640901188 295886773 721270871 493306329 175110529 525824998 830675748 553284111 272346503 126456169 373856551 973624816 76099938 961574178 50337200 675484432 840243011 186594128 63371510 879592001 881387812 719256592 116213207 104986305 248931631 891782348 414599285 69098624 982220226 268002883 630755142 58883980 517475063 953009193 844163388 188482337 246416579 500704281 7441901 566389461 398624859 889824773 529602117 753768759 228349063 464953115 255436658 713506986 373512457 471070502 416473475 462898438 827131769 235869722 135280291 445445684 144802216 36689325 260983808 237269813 816512390 799822892 160582121 679075363 766935988 18058261 738385670 633904301 197630151 597958430 237102828 758016507 469951557 486675578 754979395 308530955 943672848 693174445 823873340 322282345 542328556 726600917 178887000 295571381 281478133 500234023 522775824 987684870 691460330 560579935 63400981 518615232 351753952 817249642 158447310 893266879 207906502 95531692 415961060 504797603 195759472 348358175 788961744 718728525 625213466 67163768 432382289 159181981 424590177 213724436 971514353 92135963 336769381 294228300 760350859 475231117 977920087 112412535 453222556 871378330 737633404 259073852 656350763 565083966 687456772 729952823 171560802 70551537 542896916 372607196 536071717 935395478 989717374 865154096 684424372 95541636 187741745 128808605 473926948 721091246 476706988 860803855 864823335 365311665 759032867 181104332 695087349 699852460 186925683 985489206 121139504 905300508 414597163 583074996 549262393 714384287 223964098 701557350 356238354 645156589 595636434 652973074 529659766 328349655 500751005 430807388 738854776 924601165 62098492 275192497 277244583 845423210 272595298 109335241 974443764 298130291 549131630 766443323 311982914 585884917 21264177 341294565 20269665 492711533 836573417 476567738 99509891 202165869 241462432 48593078 409819453 627297576 92682527 393967875 775448697 501221072 410731953 960948688 467042374 101637611 226108912 515457055 479653495 234579940 259549309 747937572 183840510 608954961 793222649 640518066 41079528 86276754 898233396 666678401 723289045 144298846 788104093 858900597 265647401 482743407 500738622 383766810 619992665 564191322 143759067 325270103 633778761 400718293 624223179 67082634 156198829 151072068 497695362 473943696 928112512 164614884 966522982 487172750 528169744 743738117 144327840 144830690 760570412 936809059 906041226 314377930 251530424 253485256 761050570 533342386 312746606 124717258 371427559 515883775 409230262 245453396 334159280 205880414 862770917 795115644 632651267 398223794 591644344 766737193 971339345 340300451 199894004 231723456 785853495 490811812 392291433 408939359 5604547 464064823 298667532 304949714 984502438 650692697 634919783 603391267 52480047 866113772 783072818 591430302 625387943 559057037 260785123 40846377 841044425 97127995 321542784 137338093 294450177 580810115 288765403 891413295 605694895 187045007 196107765 682114667 482282362 632035908 121044357 319015530 645543349 194935280 158085816 538074582 99001189 404405192 322790554 835815317 733048040 516120448 666212939 64105553 230872757 854893904 285031298 401870282 550847759 414736249 690196761 100113647 467329875 613321113 525022191 928736303 434139715 524997725 869608625 68069756 486586228 52821257 332788391 772610518 834434570 660720158 933996887 850235235 182332849 552750164 347957729 683729447 808402040 353906567 727755714 132613496 531497377 894128535 912037032 433927861 267683916 859118581 861263627 345278731 367361656 219729593 640633970 86928969 107332977 829854998 463012596 346728153 857431126 804008500 552388173 829409943 225567995 580251531 693690720 502053115 867199500 855798629 822270504 771576093 818053586 984767603 134234386 387132664 299817509 528426680 289825005 616894074 148385333 728978915 624841592 236742766 91927458 30424800 985219945 310433020 957739595 878912487 435365168 296313583 255916361 200126763 150105312 585953576 643319594 6596923 153532891 260248826 200942358 243315772 672808599 932964267 762759573 7567879 973069484 507672329 171480976 478195288 367441773 21423967 205110496 328899820 533328506 181943778 817485215 784598592 31691677 708086224 13370435 973355191 53382449 116118314 686045277 833350720 472669772 869507593 193595539 211078542 399296194 179143434 220909624 837961209 277439895 75633776 76936546 384731163 530779864 844877313 888563778 251475596 139959586 951578088 669980721 62197928 720080244 527782096 81126228 938984648 122581164 586019637 482224057 742597268 245443182 933111987 51498213 251966913 377896154 614546644 654730018 488112631 630836462 69352394 650108971 228772629 970741467 97975328 790790095 203440288 228612519 599567675 469317140 682438240 801717870 647718410 765288298 953486745 303846911 98800915 871180621 520577730 254263332 878083064 42072218 788444413 860844154 950660647 992865156 33235516 662065683 367258554 182174736 92829257 625300321 126034128 73001538 627900677 717178848 423097737 624988395 950194004 18847861 732123812 265275436 52118964 365470558 221322090 592547054 677078563 804997885 654150199 340426543 564798842 178009519 794511215 65410797 812845456 769169498 213290171 747942656 995539234 725852730 639707507 643521672 672239291 295181164 679845149 66567707 339695586 149617876 474448264 890193050 188459296 211406602 483780266 521233764 144964493 2430747 519981451 431697923 153059542 951959937 430309806 888709214 466399488 444693527 322023986 458877770 414123586 473879138 614557711 271074875 986866116 468476780 599200385 822683513 428419393 708467206 375733047 745717156 158176119 894958513 439216842 864922263 807111877 333560946 55477787 147653442 241434859 416664800 348395029 235413491 120487348 558143564 946115012 784876215 84417273 136607340 415314696 765290402 148263029 653171411 575078391 273956883 656668965 359504410 169222286 515169577 612872404 841243002 7300856 781445905 788052235 612768004 457125850 35055821 104410158 402464630 394275916 306142287 165227071 66833552 142670176 941257211 941894770 457161939 153105081 776233639 681416805 122832035 66021141 880104840 824683066 828233546 683156541 880845927 167138194 456751938 347073191 195138033 801082147 138649874 82068279 986906774 619462353 711270918 67633547 173746980 404504846 45984919 827956637 930808171 946311250 616141836 832011104 414683511 219128987 502360229 734997860 76676475 516803942 403980628 841523582 894255473 55833850 37989597 21700009 725145238 202544941 991312405 647895423 34042192 983083473 606709650 452475506 526291958 230827217 767639916 840576729 380565459 533592659 395169575 278416359 702808061 228519983 569617144 140595435 496347880 404680091 949248903 260841148 194056124 805753468 236230842 25236729 234189077 838810986 387992858 688029150 812712604 204854379 770481557 769426133 795084286 42401914 817784807 868119857 430832941 380687545 942509341 576703373 903178414 847787848 330015201 112850402 727512793 945279536 647416822 712372246 728501774 550696683 905523241 901683873 683984664 46028150 366977764 386984401 619379709 82715323 562644795 431280912 380001063 663202392 735685145 813869412 596164590 719956619 535542450 300743121 962463790 489381835 664305131 149143352 329072351 951843553 155104812 937384360 338656613 961784306 731361220 848257677 831313794 9758006 290990235 628493245 835680470 69028795 814225064 952839667 148958118 806721873 70301217 706244127 766261229 458806651 787894575 222295252 676343730 110243825 664835570 185701292 344780619 553841732 519798260 401433326 805648854 921640604 394450429 528509112 182512407 253454962 682608407 273391177 819049979 879090715 443016162 805527062 718637759 274987891 226183734 989520495 44855700 970169990 192204576 862377758 643825550 763828794 311224901 394769493 667623141 612865885 639126082 813398595 931252253 948426968 154542547 892740099 230543889 59369965 718451507 914470578 537487327 429670348 352551497 770667593 847312775 243431101 334593549 444774120 432454841 491118804 870676566 665308 684770484 460697706 644050726 162806618 61005747 905252915 902737205 107498064 528903496 224901166 279987368 65741119 351702273 515476740 953126425 385329159 779907363 975082476 198214046 946521615 583928687 884740871 180751631 680759057 200147330 917757204 902395245 394306535 856417712 967262124 858820684 756118204 319610495 421203885 472980859 871483981 812910864 820319326 881402861 548131767 385097847 931338609 637645063 740177046 75821084 329651165 244759661 7064604 751462693 658444390 364414134 915435501 72022689 482225196 9029425 29419319 435446296 881738969 992265180 863886907 684738017 371528838 82563109 786349780 6724369 414203520 772989101 390241509 268832792 465187093 357128213 292536646 416265935 205972728 472262910 905661664 173144500 856138789 354781726 935701691 625307898 380871793 149609367 55896478 139667063 954747590 554416299 894741594 427837666 310499644 477272113 231717715 183097243 196234630 778136536 722992994 209622413 832026822 691635741 314064839 362378196 714447863 140831199 576566418 143844245 701272600 482574706 327378694 735281785 38666285 295485676 813464896 643344063 432318366 800195730 474760327 475368036 546402462 870423659 375860979 897441532 750695159 461123945 818867714 559921173 644017038 655041458 677760764 484497101 784612469 407556485 144178674 358648540 355054376 210753815 235792181 815490082 548057919 554424974 675304655 312979160 252752977 211113124 102822418 859204792 196183654 41860292 352759320 198054757 560081139 510044654 535209297 783845620 636385180 820696495 562469620 475109079 933962541 802330946 54248343 840048725 603814072 832845641 43374057 614961159 847743976 147477627 307808862 622332262 423525717 127633903 572459144 575194264 735503529 146430063 817235799 197909758 929164709 449592883 309233013 767379994 748617871 138604797 105770262 124661591 923106135 100388420 92422205 569412852 418355042 205443315 536750153 442629230 427572012 115700760 632976884 991670592 767339480 272749971 329647597 552376008 240881982 743971949 950161219 172445573 265587664 791777976 122608373 801114845 993786415 133991639 960387681 91381729 793480232 309672420 144031031 72912322 617497519 475276876 17664310 407623631 366526895 763897924 809199120 110997368 552427583 321294482 579240313 744750460 839026969 420851479 511716331 950360074 235477490 357924751 746317877 57454642 211844933 154941094 954679167 534005299 705438555 511732676 748953675 268953996 535310255 262950788 41977477 853053878 333485843 485400662 583399290 721039699 112713204 368174735 170070900 942511215 621566835 313924414 25481470 559459544 948661577 528983433 159659237 826760567 619938643 749533279 499976478 743294277 204534852 482068512 243850152 849545246 629124901 897348967 610101266 898933946 19476225 897849047 390449948 199647193 619498513 456745775 698012151 169239740 559839523 596349616 490626393 598968803 304357968 168912048 548342801 682254378 797045632 638600359 378352658 511890622 182883806 638832362 999405358 968942961 229367196 355645671 737910063 277334031 120713821 380149744 532667181 933551221 552619153 436301367 663814364 49821528 940939125 197959904 838876192 678298718 422396095 644959492 899185951 717830285 661727528 890737966 756113928 970767054 635475409 749313542 241353223 273863238 59743708 773541173 621805061 338719307 855063161 474002099 326481160 268868126 435115094 338368176 57819263 736128360 53668438 716152208 911106027 114934125 617392006 512240154 332399177 396860191 802427945 694862770 833261512 869451598 786027307 133367007 58380907 848596760 781715410 51154440 810871193 364952558 149851695 996222928 740010457 63719585 196601726 377835592 958978613 457917524 52194546 152226329 209359391 618708977 907721735 871089400 516843685 952421806 707547683 556669076 509155239 331908306 760808681 327350040 458973716 767515061 401780306 94065119 913879330 972437871 724133447 675944976 246548460 973631465 4905811 843259104 975371142 508779399 159564479 265556924 31905633 770120579 335217626 95333023 681517421 636739562 705763299 346364961 144859707 574359805 683432019 134394170 233484768 762572486 657435629 411319483 40995895 265876627 493501415 864307390 520451661 856980223 868331743 264031260 628556639 626539922 924713798 19907005 557918289 361770215 712992224 412765698 58860192 136235384 703331252 564678167 61312689 595152562 800109684 400927170 753309296 294290642 804285866 703535517 424591508 846457243 90004061 49014054 179638372 201104554 706568744 942025229 72695323 741368618 244095916 887485082 230632448 540019959 343188573 699668618 978485790 597994231 37039158 712559960 852507890 861142030 199866770 112992343 211385931 122767929 518911799 535722227 410896282 66231235 304214672 852473012 265214946 894774681 41294547 574863045 524428568 371956893 230740340 699690279 454769820 808596094 742776332 357881704 344153414 362264614 816555004 398210772 827843472 183435892 386689620 935849151 939096151 688327991 769919391 450809224 925857480 586496188 962927774 725215261 250775326 313349246 516398966 690173315 996727281 446670325 767740890 215534648 418314387 28878487 180841765 97894179 476089746 5963585 219686517 637166208 196440046 210342931 440308443 751586253 650445762 405761700 59563383 913639467 14305946 780432457 823588739 492340046 930594168 795072487 954051820 572873542 402047438 785026488 12195765 260645243 214363284 623352552 988363333 83892870 680153565 304922946 899427249 840130001 642456276 885135812 406460517 537655945 994646429 567717150 63476809 419447465 961664441 385832298 129129716 487589212 299826419 275502393 605887154 315316693 206920796 253033966 363568534 17454633 403172481 271115526 127392125 190393026 539546194 740632546 995195258 805083009 898032606 992262789 451058476 280852089 440395903 7392206 749067573 986885296 139002306 14051653 51637090 887199693 250387509 199683223 326387464 311423048 455442602 959085463 428669156 283348650 614975992 597222760 600172476 994213695 284728327 992748877 935175384 473328945 970112634 436241650 570100600 611444986 958236861 697044589 598951021 188558188 262899167 249623038 638442116 391775980 112515813 74958751 589447995 850994734 726317258 499698168 934622268 181978616 194395244 924554247 356801824 218594402 654302851 456393800 596194068 176993775 781330906 167736711 340595194 17328438 184549622 213612475 925629944 690768039 555200513 667786435 723062934 831284278 117288271 500412955 473755800 400824811 229843471 787726627 921930840 187411468 84300229 567289349 203391963 657624104 535558943 255427600 74670872 853757132 381542167 357293365 739739834 669478847 275669061 831224954 748934061 104428400 108517642 264323983 979854105 61544888 853893748 454161349 318227865 975224501 458601018 291318419 939227771 63794047 515759697 530433526 18414276 871181414 477732871 90981987 570414282 853472812 204387357 303307362 308181775 40926292 25188559 263031096 562150374 97093389 987984209 325998201 114292102 296403521 618112568 214666987 991222010 770351028 704619236 909775664 147577282 559687374 335268990 834607483 203377499 453827273 974187129 748413127 756765815 140049439 906457282 537360848 476743670 86201984 855752605 319632494 843250965 717850721 8345589 149010766 646918453 922629002 30818890 384605511 285077810 521096976 728071593 684187902 407053155 390566439 773296626 110283332 463275182 55773066 328194577 538348282 793795966 408477037 253472374 194997062 569185065 239253617 105182997 709865943 896048729 376073414 706902377 395895349 850915621 372064202 608158859 713456985 874822423 152452768 712834 92461542 500848201 683368987 504716432 693781243 905947308 907460744 629211626 664565881 639298469 262377871 927772880 986596865 972445056 476656367 719101256 587437801 75091364 584416952 51308712 580173991 817409068 563876887 156504529 998393345 81501200 640258330 731365759 412761383 684110658 332628412 746839382 181399732 210403710 715951073 973826039 725332098 54899197 139826106 385539756 478501198 642291991 235913125 776903390 519314864 121911953 671876537 994208427 67632611 511134336 847152833 576837683 224389651 571899122 96066211 406297988 334478396 500723831 981538375 101021105 752181638 453206083 478844078 251816838 245269386 855753561 688696851 718838518 65314312 534325346 739319081 4887981 225140994 228013682 695970926 624061681 976619410 461406960 163727418 32870814 93682527 78147796 119329563 628798652 605631925 468354097 231500923 977413404 860833623 907809112 788711921 414184684 388344836 489121337 340391485 15519724 735831795 490602767 629030646 425457412 106649377 881186196 437287089 508521384 314259412 608591405 872313619 491641784 953723650 491899585 952478627 346930011 689630239 784795745 301678576 722615311 345154621 152622992 565440971 358374398 798033870 189344594 816589584 704984872 956737346 928166340 633633917 869911265 569538576 721738095 248412364 76106612 147949185 64415446 362411340 58792257 942511850 924549098 161100275 411624949 201440963 680180025 672177231 656279564 564183623 64584849 858309326 92566208 860287818 950437295 23420671 609520646 839872427 315346081 947798706 10155926 823699233 534592323 623079702 464426532 65769261 705100346 720026033 914168724 436270550 243338292 4132313 682623040 563074589 955936607 661323638 633543949 808516846 778417679 576029845 678789945 139120072 917870327 458827107 38771596 805894943 687272517 942088640 378578352 461362221 324724350 944677124 22423840 43313646 405433454 635479790 955751295 623016298 550106033 380062147 528493755 293003519 698489685 511803674 863553692 484892417 588074223 941196497 875267361 84940526 699844680 998261489 18903893 392612338 323780128 128144235 571168350 779929916 584351558 214095180 688276449 557213512 118035118 117042914 351189917 113737391 811592776 537294127 539460344 341582010 845663369 775382196 592375305 290019041 791873077 228297037 722461820 909631657 290086232 403935489 41053265 907837319 562697434 584532518 738571806 737829268 663901024 711167744 227438435 349678712 720155948 561356718 174363380 510945562 745955038 238108504 287893683 584496565 636979775 490769213 516808730 906739942 460088713 570933709 27441981 683111157 235263480 398467292 630862074 243686764 442159261 799123824 572548617 986209455 426117503 962745361 234428053 630212323 82003657 570015629 337063534 939737378 502579397 436652520 593745343 446949389 864723511 392259936 883310069 587754124 199299477 318372201 147512990 36856682 276888647 459907485 754463929 257991332 625653543 577831851 15216735 341332975 604419819 482593723 707422353 57967514 207649687 625319277 257904069 427633150 682804823 235164066 501037562 828666756 229538706 664504968 800617328 648689678 634748764 855187827 189749655 114589622 688551364 519185169 561551166 716603263 520306352 888588164 950754017 703857732 32040346 648927907 155238728 425868205 734433880 552663197 100807262 386488676 139530506 248094831 811198656 885464181 567540867 448158643 674500189 625076290 437462533 422221646 217743498 952143377 279754258 747604686 460760528 212791573 783678514 571502330 367242571 688052804 706184439 253046824 883749927 749810317 553646578 132704643 103712752 233389858 363519141 571825616 183670899 108032761 991515504 48722460 132956810 274799053 922963820 55867153 997631536 362485334 928194596 895196430 354959243 646178414 622323981 544851643 556386377 808921385 964326816 768410750 267316343 999240066 8557644 71388558 25879139 774559916 723032406 92932377 837305070 804596234 495262394 339895023 742192000 956183093 406306816 289501703 88495189 929183256 738264633 549174322 550260765 645196588 159186453 743814419 613092511 224403867 617654366 979799580 123174513 89928907 626538458 139303189 480860156 979629223 724399344 267792559 494346105 751766692 645981874 331893116 281802185 816093621 781240807 933801992 905966363 375885732 64114117 477249274 220841695 185552596 109491748 629653905 395421806 67030871 99903292 228556882 706834356 152850496 558983220 434420000 947487629 764174226 736339087 253905280 635088285 163505705 949784906 707535010 278077743 802885029 317562740 108036020 525243751 160000429 511229064 470309215 988082183 153317743 940884660 863638562 887125839 753782306 143571662 370850599 482419474 905882604 579765966 90967494 835378148 784358236 446317527 808165337 633465918 335807185 194602218 272940542 142380960 23425839 165595777 527157440 649781284 131098082 801434177 93553330 798443917 948140144 99715003 150948825 235026413 28185736 171714802 208510925 675550415 228573682 251564410 28172765 747952970 211857870 994947073 224150478 590475005 41001175 985192929 959037405 774710144 119828984 274429933 572735635 630102175 303123892 884211873 319033741 732565261 129984711 396650540 318939129 595889951 549732508 261913116 924012749 131503847 568877809 646314666 528654361 694909051 878986252 893873145 576405892 608745683 170746675 481268947 105069849 719749245 300953408 705109960 835929459 128678833 595700891 319400929 51765491 51526199 217144735 622183864 110048597 792176465 264841797 83062364 444401542 159007000 20097170 184119781 968202067 124000073 570163626 410705586 311199620 219872671 340462220 686799989 328927073 564219519 986646316 302395573 307782768 927816690 303016922 463522757 674989262 424675748 756536054 733163367 693384879 655911223 96789688 167547658 179322379 499746684 385869119 1355070 419182825 21242092 466639362 525901246 896559728 454992344 867645658 7689669 265178337 500663616 153089900 25253964 938321089 583971314 871746151 728647924 68067745 804469749 245310740 316143420 663960479 374675902 535678717 621998729 737288059 427836974 51606091 180399548 492176466 410127296 250681865 767306308 257838818 607380960 440392517 539430026 744912457 677272456 665611020 316528649 672955485 971309127 637861872 444335745 227187104 129549322 774027200 640693255 266051024 174343 81251647 423702244 565686456 503852808 467582399 523922662 412039802 45738804 898642654 84668222 874813520 754494485 545092658 339837772 969163586 265985044 186942592 732779626 620200641 631455598 403280347 758002396 26693139 309646957 525479569 314084034 9261722 55896264 648007661 644081881 632180888 377789491 663128793 766476847 339991764 328766399 461301488 827133778 369776872 16433288 723222103 898406091 647809372 559244842 133746978 814618388 479237601 338686564 230267606 103143923 979001914 759499510 674633874 593719955 38089469 79941179 928088737 319572562 645681534 345224210 300406494 731393495 797876906 175644812 315763720 319419047 208724959 383535207 847575053 533033099 25688285 653593560 533729274 92178951 401319134 349164620 75513951 712865873 924430919 904321514 776850904 858306501 115416514 347623366 221857327 591104735 142336421 128193572 38831343 350788526 888040423 554185465 725008466 636181348 330842732 829821199 35183297 727718287 600370596 341036782 2158914 490643232 759765341 833361486 831933954 758169346 296581808 755010759 305438736 234942831 75008516 907973263 951048248 329125555 325177316 294980923 978827754 191057227 918460984 762825144 462244289 942073911 674162627 403683922 320143634 267852338 935912606 634780107 398887332 27531633 748903752 12856533 383688318 442257759 829204364 610226455 438215689 62987228 916178338 365456152 323848423 757100627 508174056 918220806 730687134 702674274 44337384 898699804 404046940 309952955 711394265 205270154 736255362 190972310 110028943 645139404 377268445 536909075 754749985 625489150 59591830 808580213 935909569 984980361 7086468 132165269 841678223 139357604 924777344 629329720 60250306 550913242 569059953 533046133 362095642 783524340 641187842 491403603 828846635 238375703 475734829 538795738 412806416 643094527 324256412 861706389 271124512 165767883 874313210 135708889 765637198 94095866 115236469 258666661 747625373 681893673 568878500 360617009 454908795 233080116 555367118 139334978 440912951 994595619 976651399 195625754 968222180 605751332 506907092 891933269 198179307 448553131 374899206 920719079 641548726 801663031 134737632 710814453 476203893 713189947 21504623 102615379 904329263 747603793 817683784 231255639 181309155 461616123 60171607 794444617 866974626 701740019 393323804 647487847 358509266 891937171 690231139 226592029 19741936 707802223 992652969 487483981 593571977 347562246 994938642 860223148 656762 386678518 209122716 433998183 225162328 577040561 869126311 25020804 470397618 719302602 856718809 556006210 724281744 853721519 832620858 837966648 359717556 789085237 956691516 799636710 110548751 348128242 862053758 134874969 62674115 195881121 121539602 460687149 405098565 402730598 453206741 638343941 77867796 654364290 997100036 400507797 694813816 816344584 740172502 571037109 397004961 292650236 351611850 452989561 580759801 158913702 226460183 451998278 319354521 223058414 475420669 469290477 822412810 855154956 907884287 449778988 753114366 568952406 805056442 641596593 588029184 276264846 453135468 275627018 565960927 403725606 741976956 125582959 384224273 672169406 143745318 775595792 458571560 42745427 848589293 546719231 985887261 501763866 935841266 427213224 723868717 351836680 560418804 431545346 241163030 140545835 443041997 740024632 119108301 801860702 100190776 827077962 674785901 709300325 184245408 257276752 961474261 608960019 835302050 398509310 693304583 155705583 801942136 848957229 748574413 219808453 152687915 696972710 419429368 10052219 540794383 908794806 296237217 243783756 514653172 983913582 792651792 512559808 658443027 301342926 921581158 726996407 677759246 175576866 693712436 888911146 14739078 750187414 150574775 143169549 836496615 457312162 916895899 84217546 226876395 39901949 768583040 657358303 316895515 867864147 552388792 682406001 920681231 810417047 35433098 954504143 108042221 449183649 809336605 986009449 183453316 242672798 848331690 117224824 796880947 438494260 388672620 798761102 674312703 255681266 672327751 208207966 756386848 669574918 520976518 413876400 416939808 251030251 691969384 52045071 830904677 813249562 126424482 893369182 102497966 801438852 987774922 415969511 614719079 671492529 911059658 363824103 553684665 454785127 977466457 687905437 74280503 798436608 603172347 19549857 56143607 91453239 775196124 667369976 151099153 605556156 109610883 767421109 995747405 324247098 108205456 872589567 919432098 205035123 764489116 973703509 570036452 230475208 187180018 726019857 580268444 578933245 146256807 392183129 294153337 148007273 304143895 148425026 221031704 517213976 477429693 282806102 190565140 732558243 162756062 778936376 442953407 429024571 944752215 848722394 525154491 322538826 489703437 597754263 233045525 99142743 596114972 831693762 35486150 809463659 957122590 668076553 293175786 828482424 493579787 3811159 476635612 964144340 985488269 942937518 900152741 2578587 91958630 958731816 106833408 969009226 132812887 324348991 573182886 351161636 871521633 567560630 191494364 495109056 886483447 710637279 876866696 962497090 981105494 517936285 119782192 711586800 840859660 32754255 641005858 141703064 712355355 192852073 256614316 541600704 219674032 441394810 128012270 392639277 804612713 39806506 4208445 648913361 994855764 41006720 180669821 969101337 910949019 786758553 165206894 948810660 762283025 267584385 656100127 858581667 929183011 794478415 798290087 662007560 33276698 254797939 36375465 828551389 821035839 835839991 249199214 405506972 461452171 8292877 501067807 40485945 54860246 720587318 213470309 411919926 607759983 971573676 541780499 818205446 562079342 991129548 414112781 540901202 66399546 560618038 654312195 380520539 853042566 118954968 655750008 847634887 676923533 203783922 165143561 55338213 650522237 871743664 152997208 633507540 261119770 154659071 411515207 469767474 740553800 221276958 974295106 611507352 136795411 909100258 541304756 931424717 332968468 455096951 730524315 450087986 8972102 186050280 70225043 199023200 49237449 104115555 595975202 998441413 908702226 364794582 282721602 583905115 793900540 175887669 393656632 300041656 77990645 132644785 656528028 648827635 742186575 596141481 458275358 342634228 641979611 329082361 132951734 104310226 893049060 916375241 280265949 934516714 818921433 617026682 607285968 69115479 341285482 138157925 160736331 889581106 855666165 44227272 681101307 824616028 233696793 508065170 373288873 204868895 491721089 803907008 260225467 497353187 23526824 147347882 781792314 219189522 355925401 699562755 770109247 716668038 478361551 170437661 882830971 605571572 960326738 405948534 344590701 88699126 553109673 886515228 972840763 726212869 248195353 365092516 824228090 845797995 506949711 912763698 963089751 960959267 12789234 408796436 239428466 820401177 941094025 500066397 520307649 320224860 822069685 406607182 343332706 70387540 352751637 711724092 22905733 977584896 645573633 517233357 642706224 301874373 543845648 449487340 77139946 745044380 775964050 226912790 416974364 616677513 815155335 223479624 905915622 158308491 220497262 352523158 426455275 780243464 409428359 738104231 595699265 278698734 817588153 693624405 452122328 180748348 53362890 211567014 329188175 474375891 300722787 930211305 217620350 767190436 512105473 921284640 689777954 669544732 859240072 253397384 953575574 767578340 104934334 839713640 1931764 182935862 837579017 910511293 612451002 841977494 763104368 90973212 159004813 700778138 604585411 276491466 27619739 576248737 426356035 356468044 334762152 430433451 730126347 321640596 139873658 898186094 709321941 226236979 56228040 904535654 385445668 375842997 407052729 836712309 411711489 763012597 728711704 481936757 148164729 577527899 525533077 727494696 976795187 647699477 491717760 36489863 136929229 451474703 20428452 416005627 876307528 323192648 680479040 411230649 687892504 927291366 713192946 900348293 274445115 340916843 797522920 25397652 327534365 716622032 816894342 646388524 685556486 278709626 772788772 525727098 531828050 169360691 108240624 51964643 800431000 251405945 888906147 466708240 772232246 276769523 854764967 900879042 870478952 80487093 389114236 836061275 307419126 691441050 72976771 8324633 513400180 627210415 784717732 581746556 551860894 187793327 127329611 24211401 431857912 885517637 908479261 112168616 445733774 693910630 45546041 995070637 838529281 105395996 648329995 847181739 252661496 330678403 713618487 162654599 321921447 894591906 670611877 804401744 320550684 918929126 228136430 797547013 157395977 807475284 581442586 502025246 377549686 500311995 752883176 615509138 289055602 259093417 193944330 500714381 211827083 520875435 311134084 393055556 791505386 75093940 353420681 524206355 934757432 652950098 891866850 629489037 389075544 243087212 121335584 559440169 622822495 677102166 29968817 782348246 44403485 264276107 929018906 114455565 354628983 314797980 955921884 134986691 619208317 889478595 738242492 60443914 436383226 532364159 71108052 645139609 321737461 494590702 729175909 51108140 579901342 242564187 781108034 387729480 389171623 470802794 410047626 463100189 779743782 518362231 96600006 380092044 553530788 361665965 705646199 416888593 212202119 244750919 247955754 328421710 269582869 967726972 866644217 785661058 338919791 638481274 465545379 95938332 954257001 442845504 771380676 933749280 737406788 215092618 506124819 268806058 243946620 45059069 338297914 657838534 5788288 756138480 723977451 583121091 757825367 574643974 946218430 389581629 646277505 13291302 537234594 849901748 808389075 522546690 75077966 829430203 375563657 465004196 194368699 571202638 377964165 8349906 798977148 696195048 880695215 155182020 246132861 663011034 183105337 180888617 574133931 702197834 91815879 577734144 177991564 583630746 284673008 905121415 299030490 256744170 315798786 688914200 649957796 387350754 695032449 730557300 840589505 522133511 709174216 754129318 748091631 705057465 894978944 704085450 850671140 203432047 282928870 532048193 46577145 685371180 155581311 131856155 571012791 311458901 459716001 974337097 294601877 472617760 50799961 566836347 650081302 307105663 543296744 870995516 262512718 641286210 379843737 633738862 866283533 365581552 904240679 239917158 856799809 418086175 332363769 38265180 677486942 22479052 711763413 70774869 311824798 955994525 160687402 612682540 282608816 519148681 997974979 337083068 931210119 513483291 151686424 33600549 629186054 757231709 756405153 143016566 541743736 38034818 943857871 660456170 597757897 299095401 27596424 552575117 309077355 690421699 632153513 411556728 395455998 652473732 720397478 698119903 623975976 260767632 507863287 468276081 190677152 49945245 524089025 416825071 430207826 37649095 342859166 135886086 283016748 425478746 504649768 148467991 133750960 418494703 713954653 126139064 791535431 407039639 223226182 175521923 554930924 332142886 475326075 597993671 876507859 702391013 883602831 449897818 803402836 549129301 57715854 535262728 127773624 278091672 555236116 732336075 315110051 450624957 721551179 508552818 605510471 706569150 139112757 207857936 793037249 550506992 860600776 693433957 698659430 886676642 195636507 780837137 129334837 972078154 990330601 430267882 287960173 594435378 756736721 32422491 839779523 988989665 829589180 201750434 211522741 918361521 724079140 551200549 696853089 807868065 185006958 39746296 228281542 549910881 472899780 71320552 99842562 164972823 915779608 601580952 154530305 74250163 826517092 30767671 117851051 57909462 921876831 487203410 142422798 634588006 371750835 380926061 527420567 348436971 397100966 595051444 707022071 302512601 807211875 682013527 673362451 549777334 528466018 830752252 563251415 616307659 475853414 404582664 721602511 307797161 253944366 499599084 135202937 200971556 657696991 385747196 576339987 192194641 654609825 833173943 889563048 817481688 587111055 180363852 200558522 465860082 195458637 570328429 184819156 706398537 482660025 809546153 402172310 95489447 883667160 381771770 314024208 269257313 815996455 495359956 668819972 51890345 426827349 313433901 956038138 910550358 311867292 13696304 379295611 734024287 50625091 66336218 917498326 476332929 604835741 900172853 999036248 411019479 416237410 917720517 223503040 725215720 103876040 412487744 861960934 657583199 775945619 210891620 434048480 753998691 644398984 39621039 505557504 825739915 791559457 218745684 757846903 873470185 313327244 605582717 55884566 921449450 606807604 626862098 138515412 824057005 99008528 924925694 63090547 104486464 555558432 115149333 871953826 161031353 131543016 158084554 136617679 908277895 63162431 966359920 670702175 801865377 56452281 738842897 873505042 515464407 843970792 232155436 840076099 704782243 39748255 182528306 32492268 708179639 472926977 660126197 836411211 70054333 229292644 336954578 207430721 731869947 329929453 253358277 735608693 387140237 618720333 931785793 445681951 923065145 750006010 615391653 72528677 133318547 758640767 339626079 881807524 684282636 541543368 412997613 944606056 516889521 642254295 602007239 131925495 54729333 252061402 686029145 724861255 763564290 811853977 860405434 145515982 346347739 231627150 2568497 534733691 369412860 634135577 943522980 284274639 636804463 72575249 116422591 522839416 289078487 233524005 774409622 286731887 603439848 185820109 971610973 404420908 692813957 227495106 409578102 687072234 591771181 335150194 583630036 370698871 908762792 313012708 794129435 158707825 714791275 840442126 699135440 400435340 832249137 725550865 427340973 184187017 694497414 33476996 740708746 138287217 95629578 253976690 982465997 560386504 314682613 112544082 342085093 300057386 8069346 846295281 509870628 90088576 59683370 814481826 204747029 707709985 238788064 448799179 27673942 62188520 926040992 387986869 793886565 490769235 314322030 768142945 108568150 222817768 557382669 132124806 565187334 919734288 937752374 283814917 803311568 59679630 456139638 881956264 861276145 915447317 563548614 236739569 423977085 342961739 264924521 388169691 155404069 140485983 474485008 179158523 549625466 250474286 731707941 362610777 3119168 428055432 494061074 205172181 354187262 978890963 659840278 835768590 45093628 924262944 287816475 229818474 99135302 437420947 754836653 725122783 16341487 586664250 200322849 565661543 561171180 525710129 210952570 535453095 908715862 109141545 822901339 911367233 484293200 523083917 339469807 500206869 924177161 968871156 508673504 777646729 986823885 427415288 644496230 809676192 936727523 950539639 746806611 317792280 202484188 159744302 992274922 805054156 507238523 962146690 54176805 160765247 218150929 888976645 516145006 907005832 336839943 995968319 9947696 47078361 251223226 870858510 605093368 70119946 724303098 802697423 76492381 813008258 677608889 295149693 765685476 843168062 844863957 341111671 20890763 395443647 362458500 424524733 94267650 65901321 571894084 75560747 164167513 199841583 40858748 949653707 84811592 606853726 295787281 876388043 444956104 52272667 540638270 977964330 951429839 974253869 511684202 199264560 366748141 82849303 159149393 181754731 400067544 446141824 940869938 393792677 860896407 430412613 216745984 434250490 334142491 314097708 990024199 212662754 422245198 44867062 790340054 733059587 978133620 704806947 92786518 382753782 474437017 276156272 450386126 859555551 34006210 405393810 26765607 29494791 872334313 313819288 7182376 988787029 2429466 82770138 87285880 515413828 39938141 313549753 609342627 253277317 973050031 6454907 159512680 958210487 594227908 62417850 758029509 773244766 367981661 792564133 946652742 604594134 210973639 919686960 6126082 683364117 448557880 951580959 242646945 69600022 704234528 582152146 370474634 752122730 253650498 639364470 843553308 895267517 444037388 46581739 823813381 866996777 18803148 819890840 577688506 819012181 562891867 460308022 719237451 126981116 46736217 982134156 981815808 424590425 577117319 926324516 458008032 426814959 981599264 155706508 917186837 322077110 822421678 80903200 583754183 580468253 547555117 298659215 175911598 866795491 55306444 752267916 78373241 962428343 556374607 141025481 796291637 134096832 268487835 854663331 10120515 184000915 325579184 885988354 413110652 213751531 545862904 323089960 541670971 35440588 116016003 731974107 852140596 121263689 19797489 833478104 265666802 311116211 494782630 704702713 353746961 363479827 96863170 512032814 586762137 602309171 627971872 165846010 429377140 877937772 919693655 736172979 639812653 493909298 180818372 873288790 319276949 655130862 622038662 410456844 350539124 501992795 637780835 992845828 501091609 973721470 101607546 403078830 115087724 435065373 8154323 868691934 772109339 589473128 484352467 437283676 254265610 2692707 945930001 590991888 388296591 277940382 381046264 597938287 563793159 177801796 329044032 590563190 478459884 656453063 186233788 567880256 176265977 635827728 160158221 270336671 245701921 807353654 803806883 406233719 945762511 251334468 84962476 628855996 6764142 318277832 448014517 803573105 375733599 466504289 206775485 898481922 644947137 881935689 475105899 170253922 401922093 670991883 384741856 320144875 497167821 500967802 959568033 919541405 387475511 346780267 153789894 726968028 538769260 881169123 275620182 916537885 982356390 558801856 835392616 658569494 840813176 245049341 645006630 998799044 474823922 698856296 143356296 874457406 87904684 198208714 689061943 912294185 551819617 834995971 992265826 266353160 533491092 588934070 945945431 699612383 497180082 443806891 948963316 986083082 871621989 486312055 393870358 695457320 644500653 139560169 1671817 49754603 369499365 171811717 229689225 404660698 938452614 2365699 792838500 111020797 698409755 197794068 31981970 38489357 612096737 483283563 270790933 790685726 25795195 960032400 275944804 83221120 715975912 468436164 922165137 921921489 763678892 634850880 488820399 427496358 304259820 325836365 400435420 244093536 514810970 80091246 958740653 684675885 503453799 686532278 408412181 899256857 823040619 677022458 511534238 564839603 713069733 113111463 128089577 75959771 710567223 574634308 885962454 314592629 487352385 265770899 129086006 478454601 398833387 722712659 985350428 616035140 482510470 155652886 427396148 98815289 18498040 359333575 652572669 770880918 536053386 751075907 52778914 463945688 95824570 866556005 538243051 960171583 614251417 961514021 308812965 933065396 153852506 290623188 171510919 739925894 679436120 742480080 230906312 11765535 487087719 799619882 836299423 910007301 89713664 242014615 344893491 32969297 305083854 938435407 905703027 67559343 881846283 639872242 339596315 86197984 874042055 112682377 515877662 248849609 85536037 166084787 888549488 924074773 95143359 93648124 838496528 688946425 848339130 941568421 732191075 822729382 693500923 324255409 208427469 960042288 125816279 970167991 141672058 827386043 393225580 630561438 48326798 843646367 278324716 451189087 466594619 888367338 381875870 134893658 772870086 385354031 383587759 516359620 463823567 904148773 482814173 315456335 745525716 806235500 568503826 971982869 411750783 668234757 3496763 351958237 493983918 963477271 128818878 185712118 238040575 8531332 88669267 944437119 721412253 530594614 160813413 398034022 367660153 146273179 488913291 547013458 576507248 997871725 501443367 358014596 311099724 265840851 881920546 719311811 906623769 952859868 835035680 857570816 718175433 249567596 6104536 829731378 65109548 4916091 667219500 456155918 579177829 335231077 878672223 663050944 949403864 53999143 155930723 605923311 430661523 663826453 331800694 676386117 899968986 978151800 907277716 120940194 557410742 835026235 241465322 283258589 772443556 930484336 483970530 9256457 471254312 696190067 613135520 457274563 708748613 830918424 427061989 120846555 502947586 485259593 692524977 340561785 181117755 658948576 696368862 718065345 871054701 517245328 33591330 490069314 342025187 281330110 921946424 7632493 885273799 626918060 174148216 97874015 848867019 295805753 407911238 148900173 18131426 907207240 964940317 769113071 666352537 17837495 566403052 377784879 708782335 651117392 668380776 455421364 735493399 94574501 633690728 184458577 165640897 141388544 163225999 57811617 162486460 384995396 597543261 848034811 910341955 693054217 409504787 473682488 297242159 260263502 896574273 218505927 838467530 582194502 318613229 585660440 625226609 552100006 989618673 425520892 199778188 876152552 32423010 480352425 333069155 264987121 320092122 866027048 374499328 693098151 239749662 51020317 818899000 300311899 96003896 856923985 132407019 242316797 188968040 673036487 446462787 864684229 305657242 268355809 110436720 925429537 766846809 385197151 310809795 816437608 37251157 863787761 930760457 666223267 461321408 45894643 519215371 562685522 762898078 124342650 79622820 868899425 19369529 917642449 182369858 211489815 11242137 316450858 224420575 130342829 659680365 800738034 707172613 373061205 340212641 858205255 1396703 546570126 853023121 249989861 952818461 534750598 960109369 782157649 671217745 811905606 656734564 375061327 630323050 582144550 310269421 707134775 49557460 815356533 56180162 222385812 250544061 647814 167647736 183546103 752237520 285450548 945132243 448832708 842687905 179541003 307690582 135448875 850022092 394252763 485757625 317172897 756279364 633118171 802802910 29210840 368470499 129737700 531629419 399327593 762188500 102699860 218687025 601660725 979120606 418688181 867228372 203983286 631541484 346407845 283523232 934522791 447548003 294898512 798222825 466711297 989741450 414852001 686430347 75689543 567351536 601762454 519182896 765010204 9877118 576476430 199183008 888736624 26237685 318739963 560585643 404223001 954609254 697366125 39979281 126472061 757970673 164217822 42530801 559976791 81726473 907074029 639308406 543580879 203978538 463519820 306392074 605680222 196527746 427701328 641886015 339387548 355222830 134424968 981646374 336668609 151576246 58362991 299544943 425576301 256378559 338735387 900654722 238372761 84700463 738920336 235404219 524394902 787421183 685505558 530259595 795204230 56437347 195715412 460491747 727361817 675330442 358262720 58664934 132879135 930067586 801582273 853701320 243476288 655407844 349787540 459718717 156354906 743166037 623508734 378000597 208959808 80270114 28840867 791805198 934919435 83048367 53332927 489553168 231700131 399363980 165820562 173858844 281747109 182527174 857160049 884102807 721768876 910437903 716583738 389086844 311693549 515175689 156939851 944364485 857766470 472257168 62402392 955777387 847064480 572595178 829491055 813006228 259905197 57598269 503517863 438042770 61723374 229138798 365221824 424826372 606315287 238283360 658276747 60556842 50011894 367269484 504762776 169317654 228880069 725239688 826345735 785916714 601545955 932405057 918620397 674037660 623926519 959999526 736010248 465786667 216744300 355947458 300945888 215240714 589918873 24185380 302144877 372451377 437978878 384494548 547670765 899613574 32578625 29330102 116243592 254778999 631383135 910460046 852797647 786796928 138445323 604278242 522572504 425856430 94749723 761899041 948989984 917145374 584947964 828083121 915790157 76338959 839457594 817714953 650610062 295661666 16839427 186905340 969090039 246112354 494717784 549775792 546366282 133036745 319557700 76367016 438343789 557559616 69013151 21301763 947880492 974360567 959130632 659097098 719527051 711521884 330178055 647336407 710529572 437790672 919984528 748394979 169010602 861922271 426969802 64492335 274828789 444390213 13463380 104530442 758852637 738354057 912343093 672486399 354492651 539004213 105014704 149489814 111422814 731184129 93121168 727385136 451878839 723865027 530602887 584819927 248009682 149530370 262719056 410502135 598897313 745607691 777007377 397650254 124480925 321592587 39895404 216061302 269694968 944570105 188544463 594426623 317126080 242395655 677994381 845620506 648607182 85718562 500953339 215312254 305979223 950932921 107957120 483024490 388087521 88389890 855253199 877112033 551897545 2184489 312842947 23837948 37290179 830293959 652708891 519876560 539631753 980370038 366443500 550724923 464719287 257102293 138766977 890751510 853240373 506056892 30701798 168772916 178387967 667617213 956564482 236648415 437357330 80900561 859609190 962873608 868002548 381477075 140626228 266147868 634645960 534711153 868301942 988340491 774314106 321148025 383142469 273613605 491776634 855812089 825559977 657620836 749817317 252012864 621535422 746217230 514290488 995630512 926992759 524825543 738235326 719778200 657095872 873867251 1820816 211169079 373865168 442627717 817514545 443078786 176426866 956737916 240616844 809889989 21750137 257751242 600820177 142008185 76706118 794601902 757020563 702740379 903353854 403849466 564206412 575629533 313827228 112473090 761033803 466470679 315560654 384018078 545759301 828487589 435123344 838828139 644419312 280843476 829853408 927444821 834514733 393621364 624485074 297222472 130951111 998522524 454721178 269830821 511092354 421650593 304871583 494206373 546848272 411367193 350489014 865339327 409644357 692094181 376352663 419219294 655191749 254282058 774235522 164218043 260174717 688397094 113982517 468464672 814521103 376131928 795949481 55188404 272869823 909192485 792719 397800541 785568708 561145745 56875164 562514970 492775410 767414671 513289498 727153141 59834630 133436174 672862497 768437642 580389831 108806371 570757775 588945796 256614929 670511934 195140492 157117384 318390731 145701558 195713811 307668152 419693785 676599584 717004932 975339538 814612735 77090712 299917961 668883644 627233648 562118237 728566560 999915861 638887537 70795773 724090559 723218050 367089711 327862864 256584005 301678701 847955492 576839848 817484657 352420179 652464496 730880083 296916363 466130253 387291223 603399974 170534734 893835527 606259908 441906972 991926582 189161575 82846239 47416879 177987843 120600170 30668985 703569709 880864485 7144444 947525884 679625057 77378537 692969465 143389811 944586649 957318289 463496645 969696084 610777909 376293300 841735323 25186676 760808578 649437707 990423827 406052180 651449693 956554668 208095036 438297501 426303567 277917716 783547728 830927582 158097548 932303610 658428934 101628452 191940435 1275419 841918142 859241544 326543872 183807397 61896232 259147834 828659399 96266254 789265126 321139430 784142236 12058629 824283204 321851263 960598632 91837488 131803023 914572018 269520289 437032945 681036375 256219965 504048816 146485477 453356617 569082924 273051512 725262414 798278034 180100744 757015034 170926031 129751571 626763871 169273984 977840124 116406879 216287417 798188017 636277872 736022945 225592302 425865613 239255399 516590984 797561669 284667340 876095176 872804178 554461513 260705512 725402275 985415087 115356819 485273833 765531635 661030942 800670039 319785889 218774682 463939787 278081850 551492471 377479173 557709502 227473197 677796730 302238998 872199145 853313647 374174151 192400397 86686357 77536822 694598318 767183149 764354310 840699704 537801010 169063625 652040981 431040849 453820874 909187895 774345809 547940966 955942469 989128012 754535604 274840941 662648385 919614244 110812644 611153170 77215918 503046657 211857841 613956623 561656455 957312777 557520373 510135958 293759653 715579649 585459012 49177074 32079687 720270562 981572898 541222815 274266667 662526824 799709986 729285664 259178269 903936008 242109592 269195505 618616890 943588216 203997601 689882408 731507464 973134161 466373195 566360395 976290965 431430934 576276706 652432970 322104006 391154235 265595783 397210346 317839802 380743599 391043160 974882926 481146010 682566894 717450027 932432911 137202363 506131674 752174322 889929265 706742297 127494481 358547604 51525399 480783843 467386527 959234625 135748176 941902628 93019654 808609443 427661803 228874310 127088317 823721241 140731718 718840696 344483370 142284305 23594486 956796873 709909469 899679137 307491208 709660250 609963189 268847762 973535776 39200064 16704822 859495806 186950003 555458064 860088607 757064237 562013380 226820571 960561306 399601164 374161010 239498152 530481213 578635242 592066704 739808295 550560481 77802610 116867873 889032046 64295657 775681627 378175244 420644881 343126003 1809041 699374098 360894519 102143734 290201036 99623927 425937842 36630985 69082683 545157447 216762768 52897546 997188027 200068122 160106161 485712873 798324195 539191265 378426582 110826186 955088872 896685626 236516158 850810606 135708197 716632104 829687171 607507675 735134632 710198358 637489611 87005364 420394095 987443095 362653089 838552871 947415194 468510275 860194155 450597788 897186643 700611516 543632444 75606638 337925548 962681681 217235795 928835557 717740059 997764739 391226548 169616806 633938482 209291840 148902809 314385768 532232258 165194116 947574086 507622891 885373996 485910160 724187380 799900904 250401238 128357798 675520216 821699805 150228072 588701212 90551818 38338313 114313451 930034999 613866208 349475146 279054338 62755165 413005588 359776906 881013945 485210445 940551481 826363421 361026019 160723218 446352713 546668368 546956702 843313810 640527455 343932604 109290069 607242647 398997825 870953840 83247386 434456820 187014999 500218261 478009171 12445729 393025889 130162934 347796913 808370260 224860006 527944817 765784204 652578608 425598590 508840692 324503772 895022272 9294928 803266828 800978416 422089014 239443608 706783126 455582465 929623420 558679891 690022406 193988080 367440792 626130608 497660046 282961343 502556668 725937819 941711719 693124324 676626968 910605684 729954495 100347205 424455503 188639680 390128226 603903832 212208148 503992018 11307662 767402485 804424532 436716837 512557003 465636894 810040236 959836995 299477369 19871538 283612539 297939907 484024887 240114101 569681096 737480093 549490527 590414206 789321560 226087978 329174915 59950042 381371118 395465541 789725173 357290616 317235782 617416282 313474350 794082639 837453576 795969188 384572442 498156465 180087448 19144687 137826127 358340526 462987897 180244125 972084180 229275129 326736432 331522234 429590914 597579245 750729406 711190348 82985673 587960934 891954716 419023882 408158652 40424373 562062300 866094789 447804059 473706637 136696964 290172038 300712614 767578067 945912827 601763422 173328375 762556821 209985308 6992642 105323265 569008510 558763137 886564116 760842761 224946910 248199654 217183813 805312162 830130130 952336061 237964759 718865085 948853991 25279407 858337483 687621897 401931428 149276564 396060899 581204793 143726827 347322077 269012694 348116764 113600696 425591352 339437510 916200804 536787324 704447052 530565375 426616911 572870193 268305243 296970644 949670793 897757974 52239985 9774907 845254789 807053410 670682434 652903692 669373205 749942930 605562083 879685312 299564254 743729453 739232890 372999165 949284524 909137990 150049306 953445649 56368955 205454517 889313829 834225196 311372729 355363933 626549417 291888416 391275834 477640350 989674735 158620826 248575862 618941595 159144459 272545964 638133261 846353312 113255099 890040105 328172663 973330417 3967978 515138563 113567383 265391002 185800920 737209726 428987854 517446342 278819300 153787646 55529321 991834765 976649033 433692178 90481554 637490951 575554705 205165954 275606424 727658948 920080529 392702340 733166814 951303103 151043951 426836377 380991797 220579789 970308566 372846066 494986179 781617794 15864712 613409933 202680475 326415396 598003386 802855114 335912422 249144355 453144696 593039906 83803253 57269063 783671284 777626197 482865822 544813745 275809236 764156958 751831688 317488692 651244542 354966685 195439826 557304834 843269414 893384642 988768106 623193791 820873246 249945785 778957987 285797375 129797090 819444350 409295309 878406890 153047316 783622363 411222674 103731273 651758104 113105016 386685798 21616732 156468949 915783584 551990273 130551394 341447829 271552178 319238849 796305970 872074508 330248362 757723829 741850525 814144049 570671400 307793228 861142373 831752298 759982652 556836572 33336788 80123711 487897462 91135966 835000116 807191552 164771450 859682391 808441277 417848696 600668954 822447285 566656397 808505468 779020712 139109475 638520071 503123704 430275350 907424771 242574133 232587110 906238522 249388768 799354263 598843544 546838268 66510434 374160022 494741949 845953348 362969350 195936095 508708683 470974924 512971354 771132270 836883285 832072960 737295712 503085874 723233264 372158672 514951108 329772352 710371221 471401738 305467865 623001986 364003802 875087999 294120171 387299460 411081362 302585438 247652654 115245556 186329732 860405900 776659005 608990588 101486814 211950900 484295947 217140837 25362340 785281331 422638167 138888691 685846399 329466813 689974272 423340681 639029884 388347063 950213242 816688002 584091679 671104656 99986731 453175009 385522675 511530235 431884825 243748319 993303741 713080635 596486113 349486012 940575396 985219820 315681014 26174451 845063760 892454433 253117254 623192433 69764913 473928475 301215508 894517999 543198073 623072023 507611002 268780268 774440662 671121402 62459200 353204726 51160064 644967358 656792126 265437957 473833574 804771699 901190518 447886220 672202251 931083439 254508848 385368385 835386395 783530367 298204491 657461011 500339022 347688087 680513930 11306168 311783092 286319284 124429633 986699132 735782448 156674178 84901022 228521814 886915713 923764529 148109120 91346579 323767672 92070256 346869156 938542540 505960505 573784476 467370403 750792394 718832013 921359937 463528132 140901297 887380777 133933117 223299467 820335539 405870030 285230048 188598819 381212143 418426264 744324648 553586156 732617980 500057095 189874666 173658919 245147069 363062125 417140158 928153618 474762789 526173959 510987919 966628865 674169279 749943367 450464845 909402187 634536457 958925883 324947536 448243952 620003551 18998429 322625682 811775219 337025927 83486650 409866618 63540002 112898588 839221631 819599934 978447498 23398390 975105879 907647026 691997090 855384838 469433607 661631671 209863779 660098994 927673039 721780450 904233174 690435161 135245516 590949833 290717261 549373061 629004015 513861251 607865820 568119881 910774637 664861822 105463487 648840669 44947711 176557911 270582340 717154243 909769470 806052719 836066500 902670648 366742702 963581219 46247099 362161533 192592556 104241410 851899835 78456612 678305763 663092705 105814834 295196673 711034776 844224518 687622994 634416449 525938865 716385084 566671204 439416243 626746748 679945297 902783030 14455382 370921990 831771804 678047305 85059880 585112262 965733449 7731297 472385916 728077990 74659145 422737350 894731418 516359523 985318412 617301955 153495864 74492765 364607338 542375620 227232371 925129321 779386120 602830366 374050770 929414306 822300370 67551672 944854294 942241541 799555276 646453993 219987760 902970789 692443424 767415539 909867282 937273443 647142244 419901281 428466774 598772932 785354887 126211228 831067008 557456602 99940286 7107103 319593469 534575031 526603504 326333812 425644909 466752971 715760573 920771129 956656451 372060552 842437276 432198440 903780453 380878076 64419936 961668073 483681165 374152309 497849212 403099981 991950466 334929479 611906372 203094817 904740021 874465075 378900177 892313950 683263923 284410875 449593471 41559360 95974686 998594348 117148802 707577534 781677322 519455286 489273515 156014375 555148633 560495261 970683891 514256994 730517923 900298219 197934697 395637622 852736212 996158658 194659490 748386677 631268725 489111503 350839847 216583139 255798264 630958684 457307120 796367692 296373940 687608317 41139687 432307310 356079737 617627674 126654852 402228824 256235052 711055132 376839285 7799764 455962464 123453475 241651599 810745272 780529924 672262676 282570758 8465912 86221328 255373248 83830342 67182566 115215298 54831623 576359504 362118435 660175156 681853274 262834653 334681966 993020765 392089017 709189932 91478881 138243411 201972878 262518505 207968717 124481045 818562604 697403222 699944074 179241545 276073833 190149977 117353505 927276668 118560512 297435331 721498958 800823791 175615850 370192975 74303169 596677891 68118794 644157720 50333132 227379871 338226510 866211342 671014985 241485003 617743059 559124048 989983804 178115998 410970245 229606179 982515407 97392933 562666274 196643775 342995854 506929706 481824172 596222636 764994425 468568178 885385844 337834472 939496230 521773369 268317795 398712448 265415767 673914073 957205498 588561395 235458161 881844168 866085982 440742740 421465072 484737483 921596026 447678846 156961865 295103509 556293290 819212331 588648048 697248472 619964269 202226970 956840149 467588046 230586543 152229633 655710279 591004385 586477626 901672067 250453225 11970561 877225835 636147085 642223981 495178046 949693916 836891758 486626588 930355065 208155780 757426361 616099349 14833352 570594199 191216499 580839848 916385798 827828618 468628209 132732512 202951835 65083233 90024019 719920620 26334412 286228732 336238499 209379874 519467938 354605646 21785970 234023559 943910352 888593511 420019653 780951912 872939943 260452785 523475121 63374903 289169645 497620923 117450351 69467740 339590103 543438968 676243026 206408780 114307019 288237561 792467545 191156487 257897324 761450776 171328179 788344846 66592422 89185821 481602582 921735888 238524144 553702423 718602314 692012989 542304121 800615683 835307487 913617986 670980598 468064409 642662633 952656069 77581071 542662105 775296078 685355474 165660698 261867993 606097527 791535217 203909423 886759993 385631572 850529151 326403439 701801307 62032346 445477785 738028083 223910994 853066055 308312784 430263552 28056865 243073098 200701115 880009578 640452764 721251194 868495514 704170134 911329124 195820834 68060412 891707297 366822951 402369728 602337566 902478304 9273092 754868031 51431779 99890668 459196234 870826970 691460977 386782223 275677854 25754938 137441688 590612605 113574473 986485624 296097781 311075449 163857603 57102309 260969296 893982869 831983491 824859331 76475252 728333247 963011094 124737103 295108626 444220417 578996684 137318327 497364210 107520053 10993264 35385119 145038031 200191515 11662449 177277720 42634189 491190537 776410340 350661128 690986953 657814069 868642498 118857450 137264961 776699951 939034157 499834325 384632355 94382133 701545486 918344607 652606816 756452353 856647154 356196222 14902819 970624913 603584393 918392397 70370342 741613888 933529547 709174703 870725736 472064 234912111 795804451 609262582 834471668 299298936 847515932 817659636 290164529 956577930 104320218 933418321 596532466 306596016 460333166 263312419 282622898 786694379 686754575 507312750 887959844 109883272 107499461 197562934 260352610 807361750 643967615 477414506 206777545 915115137 998678465 97950916 429878315 676668763 175151473 664769727 221511238 810728972 805249240 43265593 172939680 603024290 844768581 997481197 227160374 182139837 481680207 841049587 590715121 5076815 402789513 165928664 868114530 805902460 189774349 191726862 292682814 961349481 487282640 367816112 195621744 79853113 292403466 443227041 588812848 590927475 990607370 116735951 369564908 317590079 797725778 41991793 444634866 949696894 510310055 90046135 721191131 698261583 675030556 134105328 466507840 748573544 380524939 18664114 424231010 641210870 731964561 380574961 21209727 170618677 864032779 361409401 784890823 915384978 147789659 946886435 328150304 71896734 275877658 337864680 861084912 421618239 356647730 226231214 183412518 266478159 934073851 745813359 55579496 781714978 32460742 274126303 981964968 432000410 580588946 925342595 450950725 641797811 933665178 281111196 328495722 358528290 343016277 247552671 476033673 903421373 593999408 862237114 137519572 830830162 877196921 793720288 277734658 194899617 800634890 561411452 381942303 823929440 625273017 875950848 439401853 565415635 949756070 29407675 587993001 272931117 404972329 944164252 736693198 402769622 176575348 391192000 887676324 784161742 625838855 939154107 817080878 921018412 12750443 803738116 262370458 475216462 565337821 275490311 275094386 778804162 690519627 961610010 525425002 915732172 746643539 837781138 460254071 445693378 582033089 903405513 707078980 928154600 812144887 895621377 181756053 608715478 115852783 444526099 73529749 125966644 972320014 551048719 447349052 173882469 539143442 38955361 175198550 785133239 780911212 570204225 150421735 125072102 877206989 355974391 89142082 728197327 508300027 520410462 971829548 33950970 958130046 314510694 655665447 390143702 283709 59943220 39585663 982029689 18816903 426141102 474058075 797564862 938075651 772149708 64939640 992355041 261460425 814895119 478751909 619268303 844879991 486170798 610242125 451253384 686055365 825721091 228187225 283642212 535537250 43225871 135280283 853369145 274607360 747180904 291796619 119988108 28795086 686565056 793860583 294645247 607871021 224986432 779894694 327306135 361291697 139455061 725817568 508953734 478428028 169474504 979321101 719450567 279601075 947589613 383866021 649895320 279403849 78570326 918279744 797213647 329734584 877136297 922271053 126871408 10025246 855107145 156441473 518463797 501662201 492096154 505237058 430578074 694387195 11229080 378990130 920056701 855896608 184596435 880915244 46807656 649653731 479537263 256142857 389780952 276485216 990809323 451676919 609561248 490581398 417688309 244748501 856928719 972626657 670271195 233685759 366768048 256273911 717783787 529203458 472342771 73116439 128157903 881393356 20860818 472512053 341002446 729832824 162890944 16815 736976842 28297278 702348525 433793147 483287784 283585077 798698812 394908099 770301912 598811784 433563288 573380019 906530120 577263042 763105554 190963595 476762878 742566658 706536701 509049003 487256536 375246820 374596929 576685955 147739016 853465074 395163017 402280819 600248482 410135627 179561531 190033715 928195176 773213100 842628455 419635433 559042550 131289235 303181192 394754067 542037464 873639040 829078398 884876456 584034540 100901618 32730336 701556642 486829692 634531729 551433568 688837381 927215658 55399418 562145449 289923169 84195597 665527987 441982443 167620536 959244497 207588220 39374731 471753741 679216543 577633821 475435557 638482196 134638305 341503611 941662552 539062425 485245093 566379910 136025655 408534662 367601304 480623870 825903118 469233773 263147692 509265333 503303050 835071458 362155072 172316716 530766251 262933538 543129765 154279361 506164225 905524982 43312629 869221211 710859297 513485328 412458495 325343267 819493370 246686330 728120205 672721628 954969151 695243416 928905008 223216767 275266049 85746190 264069833 160527183 670559351 340572605 998370697 411312824 539145475 869126362 977250502 187709103 349795226 189315814 267318988 461471327 638227623 241613011 604877623 936172359 159765575 899867810 120110722 765595942 693310117 922059150 508867251 743197047 644376694 352294743 751725075 711457991 121083963 108028244 99670969 68640194 192700812 544772423 834657263 363422893 409986309 217190634 224370753 675873251 925995367 61544156 762370195 866510899 404541229 139980838 270615124 234677517 602193504 385675021 125508313 613760424 253314297 449243395 721906387 158745624 698743068 39386518 740444345 629159526 17896922 990613563 206990222 820942163 72045425 409718690 117869777 381095585 537556735 358339248 486201223 98753852 316937909 201780661 434720391 215884973 950244808 52605100 240297907 171724812 390158734 909712823 78500220 274707661 994668007 611965862 592600147 958917703 17578215 1944276 879592449 258297394 262006189 997918338 174375379 852956633 726355322 179682498 905269960 572463121 701588988 709276162 972048944 54883210 138984503 642686660 961923420 68306522 605599310 964056627 944388385 221414772 805901125 813089101 154964780 115412880 568526082 424103163 293355133 332115695 252300211 992817885 241043294 802506183 938124288 116409203 193078530 859477081 83487302 944890958 659027095 290813098 83510021 923142528 456832411 337505021 334012040 82050991 720821178 852872948 457857374 719767980 548909820 704313153 163790409 633328060 883797150 252448912 410874090 371437043 200382620 902414448 247924153 42652742 340454845 602888665 921304875 558761355 515400714 198899201 57487623 798107235 369357841 564531779 960078357 403370261 853620829 698849577 194320280 341876328 255257233 879394980 664882378 826947791 723385130 304441000 705660256 349686210 143406291 527666234 295322983 744813988 868847933 53540228 203772144 15489606 586340450 574561983 91882640 260817656 982532260 249097247 862247016 72916699 333368785 985824936 561881186 384116657 179558833 56704283 558865290 932387768 879204595 652903431 477960797 545241689 854541698 220414603 151251397 706924177 473875138 727443899 854751330 846755409 560586448 359361373 377982511 658255169 404981585 883571481 743061546 40613851 560830564 654448728 690475579 759211168 436248662 177698092 895086503 758061351 938475361 271082587 294347964 25954597 227129361 752628202 928035174 79879161 731621846 825354007 597853389 236786021 692450478 185858184 734671566 241042033 337259491 217225893 83361157 312145827 675396070 2470620 657188618 464295025 185618837 102967266 40301793 388907674 516215936 887043709 654943627 964957895 921172792 90222657 295642704 917459708 974533679 978705200 74713026 624263840 798792043 805097731 697543780 695422089 931224058 260065326 613127379 468054971 277099574 155324293 726627139 949355218 561190399 789647079 99671956 441143530 566237649 766429309 535759487 3897474 236143341 726665199 301763390 693507744 813898874 1348447 437522117 156084385 76817465 822996497 605240646 97653390 762085928 115678331 636614640 104030777 973847569 294153802 256808373 628183348 452407555 661621056 5765179 619497468 813266874 436776359 743982194 639044496 362763030 433645234 945793440 272704018 302615376 777768302 792476308 187899407 973375661 561671646 511476784 484469211 695093052 674219793 667273199 650120240 552549696 5743061 772146341 874984653 550306134 9878355 23604472 595161020 185152023 936533579 85606840 78471717 458507122 887570559 740158941 605592510 790353728 633200529 480326949 956941110 310551477 669118673 48507004 416059815 686317521 685478528 354970631 607004425 329086462 792892280 364978592 686440397 736645195 439486752 381961488 514461762 458710500 797128109 700407173 709734158 253287602 335600000 498228892 717555860 238644519 176344105 610217707 949441117 849601744 681567385 254492028 975818011 972385656 629022563 379695262 964165155 743849654 529845972 709774782 572257106 918158057 818997551 737406808 281401926 369495901 902276274 51078648 858407046 208978339 79464336 935170742 544607182 333772874 77878425 110660246 918085881 608665069 664396384 243353829 723170160 494283223 813688073 301539832 88445588 919824695 870787513 526667550 727655558 826287552 304329657 229015510 784744466 355996969 381787348 203090222 176693431 927185746 549707525 208803978 128488427 728131859 246886012 362759776 511454623 70562577 287960511 962739452 508628549 875980750 850522400 118783323 659399221 251704719 973077486 681684823 254800719 585566712 124486578 416203314 235086949 398690163 928483291 684453718 865108668 102717765 654390917 648197729 954524319 872983635 750682645 330993864 777675073 423805799 803576156 707515845 415981535 394797861 942932359 133697977 937116052 319131580 20243454 135067125 196668783 334248916 483554134 451575919 996643571 774260427 842436677 3134586 52584824 770273120 777895573 204586966 725820705 667017458 662652271 860754235 365587206 603857575 699442365 657156725 948287203 990429195 282052816 710635921 971943960 569020558 473966581 589558972 757766355 185264382 503520378 946208971 731944297 929780430 157483109 560786193 571943453 111583160 284937181 203991423 485552984 595917308 242237286 509208560 662478679 416841886 175835049 979826172 578276107 695642584 723562919 895437532 502213674 462703196 610923271 337172306 410505149 266068664 944744875 751051058 82895233 432060716 273566760 9840986 897370165 51420675 32617481 514405528 894899047 174979104 571715815 183538203 876508565 624893744 808216486 649669550 141180056 409745412 743233083 460909719 436891054 248176249 567433643 477229095 551785216 996292716 546184429 18724437 101884569 836208248 293033030 804924525 898617842 792510029 327405530 753075595 346658337 833468106 589713274 820060490 790509349 417476089 78629010 548410465 186483388 421993213 581739427 226826399 237666556 625204023 997041101 400357194 616968637 843010550 403145546 140614544 62676696 359335975 429774205 834193784 417413114 438789029 113415497 923713171 332734444 130544265 841426475 688623768 18373204 852712566 395615592 934651500 161935973 902197043 301566430 250416565 719851147 559887644 40488987 836620421 261176814 391393901 416165655 195392191 101695106 784444968 612387325 836995368 34288492 349794214 862154552 703752464 327260781 982105958 698835586 386537130 684155369 248855778 420426362 305821799 731499163 840843830 542540501 66157367 618757617 775244310 144247618 604299479 271994503 527004648 382758818 618823813 446909254 213503295 568861182 494093763 642289889 762707260 350011767 991758234 428523319 782363990 10417272 917012333 571685968 923060594 455104485 158723974 515192906 419731282 112009630 951249921 331977672 914965581 912496739 762830236 934698125 852210405 545114530 1582222 252839826 50264203 449605632 114398062 86873149 75360538 387848138 928813481 974116227 802752369 468346703 892026719 181140961 148076398 572015938 819422854 296253622 155748234 373930270 514095028 56517031 306179382 807553705 816935367 154017354 905599159 661619957 577459617 274416700 162061550 262345344 757586521 564345882 314751757 833706263 121686507 860434327 578745058 632262172 60035275 765467492 484351006 102554007 804570868 71082238 741670007 755411173 116775793 65369848 726913928 602947957 844194560 537723531 579648120 552084784 159703576 758349716 544673375 103851165 764505423 818269807 745362490 811153542 83937357 374290460 29170785 626281049 228366945 520589227 595859649 703280391 911905207 985970559 806542515 910662602 502304574 934563924 932587434 66024533 791176833 209142283 743134383 346566742 886827539 904317430 35113605 484969953 528774473 343297422 227862880 38680505 802446784 263396767 300166054 994712128 975831337 293964423 737329658 521556129 208562684 74024249 596243404 686613155 224905124 846090989 513357376 840626435 3526626 923406114 447565664 166383378 968639170 727585667 148829785 57222008 997298959 669364853 905071213 585241168 315984093 415971042 985102905 713241335 221586994 916270221 955993215 691513771 479225484 833457546 863588336 952817025 611829137 391992892 745369836 906241938 422085524 664392661 579695466 493688680 209974324 965668974 741081089 970087791 742166443 618636499 199641005 584802612 458175498 477581743 702807171 27361838 738159131 481269826 634367582 159135291 178016833 327837232 871954002 694353259 175004116 831667960 681729678 655647933 47619476 670409160 428288961 262897759 235002503 35745129 157497183 587491448 950517771 117177271 227095327 821425526 908571466 386364995 95522582 86801587 703224255 687607806 16133129 136240076 629189001 536460407 528542478 766939578 482625389 504647852 573434921 73715072 604070621 273275445 314875510 487042612 703758591 889905227 334940890 248882772 918895371 294645245 394707153 455703193 480809367 646035624 861882169 46453104 887164477 431967603 365752003 138428046 827522172 652411601 141547405 95054580 351375892 688446113 234573649 867946745 954347814 890052637 416958242 461986468 89521421 13531931 908480948 756826355 400297347 274410614 552835967 516527992 733842470 465903698 438315633 33761058 323611110 44318951 475323853 448657713 409925194 342553086 33018809 692678598 965534420 304835971 431425119 661322928 652282368 197223485 11008707 733414591 686670352 798679808 964571975 411857595 62132159 913468480 163427841 8404253 843237846 784208596 892359376 643367736 973985776 382326466 279721517 699721327 780064474 299252203 504759059 744411558 965584334 918332910 270516868 717360063 812505200 457319133 345690956 319380349 817489558 379598278 608123786 668080991 822628316 638081303 771892057 543264360 880006263 337743271 661484530 941166887 650076446 395504804 474661877 198098967 15042499 848295674 897676144 421235607 612632235 742951063 224628943 840534214 534511263 224165384 105718893 554061236 818745624 785842067 951576726 608889101 362072604 218952285 367123182 974237 418326252 882503852 908264870 144639466 831444607 428728970 240300333 403513563 98337650 905736264 43111107 176473947 920410366 30508211 337955304 375996440 712818403 340176850 485930889 372768575 724978836 257298465 634529196 986657801 195025273 695014778 22982566 310818288 470060640 361398039 281394705 19514536 332194973 727880263 604253775 514677333 821826685 51120581 529244087 393399623 819988302 222690959 262952138 340352888 31710642 949300933 774575318 310868720 541665476 840783191 161302760 489382167 775781775 292883905 78772171 397327058 262372534 131564458 336590948 446460323 305682339 115909309 843093009 478310569 673770972 631338787 540064897 284558349 149553794 919810167 555797682 705933234 308764984 557153355 654159107 147422257 542746396 209862693 932443472 904735570 113355402 687886304 673525851 75919669 69707531 814441619 928297444 749719098 931380940 321051714 428508507 988567332 471519022 282532769 894271771 117426256 562247641 86959738 739849213 621307954 287987513 29860860 912970657 304787154 698453397 371030067 259588274 271050457 984720797 756181715 994381373 492195891 816010177 793913993 879972402 150561772 864333833 156487566 745469249 15846406 743112531 163727315 792080573 980887352 432237298 876875998 876581564 61159541 251135447 762954235 764709069 793501486 284433902 622838657 417950618 61567675 295394732 942090379 819629969 381897037 392429074 235257863 95376098 845933598 902860298 846450973 916904300 725442716 180055097 256248669 559018030 188326806 749421613 52056848 992668819 484411140 738869173 943103660 814241970 76843078 784044965 842739929 138059692 393847147 942215954 710411343 329026299 2259155 557119984 407979655 832484314 443038567 555644467 223164212 802894417 830478386 863666197 260507707 817438396 696969290 685192131 233208628 506905832 507732332 357325944 591203988 199164706 885281829 144597933 622799671 94831731 5524892 832614882 44743425 576868690 328248518 899902333 438145568 706892030 789912246 683243184 863715046 470932628 331797561 61843110 943015465 126562936 397119964 336362031 374042566 609891188 757979143 84042200 757485657 988733207 941213430 715681899 92199505 55711406 353516456 187555703 160339072 896625412 128735876 905400748 94918005 596343842 138243804 210992636 892911764 919286212 997888512 251713587 777903181 527954578 355165380 266096671 867516517 722235044 475926524 998191644 786631815 434916956 638807845 525899295 349618892 154357547 491413530 378692834 532343982 861246041 911014598 4484754 98980663 934722937 261582003 707598304 530883769 993292366 801931029 391823566 45897703 615427163 822299408 872874450 859024215 321332823 468477951 464208718 233573411 644427409 18037104 500752828 701078168 660088794 136510618 803031587 520823734 670828003 327903438 28608074 14048702 884782519 492152874 318337626 947544950 855903883 538530732 120372090 74594067 350342480 658223330 888193825 357856859 491879935 189235762 500428795 809801561 664460038 628806679 324205053 242265862 273955253 750518686 350138867 853308865 501561350 462898719 257857522 191123084 672824964 23612814 752790103 747300259 84044589 521037923 908983893 68445605 145275516 256789217 92990925 685565475 416603593 313492521 255349109 218977362 97875870 914236548 788041433 802788104 141960871 522841669 703685354 102932299 274910484 87577035 72051202 976945609 618962673 170890259 108240060 295890547 555022714 937115741 617945774 257352830 510348951 17560962 615613957 573763267 566245998 929154 91122863 654224548 245710918 725190456 668911863 758170780 467634485 729816525 364088060 306414940 428895901 424219529 306098519 409281658 24236828 494339206 400806181 252305445 256496266 945622384 487629289 44303404 997244358 578175014 229123246 48164594 133024191 352813476 84613322 377513431 441460096 299471537 702498350 562115778 456963001 109375980 886131147 621059152 191004941 502808465 277713273 114381789 636795980 219439030 517944789 310103489 214204947 13517759 161833483 18285503 872649258 616460504 881706791 194960320 122565484 729652455 469479987 165339718 272906160 933190828 908721887 951221150 216724209 21361177 985259411 510765731 685956545 356640727 845616298 415434550 780436272 83753717 894491617 441774066 26053569 949623374 174653575 750430142 186670010 89943038 107738419 600895409 169797319 39863351 486927822 200879911 433923985 414316252 734920669 282962477 71347085 407942560 784804380 30548678 326805351 732185869 76909728 644153207 428368192 36056944 346251378 957103131 531563510 754333098 820269202 720875505 118019881 58656060 383598508 398845213 415593548 215410797 576870573 494525378 850045953 581080144 107897094 559084147 946987463 470698037 309062433 413338571 4776141 734206165 249320979 2943833 764766482 833427313 891688954 554559409 199513737 856128363 390472833 286200767 229497344 965041944 656409196 311214996 280180909 696404376 858323953 690101495 860913256 519774659 331935874 34704103 602674958 905617100 122179193 120999419 8289930 384823099 732433970 843577144 205596076 20652610 108420326 740168455 260098269 183015485 58186223 799788329 363396200 548634129 807180297 97386109 653760135 893538605 927261457 338427086 744134816 927185299 38607996 606828260 142696548 510966490 743628971 821258087 653248 4590147 879164917 816549393 495213152 475378006 794978350 935529892 772224665 165211733 536877869 415417646 62553827 595548169 353040370 967265221 862332853 996765531 122533081 331027908 55019165 214276968 433286384 673195729 260116061 472305283 50224898 445477647 80206532 829068807 183234684 752550275 638150663 933065872 715816369 105911102 206854491 838015809 660873067 377664055 249133506 696737813 288854486 714255093 245877096 1531507 277333750 790692834 208653175 301224113 636682834 515448547 864390557 430424606 379711175 356089910 943490009 332749596 221602951 273314748 487907796 253843884 964565662 73885213 195405598 706552055 983719466 294497724 968818319 32497755 150924322 407150793 78057975 538538113 228776057 370272617 238097968 550768121 695482182 762924454 692201983 679398490 402083503 712122769 103622899 995565335 310176613 397087465 388963698 288069687 557161023 799175882 718988312 418498086 28935102 424644715 653175349 49861253 760485679 349129003 319325156 245235159 282295443 104162690 741079074 517603771 148651023 209404566 914644865 913487621 326731240 839735534 137828409 695028840 309202876 602400158 863877283 308475883 214508502 690342361 883963793 175139981 497332713 778086601 454998180 934033522 82346450 148044566 461823040 305369099 467392883 853787150 89290762 809451594 565574506 975359442 417852295 128362538 987876611 861496702 453997684 313392133 127938537 888571684 372259493 387813568 321799882 981265131 76689113 958695448 276816008 525267303 943302923 153757381 630797038 186742200 630534827 734266084 787759880 710906638 267659587 79904179 414458804 511454169 265104074 155123335 387387029 830303743 523636708 928586102 983839786 646626284 243525524 143960506 862378310 168855138 923410357 328586521 640472360 425064054 956317693 115881755 262102911 817283557 989633814 910956738 951691347 283014213 342429000 389360996 269477432 255506267 532152019 50976203 519685935 58441777 77326893 772076504 858235342 329729291 958506573 351029836 434951076 318883895 882720064 157617169 13608672 770884338 239534081 399139794 743504531 439172001 431246665 31125100 785867253 194168640 316649299 455134851 948954751 36951607 315046679 35205479 171847870 85516077 651696507 939111541 539749831 43865737 805970029 922125739 38728262 404072578 14356485 622626254 865269379 96102534 731503395 659475864 870007225 142973062 681397896 191560819 32712492 578325750 571925257 583659969 567070950 953294247 664399840 682683380 986932583 464674943 505658909 820625586 177959743 836201889 212726715 60286823 473580764 196770412 886910369 80156352 219795145 21783323 955746032 552779476 585298729 777081395 193206331 958716834 316374208 866384861 148327749 849846468 18665266 319488116 98057700 546602439 14259828 25509640 722466323 989890016 698203651 285211056 367888353 210488039 477429521 410798124 574914244 541075688 525066915 47437939 95711239 795425992 336030685 263513832 682123650 691796079 982365055 928102941 58239670 886171736 910410029 183166346 550883777 967024761 283392424 857040593 806153564 685975539 452794667 305957313 148463910 898366064 967904422 693584210 549584445 860000401 476260733 615522040 120426429 19444495 357391459 519247503 58311334 111872954 757496187 9862551 704916614 422158200 987211781 210185479 224617724 189052632 366907897 456462288 495527158 10254630 713865913 871196401 872221640 80670967 652797074 492910842 775494875 191315771 178106526 997075340 671810394 501852065 592006242 770666156 466831079 712698177 875479753 737323097 166160809 29635128 788135375 593640698 377359043 862477526 298330877 308989213 216837813 981019250 994592567 194551876 873598426 797390039 699427674 883655570 404506714 410430934 364247198 299287248 339909597 282067736 829281150 423104616 128339753 669507892 193965751 597508530 750806968 52705795 268947849 397059340 953569659 734451845 676518524 602413369 863016199 150458974 731274538 542762824 94296093 557052432 958562923 8180393 378920441 639633092 26516526 451704365 519013124 965718742 759308739 516996140 426791379 990918988 814457244 640243530 151238061 164708086 802673533 578325800 804852353 887803422 729513903 47486078 373007704 418153154 156760020 761564054 594707870 984156354 674177852 119191394 601552735 177356909 474139750 53528663 133593766 672526961 903675689 419701485 610889830 16067080 160706508 322523647 179880754 881627725 221871395 251604804 313074600 550144513 350403418 493054211 184794474 26746560 532397430 646840421 440811754 759631353 868305376 315161428 415586905 350838818 110835641 793567967 29113628 712471789 647761705 557029724 18375962 945445611 534946476 642742580 706609401 868971711 472461167 656282761 268486713 733619792 549829786 220012333 719708331 242243195 38971021 769172700 138043430 735602118 224518008 126069305 695458102 425763153 316964561 646955415 513466344 83319996 857371532 302646918 860198104 390385513 743419950 426273295 288486368 699756155 212881894 905596681 464235240 783938111 767029679 458578234 886010080 5061743 494944135 313786771 567917945 895353061 518921663 944432505 494324603 911419392 929900211 810382990 525813001 750737244 343364410 296511384 946349031 990127182 910265040 537576384 620333255 814892614 300928967 7027204 115097512 605399601 536711885 488759505 553064300 42639666 2996635 646531732 419026308 697697795 200634193 343969720 450460800 502908632 190721643 463038781 976162799 668598127 689244017 270218824 187518652 705386129 71564347 483831020 375054957 474418208 272702556 209163252 991599679 585573204 79378914 729755261 317574698 520944631 500898084 855606884 317712838 57733716 831258617 508542771 303211744 543348721 748804490 46724546 570014860 223744492 621645058 961510247 40249586 636277682 470386971 759266280 310051259 982789501 966948343 185131434 978142756 548959400 705410897 939791808 499757746 712522674 439455296 759392765 935013963 203317973 34187099 648489698 133253314 718238799 773647164 194291400 769744362 225674485 372043292 343623425 897056184 105872920 752090701 265497040 814584846 946918151 781806347 739114169 777737374 383427880 641567182 719877786 138502975 64818616 603054959 392319591 597616259 349993673 643367399 315025108 508817718 881214072 95140293 412956534 360386203 146026424 760942751 533560227 3145653 637194074 271004615 975433144 72844390 564490696 262701663 365960984 313871386 88171200 57285612 782849327 416438426 996859464 456749138 121668943 12979597 121848754 44956413 413011034 762497823 645829254 648994942 189920802 528809236 828662110 963422824 443094260 228087786 755880672 724854195 128446656 987871526 130933311 355067563 590044851 945365518 345820915 65280619 172756888 62663003 901614924 687998065 701558533 139699926 12931720 819395042 714347173 195812677 861395607 65473824 639049510 562239431 788317713 666864112 75446828 668945782 894699666 914761145 425956534 908388256 510716708 799692498 653530525 439995673 59813380 236142929 311418338 846451364 483768906 249149561 737878968 699845224 378984442 662884783 398980777 852785458 879199641 894600466 488146683 678405191 483367368 137476784 795303704 287975696 766098873 323672049 137125786 306053145 180986021 131106555 344791604 524662914 269609526 478760838 880307804 352798926 719510437 957660684 543257148 619875670 399095388 1722727 831557508 534861218 405429847 948975007 593283159 535173217 672914459 471329123 193272514 674618883 586945756 375948968 366461534 591255916 483034301 325763647 234244714 506358252 322947242 699030768 990954918 510027862 901291892 776199728 262115782 954749516 382077626 779138896 857820981 940157939 172123348 107864558 865113366 946575762 322660455 304691067 93323304 782987207 496543781 450448097 688152244 857320783 448767306 434329024 277766771 315553803 845524645 97717816 127809457 564040538 750570297 557944239 396767588 492868808 653644495 445755341 895798430 873060748 910543127 956241743 917882962 8073299 868360555 841470721 570216586 357319651 757040371 290886897 620475691 585258290 418338694 327435668 435310174 203786782 322952266 655026041 745305156 907699528 263686936 545615544 448943240 98668493 417756907 965922557 736503116 698743140 819798708 267830208 302655261 291941966 454937520 401876562 525119772 212845002 397969493 264314377 598283699 326733831 23350136 659775051 361430673 241530859 723147210 283833994 503985309 586991572 712485144 78766493 924341388 765858912 721806643 738554672 641809109 638825220 979528579 398682785 609862466 518376459 663724958 450246757 497757933 592891500 383574090 858224155 947931046 611671616 341025735 362759216 154947754 631098574 261954367 801599647 536257145 273159701 960106917 316931153 743981306 257551239 47766749 400979508 841536801 336316298 681504892 160082698 452903061 746534829 703881103 780121604 741402380 635758822 373742708 598052553 688228072 95168441 128207395 335901148 174308458 46625596 62899688 467024461 607101668 365449424 135413702 333886268 730583713 114561646 221665206 710385069 552143775 118342270 117550651 607128087 991286916 25613554 63226609 463168691 228900948 543135982 187441710 171331294 777576528 75582394 199010287 392156589 601120222 985485989 321750714 358246436 876392577 313569377 843805698 383320087 288310387 180301772 686183135 79214165 537772312 976651200 744812277 298377080 261264906 310515716 930514651 715869503 760236095 93753946 282995453 575653095 65708133 767670467 86178670 209708869 266659960 239885879 771295710 865440309 86608248 171666345 558843114 433796804 475266569 36528597 402675020 135291011 839318057 788257753 326780679 284455405 289187210 473070820 651562795 290684611 838036397 33899292 138068951 194515850 130955284 882824557 775555155 640163096 651419697 518012026 103343653 621119154 683370575 371825384 46652188 440718426 958978301 350285378 330549768 328461596 249641661 748048116 882500680 10857484 587025791 16082588 520939243 654508356 762176548 152380827 756255404 952390639 382598445 922820628 744799634 605244045 915691541 660596271 675869849 584311630 84067664 28814900 278806167 441575358 56688986 872128777 272184629 308302861 333422587 406615783 762608485 211688766 624650801 593573933 518593863 749912466 302398948 778634215 507478515 233797280 709684644 939007584 30842926 839153778 171491811 748569707 392182215 505021131 745918724 171525663 270435538 772916467 997818337 973854051 150468148 471174004 128436102 183431882 614806199 227558835 322192466 560110303 7122000 697599149 857343447 863632345 341689890 827085289 665481445 898160180 974171923 691846576 724153792 568394478 394137341 659824055 759673638 176040809 546934019 427847154 981209629 650705296 832777943 255672419 10779425 484376438 251907965 850274647 76044886 529278955 104721211 213191536 11179858 196905916 382473015 102046563 782499090 141005197 943185721 34060299 804021438 365140539 177686507 767286058 334915472 316329004 486105988 732925780 29618862 373868013 243056785 873920858 304437708 810466800 204236275 459222329 377784473 936214528 330407052 864005464 567917160 281291107 161541543 373924735 708830128 638657906 130119207 377615433 856396210 746484421 200427636 807248303 188441937 453618217 297240353 979724706 217833924 740888693 144502937 603387359 114878401 818551681 160200981 659662552 408166490 719177636 199478156 360070811 808192868 440770360 483355212 846699106 640095585 507655477 564856958 37464955 65696882 495483037 518794864 338429988 391653896 972513698 993872310 230355675 843404405 791688780 216871791 837360425 438607451 534703824 460042343 664957742 862926827 422327890 482663902 783283617 502151725 825481718 271396262 413038103 406615297 900383363 711829697 2945479 842570441 465573075 199637121 920744554 159347236 914543250 349182789 247474245 733620053 394194401 231470408 81068282 443746983 192462417 546524039 555549949 160342563 631258389 152462076 450663551 466400847 104730064 848359737 367809130 769690839 480617529 85146197 187982512 274679376 361674369 231529158 490635203 506444818 991101010 221702022 662077599 852391143 450319113 186111310 431377792 546442505 981874659 161050011 505098130 413521340 562082789 354092112 396021728 224320073 464466025 95115854 349919472 70139497 853825637 685739467 525024059 459682060 820333731 438007194 287003685 972813745 285645055 931633495 633641915 55709811 215515964 110773549 988528942 382960852 310884391 831023863 7180160 290419862 143343710 845161980 842760054 79525572 471092070 656029349 126953175 144825961 710840732 395445877 642638719 350946898 888019542 727990675 385130464 566250549 760460920 559530756 996241577 530130422 513813223 484063245 433928019 76766331 804148959 190485160 117117151 590736768 304915819 903515797 141051002 37004528 258011751 846005759 110495035 581558728 826316050 760091347 397222850 412865932 799075120 705027958 342926701 141963114 448579354 185641827 92552141 498929777 299791483 690378416 733470017 988100892 596336522 600229068 549644500 998197437 239209602 521222929 950158763 837809328 595490440 22568189 12450193 641182908 460147258 380604045 993163811 185256500 342207999 977655124 619618158 725980673 703846225 857608111 518044108 208930337 597279212 302225591 342961297 797983121 121100356 194489409 388799027 216316596 23506203 564958239 38389851 795320164 61627486 936911152 45309665 603548062 898255134 619988162 150975923 599697847 716430819 600477817 378892781 894833775 920291232 264641804 580024336 945425278 825654583 898557729 706691292 140688988 516026140 784187521 802926519 135779274 488894189 842892898 173902432 729422903 956294891 801032232 232625770 489851009 15290404 636933938 70104617 658039834 275848009 724925289 581398936 49348842 806180834 956338157 485543554 590104379 664002442 590108634 898698707 281011570 297784711 346019228 580859212 99358164 989869906 150663180 210945823 890224552 726936330 974957639 615575402 588073407 315464919 316584083 464868638 969903717 359733641 734076403 718969652 552178067 184305479 199517156 37377452 849603674 880746292 329971837 801435504 347566175 79345010 941220650 649564109 149015993 151307660 458203042 418229481 113437377 169648779 824075056 222652558 244078808 608753260 651788975 112577404 677048076 263914641 948726428 803259975 510162752 842120844 182223600 391487681 824638235 357736693 788432464 962501178 679110762 812780526 209747752 324315139 185343624 417656893 435676794 171200875 258599694 855502224 824528905 986485372 137408460 427178141 214381523 758947224 711904472 82093581 326079017 336911419 511991431 900041589 959545403 524884716 195720969 216667087 618479501 620970536 932511895 640161577 951424422 291783116 424807629 401915104 103404732 454253182 587513012 556295101 16959453 725747220 322949985 323075899 810738135 740955569 817579603 712764481 286644819 852343976 521100388 574596852 849535337 750712760 370708237 825984290 549100005 66293637 521531278 183024431 232742711 907427126 656557431 88966117 301623007 460780909 8389078 577334542 378595478 194927731 899662190 785131501 783914159 945632106 720311336 400214964 788771259 144031456 958679682 107458506 932777543 455340928 703282743 916286288 83002024 123552188 487131470 636828062 295985325 175102418 16686841 533190022 993621254 851387319 924504038 740349162 142021064 516330565 153328060 962397889 68857426 888717981 385446912 603025114 778540011 4730809 224998604 419112876 156276761 237136209 912037852 53366506 27212804 916487103 185329765 105589723 763231243 108471109 867519443 263798060 893745270 391631551 4210403 145332073 872447465 930667902 589768032 578169524 583138553 752213749 566185602 281342303 422916005 468278393 892926749 248395476 323496380 697187995 729106400 606025455 727416302 638122302 353782612 34070683 942769788 592915630 440797559 98433629 120474558 963779050 624188043 194026466 123840688 721235842 769270391 640878622 867535303 380675271 415352570 604235165 312893230 132172497 887870122 7260718 478464081 223929232 337714166 163799122 80350022 385926520 405749725 363575150 927044850 667136225 907627210 172970683 938654055 728301293 926678467 450570795 527632188 303927260 457923787 854038039 352834244 672962929 799878855 388328558 389386862 328359936 959168302 701666024 426419598 901328 6835980 975435340 103949110 268984671 486491579 295487368 81450319 797658138 648020821 114657986 496809759 550853669 107167343 159940031 379266289 109903206 292661890 605765074 689478145 358312207 674780281 346905914 586168232 570372766 287980483 389308630 597747353 369593266 233732409 574415351 499855110 619450692 480486733 900353083 989538624 225233098 318471374 249538983 774566878 98919808 671764124 358181174 729288687 255344275 872737655 83807719 630795338 446920958 735664761 343110270 713948211 773276480 74912247 427699013 714280623 900731617 273527797 547576403 244900141 263605691 672662455 706620098 808576218 108824413 240709576 347704371 694937466 147207411 470445624 536044708 811032982 695589332 229194354 834480466 644134745 664409100 325455412 314949125 625630963 461119422 12596618 18851881 593981884 333385605 280110042 492700002 997573836 73782642 430696559 629635844 627947388 603227291 799358373 754982896 243612529 929190204 84961682 926939637 836638852 513678622 432516617 346751341 978514979 458703565 500965544 245298866 465630910 986483638 698963674 735626108 299234114 275173330 492591796 318262484 539042513 129838713 848212119 696678901 460431870 281467790 175325733 736468181 79237496 509906444 520863608 683220072 702962064 572485943 643828252 373446554 400914629 568838831 985516169 939476660 652361166 527786573 92042878 718626227 966125074 113559107 584541520 740030138 273748583 841076593 879297430 688349400 502587854 538091257 789259082 672113762 991098104 674850357 183866070 707524556 264156137 456364510 420527752 110325478 671669558 998981516 110637943 72358849 805574235 267028332 77880696 424879450 283756793 787747505 820656827 462100402 774379288 277017446 329224305 619176527 424236318 422907976 413666256 537819150 747492042 357750941 401328731 5713229 950072993 131994636 972560338 758778774 160214472 177805357 437915966 566899434 545653651 483913364 842030631 481954526 913042477 147859662 710199664 903517510 762006941 490295625 665774659 433395213 896383693 737144261 125320297 670746932 723432607 975503894 723043609 597677211 122566938 260315280 721029790 656492057 57242016 996176282 80504712 170504061 879310494 193530190 7386054 299509467 485283122 669436810 969462321 726104971 856616609 697587911 378097272 48966915 573464955 298778175 368028025 458286046 30489057 602003723 710271427 382342485 829757801 269450483 592257408 619911596 412594873 296473820 689151780 155536264 134164279 57982171 389020831 281119755 956854027 836244486 380700432 301328566 60584800 199248810 425331203 611725917 641078336 352749446 118620626 523860047 231150231 846303735 951832980 763398521 105361598 386819877 216349397 595428150 900561881 273285342 874768437 663488775 169448509 137494966 445286978 504428727 262198851 939940247 721550961 67187650 33118402 81520370 551888870 664207448 566484399 954440625 929302018 460471340 449598293 635704506 347510115 977731353 292170664 35144048 551038673 493420369 231107034 49378071 464520285 264697670 683244317 813636509 181256552 239241511 871658826 943382830 245291244 404096917 436442124 150232300 538576483 15606304 276260515 687617132 78897016 793264480 180594998 291211819 922108565 158575858 774678999 925200153 505671193 474692145 191216214 382010819 331888160 997806652 23992442 720006916 148387721 405225458 252470590 926373052 888842990 963331372 976853326 587423718 767105273 322910327 120407844 125231284 185898715 949092058 933634720 394292978 913932986 593722192 421105358 711720837 259247049 683948426 292538457 154010117 939137039 284380331 386961695 737336141 180426245 582788104 397290962 81460055 926148657 435844172 742052330 137138480 812462729 754819910 881768742 922450157 785719248 860676050 435703182 670788219 744986828 656788072 384237041 45723325 998989625 766068735 54807302 638989377 651964035 616768366 41072649 760110580 146653991 214613899 12459617 356277803 714085931 570334043 575091689 44423072 184827801 355449459 111806931 653730336 180660562 759352285 901524620 738695609 110302013 944879902 24932769 79102923 497926468 406292246 906624159 513346585 6380312 72867548 891633654 903024694 847442347 923005239 222195350 965809025 992269724 601931402 715437428 991352317 630759835 365005607 921955604 600934379 989928453 869795317 867971237 239072440 489003335 900051870 525719195 870111200 39691112 995856748 945802581 899487466 654085321 150192787 42274735 625480074 772340740 579509110 399723461 146224674 873517455 651078474 182111901 236489551 825694239 262833592 287397608 130341164 122240284 179513977 210382875 576541505 334063541 395834380 347841974 686825520 664020205 400994436 520588623 685417695 842887466 393852625 259090401 798245363 126474632 661606764 407468759 501613595 998366809 948409752 684621188 970322492 98452073 573081659 26752243 763638781 133685315 910419218 169124731 422564239 260796150 327953489 783690068 485384795 32584814 699699512 995089730 127625006 158549528 845320827 60630211 112164182 242280395 570672606 490793165 709853850 305394177 713591298 832965518 37974200 784948031 857902558 265619304 18922251 181318193 990177102 302793093 541470790 913039200 423238616 483614218 875841841 96215446 954240729 224281921 312748335 751941896 747747605 41923653 98892203 510619230 18081524 914648092 322084850 693903303 35247804 533680865 800487350 121585974 872770948 486849317 215680150 419447320 706981334 75849315 657942008 831285631 615355852 583222792 399502165 842220389 446468783 38249667 551907214 373346897 499852321 792774672 144553718 25410246 76294632 545169034 737716470 846036090 58690653 532922434 54785378 833956955 942999347 153816506 281079660 981014534 869462714 5813415 738278155 991298131 546803638 273868887 917044724 286359640 610747633 529017237 382711309 949089710 551340249 76599084 807581518 758592404 334288240 535891408 913071852 387058264 764993201 793470760 623552355 825333930 379022751 312216939 330179114 795925975 702074130 990146314 107527753 123102912 655482097 191167232 812144803 487950168 144163769 363286788 75318130 982973806 202363755 26347529 405442628 488715042 544285187 445050402 674877197 208919244 848854619 642562715 322786366 374659726 950373749 506295650 218918832 758782485 831827096 917387205 751519887 220758055 290720643 590445753 571369170 691227235 380889283 170439901 396418034 208169386 761050931 802338234 134405456 736077452 162818412 839936142 264365476 806549423 210455501 32110141 218922978 165014733 547146669 586466426 710681446 721225411 171387401 460763278 731627196 418861368 579151096 308690033 728072103 482803262 167764026 316071354 688717422 816560328 126246959 685964072 317296340 93078303 581327265 267974440 473843649 940237913 296816829 266418175 23414292 558648213 568813537 260907921 778197731 87465748 991619988 590805036 889506589 262291749 897256572 568793620 33017667 480107514 75073261 478566391 897994946 946669899 301125183 512412134 371683513 792936460 148547932 805476798 304245893 132078977 791020265 269139698 93873917 988281254 127957290 229302772 355449273 118578459 367772176 271933778 313656560 886950392 362427498 262858474 660275451 135510642 292858919 859429784 715972481 72769855 105097263 36313464 26104459 352534883 168848848 424064746 407900182 832268805 547028905 246112943 736128285 683518627 372750245 463489372 55731724 848437705 871196906 775018834 669322282 869024863 646289080 530110385 882857396 217466393 535909646 693817305 763909252 272848351 749178067 114292383 950730589 341610899 873169824 178297947 331567541 38784073 8621636 202753415 909252252 803104418 328787059 212310468 253947490 194176858 913871048 763798026 364397959 433347858 998251332 713033713 406554223 18411096 810011609 91717672 593902784 796763600 518141810 248743724 324272329 508681611 387653319 277841535 180091788 106485260 401760794 531492129 406848551 811374754 25537921 618518501 931307269 975646275 830096773 781023602 435149464 187026129 368848135 268015197 267036454 909655066 180867786 543618010 763272735 608914539 173308427 909445176 800212445 420204787 401169451 622238929 818734637 376449803 929324536 596696304 874800480 699038620 978647696 230966660 338311984 230754434 537038735 354165275 510521499 601963954 615709273 707236738 808650532 51534486 959435112 410277425 361037891 695624378 173533837 401556896 282201694 592796790 687370594 808853940 759765252 182908169 236991901 252163919 235018136 29612177 318955394 558563916 377149085 431053248 842056057 640206428 465498367 553216421 277265291 852134490 670127337 569424833 694772360 905531367 681521529 971483462 907758098 111862207 327747607 983994819 70299619 757525807 862347351 538813698 710093469 140639641 130111841 860071811 624927025 974764995 812394728 280597700 609248522 5741151 312759396 907666355 328429307 968746047 245965191 983214327 535806159 437158938 212194229 277354969 466797025 227349395 5136318 868444235 242035082 650650735 391962903 958684595 8595658 563667432 561048429 448916253 729566380 818122068 982142624 365799273 982914687 187000476 327783663 979285488 300425208 506453202 667313113 709294141 939588663 260141881 190664500 132159855 11909593 895928097 946979819 828002235 249089938 329664097 661488206 605724398 996310262 557447577 824938235 727094062 803050144 970847645 80837181 632953471 354506788 779608479 917213762 947018988 854267598 337437531 173163514 54501975 790058356 13984728 623500883 934242495 757401087 961462046 901369762 150234533 683667891 482012549 396036668 831946583 316036625 913519199 789560365 460436880 896879573 176844148 617501771 737701016 765255127 4688313 742227195 282074006 108584008 665079616 63296992 508823913 120799843 478915143 249739906 707759032 369695401 639899588 164147187 842279464 114930749 405119798 236323893 368067050 605234828 635512072 619155163 744798798 517300334 903961654 88932420 582604918 707025349 368147895 108162044 641256483 976592840 49752913 160823409 568417648 127960772 617312194 263751345 133384518 853193476 299422261 748474287 504783176 58714113 361183978 16256625 416635147 407633660 103642883 198541899 997066819 616942740 998441592 490528896 199942505 1545132 553283296 234543430 791547930 429778404 471611358 69056250 503713123 631053939 899950107 19600713 174806499 977599476 935391064 342811776 234309190 237285394 785784764 473844407 69914555 81529273 610694146 533238236 82294117 493454788 320705917 786224516 187619695 425742970 211367810 471400196 348805180 710985018 26978835 523417289 684558022 600252891 15185063 929632430 404004924 914809423 994827243 786566345 682605031 362805845 404763065 86796890 228088247 529186520 650752909 27157922 542962208 924635324 691581645 153636068 575452338 762920736 795427677 811611496 410662052 532355387 129824168 42019907 617392752 729229966 163274370 516594733 326201365 981918823 695498642 54680559 513771853 644601796 86842810 78647014 762807671 624379354 324840498 464397222 508104087 691046913 7891332 402661732 68051996 459955871 670125372 924980455 267694479 503436924 242163994 807810679 476756620 547728670 124747269 891556386 733162023 655311610 375673390 218944193 309252315 573487188 209562353 233111900 424339122 576930412 160565775 259666508 699513478 315754914 372470677 870741585 485238014 104830434 725024038 276140407 138070604 530989417 471398476 280343634 813772957 717780408 198138078 478947562 910952980 445798082 167212319 894686997 426282529 236949396 512283594 71186521 455872119 112704740 324380576 904096003 678330650 239777334 787998920 967008785 288304264 153539501 952502855 287618544 717931533 455246335 842754354 479527163 375625273 900728466 784005547 682991695 553022658 835813798 497695610 14326776 367771355 251170372 999415705 367291225 568148385 717935892 189595414 198450458 893556841 271376668 722860997 823695423 320662723 728453657 889075191 609818308 640555650 794497905 731133106 725315442 410487406 345630585 442665968 318367826 409007069 445680401 547217895 459864523 996169956 106897539 433411207 919403604 366953640 713484152 962148368 988863188 545348362 356964240 255580497 288573715 39016014 819600805 415428118 951481309 532648381 373884958 441971119 702073902 661443643 856980895 828085868 686078063 181209401 401402794 185442382 436853016 145587429 313601547 591087991 875297877 681459590 684767059 606678420 297968609 868450837 735559948 837002133 784539478 224001938 671355253 508270828 509187708 622996914 798112706 452382054 415142317 969872126 265683866 413110662 754809768 791883253 278878737 921418352 954001596 639744979 929854400 58513537 254696402 949744989 355223534 590604989 310100593 487957258 907349900 934829038 415112065 162566376 92759773 987221445 660816358 939147326 537425264 42580545 481656171 490303799 683519092 124672729 729146168 73723218 978638583 347649501 459130312 852328300 311692742 462881711 408863288 6304185 960243067 303532545 599150892 341544195 242646150 788125401 188701082 728803057 162204452 952493584 449476679 104716454 739626198 775950756 571043312 874772344 281268474 720809341 120311896 983738101 161093407 715405544 585384806 502427418 401107099 25574849 373651050 955989135 298996440 51815294 527933375 588751242 768448189 548850079 342180634 225758271 826152546 196393476 139903803 682130170 724427675 707548988 938713823 175649363 933447906 992445275 869897425 8601880 793545794 427209142 295714151 923207488 154190053 750355381 855011921 76304174 96532523 641092283 413544001 443797245 563282958 771479124 815891048 479489010 465046637 157811378 81376130 778331888 109304240 32894863 297377875 716114748 202854553 39731874 39698533 983217819 658136196 701584452 697872378 854063265 761272269 105249486 910376122 653751590 958947197 913453829 852834826 617768412 132850686 395652928 258384655 196044454 9317008 142525756 877599973 833772558 830113254 572351202 669210471 625949962 382343410 289159437 81985505 603352338 640211479 4485468 414673375 792267564 780453473 56418968 670545640 782053506 157438290 789762681 806016762 281262989 764917325 951439138 482044723 987756552 217405956 617984489 377110081 675065410 333442618 662551007 519551646 663441751 303245285 790219494 551937285 547997707 198595698 105825537 196328883 483130311 758672742 511631966 824549743 455506074 534603653 824688932 545927697 627225647 663168890 418539837 34805068 161269911 198318942 478716650 321922219 682356278 495955702 691585097 386352876 155439360 755239680 843307143 780153254 807174315 606875672 675690006 46024521 583842678 222843998 540887488 857486961 380827060 765807394 550305560 153858016 110094930 30089787 754056983 409715809 319469560 276068897 620682931 349491299 226583952 340970458 909982331 351489439 999834622 988505624 816870778 524476247 982126806 515504731 820190704 294015416 791646166 469092541 811986526 631299432 198876244 418287574 667698462 775012234 754728741 313539918 7178157 172356992 609590892 960686853 452306263 246296447 991156862 420803197 474914745 794787453 868625233 583436292 101910738 893811862 740516077 176718519 795291037 63235347 300919717 196700241 167228570 515045320 816619846 661217493 72524083 470743959 887963064 305791084 597282834 26963282 478517233 516687577 687402406 663017755 805017509 762532725 389289321 63715076 359155301 354549695 211709450 691424627 959587083 739501479 153308610 475546611 368180547 152971110 159538888 182826622 251122581 215255791 964245961 395803986 221910807 93569075 511031855 987893061 533379406 486357666 900180472 141407452 333136482 428050925 33788867 206005217 174288422 360678235 37652224 468129608 424640224 557309585 462510922 836803219 723091759 384160315 403591508 219478473 807052308 281386467 875094367 863868039 903233375 860038095 902770920 765375012 900276664 287540644 740088276 814237166 626721672 773513733 965237961 64469441 386447704 408685282 632038 264547012 478771335 706032277 540860730 124063517 263522969 908623142 516279807 515605970 844508693 741530197 950468912 768086388 840042672 548909050 364131104 425703260 522530912 327081354 941003433 675699579 84699560 322235745 426971120 35283131 713906312 44231177 968389134 514445587 581365882 481001119 90930946 389963536 531190855 197855034 950223487 730346114 844382966 595073671 640882226 282423871 71342937 592593367 473051981 277417471 573618490 89731567 582137412 69815937 507111419 427095631 265855453 917367199 364680832 407604212 368048391 67452948 927153926 590007836 967850343 72523487 501070499 107373201 127380668 841709989 695555097 307118035 555651279 104481745 439307499 165667180 931506463 762588237 559867700 435356989 694876872 326257568 842387986 841366722 502482079 287765099 288472270 412925156 845351567 976658205 700763009 262051675 539961417 327109580 856784039 438049845 40557342 539823938 535168152 588816004 398723270 884965862 570609622 513961238 325470075 56272992 976770674 527720015 149835226 282854336 753684409 468511959 814365796 626668617 365507401 603144755 805608656 601127268 521703277 571328888 695707710 401066091 254498070 169543152 423492516 566376084 336535324 847592436 16945756 895197629 268070703 380782313 900325886 249404108 839522531 308235924 264695663 126314239 828229393 52465169 598267756 331536535 582985184 99157636 257669015 102925768 801607937 958274738 249844746 419746421 859798623 957353344 217723847 70087531 428943739 108383449 74700880 921059022 330845039 570840751 69932861 8290756 242265378 752891846 272562635 492175822 107750732 844927786 166948505 414632466 939990208 352435509 72842088 274933589 154318690 159670503 869499660 998266724 289389271 849020511 388882838 357924018 95029244 492334652 762760912 395562536 734155556 653053541 700304294 83534608 610314786 562274107 539590014 978847369 370781523 462032468 713866700 554633923 66540075 468908442 877260515 679538388 266564753 606658875 680998231 406893006 357883378 271771835 721429051 327533465 210670683 3920567 331406554 153930541 977501817 562547563 225733872 202463748 965750877 179473733 668946989 675022234 780167075 121454635 417866371 174234342 134178121 425738910 674479057 639945519 732695747 446287074 271038622 827793860 890314936 770034191 115416373 392492539 914471440 699951797 549595473 646892761 613978403 958293728 454375934 546159575 496095552 824722979 108242390 56697119 122449011 297129894 186916623 546286560 70597542 735592447 622371463 979262209 458964480 883258054 563858125 504828115 706702326 455560134 18197283 228099770 284755254 226639030 983477454 347632844 226620323 391290661 186882115 288897116 563815516 512986699 301008451 515205318 85755297 208206613 265709745 129001262 468234881 31474698 564903435 107516655 540852190 279385569 690718709 343383500 881026572 491165124 623772945 736195932 85132070 202037162 631796013 549184248 60598474 154920737 2610376 577398048 775086328 849043522 483875868 821807296 358105947 700179248 271284311 344446569 691817515 262743755 89317374 724820425 693332193 663702544 808336231 564915852 248056538 472411671 516634558 176437111 125380879 770686550 787183156 758621577 739593308 49984557 474922560 581143985 157726988 679928725 991461240 977315465 47188249 949070344 374672050 733514976 722110543 711273469 161312720 985596019 546097301 505313121 294753197 137485050 865366213 516954877 716204665 903389935 337135590 603923353 418924440 861060375 668422807 191789435 629948573 388945114 295719530 66001156 970564506 452221866 778834061 956004323 189088133 249418342 646110909 909242026 530816578 967702524 730461311 208183095 74916872 873329356 665708782 143119903 792195847 579487018 574134731 297387411 556843519 282140428 75121674 706514544 927131737 146628416 916639353 916049180 707234563 451684052 622281279 284279251 722308822 236426385 363052467 335128106 491420886 779151538 15729030 21714005 455973743 431261823 113655580 42824274 462250697 423139434 752913575 80861820 894788175 64314554 645256201 660590529 360836047 896870644 525126981 126448349 894578440 923175071 933958740 172242304 87008464 139180605 798432975 972612461 324233809 552917387 277734612 720813583 662162742 438725677 746573469 777871682 137502936 522716831 103526323 263866780 578462805 580381747 713520761 357742435 929433957 368758696 851978557 477005744 181733684 550453690 356840085 740008296 326063982 194159578 11089793 783095612 310597530 164024 438567266 488146021 260749260 319370655 24080648 670779550 485064514 699463383 846377992 288009240 633745415 87056691 86016639 174610460 84895107 554980074 153752818 456648673 867783731 448187707 733295849 685292225 375196875 84364915 757465303 728011392 984206455 678798626 310787581 551969844 243447901 285045576 661212407 355367944 739589914 724417016 399300339 98433950 10998356 130469890 705509551 856372062 405076709 799957061 352064886 732855632 275164433 963448500 683349431 660469980 528079796 599494402 737634971 605079554 53903519 382576539 921093799 145166273 558287495 182028752 262461853 108919607 546798951 965831863 640720072 986735586 274762877 877634572 868092337 946935792 881941062 250772202 554629901 749171700 606860807 387910218 813696216 941866503 894062558 707514279 974088055 440588705 475659809 887118391 785454670 899614253 730927438 860627593 625184614 275491082 597560973 928631520 111665415 791287395 601781048 844062543 6292762 874281871 858129287 469746084 803653600 99367259 856827781 579993717 633144096 42120907 626007749 409754016 130472531 512481938 964825530 256893517 209078337 111167666 51247647 908238210 942479530 333414155 646705316 939144209 355100167 309690987 991146051 992363686 5598532 750010619 893853292 330486848 333765351 55064866 632154403 143106870 429699872 671775273 12331559 515372567 776167276 950635964 812292384 658997432 317242362 590927434 847241241 105734305 871663890 776125989 558264105 740563955 429328079 802936076 125294157 581472355 130021862 832540148 712780032 224873347 280443296 495746305 693442546 414023101 405815764 63149250 237248833 216685535 267214540 170246468 423699201 382187573 494258290 928084852 475586887 605363892 834621176 910090504 25098475 948043952 303155411 504783077 438559654 854243358 800555076 366578059 496324945 253184310 78884899 244119962 463699427 176442859 807011889 266348052 271492258 942794083 27084687 651884601 521737586 62852931 266143298 397802134 852963555 142989750 709531911 277646500 787302467 203995435 373979043 248893824 494461858 842780629 485166708 23648950 450595785 222347291 828881009 825295321 265448728 659271409 626529246 94023561 467758822 174762336 13041940 749280345 924346266 31305886 169491453 457570004 342777325 166703685 30077028 299923418 852223067 699899495 145992520 575492127 87847861 919931124 929361249 594901991 113761344 724937455 987885115 359816048 725046870 277536199 306992326 448954691 151746729 846829818 731531336 310490007 822953728 288635624 113597937 677373017 998379704 333479595 690206734 659581053 809464867 39971801 173626376 469966034 97540272 703544692 643586179 180102373 759594271 68244480 457166054 783355196 301064177 979668050 683208856 523291175 561849777 422294067 776550538 257692068 757472335 233504664 322960209 321233637 295412089 451001809 410082797 214246744 483754071 465361586 637676062 850911528 68093863 411216792 719324883 840846029 346990650 189423241 559981909 504147076 948077795 37651491 197665807 881154894 845769217 574681704 108440300 984711432 298026824 734233857 792787131 40010783 796355710 779814034 260333483 435851279 771758501 400323800 276344921 461365562 941136514 6224562 241399690 631324499 763389174 347972374 705732397 742137511 954876687 721367125 289252487 384064689 808518888 999849786 193778564 287803672 463025410 178183253 483171877 56769039 765498123 757487676 752088642 525268094 861189899 185436884 889954261 286592790 520556723 397551486 805332932 797372145 219136566 720010706 693594521 988656056 379497893 656924414 775999729 542871890 267861300 438063088 520582550 391113126 58073514 792480945 957166396 768806187 356097830 725356384 280727654 892687734 241272062 509222454 100244799 860163030 440764925 939042804 25486663 926269362 990027313 296365371 722088411 234127413 830515648 742067244 530772019 599248361 262957045 411821759 122185156 688425804 983840089 542967339 269985401 431835339 332969001 31474569 330293699 444411986 826877247 990131455 765038172 375447206 294412812 138492959 924686892 633998998 170522398 859231197 760617994 464299244 466397965 312603483 631302226 864581288 72793303 413543953 162601925 718839595 761486134 649986895 866466032 186843693 470462418 371483685 491142374 133145448 326255575 286509101 961876678 762224806 914287097 725716026 352095972 38734470 202301796 507654553 530964120 588013096 93717614 9261135 469134522 725357387 486897253 177563450 603251932 553113203 855469456 829789039 929251573 254388511 126505 911691566 821824596 322086309 51511999 208862579 601222545 98435834 669703642 780693575 821493403 315898036 522490587 538210768 766839893 715438582 332878975 417546822 19751710 498047378 902911366 709203344 624380180 620379023 983634152 702233581 443278307 367183984 548078115 896518354 160486548 54731649 695378031 214168102 272884808 231337263 5461654 112725307 770574328 641722396 852585764 434749898 720955191 277483940 827494909 814568294 151209393 218846978 679582479 705690139 378477060 805154826 363751260 165199380 677831504 639022038 914251469 705392490 890099983 341645554 262653644 725908561 612884936 521268245 611390969 362742464 349898030 384281576 434158362 895240185 726245495 794891504 876388417 320855787 402462192 288096015 582919067 975658720 527537434 115543812 133511692 3103816 637359237 732363914 741816852 355711328 15551358 154333193 480663832 861108465 913827180 145279012 30025553 252176376 416349558 909929244 611352261 2440724 774256867 191837807 954854741 724673517 631713457 227625969 976653653 713614606 67609706 528332237 768278379 980568202 370085646 820784567 428257465 767675614 596815068 383296760 538751510 754126524 459567272 7996761 692152119 474259616 195341613 127014468 850752774 595624708 285233545 444761151 535698573 445308236 395847658 580513098 978353126 308294624 291993669 488095512 364780149 248026032 53961923 604321216 549276043 902849025 837800746 603543671 824469661 159697315 965483205 282738474 730066775 61987571 653819806 495903555 83260979 911083156 932375689 22340367 223355467 551337297 583594904 645542608 94766864 686769094 813270435 863780619 844509552 769120944 254202717 885804989 837106117 753367436 215974572 829021707 175382999 153035367 563309752 140709501 689701962 708124739 281831329 493859930 884687632 365742798 598909261 79565748 535300479 134716328 544307358 768826246 527924662 819780763 82813598 18443374 461651453 759006858 25674808 680233040 496839238 642000241 222014025 29919198 119532331 25389480 900010131 932253840 843373191 77948978 707903261 929144278 475542509 922224743 949222161 944548034 82454709 542312601 396606040 174919406 363782919 274277771 500235915 587478218 488858591 622598645 464008541 631797765 969598356 360068205 728862759 56855270 197012961 746753193 115907782 203110332 613972880 440401620 197347235 151105463 211172282 866980485 336681685 219875867 339658550 854901621 485510673 8542398 644343810 664990991 195928532 426470927 71543087 672123299 712517834 500893068 162377453 979269211 698565644 914344648 852486144 918321998 509308437 69369133 424658756 146844824 654316186 643215193 163515064 535329731 813019437 912157344 339806906 52820426 950085889 689335843 403943866 547437897 674539366 877975554 90000392 385447446 975710832 78011057 691330777 280062443 470232594 348282061 250772955 482526734 945571028 590347484 259190723 10071234 213977700 969633945 260503367 19599691 264765652 958978346 218498392 196556947 442347197 462100601 5436289 31391307 245535487 725516554 177611633 235989857 350638829 605520469 840164905 402048677 954501179 114667549 49372456 598009914 449894240 899282390 877439801 896835598 472158680 740493355 62265997 549371268 257550637 893472323 167650361 373437126 621409629 378447121 291279486 270563161 418040215 710656432 669693486 959781627 480394538 118095471 928256678 568576143 116461843 193871001 118461511 31060639 20840594 240143965 359810577 271061024 9312584 68789978 453531174 966872591 989130243 352619527 404989959 729718660 671691631 155460868 545456103 303138380 62867219 989820773 632830192 65064948 289743959 373300674 506558365 533201759 415041336 513402063 375192802 912336001 308125837 565940974 143932526 197293985 212565102 54502671 679740170 723327993 295146510 478249921 815993205 287770574 535773215 415339130 809642372 649466907 774200257 394772547 565504174 702379137 147092532 306431480 122055090 108863496 785698539 987238811 983692758 875205622 164013955 793890070 285551280 443853731 416716559 392661024 783995550 812197724 864066899 914362930 711849794 168264772 605718782 253718764 430179511 270911219 912034673 812492913 947755857 606901007 914466586 198098125 249503460 587703099 118045972 85525337 383242401 944220097 713957921 586456650 420368958 554700930 515891476 130120004 520013672 126053853 459831415 190608961 303922130 753721034 971180212 427479873 155173479 798888111 856988350 110714592 366031332 914433420 878656987 807180571 703259918 23630264 390666702 605305019 593920238 599414397 594808518 219159577 288166753 882334990 973376795 536923681 32951483 389826050 139923162 395653388 970677897 999115670 255233966 109373316 650783663 773959002 66873457 542956993 624878825 345236820 5976506 90490500 485581010 417815540 128620598 575177463 103313040 561185299 386911502 231295163 609795346 974571441 325407176 788408939 453745420 576675167 155455498 62811388 916181972 99205915 385836543 932857847 566667526 931622506 141356037 443510397 164439319 108517523 66295174 510295939 898098417 129044402 728845544 642446053 104764355 981802374 893379828 825519562 163343346 651653756 36958419 987655605 328639392 541826961 381348488 673019032 416917711 7603825 187635103 649522774 666083124 538297748 840458775 398169976 162319040 194469886 649787825 417584944 706985599 366067437 827223912 768511200 318345952 475030793 590756458 552966738 804703615 623346355 41460786 30885100 352040415 610197848 814600471 788194110 511849740 704966518 513013761 615710130 497617129 348100782 2754608 559646814 197516270 886837638 30689506 536756744 905027656 823804258 67281061 653827870 278025403 181997342 376076514 491629917 254323920 501255934 569218637 522882140 361392705 134603576 797430919 394566946 371413486 211501769 203061484 813353275 806785116 631610653 998863534 820202143 522522844 23603292 814815231 243265649 587796266 349603921 699098768 9591478 936950653 58512915 121221639 419268230 583641671 73787574 17279047 117956253 815490309 769666822 256367141 835560113 162963896 308360736 578885737 452926203 648732420 902191749 885163788 491412175 866453410 587860287 602188767 396872689 150993998 88582015 494358507 529163209 24253746 871894675 931722006 230576127 693087975 622598981 163940781 794856173 403337799 693761576 917214205 445244521 494556076 961225107 666992706 751239030 389405677 792711115 746366743 745147373 524171653 354580197 125055891 843964426 315461147 64736345 740081258 555286278 522071452 664610437 321094166 255345702 572392759 362958825 92514755 235704945 914145304 383797342 237956807 806769887 256411312 733679915 346376573 115754600 486682702 176069023 597723580 738262994 919998534 47696814 405907606 299046241 209094924 291846344 870344535 980680425 166780861 905032227 981119825 104514037 806711419 936184205 717260723 814191452 471806997 822546299 638715755 459246547 134778516 224913981 305046021 228411824 167346830 69874767 345742163 230832629 538041867 882435699 910848022 236869163 820514866 817836836 302912760 39394486 78035290 901813403 136850076 128825401 152762739 784710614 160170875 847077144 786579041 977480460 684919659 842769680 147169374 151784833 298115114 697149060 178720282 891978788 714380224 480829048 802479407 284943898 640649287 844953510 418024883 726557853 433445808 354367321 464304877 492318350 973927928 54385409 728935077 555956771 219641409 502876054 193865660 863376606 272902599 50900562 738453462 134672962 485894938 879914087 770147766 877971529 774955066 100195098 508189286 597186029 837354763 247996388 139814972 14325888 994638893 304857666 417207234 759792230 716451273 377763448 459195961 407559602 237727539 129282365 791327072 231426378 6579190 93003852 190479374 113473594 967251959 288016110 962173647 508451185 406311291 690841591 546372068 459479970 411338242 351028157 693759062 379182657 162815782 868997418 685509774 591283331 153124078 896995781 444869805 644213446 242430379 805330102 390500529 198964310 621498486 490170756 729647486 719523376 537205079 836470771 645954777 64288357 351703047 213169289 633696935 985418411 951306637 568099644 311667199 12311890 853482511 568781003 340086152 329505630 229824785 866205277 39834535 69330069 355305144 100379930 408053515 465731216 221249672 14309177 769732448 677930585 343898422 638062207 391434766 999989483 590410206 940877044 723553900 360267498 443794181 257400855 584319412 736198766 284910934 114353810 258074536 240049955 717597285 947506459 448306656 495579477 624658831 982724648 234556928 736425502 755262687 573695528 531050499 55091173 992114610 359712202 968397555 171864308 575107515 417172494 23017523 950571779 298400037 158181411 224317517 53949499 123012495 122585600 581892539 241453773 742817457 357437355 670098284 336973303 183072513 565871139 709706511 819131267 744730078 548668340 620930830 607778751 45631812 39383138 934427473 830055298 238870707 690839802 478896625 366872554 264386423 994754846 598232845 462686447 599020076 536182834 876492951 443563242 15806942 667498446 507629406 902519429 594928617 526221667 90941934 17557862 63986699 68419610 720141373 87166755 834013834 544401127 560355603 990509828 516224578 815259638 425919386 197481354 874387389 129692672 396075592 15158925 746593035 579499742 783112810 430968222 877916820 835874520 508075220 436450172 99834789 43899392 768114686 20632722 35070767 996180307 615505296 688461890 819642889 517227149 779401469 363192245 906157555 834800527 512412437 449325808 928738792 683036556 395829461 906794793 186847287 628002618 79667403 600713970 326470557 848422161 842219671 693550206 640311328 374792600 36519897 447898900 695043064 977010504 498372261 798135691 438580316 706747868 703105425 165439994 90066511 393590754 804963472 348416238 22307976 211742683 472290295 345444698 558038993 427156567 239902550 521397661 32678265 447205360 827527300 261135868 390476477 532047380 334315724 416101947 680366504 826807362 557742012 325089970 830268486 796128023 790909828 70019591 276861534 383467803 949907258 384088075 931212545 63262499 670975674 614487364 100855377 77645667 849835737 639308032 422518810 991025610 353214262 663468224 230837384 669209959 568873054 911667354 292941581 354670206 992767083 807978049 450331652 241619600 156109300 627585210 674456386 164719365 292486755 61465907 74185108 997370556 851444428 529295597 957039185 205365620 431435025 247861302 479124715 946441176 362868767 931357342 390236977 583927572 87869979 930478183 965880584 614552778 931069076 549002932 362374661 323377968 799860828 86846552 904721687 274163128 844639030 891391616 501690867 892198667 230475438 115471313 566083546 694748717 530212322 221328837 511455401 602283422 920807336 659206509 115516271 71547911 713405835 414448429 686200257 595286154 945229408 288892265 333829089 517997669 508830389 638873794 203108302 812118666 671521510 421957829 646597763 619672006 704187945 484274052 277584458 403526665 598860927 147368022 507231377 141002737 235864769 631055045 684928481 132796569 631610465 648828031 68576851 644408657 34014829 24929801 579343947 505219562 990215347 395798418 996963186 958461625 135462191 543523337 192578768 258141664 199038350 570250998 468203214 860887554 62440983 470215638 48627346 491564697 186323483 939944663 527639756 472982728 484191760 100094612 829921304 648913217 740139089 559303847 849249196 299492601 795135019 587002812 269563603 315346165 48144148 259076802 804884703 959458218 638613277 80759969 657409101 783363918 523616358 555986107 303492306 879525139 977530999 226312909 322380175 540802077 132894640 129954647 966142883 304055118 971842234 360607736 293687731 353122394 598861197 278516893 702531035 307006140 916093640 944893042 177575404 873767505 721354034 349123253 474281531 331635183 610491792 276322284 264765986 264240724 465775441 438605905 678770749 551927847 509314429 695165736 381070520 333540882 363181929 136534706 336241177 165893280 507132460 883415776 445748481 652657986 131665946 392014035 401414889 764969336 750362110 233612853 701786309 479406147 614272620 494236081 895978035 759602077 129303682 385102728 962121648 529335374 541579989 904343447 269413731 589376718 153769890 701077936 634591022 285979549 620679184 983921277 250065048 274139349 337683222 323064671 331307881 239394540 504384652 844375974 257703720 494464197 926394974 830754266 85201046 662841160 957900285 354986293 701390123 212482661 320501892 775032405 201285572 276340571 748138450 437670603 202031597 808830835 631266676 944196045 320898774 81553245 180508716 234025955 143141752 567485142 709021658 203882515 226037718 180221069 49614058 272275603 321896764 267119291 529222018 467334597 945604970 621787830 504370596 934151635 5401913 327807315 854417866 863132658 775070829 824497779 345067071 854274748 158230413 95727659 739520835 616014926 718446932 865017831 379718301 161830814 59808673 120843999 364574257 21853030 622430454 789238115 805646235 210489544 396623470 461165649 650959310 901211729 862081941 754786947 764879240 213527504 706370181 630454366 285104492 803571177 702580200 267715944 126589428 460679911 915791066 709106288 612089786 851080566 89575194 217548417 125804848 840789242 61985782 769177531 485829187 744304454 371675660 788691323 908932488 399063328 760736018 17730265 870811863 696316467 838269469 195798765 865138326 155188150 400190911 38958689 753948117 245496463 259943973 481516082 644177547 585026898 349849729 289613864 253304007 321310157 790097297 8744553 992887940 770606827 984003080 79453473 334675798 785524822 235372499 450070584 497349116 516352262 166955863 266384262 922033746 836607706 150805638 493285469 427777382 292695213 737791343 70662252 821768305 192067018 708067844 61558206 679437441 819285788 158579220 980017056 265998450 889325821 660859318 140313433 706309233 464520645 187081320 514339462 357047845 959802719 165546322 302119753 304626412 854568454 40975195 175308614 225408942 713469373 390681350 548044465 473262310 451110507 711467249 796512439 336523088 197227448 772331383 368780633 649793502 665246025 642820809 763007334 691622711 759524252 607520137 424112726 501786220 41663677 113928387 199139037 279975362 991923142 48118899 434426846 768909165 699831391 356028026 393246262 172287277 276728606 445385522 255998867 979984698 554000586 216200922 675752366 928120995 277883418 508707359 920970628 111564422 622349867 867926278 828351263 285410683 692235835 217387616 447275594 957183115 974623000 321100415 647756954 745082345 622112413 444038411 795051441 483507588 244334770 740639386 789440256 3598198 770802432 901317493 57538393 27058083 361344437 352969719 828196550 794606961 54740066 624967455 29588902 46344144 959569757 879845287 366774555 832332987 148563203 713292268 856273639 724583059 222728695 907083796 762625810 645202407 64754389 378350573 521983027 443218311 343320875 477716107 8810437 514312221 757343321 178597669 34601990 443213179 343713600 61654574 313892396 552530673 351504183 947217212 339314965 885663858 577556832 560838308 982804043 173470585 254030043 852812839 162576545 905723747 386623076 190151309 387944365 382395742 881488661 369444879 64925923 556731129 161665587 118438829 160338886 368472061 820226471 479919634 732826694 618190534 625132155 168685154 429860726 727551906 585781757 78022224 575997820 719278382 156694820 589387605 202462120 672464887 651538458 554258854 480396968 318205195 364557343 430834137 803808972 88293739 943817104 936110533 959096951 248876788 642938472 697688078 479332479 503328535 306353984 137468250 37856721 932200182 4510927 217311510 509337243 910356353 47789356 70908811 454642593 573088649 545077212 919973586 76725136 122821543 895912782 440106003 740314216 953417756 707168439 823983369 928428210 639155008 27116400 108307144 410195100 29384783 688037944 2421183 656920773 97252960 121867984 987711665 615172100 502211053 725696388 649894278 52937124 635735114 824405303 928412474 962238662 274424135 243123567 283179411 867721843 520507876 844414310 852216829 626240236 949697014 122746464 775502269 10762868 250739623 466062838 137914513 93526026 254074159 923737570 610370334 811143082 329590863 136687544 513259814 440083388 264205940 829149923 529258375 576587320 41839996 310783447 291822048 907743093 749136075 782246316 513017311 452090723 467184012 242605106 614188987 408148979 864681806 194579972 435781799 825676825 72783613 633488007 647693035 376215234 27791312 417484541 879752721 96895881 202767461 935642338 970921299 577847168 380805274 996420520 47105598 969531980 661251004 937075206 182201822 702697764 633890130 894870672 399025003 416899447 725596986 216192292 304962744 695850955 417852357 612474335 163775463 791986380 727762166 367349281 804262949 550116183 691609992 542430686 669211671 871146908 583256172 937309585 380531779 531840718 640851910 926263554 168261208 150939344 191919019 572393815 779803794 343750766 101252616 863535426 963246430 84150633 337628138 229707188 251137540 166647199 825379638 643563623 487367063 617400206 19769377 426088990 640660645 997721770 195545271 168524090 653661125 98702019 575077778 355802257 394002004 574319769 413195093 824090697 291452552 751498581 384797737 290930713 65673869 555735596 810485232 928914779 91109625 546270551 407163228 77225621 295611150 743055928 103182304 978271753 958997711 719257082 288755938 978027443 342988913 892487827 357350384 886840191 309741484 274724080 615083693 225811546 795804899 414019729 591884258 937846971 43073048 519777702 209794977 509547770 307153260 973369080 706575225 732238290 963981847 346871449 159727853 226000489 465219501 651034866 555325225 598632182 958544709 80545884 145169846 256394750 211056293 282095778 812616750 259531701 536120806 90061379 143899900 3110189 838767115 722356634 772689550 204090180 658053357 612790455 594111229 596162460 102961187 289588360 89216198 534739677 9426109 457032809 5100843 415223031 73816056 583831923 417147905 949696496 540157003 492482249 820702742 802097762 752817904 312342829 161151073 600449770 474841620 765463544 35777160 205959280 72624402 16120374 240661880 989638402 502242976 816112836 534188345 330703142 354759147 795532998 470016009 478339687 242778530 301601151 260925595 248860402 792942592 587301879 521404509 433367771 670297204 17226807 547570548 19425364 749463268 128821101 854956045 523373866 168310079 219400622 226058399 905324067 514650048 117079782 66617909 101624437 107318812 93707839 248455800 518823263 226230732 359093038 456323689 504062951 858112666 344538222 359382338 893466567 739625014 675573717 608057422 945463930 157561232 832389162 390372493 570467969 151577086 704758321 634675733 48637804 572913447 473140856 514507203 375841034 572045628 937460684 795281493 634477478 707969687 479958610 45585536 965162517 386343847 749985006 204785201 458154585 376716269 932181114 556872656 884847828 812909425 203123581 634972797 571126483 38409847 82667960 750966664 488960898 350093064 545077394 93486277 490184314 453946858 645101893 423311346 27703102 103128094 798945477 470686024 557515687 690944455 552315690 101170295 15400724 452777680 449993491 223485415 190176527 997266122 816621680 834687822 385414044 112271929 64225194 221961667 137534462 398742991 28524505 8462603 1253022 299851808 165372658 311410407 66666874 13840340 86450265 271427538 936609743 371108268 629068918 210978791 717335353 828133968 544949886 631088874 62096075 300309536 181225007 380387859 463874632 17273097 450483303 832061091 829272098 170518425 511654594 373480568 149403809 573308915 318289200 140180100 570826774 292789886 445663409 878249500 597477858 868555151 273213559 140136190 2992056 37398486 17880402 411154165 323739125 617793697 766825135 839180511 391588444 664253554 127712586 940987474 320272467 178178723 950762696 557642406 169297701 666698245 629751986 13500347 758603383 212216524 880230888 203336965 444336236 72097541 332886006 223668781 613362023 780928482 304376713 893438185 395682882 164527144 460710290 585391017 746605807 352212514 713000462 839249381 451593710 741042387 335510217 992038251 326838647 918378978 720286941 797557303 244951023 744152535 942789390 501436431 452075053 454362753 36737518 171974282 65959462 249335623 919246722 943275950 611820908 526175021 91666860 353177647 613770659 305910096 679013196 978869725 899243324 716687048 910989180 57148484 145849385 60105642 502013244 638640499 345490280 941883709 199527868 110902842 293457778 53173621 856079584 943424918 305492618 516103710 443057977 490228226 167253774 442808187 250509011 31798659 491357651 798656916 717679513 65361828 13956412 705217559 283564505 120723845 351036840 187582893 866552715 801974359 609146314 696511886 787079065 582170306 301445749 185353444 46413950 819474967 539506693 38014852 475979824 986909295 786744153 356671444 168889904 163923771 843099910 609993922 160499192 882379268 581513070 205266596 428995525 864392853 370337257 8174378 310742847 942031853 902607772 970901933 996453832 423055101 551493236 470328182 984391453 91396343 87461625 807672750 136510802 388879619 761567207 898971379 75169175 736836281 775058800 113005244 837862902 210957414 87172095 966852060 219342995 695200095 297897224 9752798 697729765 485583119 10681722 785310121 388772257 739475103 166304432 323406106 690676941 330590948 15654178 648896981 276293518 206631814 937608230 425983660 625076330 579459067 861830491 482483938 116915871 904284398 588105270 929287302 341310393 201929471 669362458 953716747 883249851 527282684 592205525 425861322 641640966 888008831 877815672 420029484 520205232 283477120 938843963 182466126 276867120 131285009 938684571 958710033 684282746 975459856 439191383 490579585 736851134 614945739 859157359 785528264 211050055 231359734 681518343 343525831 106067234 492566347 162152322 143407270 447473974 714053645 244965731 407691265 130341660 717963544 908888878 614770237 43882811 392370282 91498029 706717947 302646054 489838428 162531315 891295150 608957823 463728256 161918941 715677829 561505313 639474881 888589660 981018628 514216886 969918701 250090021 190327696 754855103 659857871 581608936 36323214 188181900 206130638 117120145 43666192 149263754 681045687 313068016 361073875 548356758 552473420 275641938 104451779 678770020 807539068 207493865 889657101 660736429 108447979 553541633 145637191 663172175 777166056 551378855 219959045 888620108 646407322 284522589 357543502 92893709 304858028 987824373 60763945 262436213 1001326 480016307 542727113 412552984 614651612 749609813 33664154 417482460 931427967 285849603 458819380 267597542 658590128 440174789 706754296 323194831 329448218 768403375 943015805 46008006 786368015 318141797 63418202 20064987 828299577 587602397 127437075 649066272 497010870 466740235 253529795 659275898 535648719 188824267 833466314 866948714 24195773 30397076 259867746 768631070 615380771 342846268 477584045 508080895 491039554 59887434 76717085 775347986 727367450 217444124 44373423 239666356 441637075 198125822 877483555 669423628 738796362 824807018 873706751 980345496 452512533 534981044 836922819 800352476 235000342 547934919 654749961 892886024 430797505 923161072 899930411 199531304 431513275 144370199 941327842 708598799 524629236 140814678 28400225 239549555 686880882 842325612 69165573 306779267 520706457 904064706 287561356 27209965 921590177 968877240 949550307 204607603 215538705 175793400 639607252 717460671 183435141 209368049 93239508 349584849 373778202 666069854 529844117 105995574 67369085 1225325 113315147 936333822 416711309 451102642 474926734 550859160 184998044 696690837 62474345 364568811 317804370 552421943 725912233 367517023 677840704 930069415 594729816 651751657 113649707 498940843 805137291 535123435 766705461 81250540 602680370 850226085 490962795 953726469 884333466 520811728 764854145 255205930 586474414 239821940 637427659 906154991 409942227 410092645 253919930 251587356 306730363 352715616 221721531 383345279 952775756 430055204 548231708 255233020 185398535 657295405 961105076 135929053 301909929 353994774 873657751 180975455 888240699 539580247 612372023 230673937 46542837 259252394 284487861 553739389 238131666 181588431 698353583 144747388 207325530 953789184 758390225 242754667 929209067 25214383 832176257 159053974 443096984 167639325 587035408 300201372 874357956 477436306 596840303 487900217 617659471 224176849 920037272 354660618 246801347 153693336 475666357 723306432 338761666 1761910 98305313 905919616 970542515 893518728 906851215 730104788 737281236 911668203 134165584 273124149 40511451 9424630 319839555 309077706 586436600 891421839 770285021 466259470 275625099 643220435 737244559 957437927 528739368 510406906 686897429 563308402 281983711 302858227 406010063 229528176 208145827 438161799 629332927 605182698 730478328 79261546 735183327 121364374 17355379 62357052 373170049 136481125 584822235 902104338 740897344 500649359 695703948 326214394 966942877 301746960 971059378 511647993 930438097 428653583 49608293 945270473 172238819 216062320 557315960 329204067 675115457 378324004 116033351 516210274 665163834 782364054 637881445 126583093 257107774 575574096 98436019 882651704 281186559 643329263 574796810 794174401 358449185 464319720 366012097 316817357 73180890 967167130 943096363 719724324 183963771 478186511 945208677 986327660 129039350 515788391 298812770 289084025 985261327 786724311 62441694 754092853 643718055 870892886 179616412 746419523 886958287 613245405 612480270 509061842 908161178 668404076 62254581 745370364 451826720 83812561 365987052 314343179 7783875 145109664 908873075 505455390 947524201 533687530 892448562 551908676 23744912 412651509 717680428 86850409 6239030 527108238 88401253 711717152 168810951 178478268 315029257 932023939 88387100 825755757 510868060 868967107 734035052 189840891 970223975 618044880 944443765 126349018 40334785 126397952 244688811 901587632 633310588 336874477 533192771 687191051 256203840 841443526 316451552 614445435 272835293 434534948 170687229 350992200 887817642 362778571 434273527 513637628 262015347 225590477 204908380 27305108 109181938 154498322 32049935 839361758 370007995 991305007 629490446 479030911 797244090 288028371 748636535 995068386 555249339 644233648 840144329 357307165 283755479 883917032 859783427 899457855 844353776 414931845 755919327 348678701 840148814 646764894 469485323 162668086 326981496 813328972 430703128 464974285 245476846 230591577 854089189 319128672 700779549 575537962 103418095 722019579 737101538 373150025 65957038 487959128 777488177 686358587 583834597 952543804 326821538 510475982 522265288 208565062 941012739 183859913 557612176 620453303 903851458 528061067 627769836 996427589 386631888 66650845 944050125 282046962 93559638 817798545 600955350 263568417 834943730 242224132 282077358 371489556 720740444 634924465 841481273 748654346 187422938 448418888 912185919 578875578 206361862 941407416 658155619 946060437 783780398 903861194 920911433 986606627 181336778 816981048 64952241 660445677 494010144 409400506 781379220 757907366 428775808 683566546 135096407 349122896 381207 436993684 15348393 287601895 493991760 407733043 172315164 806075658 12989715 856370188 128683108 241855320 464417548 591659520 379435117 433830382 622764582 511885629 65930025 200146221 63258805 485521746 797743152 184017596 431599695 417800789 383631191 244251140 736769829 687361918 755639648 453960383 874367233 654366226 591872861 957194868 595831278 470457827 37090734 25012796 698041156 27724125 233450331 628813776 580976733 822938795 385083533 190745757 891763452 822437231 127083418 938906506 497879934 826688414 11642163 122972864 576040573 218663141 695459731 534206816 782202134 313373543 575256054 78591399 508091246 589056459 516084329 816457625 145452093 848133915 27525118 505160854 653610948 901536769 757882921 870690833 254865683 127000615 612198329 478913729 295465426 733347095 938428887 709293389 137314184 62098619 334104559 579582063 390321693 410599807 524377360 599500162 345291261 357262139 742335969 264827734 917996970 314289477 576523586 469668711 417705735 271009447 756109032 362070142 765074475 979895842 481853397 683557926 438090043 219902022 619255679 997740193 667406222 961018554 781991203 949665803 426006456 98728941 590367621 138791559 705819309 926046690 994597663 138284730 953166196 983038733 10361515 38928355 19684418 900908331 701958536 765212787 945146756 275593961 16771407 707075035 750535456 617326212 342450849 845047780 709691476 96489823 729497944 4872426 772175675 230437658 829061702 956596405 86179984 831043813 328897271 771956318 635313134 908359363 893153166 563826407 392519055 237249446 457437144 1744928 358589677 278711943 296687511 289956441 340942254 285435643 831734358 390372105 660775108 572406802 722090289 13204916 867312169 515984986 598576701 719770799 196872833 630147089 687231337 318417260 496871231 770824375 931704418 20031200 178326614 44343959 582847865 83920523 840828209 742596278 361439083 997591387 114825687 485637323 509002059 144887823 940430933 58592894 409837615 622843725 663008164 852980411 468072707 893180434 587002727 537489802 945167103 339092269 413961392 165391546 104497773 483660498 848232784 622884207 758237559 731596954 253571162 84389603 377926435 513725110 764280886 736789835 717177290 133353503 405647772 918529302 225304584 658485057 899195715 95269615 825358056 761067317 741865136 572351921 429861953 899518579 420783316 310883220 425478415 443359468 25312449 465600599 529403867 917254897 438753408 6566651 655732631 12240010 939546088 567324931 378877320 368922348 779994107 56208223 355098207 762113041 329361204 249494683 771639515 496682714 567503065 726881059 890306960 372891686 33844196 785656807 998837355 30490666 46783378 876573406 771898713 217248250 135470800 807266606 52137013 196644310 951155376 58358688 839384559 894168361 207498112 63566518 502622359 1512340 735501990 446133817 200227005 299552761 346529764 384350065 267202108 563061106 610521403 5121233 659401461 800322181 109930645 156132694 842872009 338193960 888229604 544651729 262190254 450760944 625310327 336603141 885758413 980375275 219658079 277017033 932304193 351209791 264946600 610566912 750127898 307281450 641370130 570062097 105302731 465381705 819904024 989764195 530490563 546707769 402690155 794635792 295116481 277262664 912608111 38964132 898561254 264765305 133573294 110636982 539856118 406416423 680567193 382472588 490193350 612851531 760303762 76038966 98343430 633355352 52291522 760754554 810243341 301105420 693177277 343647606 819103135 744301496 435845767 258577401 885454361 356319683 374345226 73923323 406072912 26401465 168423091 164855881 110380496 38611986 60561791 644673106 304780805 262077442 365467492 133550654 367055394 687420518 931031497 732418601 228946895 332034554 60851769 61719761 494889362 837470500 829313879 108457328 907799386 761174527 709489332 418128477 662326224 240314122 235133277 477975923 262192756 694557622 465278988 622765018 848343995 2895383 800560022 472271187 464694243 904317119 923498189 22575936 380044599 737772808 309129682 302059239 115140886 788092147 851133743 685804789 864196248 328564615 434407696 641230928 555758577 374486434 737550562 296122452 726216475 394664046 561296235 132398990 186780113 744094293 114017946 188760331 67787145 419423527 33730285 153945750 131709731 668299542 306939529 721491446 353683187 627631842 417046891 975551846 712867236 215634910 24283797 436492367 355050709 238149591 508092390 868541851 834991554 252949942 303946761 353090481 301554529 241913356 716030260 207078169 966759117 282174568 136563225 223116767 939127570 328773998 411701131 3306335 867013513 96728157 809095776 490346025 720700899 744057578 235578125 600320721 202819284 66756496 867964249 446164283 147994202 937787246 174299831 531581193 129969366 671477773 222485160 588186960 792748138 345746276 424182596 500699952 528441740 917761862 573886522 855189959 725666801 875181876 229783263 271548830 696717594 590106865 953694326 111164268 21424924 47343094 21029657 247946883 154976824 916529253 75621155 478742337 945345335 453394411 639281961 84616820 403527437 927186986 139895926 955592672 600922237 402025241 7421907 864264399 748895741 366956719 41424151 288321078 740927608 373035833 95432702 861584579 240777478 203164185 275859345 441331153 494914152 606450228 543515080 198943012 736835136 435480710 577637536 115294260 242333299 531742796 749507453 465273551 813211040 446710064 396307523 966614775 154470712 778841713 662630885 551733445 573731910 415466448 411151916 202200247 573332305 488229307 712551980 366192208 622117987 596142788 69825043 694108611 762587323 957572091 911657936 652933176 199924048 135009395 641290769 693483212 40952564 920705239 31741854 128551203 935869332 107217219 961573390 59135134 801685524 20642532 547422280 369897495 628825715 854810841 443239655 149811666 50391576 555922830 218410780 237381962 126062892 559448353 85681505 99208108 363044561 222646791 604858557 865867498 260364347 561478536 886106518 83019266 852654673 589647944 815521406 961496922 568674047 769292539 427238292 981995647 960425792 485047370 408474241 240200956 424119086 708282193 532361532 235207555 842533320 806549893 136739385 733446478 472153706 256284063 969657662 630790591 305766343 965449212 785810442 854177675 398903777 430507890 385192523 227816764 541205394 75088822 365421825 825173112 44102168 101632784 725081471 915804811 954984739 652778188 874759843 450360543 80185061 220663923 512928861 424352920 438806225 248869623 498310377 165079523 407844066 50349531 725690986 194506059 669684951 885774100 47529819 44260716 18707527 542339090 853660757 614817996 348844963 332874284 626813943 484877892 78775065 505188621 667308695 170291551 804301561 598568713 350491110 549830299 345634700 48315528 504384103 151724295 652196443 814885785 117360545 725347980 508257849 399397745 50981263 979566659 608650434 180277741 214473582 839777496 644825160 13036776 112966851 77629640 643603234 322311540 216709674 271092046 919372108 382991491 578991080 614447374 200590413 783463387 736599808 439350940 371951855 828860059 381339779 517230091 322044286 546704315 628837009 625281973 288685161 282327168 300989402 424120321 792519635 226072908 694745940 865284405 305892751 336917752 250658278 165468729 901107509 989446634 67640684 416231304 390032342 42939475 260732870 234463577 675765448 604845222 332089850 613267681 98011105 195636163 965343130 489564143 70130415 571968310 140727377 117182141 225875599 363749966 814864766 393781628 724393875 892371799 850991185 741061588 803481535 774786783 700764711 554999605 806262310 875434497 833608681 955547529 901039871 509417127 831416574 551159600 890387141 772498256 232332449 965046823 705485409 282216856 314226599 454472310 362866748 206584253 134294391 920797476 410301009 556022602 206350710 133096723 990748514 125965442 63010054 383019844 485127337 557583270 911812339 684946746 358870944 911599490 647195066 373015373 577775589 373101096 589356279 266144919 932457223 405406946 58660329 658741047 527604524 317655524 883053530 457907601 748810518 885490809 88485474 447027467 722400084 853182684 547271447 457862742 247809719 924761498 809910817 862113435 69409528 328286479 663776060 442669540 305291866 817061379 322051325 796796975 689486952 518480132 207679898 987545615 123473631 634742162 939314680 307412923 7678230 588542756 222895144 604096299 821339919 958206931 680996942 348221640 979558964 618838908 976137667 585069936 107871042 881838477 597638175 635259689 542936504 551639011 795006559 898044230 28556842 270397169 404043186 665607529 107170953 948817220 100761609 462555557 584200042 61165650 16395415 527189764 931282926 298506623 560099618 641141990 870790513 585232028 816907569 595874219 657072324 453905068 211245990 518098762 445787851 949383391 838998642 656927144 686891378 846735297 380636604 41569503 197008477 541848935 739582748 472277227 485263863 305590129 72130923 77691938 293196288 660347682 568141264 768469170 599805156 934023504 167068841 747848954 147582821 129990232 464371988 517328673 630499909 320872837 779155573 132843454 654713408 395534755 466754388 875530569 554971583 822287356 62628585 660616275 59518021 311777180 143343172 620756388 938001678 143682602 882016253 700780972 804968003 919069113 968501934 433500720 447461461 816024672 496003892 353882610 922314684 332255314 422370832 374117682 704227151 837597762 47958767 32609792 924568413 719431327 38099194 969226157 36551620 202343779 921106779 322700369 811188176 460144214 884091887 673767306 846449751 138777001 924400551 35303925 460999638 718018242 558644683 269845918 437338041 604749076 893174346 285557604 922932419 239117977 395173767 385748176 619271991 742463534 529129947 630313926 545674361 877235989 88356945 641456152 883581672 808805018 643836504 593398755 211939470 205628827 779840103 442653931 120308114 439501061 10503583 264574667 537339327 954594457 959004662 218909001 105275023 574526032 730355554 973450022 108328381 998357372 564404291 269783697 359164940 824236951 560765323 647718081 576212006 444093470 626448213 624927433 817592717 791772803 467778074 93781654 918250417 216639658 718225641 781293888 181588429 344740491 335608149 828172838 284790185 974872398 357615406 198577739 624829438 725136421 616243941 960257220 898442825 501799614 241910491 578079093 154305224 749372341 203670591 246323675 764453336 605615291 239623729 828606009 135721982 337285701 899556725 986994556 90547096 116351726 211465506 93788742 321251734 29506795 497163240 68174430 119778741 380987536 900488497 210097594 544567770 962645453 799833326 115578935 389217290 138402079 891658762 675712014 66055849 780577334 406452456 904081578 952749423 441886556 543164200 140112762 511727222 572158878 481590445 582639656 92190281 129719612 287597643 148135306 893553660 314640017 55663423 849194824 382711879 69460169 794394511 197546180 313078931 240973064 642724854 526957622 919747754 486653473 634103349 550944423 234010304 221035127 37837749 751017111 572825427 948483199 650329531 737040596 963255377 568573827 685098843 267027321 835794814 528877266 370516604 540158554 48313777 711066518 66085016 455661079 390637524 37130173 914076707 106211146 287580327 563158858 185953858 112935334 863592668 208883406 670873881 149858913 799193544 440008391 531531829 79109849 158824444 274133708 796849450 398189638 603422856 562401926 795467218 897847635 670248404 746303617 420672203 243346613 201920912 678400433 119257421 793141 803600020 724186789 92282027 386336874 964993549 191767777 991242747 114700345 529316004 495743174 78357766 230943970 954947603 989826538 56738427 730748525 881875022 794926664 967110115 274719175 671593347 340563700 638605044 62936220 295560290 784045315 159652628 503672543 859175811 940209166 163823165 295295499 849887517 243261944 492732519 597986081 819290553 467836440 656770671 288037158 271633688 255972895 434561986 813715755 46763740 384802882 343718691 96624386 589803225 421318235 594699815 57758704 430920895 102734456 143941582 65045576 65981995 131876578 724928043 500310299 918570581 333724583 205548092 886585889 830047700 501572717 590729523 196027651 93696585 449166958 687810040 263021570 32241598 217862570 38684655 319904177 227480633 475562318 929823991 647735865 85526816 944984441 574040854 806598970 534518441 353840899 677286938 665860814 552244525 856055860 399298734 153346078 483191880 768062457 688484424 697428009 255610159 753176896 358876042 270034688 18816334 574513969 920430736 167839843 375290790 972305369 90309921 799650335 87337296 955643606 491503484 182568802 708562746 593976120 716108436 288196759 104948729 672462875 841100415 964617188 998550516 958324180 198348186 243313453 82466363 205040801 788845261 926786057 413724471 460310821 456580786 581301822 33378079 336025585 831383200 735977472 710369104 116138671 449461024 540361648 724976914 371249449 63334328 722996024 989690543 275148312 781265413 69806413 648861951 40402925 773380921 65398763 147511830 872450696 414351382 198201649 961158026 224224881 32906272 347089695 321402526 780676167 844116745 162697054 570322578 386879690 221178349 144122948 944417775 216149457 293610404 87252978 64892615 522503724 17950107 698486212 602841072 476889098 800157964 109868371 409799678 939676738 174015982 445153586 985653320 206461174 174918465 394568251 789136073 470263002 671245238 245135290 517780109 891521420 173223937 193319400 911022652 205246970 105527484 996282854 103232929 23806218 173352075 360081660 571979158 825371871 439220138 323902209 436805945 214738559 37150885 428440050 694982554 634231512 322392916 769221322 389324941 825743815 701963302 884457698 302285977 951538477 961211824 307531262 931229448 316421413 461561056 857816657 61999963 457842111 882540071 973320789 937583531 475491198 612661811 195955570 607013366 266641540 249192197 513477336 466568189 812058916 678134559 834500118 342244467 706666452 166029932 952053912 933003965 941484058 596800373 871517658 105909047 776431794 369158747 719766358 894301046 36032648 857314034 282751648 367589581 580998006 267070879 87387909 229339216 803774005 497248227 140555820 249057298 530757129 917959517 765294765 707904198 748363861 893212208 255989000 539795055 864956812 718158765 407544603 378757706 565643688 972989660 792605432 857813181 535966129 218506537 115364387 666923340 983986858 318168339 934344815 721128598 578408744 877323383 326873787 521444646 460734375 221173545 695150109 740118351 311774349 892936179 302595164 128799294 419806790 43685827 161335649 974319634 720687134 436315091 42592638 435982687 347400565 51073093 12673959 23533246 583751004 822332647 434563659 185690185 501052093 387444663 517722593 594921443 247686890 720715596 373690327 782815122 165356269 356310342 884582266 365149713 575934772 856432138 244877680 17558252 428572500 396958315 974397280 809472491 266901332 238905883 570581875 92871653 478224012 844012387 321732261 679170376 236947397 66146404 560722575 649871106 987500517 375449701 592927605 793886742 776372378 615622529 489128352 286073051 987260697 972461929 985834976 744417009 9377508 328411218 699041852 978618768 638125281 443794559 763477759 502327099 363769707 76643223 784164651 560431110 40134148 865831703 868474847 837622079 350110941 55593217 635886554 522741400 568960690 849507293 364685976 417967720 416333814 322651979 798594357 741071973 410406260 579389389 696218964 248105792 754929472 97496961 773173689 884227948 958827654 881981065 900479276 117589317 550110432 271416741 388863189 867314976 220870600 333913201 465392281 311692954 300391670 704355332 799486714 944700068 344495280 256562124 961831037 69170559 291379734 310490919 663930678 145285182 899792411 913653536 774224645 848133077 631280988 522913067 344188921 92697861 35396436 223545252 420575291 98114068 982538618 820998732 349172122 820761970 789649094 172440044 252150695 290242999 726928569 53136062 410084910 852118440 762087570 931914285 123113623 463387012 628452314 903354109 773774493 751745325 218748878 110646724 250957487 733801638 169355461 221212951 952587145 414139473 756032422 734333112 813578768 903026781 676893791 587472059 128303755 479641006 996182298 61835698 488975308 237936538 518086711 528050028 539492556 957778640 266578388 687313225 370392404 121503945 293817065 677664530 467388131 417049793 92973256 640952841 339726598 885724123 988072693 970059602 972225644 460446831 783431175 934829549 387164224 706658834 827454202 494485112 209285018 848094432 479471044 387461648 865010808 187164866 336775877 58023637 240859352 113240900 190620711 586690297 278598804 888726126 359725886 277189331 709792540 229195594 128315419 991753756 193014706 872697180 254142819 75851281 42191496 740268841 583009970 959653204 398657827 279310891 511276444 547992457 999308029 705086912 995655423 610863694 204923897 60005543 233292477 211831915 955686973 89332294 501251514 34002862 856427444 498301949 376005837 872828807 439613143 597915874 384578464 550038583 841367603 333744771 911074189 940235726 508772183 61190895 262181945 223928445 874300562 413327891 343064694 690845324 611138097 644048559 540441469 113569317 657742788 286141398 907820172 235616746 534849922 584797970 466143895 588459350 552544979 790642040 94240776 59551714 304813789 559938339 223949517 297953290 133216206 603207514 720407204 910565843 349114932 460465017 805402910 218268943 411292109 428166378 779072690 807036854 856213641 359411565 426810118 493090886 811812609 666030259 58924574 567750829 119485499 553020450 982626193 636544917 792027117 501019759 116733353 67731756 791444916 574497524 932106502 906983454 565633826 668789622 633895945 424482789 510005366 310422923 209638907 815794112 239093996 433297331 811864104 81300010 508613413 132495056 596894657 229143611 242630575 747185402 686133792 449953761 923956401 865052144 692322848 226983621 747596964 32468874 926989547 169883430 32281589 890043089 975374804 437105024 474671647 768226680 529620484 577724688 37410308 492332021 682804816 871414289 824681001 669118797 172012819 887351568 265988558 564596784 365404063 743373633 310552726 491197976 154127741 335111511 542933636 431523760 759835334 299016876 864242752 853171024 276272596 120254932 853577887 193909643 195112347 701542858 753480235 408633676 244442431 515295621 180749286 144384118 353354321 990684321 895495374 973094041 380740915 681506311 430528133 465330055 237005548 49313666 673063768 61118539 181208866 133838987 379350038 450633339 318332775 246798219 180558569 795318995 980008685 252878418 865188670 680019846 902792976 746219714 644666230 432608783 743402455 732023095 909914431 947921360 383629857 819034977 823211321 654216555 118506654 967578444 943879031 657150838 101178581 872520053 74315379 801142982 155292742 881328898 729232507 105514294 744978303 235052715 827168824 410341640 781104275 196837162 568794540 777265835 7176392 355974836 16178739 442931703 675455434 591240311 208741489 694939245 357206609 506966841 1580406 720774820 692262542 903598473 685610301 357175726 997237856 641701254 85582660 140058810 593817585 426002628 848086587 465508313 804811536 544798404 912694583 907943879 511981066 285181186 726534132 179089175 934168702 766710262 77459036 97154982 914329583 317379897 946949457 703262235 465059027 660656337 611690442 721683692 786595947 462140514 795044313 949362706 703189725 983173754 894956313 29492929 682217307 551265260 691493053 700131131 579231235 956004204 895334067 912477861 126640648 457317819 918695241 42171255 334314023 966738346 567261837 379518999 90159445 244978536 965875755 841883248 746210007 761050239 662767951 874593180 291825434 435834231 482093107 402576162 539846379 178586543 128935517 191824900 505460733 222735535 21958404 824178536 937651860 166563977 576972690 540269747 926565043 377843571 392657884 987358032 270406435 476704324 710325650 826568645 556451396 560394892 802778781 943109142 714400643 673737628 218226600 598106102 334864716 138996470 752304714 952986586 208978764 839286363 945380706 410104691 59445672 734724901 383714397 39969570 835711377 549676775 277440859 532952032 226226216 754376280 379258138 309955904 720008038 23254489 870820964 188781646 204633985 935941078 684519815 220217734 814604808 340020275 631413700 709128368 244207788 646664417 599632707 883525968 676480777 780734554 754562982 206694346 819764646 260960806 551891335 349096000 455201945 567320112 74471980 950853137 462294801 774812874 467128172 845652138 415025062 156333438 649127847 86202069 688082206 517626527 247715018 591928388 710373214 839033158 388623311 300198673 190938826 762503664 420002904 509597773 138187660 601562255 903363658 544319718 16919888 944164045 247113150 463093405 484227258 416850736 230479867 772183070 659024004 653886152 616134509 456605430 115246499 394346743 891896226 527812202 700978623 210066306 41037683 913934386 573983322 428458034 294267121 673295884 89519795 96822696 937325673 15032562 235360832 355295658 321055267 617455765 597575474 950346960 911909258 855035548 928941022 156662961 634477744 756038823 810477870 813154364 558929052 623410455 422081909 697341463 494699633 234987175 562667288 374315561 168884598 588704152 720631434 90428635 155158416 893699228 304234959 189739563 876063729 102208406 282488341 345829023 857907409 419871074 864218446 502466101 908134491 685358606 546688874 585711914 404749030 451394122 994559144 3759445 755223282 585862840 778719098 826871579 538157139 81055905 363915251 891366520 463762616 268824589 756117821 840434217 711148281 197466391 298582058 290214952 985087234 844514149 737647904 869360077 813474092 898795573 34822642 619227187 944817270 338565954 276363329 748105433 820439982 414839894 718333160 319390448 905031666 69297628 38265656 920551553 894899460 755998757 244585531 320039594 10022079 448397131 800705051 244649176 899589708 727530506 537448101 128549809 985631700 680209090 845529515 661072060 472988198 832598386 703199066 146696003 640658892 639505586 203133034 739608126 974643270 432098298 962560997 312114087 396871964 186192642 214423248 150956779 268877814 546881605 10784847 591169299 970332982 720882786 221200787 879705151 51495358 319448772 761300827 165996458 356401209 899899064 162104755 28947276 278703112 19976478 363355718 934222738 214322269 543519895 720528156 378696634 967393277 727620941 196924807 612047014 43107313 918400484 509080811 572134357 857158000 833698256 850929422 731606281 829890771 320967849 908009914 519394003 560094655 255268837 768619045 450807240 150525903 260893976 200179988 445962124 848898001 135790591 713289160 873105078 14895277 238888552 263260047 524440993 296978912 166533946 65960692 836747228 179796816 326735950 114913447 411942358 585294037 239743379 45842385 423249586 348321983 307358297 789783541 268869869 431007814 244532271 183291088 924814258 664376725 985690729 598821236 389051839 69520886 441430679 609304693 273262539 723417175 181230892 883196741 85599530 404515345 33488042 119571887 335220882 478338190 61813011 209442042 946809652 749597591 457354778 241615429 86822867 286536984 498757246 609501399 169688697 733209081 549400262 236342070 324764088 43797787 320516250 645030161 436827563 113231319 571927067 306343578 709830881 279602534 294420674 318238834 681361064 315351561 689412360 934295232 547569584 893404166 30243879 158049809 27513335 622016998 741956018 609949643 413654723 580949679 60232313 634452525 934573738 159139342 636454942 601854692 945534857 91903346 396736509 585153924 766921975 64883929 876127122 769638208 11825806 94552278 478095442 226825522 954157453 80944096 995224951 244892243 484249923 635336249 878311650 740432767 317154008 169615987 604311929 479236439 269612216 803244412 278297512 384111732 715967587 533892075 387821767 919844972 547618215 674663148 808390143 677430890 33043272 329024934 682934767 226599400 559819621 4029405 772025918 135783131 617180377 650858026 168723297 287422276 286679842 69353532 858637891 640833955 513235654 254518006 276702797 291220453 31014821 708478775 241988236 906027980 131564736 356192982 380184885 129561205 211018985 81543209 399704491 699480367 655107000 598211658 592985154 128938030 67934671 602318273 28730177 85504531 364836577 706094414 61320714 140336317 272382594 697116135 368863191 449740187 766998069 152117965 785350148 779898743 617576493 617155106 648304563 838107353 536239413 775480042 347154435 827983617 794982407 638409800 766013065 690791109 150270451 539129333 284041636 780682001 773079932 127480407 170637208 245688906 698787750 561056345 598440908 157654752 165364124 638389595 320189833 724276632 303688062 710096510 590064963 990984866 85353782 341896003 547217936 586151417 527072857 630799640 239051343 630133156 203826214 683586497 438675289 265953134 514173252 979254606 520744426 276559563 830353044 594302901 939134910 868576512 509921774 200202664 143515674 661311586 293940511 184911974 982078837 639774498 893916101 331147226 476810129 221893770 313467177 579012013 50894578 478428083 468193783 628843794 856338473 833227619 184676819 567700936 206419402 90241197 828547441 381226154 971334397 753596573 208354146 95322575 547732655 752343178 830403270 975056184 639104472 446330348 406821210 731962444 998360486 312832262 452378493 457816981 443028852 267499140 951128439 976737313 320219042 848939418 1683309 466218130 14608339 748310399 456016342 79824317 664059039 477989695 520440776 971452432 850331471 27490462 808447159 22223629 879369836 838683308 313606479 37259754 219949444 44280549 40137021 294504687 470751181 317102965 903774689 691597308 73087396 251063759 474215028 964836138 175814796 950120451 22366458 367958679 914289785 429173537 924159709 538932880 308837057 833976608 656225179 13637356 60227447 126025186 367589323 139704507 247241195 691709487 957567891 38019120 793320735 901052319 903196847 516897450 127194333 971533414 31192266 592535265 294223341 59435969 196925245 240791899 384321100 128780303 773120941 361080107 29996246 971557601 12875175 828996134 18232268 823334500 875638567 490588810 573657343 35623856 974223927 553646195 960411472 977438707 821030582 920313153 10537623 553667205 844631058 737843209 983468529 965007638 349696507 654908691 923720376 269869901 456290034 45614822 759120681 24209840 207047163 765959225 596905004 425537300 727788686 560608283 28521584 370042624 225687401 968242034 348400919 488183782 506359587 109312232 244102943 871649658 593352767 984196174 51305991 298799402 506325157 572996791 51440725 380187656 262680499 779949178 54937532 780651124 584342155 839839617 49565296 340770630 790279740 141555299 570491013 187946388 928638005 419227699 656480270 38166130 806477825 299382440 904121725 516886382 755904394 72459279 445279365 180128067 820689132 659584840 337097955 901247404 162883479 948897329 728555043 742830122 107425145 113077024 55511505 921667930 737689361 206124109 34835693 970588459 604180349 705567780 841584486 679007374 91216006 470104682 414264542 434946832 86653229 52989479 407302249 54050642 894010665 447533370 27006507 578073000 58746867 703879602 671482916 592365440 937434607 432873950 117408225 624678991 136666542 469474226 218660301 610104842 564713934 316520966 843935469 881363512 96596552 271795079 698426121 303887536 279709597 477619792 971237847 251988555 564677585 438759892 830485267 603762055 542211957 788422302 744617683 64286802 205041857 118025046 345050377 96964632 495870830 248848857 509304830 794558820 354859091 984449582 85635155 307273339 557008963 487610988 452976137 104180455 881849355 807409978 699782287 184442859 974799296 178344802 640861174 577672810 393055675 482529503 283474723 55193714 748577216 10262081 237653706 3992330 287406078 796135412 843444758 818865837 476105076 646965956 314855982 292276972 546648795 694261696 375850766 465547264 414665318 357984827 911980012 733622005 220133401 558507694 462665483 797480947 248114176 181623273 340368707 563674702 452692013 735686262 333644087 97404667 471806611 159125321 442364792 849199515 413191977 69838362 290113828 684413237 527968490 882918475 711067330 150614992 753893908 632390082 730046379 806555796 506531278 615172714 375249644 495940883 83313700 984580189 190029405 103260492 696243465 651416068 504207278 906490283 558275606 92302333 891751414 862996789 506312046 265663616 151608885 282207661 453289161 971046794 979976786 440903834 665000047 427120388 747050965 640494445 839726544 943472762 405725073 235666074 955298398 258376062 541407418 407172952 692573996 408499284 255720932 287123921 639986941 828422931 59931624 366458316 439881474 859740108 22641819 619639590 318624553 614277508 969548379 943988963 894778101 227141846 386957126 175724527 407091472 552029766 930225242 784975505 583074039 674176541 446727499 823500950 616172793 702968846 838525370 653586914 937573770 856325696 209758697 652131891 76597926 534966827 151483818 340860221 138530958 235319083 140100001 119941169 361681634 981301091 255825036 217840817 975675371 770536181 909526345 354575510 601949051 680155781 193376904 417045674 544814647 896611601 402636218 337192877 481404092 771069633 882336344 706258310 10626284 886794566 362641764 345092468 170273646 867643034 729236376 418617128 830730423 179210348 424614037 632236308 491152249 283929658 942059944 734034586 623790669 760157755 214053101 115504926 732451558 685761090 63419458 735093897 718329182 884349534 726875765 34552812 115335299 313202729 612735567 495837702 264722192 658369870 630099829 798669006 211299000 129065957 581124325 920112293 185836047 837821225 587667971 267487891 893244382 781966902 408083779 223874639 377743822 182371807 457539808 258456906 59754112 805941835 950367745 940164517 941442852 964175926 404033964 125280991 604929057 485086466 32185808 377666475 463730949 467616196 700502280 180300293 887853757 635935424 67044628 220919506 991241307 354480445 190918391 356840368 802496822 199341790 207941987 575905228 481050934 718968256 582950783 514868150 225011201 214798632 103416435 174594583 427276387 864287000 560115199 223773422 685886151 179485223 595854877 909894170 456254679 720339240 354510083 16287561 735210905 759473389 739242586 501636274 650004463 542476920 641547534 609107449 709595175 931736922 477223823 58359587 567868688 663110206 280832690 766261887 66305306 696951731 102021368 113094631 664631202 146003689 562415677 225804634 606009597 448899824 786174512 951795280 897260554 128228466 553656252 149610338 158626813 1432125 14693237 436706487 871022875 18067556 91487609 728153614 750442567 850987877 221659824 66926124 977245608 422967837 603922746 778049158 103628994 690932152 493483856 124438333 661557631 538557910 147064748 29119583 797225700 126081579 912200429 354933853 905931632 160974533 813210067 502613116 759720341 277309231 418554534 709030613 170350914 60388616 561909352 840844574 785583272 88567538 972071115 826022690 946823318 908220208 434148823 241064052 844275015 857697889 445142151 689235256 91874040 719592359 356882513 961883873 411427344 90179763 207082341 646942881 298415679 602905699 273379985 189781051 350130470 736265814 958907353 958464862 731170805 508023317 630104725 276551774 304378472 625722521 312195178 941320744 679258061 178625637 695517933 39241752 295431291 212625314 830377849 692294613 797433512 757376817 826272198 934418842 238607333 503156936 486925668 307265019 945891871 570734049 836706608 551223501 28729241 284879815 798938236 763466675 704890311 688099252 653187842 224499714 754486253 337951325 911947802 859556188 931521098 448920619 243963731 84759066 663736461 155188666 792711385 673328013 309122627 252223761 442517596 446356188 354226943 923563187 259515021 53305132 801664208 525534945 758846188 94968581 622149960 941673230 65500327 887437063 543226763 996090961 817260698 400562480 507647482 627935510 509539673 833837685 857014725 708203706 8366524 173231470 610898520 220943411 623169289 126539584 164181869 128605669 791864127 961110145 959915597 199113542 944103925 938851724 274634023 241331816 159152107 575215099 526966018 278578231 408061747 518773595 690913968 1127423 53628502 959801219 922220109 920247786 930816182 980941502 611966718 264958041 481227089 253288267 323603166 94497970 243793208 922085903 899616914 179504576 666811093 737326863 233294051 535613754 604239352 180877261 73989392 964168451 776625976 803384068 191245050 450557698 767388313 59745018 784471814 640092956 703189054 104504717 676503200 65081191 645309436 25231139 695271858 777568030 46835849 203383893 698960914 338508400 440287908 364138993 346612837 225335022 234203688 547226444 407974467 589401456 282451656 825261474 604133581 106423724 629852107 893610633 559586106 100321605 137797 464931438 860208709 181526070 353758095 668426954 932824513 438447992 526579064 884176213 367855091 895764730 271591773 496081093 603414457 210227315 855981107 64004652 350313814 154656062 758728631 977523190 464546865 779717367 625272025 7489842 704923059 851791562 622653347 752724373 614890208 542771565 35449159 731338842 519232209 537333269 303576464 13669548 300254656 710512164 866039085 38935699 596622807 300092822 830031816 975743324 909422533 904551594 60901241 834498532 489041789 871445365 918926228 43081550 647745035 778851170 946188918 124368717 14904089 995431452 848653028 909721681 840473591 880479550 498822678 492264160 28465865 379847923 19278926 288514740 19481130 946792283 737268475 962030955 514047695 507033441 825611795 286544231 622095420 576044908 95270762 983733166 361418781 973176664 168177888 970602716 20611437 424599072 947437347 94146804 482209802 375693122 810273719 415934169 828404105 63173553 463883836 11772802 13885139 945839206 989694559 873338835 89024015 674895024 826387140 776059282 994258318 622051092 106050868 69397984 211125046 247293399 646138523 495743320 12336822 335755061 80202389 370053755 756987073 48623045 368033808 377325895 565191380 104691212 721155375 208104494 842354153 879310006 395696978 876947330 506904898 76380883 529047788 915853048 221589381 911629947 949387307 298091179 973737209 727213681 389967893 434870469 75283697 735678426 998777870 121259820 51193113 13797212 247785498 811971444 717892695 141885098 202321080 112387732 804437459 902217014 898006174 571441727 793969808 851389860 354695846 145346857 707802511 994083576 849672847 562738776 235450837 847207460 111828573 416828402 860599197 12482304 779397208 722140326 751108088 545226801 696421944 813943329 107330814 25390033 419312724 231112340 34191758 1082984 536909514 206263154 50258473 969072741 631576543 391569337 766946483 732128968 604547625 920744516 871040993 670497449 22506652 957159127 912372953 876831145 714315861 717909691 274918054 43717679 711872177 506547906 990577627 272635050 977061831 170533028 461014307 345197189 906279464 722110014 886707005 215426834 794402135 519366497 277905307 651755113 449979036 657524221 934946674 17754395 960217717 172937835 437699783 153596489 71996981 573457552 960421830 936045997 541730623 319656106 616400505 584177197 929414977 837945087 662029305 22212645 942173407 155506902 800937984 438698575 771388789 809180874 935873837 661092143 148185051 641832544 87615547 608686749 532479083 703063013 444832438 157920113 349779274 695148629 832806923 849809192 451003437 644573885 921864082 835105332 797659700 704153065 558638457 683295417 104187130 281010089 781168029 472033307 464452658 835673422 449768492 604268141 946586150 487352018 564065148 105768344 798832416 999041910 794539146 344142106 587773441 185687669 159465152 346544192 963029635 988372557 399991482 760504875 848493755 804506692 823745853 485736832 549916429 381073808 600486609 514954359 138429231 90013809 424368594 491511650 545079048 257655761 525266193 356558458 460044016 153435521 956330913 955364238 450269964 699062207 667381839 845888350 96695994 998232243 561035362 898169336 983705167 668136280 416433374 872627551 494806291 705075851 970202083 27527660 154890919 527977606 178543842 46731373 279638983 174346680 556268423 247378519 729227017 777581462 94505055 640263214 976323476 950023357 782197369 670112558 214860281 242013216 793453732 196397829 795545519 350227082 339655039 612667544 890462288 954412200 548481692 254778566 108613935 915646186 487488074 235661337 218485150 388977013 555138691 521422988 847964502 953808636 783089451 897103221 808486347 565399444 562663981 642230801 160670529 4097814 476704146 695183316 396530870 990996143 335333701 744322347 579973005 650306324 657939201 930006213 285166089 48813611 246005160 950407139 445012530 275799381 825324204 38792941 696644215 846084861 107676058 962307943 597513234 792209029 530022824 556424913 211692325 866390416 989597534 747883342 661680606 933325797 225728648 653841454 716091351 568695670 355285377 314593237 741181509 937909341 300047887 239668886 95200083 405570910 807461837 146748865 130078509 664917386 256468347 424758300 484049924 427822983 625269103 261250926 815676407 239195982 560449669 413437558 298168945 996242101 264216924 176446170 794988940 862543198 926317863 489376185 846182627 689018296 907847331 475323692 228985723 485967649 389518632 5224852 9417993 65167764 30328098 813322430 191341316 592602766 816326803 704536206 375408525 772889049 261698706 908086744 861948752 450879166 766698671 622817577 256908987 559391691 307171477 833933869 486174446 465883222 16938101 666717883 635375966 793564407 769696713 299162600 90934637 813900663 113755767 962095349 9348614 873848296 993083144 409106669 285290704 945171075 224007305 862810083 701772069 150672733 718124865 220563070 737353919 703565206 663085781 735228055 101647742 636372747 151354609 133766996 546466426 408010557 583184665 124198177 617826277 822758562 233048843 882090071 464336593 959523344 909323824 953681173 863922443 80975518 629501095 345238043 513262195 20688190 599559378 840743998 300693021 546780114 424999998 432867268 936793867 932742320 777404681 18949097 682452860 877893058 298170098 506563061 71281358 157828422 389767443 438300849 689087890 860466463 842356681 2703740 920606099 748265474 294335173 339170809 211293430 858019570 183686442 244700714 83873084 258721998 569616323 327586630 233476875 661779956 166817616 849479313 264432355 590369099 277793426 504299882 503520495 368885089 291979013 943730639 273421827 6696732 994317552 445089011 301508071 578767037 557098341 307839250 665551118 410959609 682520515 484360048 189377799 458527082 134058008 160225204 881834102 389819945 808100691 535695878 434730844 501658377 42865230 493720091 302894420 953296675 362455985 209937089 177531648 752863750 555823122 553516500 960262061 138668116 656448696 963535641 546769063 816586559 22813415 889778190 42197337 522418245 771415675 167741265 20174972 661944873 372351750 560536821 633650830 897925119 316690017 774824059 951061619 96922851 987485979 449547730 173334716 661150657 998131651 809075080 815986729 213287090 358659494 802254520 287991233 631080075 750962326 715269953 957540126 109009476 31879284 74333236 868061425 153554048 177109057 118356920 669864679 536823017 597025206 695164960 665789419 136868854 265096484 120276806 21408445 135143466 429643931 950462825 983114887 680688063 857704855 184584826 140756963 51680408 359439152 751420291 262081483 976648354 209256953 284029645 727177224 753898057 250749327 359558474 602147503 566912042 475768925 730681577 963480506 738231728 680032725 593507792 571119416 419626838 596185823 950455908 526201600 50128664 667437913 949482900 326452650 356305745 57202353 889727103 758596736 695336296 666557990 187209683 17119363 156414719 491184816 415033218 103364845 80300834 893584898 469822597 964133860 25219745 164151883 76779095 31022214 314569088 916834214 407378512 480630308 686391159 30122625 801853684 422759251 463345657 531550445 743781830 506960442 646501544 355047603 570559202 731298082 174830968 947577560 184713778 6712013 349329631 197246759 348178618 64961914 80250327 548553648 92756137 697439023 828013904 84689545 564025554 771173285 813033149 317229868 402290783 372404645 992473584 65687771 952805452 297146417 777742166 42010767 769839692 183023031 933856225 578185833 960068759 627102307 944554841 494012825 402806916 613809086 905795047 635343595 207058312 104879296 910742871 569526563 835601685 878459652 190851832 792943026 765655743 318019453 846636773 477843490 678071623 869871531 250053945 662863523 755110406 982298063 995052704 616068134 208137773 602163650 218455859 216497449 704543270 705700646 368530515 918597722 633412333 921976136 771526823 228207544 887561815 731562060 644014005 326724890 325754463 482919043 568781213 690327835 671875265 443529127 707740312 587988179 132143681 866203943 190128023 437744393 620045067 990270089 315587017 164929504 871911749 765656571 706277193 171404603 961690139 847779197 670090041 216707370 300061702 889522746 853897506 405505442 839609875 461665759 190803747 334968150 291234555 320185089 528847956 747673942 452585947 567922433 64637558 481380117 387696175 487103097 907904194 571099429 818439252 89793448 331107011 75760573 980730710 140069029 97196839 595151464 781440550 837757712 997433544 658920242 65487571 684587383 532202928 867302587 275148718 885721747 661805049 626395704 241184230 434995743 759419848 364742697 300403582 413120030 411040571 944887096 149103606 320782173 284614562 993370641 970224363 657606080 835006313 942034390 637217178 616248500 281623309 531866695 781577747 461540794 381713808 849994698 525031650 820597909 27931049 776636340 284315497 538368112 540196002 786263793 682694412 676883430 319514703 293210932 771367996 685376398 948041639 440521202 977521890 976348496 535950142 721255762 55014593 349347384 227025885 735354312 958233503 545877636 470452382 660780234 229461069 86594345 757711536 671384257 593838287 164221441 672097232 611596140 325538809 773386683 830736666 187521665 759474427 520908020 693676895 850979193 346293456 655503388 129433298 973588115 706554816 974960663 110332208 302207161 57852660 668849893 497697863 14221007 829293572 149999653 16316458 817595985 801675409 847129676 693405819 907999025 51627691 82763092 507637316 60871017 542729229 607023737 698824551 94189643 619794945 571820815 797704827 2289373 769511288 374224780 258396667 940963257 916118953 160709420 983682072 386807815 794563315 602094842 668698511 891649571 885114374 309405689 241379611 40127849 429702454 661235227 377523515 798855040 719846460 852419703 574557696 908580553 882517272 786180629 730001251 231436923 914364468 637265422 554384600 303610503 999417301 125343533 103770719 317385365 230065942 981130459 192840103 648006388 451594213 16311223 898244785 323332042 385061602 1036804 643750890 938016037 469490022 272243999 162670465 927352184 357867832 606751654 818418216 431897961 577912269 157390310 52751096 681335958 983782039 767725808 239963634 186530343 257006425 97662373 680479780 868866362 908253695 366398984 158443595 891502698 249715291 554035490 979908146 26992407 103852015 799222854 563294163 183097733 132009481 952047397 341053922 809200625 940420954 632831071 906059688 371751572 320318071 821855411 660236701 699308902 572279217 726790432 82834852 839244617 556473389 926310013 383516995 627445247 161931625 226416053 445076053 554168530 637049104 796200469 567060718 607927529 419354602 254280145 676410198 925036508 333344895 838937493 190214342 95963999 425840587 225435257 509996362 479854302 217080186 574493743 883869788 82530460 678918933 427458553 39109857 174808556 642287591 440762999 303503136 312320033 49541656 983672128 193849334 761738159 320463987 507092520 120430751 246807950 866204102 406376106 529083284 584853082 398057306 435225926 783420936 254658580 894887412 111824305 809320341 415007752 410919374 667199456 229731389 267327944 572413072 372124049 470945598 8279009 822854435 976028402 224200591 591722895 562758000 600181996 173501483 886183237 433127672 425896595 630445072 318239422 219869700 265392123 42169441 316150120 465464658 272039083 892553377 311731440 919972577 739234117 891725547 70663059 399354721 746985477 319046749 296930449 675495295 807936838 367273442 913476672 48904847 844724295 970084581 757145189 482213294 625664614 60178785 579178531 28689685 221768000 110733086 941898764 51760303 513334636 489857405 827769070 886369797 296825589 658075834 814875132 743746285 117540370 309995997 529257964 673299742 194297918 856540067 918810572 250503817 859878385 527067549 864767898 311780275 562268151 294898572 528039264 733191228 909356597 673389044 701954909 35708709 613197639 827681996 297403960 465103944 704224102 880455432 492514637 100448561 238647643 118126325 311703897 768190509 567911570 877382372 72378754 739537142 150536442 870036417 20562760 965472984 512571817 610704466 173588393 796069127 767309173 225359158 396479887 367074027 520081358 361067361 961676613 205983390 888256949 257797808 651863802 428099759 902978777 256117693 541021029 103108309 705776465 140271588 595347998 243049170 326674944 488296656 812319619 172819787 569923179 850667372 282102470 589098022 731745025 145498160 302253756 17490504 15722930 157310979 109345199 136681706 764030754 636540104 40317268 168479844 319654499 115017952 56223523 460696272 922333108 257098522 149506753 96237286 701815779 458455145 12941816 279557913 969391083 678488179 786000247 530874565 78588553 699703195 830996829 672858792 425411272 26749101 140501535 931793308 951743111 969962797 209805310 349465207 448791587 25657445 955058099 967584452 664692423 858400202 375214778 882736832 273568362 698619971 303506798 435740909 619603494 866058484 809616703 560162030 949153391 659647671 212738175 623405973 13988376 117258261 511304793 33795012 953220614 534870431 917291475 961632091 690247290 747132751 95709110 874422933 588851635 191513175 226463965 607882144 655806218 201282309 422821456 475428253 575935270 234957462 645735724 898180546 663428460 830829748 680478605 437220128 288724632 945847862 29933670 943834852 279883646 795125480 175690677 628610597 279515582 851163291 40059511 688201272 552892799 989596821 73487283 135855304 291652023 902457106 544577398 745998137 192573468 914655636 953288453 542406723 948315200 853097824 414596549 919311427 213357913 247342410 834312438 643940506 742276209 22894256 388979964 746780816 125286441 562130553 959084569 844504847 571170348 68648266 126151937 128870637 488544724 15204964 279617832 151608078 768438695 678597566 544889410 429875544 241055129 142503757 410308598 83189421 994345081 137833738 232288045 489845579 513219290 628684733 23934698 394283965 123473518 785426441 987328031 722684028 510892479 651722946 50847755 152691210 110135819 595615862 283280177 345741022 864342943 22073113 54208108 378640145 230315477 102108039 394868929 995118025 75315098 148079439 535740115 553203311 208308530 318927855 316574352 974162842 376477245 969925615 943109402 540318736 204356492 318134334 471485203 216192528 157816928 431033198 669529415 871481427 141535368 361001594 47493774 653764717 464674347 169951280 630448183 952874849 837136950 550601879 899639947 204222362 275521028 849438074 826618018 578159851 58068695 711730956 205378864 79829745 656899116 557694976 360219612 383198171 837495051 576466887 984870913 648227137 303388817 530470103 316022844 343635885 787168231 496479351 43282566 454974368 752619041 124483097 430749967 362778864 982257162 697461294 985950770 485014082 143597482 437768598 422919699 667496204 796507232 251827159 62883339 547608219 465878009 357514450 498755921 444860198 780859175 921477765 413510931 428488229 876135636 445242215 214345269 459138581 416577120 374255817 176902340 292898008 786821366 796491348 260868832 137874783 893679490 426504528 61550203 903125017 257153879 607815830 307463535 573249221 89831590 830654213 847820552 126153169 965192283 728998177 174482583 862284970 899068191 576442238 211635535 260259270 484048405 438643434 999459838 835329312 477518890 32015386 33616307 362409833 788068793 391330550 257682633 352145045 726235041 847794360 18978915 747576066 612148164 646802685 720487732 194447811 315931889 928284850 4962026 214084118 69528328 864055347 360964102 182615932 846746573 955364180 136509681 469331411 256597830 355443800 646741348 625582429 537892510 215829744 13454400 999808619 111632063 517832622 225421258 357193840 88566407 791077655 291115759 107292860 8185763 220244703 68398690 322168878 709400985 205305306 935052150 998506026 52207207 638907503 211757251 705527527 799744326 484606081 455657919 985680573 75535674 515785722 760122963 590282132 501737064 433082962 362121126 181926703 311317423 889470396 133260550 136882594 929322300 17011482 830688586 612478203 134785638 922784286 269246241 931920266 653771270 686599586 847400697 454499676 968336941 766787665 138279320 803443125 563024141 383582568 776428769 869429626 982232292 16625943 190471985 120823124 227425130 32161298 617605156 148067715 533336954 938996111 386498595 809268600 666573523 618777329 691342916 937386720 404384930 336691029 48400010 941877610 610742256 557497314 584370852 45191608 471429181 885098306 492860215 799803914 736797946 102985346 194324543 550631992 575119790 349359089 987555684 536757167 336317974 573425012 673764205 752371278 929808908 952313042 14062015 287015874 883767807 229414205 182131577 466538889 99580329 93297703 24635448 71279797 535919441 824857541 165818233 756808505 938551337 400619799 244805672 80685280 506440415 62451114 666629520 150803951 448340866 639336050 57813786 345897548 231473731 765205172 507492532 169585238 621771102 892928695 819939304 243157941 414120155 143929374 731178741 397998979 440759808 439197356 786795428 678669442 288696255 890566609 115103603 865822000 664267004 166365113 931801417 435853386 532864974 598073478 287578444 269114602 236151802 711332197 257014751 197739281 546758255 931819083 157234760 115007601 786759188 120911107 333734010 465608924 731364138 224738947 70702253 10026913 677465200 768589806 270332316 653304543 982120046 798441602 230349310 406088389 370338294 379363863 358135639 838408660 666375673 381931569 703982980 428317692 487943893 771387562 417254276 148305917 440376562 632207387 600072092 211710499 216609370 51766431 680327075 166284675 32856949 772250801 945748617 527235227 649587349 313841033 814410212 101186088 130734804 946308292 570271582 205074127 647806887 775626338 216951526 543062752 374248128 352255580 756124392 14281660 110557299 826771654 278008883 864346307 624202402 210949690 762691709 293971122 319244731 382557471 417856277 402644819 920648156 862693105 838877663 69226265 167512863 388858945 951247545 157721928 333422854 753559178 112587626 852338600 255154413 7958397 966155517 366993051 218109284 440152161 749078286 624810089 123771987 25312450 260945395 324178686 356318629 188741975 20976651 996388936 586903154 41369924 17773327 497144736 711399917 115003210 793970198 119022026 425102619 499481918 543594862 421537965 437266393 169787660 710457888 771674240 921666786 421113560 565276343 986095138 496497757 392012181 446429862 759123751 959931126 712737614 779668429 466329153 725111884 357876856 237148179 899614914 901408541 40877839 595693280 483150837 798021728 335857276 583371856 803850181 735501009 872454335 925103660 689048791 810744291 727047682 446083773 99735361 998073518 519787531 795360397 453926092 171156421 90484946 313515133 689000023 59306886 497412345 608674517 431278583 998949924 370230766 430211940 812062199 881049751 105593701 311283148 441506349 711795232 513640329 297781022 132037079 788257416 786634921 718262910 802794654 313198395 57353249 662001005 110998785 961689606 375102584 560670961 419981655 273000290 573715835 90065507 638168980 147098658 280716117 440011808 996017453 313342244 459115467 687565345 931458437 912080062 22598697 116631729 614341651 379689557 128578413 657157253 426546622 550224277 467411812 406225009 405988516 337466634 192866329 147586759 839377360 50870413 721298072 608642330 124550017 100704281 512497974 339384827 739451762 647425795 20954833 146405624 56959539 407753592 243418981 14359494 555668925 625925690 839893870 559087428 443343593 165287167 579387148 163974713 546878443 654806533 817371188 657596659 746847711 457547831 897780836 373538739 645423633 232706682 396286808 568115744 486560313 973686271 818089246 544891244 887600293 758538924 226657552 53304209 804961680 8331591 9868848 499287755 375778429 436715808 986847870 452761950 295991041 6103660 543950680 972335601 845112803 59448955 650481480 306901495 121700266 955217539 766095820 317416168 471856699 376993469 331977824 760864713 986055673 818080506 478200554 331461655 121836059 912191089 316678699 524981634 839924534 381236336 434705136 811391193 614191129 710251542 640013606 315744635 1791628 406304922 7570969 448543387 445685695 380323228 196539214 2231458 108909456 361259940 566171326 480864267 887003522 25864955 995368893 509995515 175354307 606185834 967237497 351704527 80353629 130326285 606428388 84612870 551774709 720605629 370846143 147639044 984536952 955813688 995946232 216073294 964091152 60925073 556782434 50720948 948382906 393102501 115579429 226268594 794875170 186490854 286010948 601223700 544592067 620180477 877115829 534815814 31038623 562480448 646109648 375447442 630298963 545402511 770868432 185637550 314190982 342014553 357570480 895795122 294136470 862913388 951446338 989523981 889394622 724972133 609253593 225730047 976552411 579357004 529343425 34463374 828878775 913406119 950206709 971380801 702560544 280045752 76310527 103365778 818222700 873656194 293951788 48908411 282672275 222946160 915265910 851546122 459619755 204673226 430081962 674784785 760038766 148087833 481405078 348465017 560056154 612074002 669618256 16756148 427371730 175248922 672895518 142029238 480777529 843924 938856910 610418354 479448302 436723650 734788203 403005476 794303443 657019927 808769274 439015095 603914903 431618186 760499344 991981289 179030329 920285210 329465920 24784633 682126277 204710502 219631364 452288251 736193373 762180184 497022484 776788150 749569373 790869194 942441719 612983938 775187116 438082158 652425377 197682639 495906929 436328281 271504252 822563483 148383052 840768861 586981403 793403199 822311337 914453337 776781334 916691631 624553020 814862928 637590803 560849360 940139773 612143389 749110315 533513661 338171547 205539810 738132855 522550776 525748710 854397327 551187057 544304831 442025702 892575979 212419994 86217380 670189515 70718210 492146723 647839263 836975692 959909969 81977115 798823062 154577554 631628243 24185541 104307359 486220206 48362005 102450689 957674299 544789978 563051151 391132220 421780252 213807179 784821785 81385472 691224468 922967832 332132433 254358528 381906610 110269592 412447255 738712232 153389281 96337060 588956609 103909076 230730508 996499307 267415614 350331663 467161207 343368735 39444803 629411347 787316558 923416530 194121608 925192035 305357064 210771262 707898723 591956103 674208990 825425395 621243449 509002782 122063518 918771707 775976437 858472542 4541753 287276478 765036187 510457803 597276786 81867109 471893704 593089960 318164825 719678759 292025132 547132331 123624735 455747511 686791891 641836569 252349645 469698869 475801786 663092488 136373801 172194133 172833168 722278775 844779359 420321309 846808855 827665520 506897429 835044923 206060939 304087024 674443715 927435182 287400916 564108079 590111120 506576726 217802542 203011893 687346161 267369975 339467269 38121543 748074163 432144235 551386490 251604629 803917191 447348893 607399743 593394699 932037702 530205721 622769643 359088308 117375067 785829658 763171184 194105555 768009083 907745517 61118400 46123745 294406217 354558618 349637690 539797858 8212966 68961319 760632902 27588249 898225878 385185670 608935409 739535219 214417660 708739077 424861416 464422539 834432116 587240984 588118752 584174655 155363065 781707230 530872786 333939790 266199759 606198447 273117701 823243515 502033839 555754685 540391083 260410381 652254461 980832384 981862851 631483740 852383094 873770501 329890319 172111361 226762468 218680791 741262903 788212094 866775613 709253477 951095677 888527547 761704097 841838899 602253505 79077358 162396342 307492318 264508503 828040492 169938157 812214911 954441023 102575968 582621894 8581065 431621767 769783548 693666286 891296120 840675062 80638062 321788425 647934981 401194146 822313231 452538504 633950344 101412945 208016820 351577867 173658926 163907479 254738447 664158887 974197008 972344000 900735919 457113602 709228286 753727233 852466381 681815354 96710407 461229275 44181 483733076 738236270 78094868 768252174 812311879 196875146 356715021 567674944 296667459 959678506 797783215 267192682 858703158 485264711 353919311 96519111 342213953 338303854 398029444 360526536 642770117 875712423 61679753 84534277 362953272 303246319 827552688 40079542 463924117 592489718 809678671 649422348 98825521 249470329 412569083 706207524 754776516 662000639 5365157 764154574 174964306 791780147 700760429 683302453 799428131 907129534 60534362 296044482 812466110 246263123 357388001 118359795 487702129 147214302 186958377 607881436 380720030 763201458 827175642 769629469 323805041 709338574 201597173 640035119 511839179 473570677 190254922 993659996 379810171 37777758 43578330 849904939 922634134 381468855 139782724 702220345 370906969 812838123 721815315 174385757 823363408 421950545 585751596 971086130 670670868 465703740 527588921 688170587 602379641 19337010 475971092 560953100 477801725 478942348 586129451 329327416 957912270 256746251 88221796 357949344 166475638 932509681 124630042 990442044 136335225 68066548 826402520 228279176 808465226 913698491 965926307 925046823 448796006 863150195 486735155 856453182 46876045 833809944 657341282 640991590 794906293 327709516 333181046 582485298 125796524 608229433 32275894 211660897 477479661 707335397 422107261 302805207 310007723 453721408 177334868 675454797 803620506 308287914 107560963 224281688 259946321 530167710 638060600 876394434 842061979 313151285 761871437 497324780 561401045 268649607 260246995 253036547 706255068 848028807 842788395 177850628 803186022 934412534 59583585 408438555 829559199 238004028 680493240 913602519 860079291 688961107 442043589 125488390 503261264 596689164 730927833 301390251 604794661 165120120 912801712 464480275 482267347 603530085 309153585 151257761 255412794 605322672 542471230 229046697 778479529 547994349 203977705 589894056 574932473 991962348 718344440 970404661 66082988 965543382 6279892 577948489 357369148 130643967 207738584 16690174 647383709 395703266 288738946 717588436 709165342 806397962 906493088 272431626 703675402 979857843 337623882 441840158 906279700 145241524 706362840 926175297 616788219 555366457 711126568 752224733 681221204 913931761 666933235 469803934 514172370 1299029 973980496 494726807 961375464 596240152 61426954 642107265 617046980 591477358 490329788 528357041 382898852 727147765 369843347 760426927 752977030 309691053 7847389 538576007 659603972 763098285 444331403 512967339 302240054 954685485 657371826 325176833 897074915 819226637 205957915 434582165 526023382 473635743 265036904 111110645 288895417 35885883 479531890 47673254 674864864 832539482 381050357 497396263 86631403 237595317 469308159 815169967 396075834 499024664 766637038 58319024 96114968 104036883 814230614 285045660 110940213 132596443 481405809 541477074 752679370 838961272 36457206 19686108 132463548 199013859 730018044 184873941 779037630 407211057 561066300 813272850 788021224 880203237 364864248 310410764 618222393 702041688 539018187 151365649 945484382 919330133 708948014 422323236 206521872 519210801 130593307 612478362 314946036 420419387 203950549 731999269 121846475 238249252 140506415 531569618 977250931 35376398 833262479 948053723 543036994 749753603 438729183 832700788 736671255 266103755 790021759 286992817 332528040 223337875 110681398 709847155 862386443 474423968 538520862 45853097 358602184 940911638 656021748 806321403 963133656 558331782 55670003 763329826 900181679 763208301 853849814 960860917 682640751 583486208 262738325 252908081 911929578 297121934 930339442 153212100 444693721 882170711 533296585 93568408 989461892 25590975 547660534 617802127 401751164 863625095 894035228 185142004 464436413 130231764 721230402 794183431 791750351 38977825 623781620 515438546 936545349 626804182 134192293 473375921 648991091 16256263 217786864 499378916 125903175 933911544 396921691 989759428 480334383 148265011 690369009 167005464 569191434 782822120 171381991 326342142 388035230 174115703 300545296 471839352 980701380 906507207 812036548 444053389 82614371 849077666 811407741 564297177 451093025 76037031 285294087 616050227 642104629 642494872 438716661 457609775 567249472 748020186 809189343 362236943 706034507 602012523 827229407 242747641 391668433 917827839 411787414 7739151 220078093 780240752 83065655 942135296 360575756 521336854 240037479 246051653 662552121 946162175 328963035 758333799 753078925 436771664 944085583 223642740 637899184 747172493 114202197 774187631 127017478 330434375 743005202 569689935 996987564 757118363 68230289 6143340 201551755 129955398 848520766 561724787 131706276 394706831 661372900 768520092 388197154 633205596 294241043 60846248 506503015 728957826 725419539 377796584 460783923 612277075 265358105 909831842 978773472 661123345 408894010 390400666 338006050 392458622 881828373 572687714 419382117 4679083 448468885 19671054 973798346 217887200 692849604 484804747 375848725 420198826 332594982 591745303 193901352 277389619 785994477 564914951 542018275 198890429 144935136 134862432 759176214 348626194 892446403 346439587 115110836 769033597 744598874 547211398 814834031 416809890 974269618 86927855 669470937 804408835 895206238 669272592 129945811 6343494 968453180 926434217 334232760 693945432 928573287 599085598 427633518 517356876 835504944 824047323 121371356 430427095 583639487 870467008 999558118 132271786 843662608 11469810 617370234 576594127 586001470 416940327 943258425 836955065 204029834 41801555 498920544 935096512 480197338 209111846 364245865 335855659 259794228 44075310 260565424 471396915 605194352 383100880 377648988 836001328 733787562 479118746 519725320 622977827 812600614 585055343 765860117 700250921 548313776 956461613 44304290 435252349 518385026 135075989 517574697 869242058 64424505 119700337 880997115 86991741 373523809 733586477 233549751 68806458 145616787 101775926 547818106 299775296 808984255 561689498 93561681 287422141 878514527 599964254 505347684 592283024 117213065 225447827 31188044 382736691 747835276 842522664 215110472 792327670 908821655 741616257 575916992 218371972 628271678 985397581 420205052 755596257 827393791 980275665 66037004 113066805 803876866 967998544 635412219 714387749 662591373 277049589 276946861 966594112 619670618 622885211 179668560 438121351 380244330 979813325 575279055 633944510 290035078 187938250 722269568 505039116 984126089 576245896 280793494 298087393 936312133 501464428 404473689 899047691 560892413 348022763 617268416 956303212 78135834 759327863 365206454 79673304 772410011 142440165 562517600 852156159 171499560 226062145 360394679 149654918 52586983 4978997 298000946 748929469 232922531 234886694 851830591 288630875 80863094 460071843 119939888 369546106 646969100 585791359 823337453 210740292 603542295 571415767 124530850 94749733 301937222 857379545 336491779 556683762 904142265 291923431 855719072 299910222 744310864 914862604 997861383 808105331 951508940 690316138 385760596 721339613 862313413 501815169 291485887 216880494 891588039 379204479 858886129 108508110 866450720 358431488 879232509 115294690 887466230 565275829 126577709 562409703 534014557 710518511 139657905 212499987 257447546 95498503 561827910 778650429 466417285 792686376 471670906 390352044 92746022 724832694 823874431 480411978 182745999 984915398 661264610 149755389 388945131 201978895 545598292 744213497 906710353 580718920 986928165 471816559 735834426 325057735 644821599 621342648 607007137 269043830 153270456 878895464 62628906 657997934 526886766 298057966 625461515 767489096 837720057 532902970 656965500 936143206 44807098 547011435 46811988 210125043 178785477 342679360 619527723 843138157 638698712 818011398 550486874 408215245 37674421 144887933 16726753 732784098 134234577 516486772 171751400 384637566 758988325 256209673 44137129 679172469 431361805 178665293 508974722 108044645 871997475 97373783 712157832 192091887 64742056 617355557 164261572 963391710 27273770 278778401 768106771 510853708 468869032 81518128 255542529 283817763 477826359 161785495 870849635 630734395 610204795 560531570 271868972 652701466 83645944 137296756 426219604 441019437 159100259 867637780 652002282 712259300 763322564 794752124 656887794 650138756 273950963 575308277 72066648 526819668 12864112 643553988 138771057 250812519 592102169 816822712 641817186 968209393 487129466 517288735 810470896 205099331 175226402 864486506 764142560 351422557 790250309 303471981 758100031 630042045 77508685 552676826 820353445 104634020 43929481 217012118 868309025 206516748 534686260 590782335 356161314 257561493 284952227 462133237 305050518 363258880 719787792 225666521 986162457 300305628 884625074 41460555 839161170 55453233 407827890 440727760 929753321 511656548 448497624 140642530 664060877 175303024 800177258 971612699 105952813 204926586 517038615 479665135 173802171 708153606 211815730 115769542 508906700 244161444 48520422 185514334 473942906 427521700 341616853 979600058 199127566 453851192 419790710 23038572 455965652 601215628 526620021 94970465 528016424 558419771 808218340 69445281 76222301 722196179 381540588 452293244 135266292 243911568 89703353 687137903 238435727 833580518 506423655 875300384 504684720 989267811 80600071 266662550 145007109 505273277 386706822 395659550 460576817 946617301 853947008 417449023 666936825 487902389 7413706 395880753 711306580 998802542 950079116 493329424 156229116 368940241 241943147 663970169 136575555 716206609 521677078 693223365 744102448 254150997 325261069 767280667 929263860 641505858 173740878 929748538 728200810 104411790 242034924 725566543 842398285 561531913 874925999 324542875 943578072 586472080 563825517 75281317 84124635 155276607 852112466 567152408 434110348 297754449 773241108 742932467 776980673 572484482 593255565 42618023 140075012 895219946 857605541 34877003 848894032 813947009 217775907 692192634 763525189 897067890 602236320 592140226 64018955 53837166 249036758 81229315 258457083 961674116 84796885 72279604 531132195 364759794 468966804 720042633 152367762 789200604 938488289 787233610 478219577 547485994 64373855 246949004 272836711 670107109 311221179 795026716 667088500 123042954 689168017 325003793 698503073 421261003 36554492 254620481 155022286 971719154 642869203 691488755 519754820 412033529 962371914 449736117 517651590 226813081 364547958 621293783 489225176 448568902 173181161 196976518 296920180 248778974 908750870 895966543 660132855 11066886 938943035 519110217 290525967 387591444 925196761 610177679 339911369 361476784 773894448 937655903 930628128 566492594 581995445 619843901 321568261 775788296 141580507 896025142 210677063 516690628 560708735 282047744 134527390 767230717 161365816 204684277 229408573 313998821 658018890 829270680 156856233 359052792 10067193 248350613 90930159 234150766 247219112 637617666 650932810 301527787 8344179 407188539 187018434 952128238 495734055 911630782 248930105 138494720 661659145 656509230 780941038 679201850 677213975 153057826 204070789 589138586 879359620 782196660 529898923 309934500 783037241 559924454 751814666 316030024 467585432 84619260 196174345 587980955 42232321 790754105 510021256 169789523 205726574 851251555 667124817 460727707 751979578 485533541 297818216 399953030 22060368 631389912 430052377 866571285 496199056 310278440 780604228 920766576 658532855 500670494 11585810 834074499 743316240 742920792 474357035 549130412 800854363 600726002 477404079 832484011 934284728 521702285 997784923 742435370 21950231 228372175 26774525 655802254 729087126 542860885 473615909 821127894 927018897 64696518 77856487 815632 658913587 904666411 966647809 719056793 8585704 263439051 849219652 423847973 467694645 185971284 879043436 807637994 809285222 344206721 105506549 557994930 558202110 568828265 538048673 20028292 954322616 540633256 195779630 491737012 953118194 399858075 691585706 458181741 374803085 462406685 860988878 689221139 842917537 222892380 189538056 876572354 786851135 50784099 25218719 892544122 130535473 99921774 491024915 971426213 169071547 953405901 816743403 345359573 666304163 943758983 579338502 431835214 102093129 800766683 237106364 747950057 117551093 130047608 427394835 358033466 751487116 243168144 120847707 455077458 144084521 666420324 45534538 797460182 440508543 376908087 365891105 53596899 388568549 108586794 612441761 610089618 160381427 242615789 107079004 386771946 955384107 568836834 688136272 550716664 15642001 384816894 307006322 99868327 933764045 641543958 663317716 787695114 955153162 911315584 952903499 377473012 536917130 38677387 576340019 703000583 684107643 700412009 672124322 689260584 464471525 387440833 306570675 961148323 681539103 527620410 729304882 746437977 660136230 990233888 31186335 554955839 74947781 647849200 232075587 428139680 661513640 965125815 58435972 670335828 640699293 610751394 128821628 210500159 483410763 52055987 254958535 237965475 199585274 250869826 798559246 994895098 997439357 841342660 32913261 927243552 502072703 927776895 767601791 971131673 309752244 883554648 825302999 429941737 549482584 312353908 376117079 638921281 77551735 843437945 643870779 809175984 632433991 788342770 790063443 410979977 759717146 813514005 89896259 773472433 632082240 930809261 774345929 163064461 760204516 781144517 660181217 889260245 849828868 58946304 524465114 822237385 508220818 671468155 519903251 204529671 619738754 401871032 100722663 572881914 720942778 752554228 571556230 317347712 380057891 604048878 833590432 799643488 329685797 651386869 578080859 438508170 188725783 98039615 404310906 839564295 444544867 783986000 740968525 556022428 649422134 5092312 364431902 292930426 573315744 45916517 106170788 926618823 690096151 804017467 394833548 992934882 239025409 3746783 66715863 185104143 180268482 543513466 642749792 427152587 729424961 747478627 82893735 959901901 668415470 228239184 122175420 113477935 266608397 396556784 156279653 266538696 957070154 142214019 657300173 222916049 82512322 889933353 396968354 811947478 525654538 92239472 510000503 268420449 512115152 780779269 951740919 810744115 363685520 419651457 294596130 65209263 41093783 792695272 468632758 756318678 32142951 177482130 761647293 354910466 552161990 160265655 944611302 362636223 66261543 695633432 555133746 39706813 724357494 845877307 527108049 298902810 374186122 921445789 871821001 230662137 86104291 766807942 379523851 277439924 585691970 952584501 839193222 438183250 196507479 430670360 159614422 438022398 88641386 37831073 311815156 720398361 32712584 169436031 876171490 904823279 704562782 786127857 142136648 662373448 480440612 604994601 835432582 500720724 376367335 244889378 121283342 330470880 258822001 122105489 925545714 409810485 277579284 677285377 256768984 363575951 273948443 15257310 987054458 215495903 250172365 347658963 854636250 410471645 295189967 824180879 464229818 499642035 530083621 316076406 351051217 299274205 829007754 504546934 389839504 545547669 687385139 994886625 278733374 16725909 954875131 298964758 199545179 889670256 255060521 338884409 729683164 995447181 297471771 725244666 186564133 358642120 810555729 612278459 963151469 321005045 513427268 295877431 421199172 582314845 875772488 46184272 888144923 658451353 755350532 378808118 891768158 148851822 598429124 746358587 576966165 872817974 460890755 684717868 378912755 96818567 583866224 29520373 277866854 783809223 163609773 479762697 352575403 354116540 407286776 629529935 326650567 399291784 297375991 775614835 845928261 542922354 474132579 763665338 29064678 416669655 355712443 867277751 733248602 635550097 7234806 738070500 386958440 261663083 449930401 851618582 177253775 15889787 255331589 714000143 258706023 368266472 685800988 780245269 143046441 680181003 393495550 477252488 347154998 325163608 752909742 470467482 567507031 521878356 92353574 606967946 135807248 753028453 197528847 692473973 276868834 385158784 690442391 975281582 201243457 326632766 475856567 975191275 992757894 929800791 468349529 338316066 524377995 981783136 32630264 611305190 255079750 36605659 87572592 935348850 267900408 907956900 695533574 956659442 998154858 652289498 438635819 157398058 104424212 829756772 94030062 398327442 346320733 592804379 418157646 785081464 587442969 569108048 231745847 517489291 781134641 336986669 530425563 342969562 519166848 365236650 461330057 719312888 196502558 66479358 663941821 949744584 114392356 482510414 780517172 22209468 710157535 148858514 568807374 123315315 570080633 257982853 297809776 88712914 238265430 333802746 307158880 24180123 172840951 475126906 939171293 506868543 978084136 939507255 447375154 504751560 961945368 245115153 884710968 856338193 61437967 371330388 994475403 286668516 675180263 763504823 332504681 66923913 271996218 532315943 270731195 320765726 878803649 954311408 833569077 826837948 576485387 606739884 324957548 616164847 722204566 897048338 804809527 126401047 376021335 514097635 607400805 869930968 474905145 174032721 217326436 989193220 620963119 325645989 110841326 586988640 829359057 557212109 735397014 44782005 778201286 102115210 130271934 712143578 576588105 618657471 765478523 93094321 949740496 856626294 223780457 336216391 726764460 3338179 669012678 157198177 154919071 377779990 508777380 477401026 234556797 429716956 810517546 50431389 205652886 384415471 573983973 230380779 199496312 430724051 162074887 59069262 702889338 470294351 655816009 557535729 553966453 682734982 482764709 381248446 260651039 67099774 815485676 658988034 187331198 53962156 808398896 540187865 581983077 643842376 179210393 848328231 399355103 611532480 540675453 888216755 892631983 718290057 773275718 944099262 933099478 88898304 274701089 979140467 751543338 887107501 678049243 44247932 15646999 108223631 244571219 431389097 337740402 965421200 905808789 985287383 638994771 384487405 313251190 145336266 78010591 29507775 585649579 766313709 228604441 188153857 323443191 56049360 835261489 823288278 355705657 828935747 32353534 976307446 768650876 505220491 760467377 968837948 985940217 930062271 653619120 564721909 585595199 902913074 88685748 172719147 528288569 471059092 819707140 282474397 923329743 584637439 569701429 209857025 671755493 110607471 283521958 852155562 208857054 724459158 478225458 42387740 584370468 484558116 435155158 937888390 736192507 951117943 456903925 548001078 406082844 570609527 309888857 249072248 991583142 909867401 744638097 183277074 539632271 50448133 42807695 347771688 70000221 602638834 594058052 888737028 222531461 937765768 748489538 664099009 949755029 70688235 834141418 873382883 549578636 707604223 433130409 125040147 490363152 513436615 94045120 513655013 687374399 889902855 624429514 589734571 706042166 206302622 869322501 709091132 688645796 771655856 222592705 520877732 803730879 291456770 224506141 145898576 598765462 268650305 81875576 650670017 198255502 139544569 593358846 73117570 656355796 137645871 747482753 453396591 188434711 422096915 812026272 760597654 644107051 782333033 218980366 92762209 845293688 232566390 160411084 820287963 557254561 947209249 576199626 146214259 811469566 205246126 763566170 443011140 311407090 204759037 701395108 434165250 270313586 107987009 243804495 325294095 747587972 163351540 685602755 309760045 350266848 12303693 574013264 65114560 993451709 669838199 526511138 896659799 993481742 610623689 847905983 262845558 583251493 917669764 192616362 330995665 790053302 659503104 428109021 420512102 782137384 543618045 756273361 685648437 48656458 576058112 837364462 647756603 262372032 437795441 950129904 535496657 339760768 692189817 96989696 997101915 564020510 766974177 630531507 730507883 398836365 644720959 248755313 103880320 127728683 46336956 496405524 534180647 497279511 769479016 867499838 970434762 922751720 785932701 255759916 664433257 767171749 130978102 692229476 217567418 78258567 954787678 664908316 472240091 343243775 582493368 981374350 746468527 785276773 793585032 763520297 603343072 27042044 666466015 706062381 745135564 838110050 473906138 223424147 115507722 99448334 185866468 521462316 631347810 802959354 272991902 210513310 265766469 235590748 661028197 980360898 644004743 401261558 828759368 293361905 895750008 575816815 769014077 572528709 683781246 451390986 453307087 454726453 395796594 166645015 684154887 461160496 749788109 816242576 500856406 644068777 28573369 757834200 856080417 512299716 462210915 744010203 655762260 121048132 267379715 859218923 139052512 370174962 694353574 913725703 44475237 826704583 340616882 885022360 525835421 876844328 699828272 64962284 413987347 264249434 269517309 231637418 434759289 544586485 337685860 368411640 34032705 605820806 910568691 995617847 441554737 820579535 677993773 14819151 18889269 461258304 693601820 942292152 502183816 652521023 681719830 217223825 260774395 783388211 135232829 442775797 229061165 911395837 972611189 730069912 800143738 11015069 965505763 451633475 908151084 271164984 675809549 373433066 466653024 981766913 527800781 696222282 969949135 913136428 572351539 371481395 322703626 672697718 530181474 749876576 475161762 228214241 407534376 526954730 626095482 321992254 571983873 67312364 921119701 714028379 868046508 335341250 661815200 130952472 390457693 738795993 388968926 851833928 321787796 175820738 129433028 615469696 658661232 837855178 992612458 143119826 179661349 987821776 371350742 468830759 361864394 614539316 645515498 238022625 259593695 181247376 887638238 339946431 451859345 743703655 587132743 168866907 466679742 182083292 612604697 55840021 846910630 173634858 23259320 901074062 227886715 276561767 630066631 182723398 71938653 558739992 403784512 418069022 533595026 886383494 724949165 171075104 544257360 900026011 372384827 915709751 853702458 74345411 421844796 219052592 192583998 976739062 173457301 138914961 967251747 456362738 988582216 873202068 383033706 131775761 654404334 74941550 219622788 402824496 858924610 773805439 594894473 64263527 490188459 513013143 330330751 709096730 454590767 869497966 983636381 764446133 531939301 960324372 633924464 930845872 395270688 384231559 646672294 792382323 218893626 820422535 77738057 297994351 94188388 935222912 808613140 148360731 500249592 610953784 57785997 22218669 626340314 583388742 755635432 900046218 778399977 514216178 647651768 441101713 110177266 178424722 839015544 402203102 448996049 577838746 577927219 776995058 781482047 257196434 515122635 79186541 15772959 509976559 52675027 789485674 679619664 287963860 685433364 27991554 254941253 388697026 624196807 446680333 154062072 691468536 257095570 828510505 651697119 142422111 693342777 922175427 466644491 332879207 488353310 701135292 19652759 807893361 172144831 389287866 228218097 892538515 998066552 914654956 901770974 789515242 660752648 464477249 311158682 737545441 551546217 145397484 783056521 686077091 380437064 300299649 271423506 264743453 549014416 792869744 924333240 628268472 925224492 833493478 522903439 939827822 642157740 516756858 731119850 945863866 238406406 413679723 319179711 651105723 597153040 633528709 951696243 167153504 748975312 577654031 481615093 647568099 709870834 45639021 567378219 612097557 627944455 441794428 453431680 102157690 978225102 14738497 703564025 224671212 484562521 744063081 287493753 543687948 181600732 423980497 789455662 657396377 790732575 121134863 697184050 127752875 816490188 316299071 394812630 684989177 122344525 947837187 922373088 475841780 197128676 612245369 484757379 344263117 641823105 161176637 491441573 573538531 677067539 898624920 540701794 948638525 782575515 267633465 39473744 935868380 193236816 472720963 358253166 815292735 967235967 626322486 155713266 216367465 871954568 702811146 748080702 108698626 729122624 847811784 282426547 602200151 503173798 404780142 880551753 561186880 281765621 779425562 158424972 20245314 249238583 938277964 431647914 30503660 594628843 192674103 188316637 132708672 479487927 633798431 526344601 731508534 544089196 744451104 992380153 752388625 549659889 229762701 889406733 917750181 837171070 556634320 917914833 693309824 111318191 98092482 414227369 284930613 496491361 729121052 991660056 712529325 86527967 595574166 849824892 398857553 555764721 909613927 572863626 23457137 379141657 9023909 247294438 799405204 260402225 896466368 614070841 538523043 565066763 655635371 919354217 781718233 918981742 481354498 622999820 75934380 418832398 974653137 368803628 820675794 825566966 711781455 907231252 870531264 170854474 937046142 334823870 225079222 805001239 876139078 106220820 471949245 991340542 476429566 238806826 533328667 963707975 532969611 104283306 585363731 616267403 344825491 739363026 916779100 972478402 829907198 799400990 311081636 75395789 797902752 889210555 850148708 426070661 657458463 295216003 804425804 986945038 834031182 373040044 144623080 462740280 975803838 560081920 706603705 267424911 46755880 365704395 611494685 925638265 94749444 380824343 887646644 197146747 553561514 815699301 472732882 268979121 1020253 326755710 691534803 674966902 813925694 156881997 93901570 468537169 799732749 810345242 140652397 241735863 275224259 513361536 720743951 626917973 260992960 480927272 527811180 612405488 281212983 38833862 318515305 642840965 544953283 356361388 411645269 119754593 346226242 397759794 146967376 205089724 462962977 535316433 586459629 880809278 824132827 353802817 8536919 228695896 351524299 487816224 550543568 732152781 471169278 103879120 461032223 235798007 249860270 424673074 227463594 196629312 918325679 210218470 157337177 839202427 947744301 918208495 806073209 751988812 448091354 163457850 862558513 742330090 105692957 668832940 538631450 260197823 546794409 842684010 344997542 127417568 469006665 980263060 313299733 627697615 421845591 219748859 319439851 230699363 198033324 762940349 537982483 100520085 469610223 387512729 905096418 836137484 443961326 913019029 314869232 930765066 889006198 44648893 436139798 839119550 713638490 977109239 349371387 764028305 772533426 270135962 458191992 630819175 870361428 206401055 969240277 683859277 597934220 364163776 715874553 555686432 231691796 857817641 360277668 280276384 99553787 158228297 114512337 498523782 123632612 167030626 792050685 745141872 582405816 694342889 761111055 964442830 742652650 68904140 403089180 2751443 345264848 188885088 512851152 709987160 41618923 313741281 469368149 747399825 826466250 759241502 339731601 176670881 863292560 623745034 761196550 521185264 493062134 330619485 205626466 833336076 175960040 984329850 8242729 345346711 948817114 253491484 167825214 886969814 347163095 98591099 46814312 707460783 732255770 672419249 305211865 719032795 778511601 101260079 736237137 77773690 895422051 254590688 919853341 540677460 246066268 111266047 854708442 759830240 193623612 332937332 430700710 52952761 672855666 410837587 791033398 592467486 927439841 721451210 429143794 604188378 739691257 507694717 744977274 666037683 959978147 769666052 500460461 579113047 505001618 735131171 484947210 506898958 10232479 352929073 447243147 44655093 146823978 420517437 691902170 254576813 931050751 424844487 476757014 418622297 399397315 840028115 543339741 137910357 811940252 659128362 243498161 480081149 98839401 567565318 241744122 181872576 112102310 182460491 792663946 388679785 136134842 97077485 634979487 945325240 933318461 907423252 700208232 762270355 840521683 902798805 495858721 834924016 827015022 363668660 267574081 263056558 683816310 249648358 735457707 234789801 228333749 988721225 61179698 351678808 143574435 316674642 117363198 365820963 71041141 305526250 294017606 892466942 447728228 573226650 669211679 424415531 578624358 905998931 467378938 670115976 700364222 684421252 917758684 399211499 908916263 564836433 443681372 932710352 818376584 435551824 103021511 52122075 909917413 721341908 398516703 101608217 684092076 303186228 457463271 673475086 825088009 487233150 931714880 110677524 316808620 962161607 687963171 290925891 486876907 107726887 857367649 615175344 472927197 743256918 565593870 197779913 214366684 778969434 268255634 519894459 83062704 573851942 332003040 161421783 362733293 612415999 407765211 721955581 678340770 724857153 559607124 204236719 365977312 869390374 994175927 145178140 497126393 729781736 249823001 300831155 594795029 385285616 839263041 181964905 663919336 418081209 492151547 30360371 97822442 87967935 104023343 495849000 983442401 68525986 444831011 45433853 386294205 121968214 15925416 528267262 690496101 578203342 650399974 691274824 335117400 617814827 673719833 262133729 978858967 319683955 705160696 194139708 46312875 999814376 352142600 148082072 466379723 285233509 576660023 799662042 803155 676764671 917374132 21131323 32874410 265159252 903074604 608405849 945473747 882394907 676130213 136270910 829849240 139215994 896974983 235610092 882336093 274334943 489907568 852989995 620323693 185723139 615712668 264873183 902028284 653436044 819936212 367126476 961079726 817167831 734641995 980399819 976791603 962157819 801339249 281967142 69052477 583602849 601018469 386960156 510063953 546447293 705003637 127384887 196991164 212632955 306659372 323294430 191037285 439242180 666754951 162590089 973631833 325181877 853521432 538120578 392234768 793713947 985790202 540951296 722892863 873215277 549632615 646107041 735125023 179748206 811157100 100865020 227891677 815340631 300834812 401102073 56074722 524829359 627719077 747277138 278364338 336902979 854820132 775528350 981500225 894596949 6830160 587460907 517574980 743000921 404538235 8874617 436397915 994017127 745762659 936130510 905865585 478024385 733638068 917982263 558877650 976899734 105021058 459708239 808016607 559379704 856366404 156471715 44193855 771707578 749215272 18973832 318448352 735000510 936279002 259913870 84638231 113382100 125694687 38143342 564501361 764407006 48585535 386049005 608799854 83330534 451571766 748979294 210104683 717283604 451294280 473426710 568991029 678082501 933468873 932996206 43888876 782870071 395297219 765670574 970311760 381672752 877080296 893654624 548552354 624351523 681639011 315500250 291056562 5794601 708457695 595489324 229485287 142807919 291622788 74002120 412187871 84305522 90215658 120159919 53946744 724090089 64999993 371056719 80182185 965086907 833537650 136384797 31515186 414740023 753874474 604705327 936741177 969584728 821732284 574348395 945048173 496988650 588435162 902993806 246321690 5629799 258883761 829504518 376690550 505390168 573103405 936678835 164518353 56768500 376092446 980009382 668426056 954876886 488222097 505263438 572434821 5059808 122754646 866846840 138777924 950278043 429203863 90424533 936912767 994946232 945232862 129523468 798087050 227961923 807547943 407526512 224923350 450451292 92408681 522880640 376127390 119508003 56583831 975143971 94455656 519699910 116826508 675117289 132185344 400979307 386022742 580025804 77501520 87172062 558107555 531707776 211487648 253147194 931764525 155357075 451470771 356811417 279741519 661599791 347295221 506388229 508033109 349688572 82000267 610946139 353044327 662885114 858415466 987005131 979933523 729157235 771086544 431782143 129010536 426539369 772108127 573181502 14201636 356357313 922181971 291069231 253478517 645789577 733419086 875488269 227032288 27279337 628718225 167183278 253443941 736261615 841962081 411296170 954242067 768945185 754704718 285270579 326637990 753150995 694371838 999250335 512461613 559571065 412277595 295232356 284343255 883790922 742347626 689765150 936396081 219572188 917338175 588576936 604408482 627517272 767782584 26840439 736487552 510146539 140487498 413927547 46605256 710277405 346284427 202794781 487286457 706518048 268809377 734241949 474819582 559966944 430048796 638170979 718776247 17441154 39432548 179055867 38586405 611775150 821161723 923133905 952866812 43971153 119186946 538391102 36838720 993302142 267734105 487260761 915740202 529542187 162230398 18095696 855490055 828562674 243311177 968473865 621223190 630173861 191804476 906536980 589406812 704607818 461218123 31756552 938859867 39921473 245259958 161688471 77218070 792215199 285973758 924274450 164340552 475259387 267399982 586233200 301697873 698563439 436939742 612831841 365481827 324204763 961101920 482242395 910856998 804491310 870160800 585264436 674188010 584380615 564543370 330187655 930425795 765767925 772057328 921674209 106108856 848789063 261024371 405753682 466515825 41954845 764422796 600467031 50805303 601450102 650103535 926670482 593621300 829858405 825209381 363000007 739789464 180873817 986364825 316909071 551873274 370299733 509785983 289705614 399702907 329380621 559156379 937655755 585399006 377907806 54921636 781775861 504375318 315752553 391779207 811422437 827652241 871454091 745152252 483171309 539277443 486087698 584606757 863189821 702325693 667256689 663858312 400587806 275832212 131800926 573847108 107594932 289792375 541377142 10653470 316018508 519462632 420948445 340102196 813560440 717572540 597218570 54298893 220348758 437796121 30504212 386503255 616319472 217665392 203575111 302897707 616190951 889412214 481605189 423579964 334915343 298792631 679152977 132630305 197035361 572083934 429232526 867129010 646821034 571771975 650186253 362389153 724540969 623126644 292236264 183117937 667068387 684917401 211307779 433543960 743147648 744314835 679552267 294279992 673996386 680991622 109744955 938824456 750850944 361376055 168413546 351385972 827660677 817701441 393210889 234259247 651275375 484258337 999082996 613428637 310753894 27004245 141742283 529562836 419001609 710805713 330732870 311495783 62349625 302461239 611989033 356318842 183361140 968386017 844429002 116792145 299212606 790919619 392314860 954851934 590235635 584724201 755010297 255363701 422636110 688201482 617075275 596977254 937331572 197075537 198646686 58922021 456595817 804752106 943992598 924486178 10032372 654678839 966901473 562628086 404551572 12342696 57585719 788609772 230653580 671916689 351560363 300340387 644016455 515568807 729392998 920855179 527449977 208274515 748086001 410587 653631512 490611571 924294629 816366223 773755354 558799937 244054653 595403228 550933781 364530423 978807687 578650896 159193279 704189311 499873413 589661096 973631735 924582850 473145164 14838732 699654714 636041728 120538429 531455828 592540536 742818213 91723141 127929721 649001754 933142351 703439794 344294864 689879638 445909120 141489564 485360941 836272184 694725507 87071605 317876440 981528974 549126573 766274945 582548891 617110290 312761127 14086430 953813714 5700723 327583106 747789834 987105144 687672913 348773824 467950005 865890177 968914121 972739420 808977494 123066822 557556010 720246566 283040955 932540770 225702069 662922789 710154541 130708197 194425175 860551369