0
1
mirror of https://git.sb/baoshuo/OI-codes.git synced 2024-12-26 09:31:59 +00:00
OI-codes/AtCoder/ABC246/C/data/017.in

3 lines
1.9 MiB (Stored with Git LFS)

200000 1000000000 1000000000
973512094 375665464 899845708 47646561 703696024 430937637 476449756 780129470 279793621 738001726 23846045 973816643 397092415 996281038 97201494 710217808 583922236 303384048 198330363 541839937 579490779 549686492 100657335 148176457 216681551 118763500 418598214 180079862 203845034 654467073 594427501 769405850 954950850 682859373 606855214 509721212 411042130 883520168 954410975 463156612 624243140 372015667 806585235 637351932 319748408 924748871 310391957 175230349 420186164 827878187 996051385 914205045 245224947 24840942 871372807 843700844 376322774 844899709 58810519 12287904 289572151 925402488 204427725 570634940 529743953 600864647 920754443 803323791 682511943 102916849 835386809 812554426 44371983 440895311 537173596 961032737 925134776 475016127 999571758 915580500 213618263 165345301 930935892 712136722 537841100 499882868 781610915 976714896 128820908 951741719 108395387 84845433 120474200 849260577 493966236 688692374 670103432 102578284 149860317 683198794 619205906 40510801 635356355 328860745 390096348 209072091 640266378 174337654 765591529 832537359 115854439 213374247 553889306 206968853 420202496 37116713 842694690 434818751 241283112 669694070 388408072 236318978 856251376 509004527 90791344 930738121 166177446 222333192 138719055 410850994 750137475 202852248 100906378 752745431 512445502 931838486 672634285 793178933 286868852 419423440 250659108 270571321 247018798 406265596 856675079 256679840 323653542 537818166 377544950 685538390 342675611 94538780 686887257 570776952 192515793 513973658 759092451 183653255 852526476 328742993 955715158 110535251 180644940 367306820 173423374 268756206 455306450 756274212 470024894 375481344 659188839 588178945 164555261 455137241 125339451 698782922 429033261 404062135 615239978 375960653 264579211 938924775 535036291 246304586 700090975 23184272 576676863 191661440 113302991 161940515 780348769 938391449 313345255 556717811 457454053 334004180 935365903 780954353 79846903 963456992 637705060 174628074 666159452 794493071 280211180 590542419 753874564 173414154 772127155 584851363 897827698 904972281 459165034 255614449 918503023 548566680 727978496 964005492 74987518 450388083 356925563 874476826 520258878 847148602 212596856 175772579 384976762 438170871 834336357 947750174 402656643 406091017 2075509 334340652 406776447 622142222 66897944 159457254 181597213 836112861 837562245 209757372 472930373 190648410 237882645 858407812 843040331 265136637 868258176 400032822 985349970 127819157 913346166 907695517 316026165 913209932 933670154 703241663 194790210 477227196 152980260 949024644 543572079 836105540 97246972 421453387 568594642 65052588 618489568 697981104 413170486 388440759 81500010 587606865 271668329 220368045 974230929 778063992 442726512 342359041 53977077 767682416 160649871 615172139 516246909 350063516 367744296 126743873 946579228 360652592 667527122 874164861 918869757 650279433 921189051 702471339 94789482 72299529 958895577 969020576 676991375 195995263 538222748 578859775 89719795 817490908 642158113 515278737 880664822 748521436 766395450 482217547 405413413 66628023 292796064 119030583 936128718 772530919 718210132 863991919 370586498 473083467 882484966 207287227 467434113 873411631 318764564 480263075 129512925 551189395 575988 344236843 954871932 454180496 102110687 725677089 174032670 739090159 84462689 474530745 447619902 150811269 457827200 986385022 382614811 108887368 782784733 261579910 272874279 943857046 969025539 576689772 968762629 979569703 523779510 16926641 378532331 482730066 497553681 781916488 793206451 130390336 433124672 494127201 864493538 42872053 5484939 245611582 607468448 964905403 722534406 153042250 284318094 407004288 872406456 371169630 593662241 514387399 834123100 933564494 973596583 624600342 556091789 533245218 559849057 667097642 736069656 407788993 813898849 297720405 794353846 123356390 224862991 659959305 14433457 321965430 519595882 517555199 592408530 912114670 114169656 494523605 771773721 332668081 138730283 856359809 559771214 827818568 55817756 724922839 471210174 324235191 306044575 303554919 537195909 688376869 60339009 720041351 648050992 765079114 751452483 858046770 341098505 920701777 920422236 455615899 748693206 745833546 421911178 380737431 168837830 154580990 128468595 943304489 373808079 482144153 638806682 814310392 692594817 331754059 468269076 165538974 827977180 768501926 963984601 414512809 128402832 274435347 953700143 681638838 700604793 182251683 568016833 18224508 659245468 655553840 445833946 143670408 158906284 929152555 785253238 50519479 245820232 505905082 832625677 905461281 891920540 343628742 580303663 293539069 616545200 58036585 579954757 471761331 849289327 813410029 800479595 280643713 43852357 44325852 684938107 556629157 463397225 217719830 89050710 338244101 50119007 428544441 63217956 132122170 347877226 474692065 284717673 206442844 430383024 526149151 950778192 283563595 621189147 342868770 693001478 805299044 168615360 608508277 923570330 480144893 399222829 444113415 240390566 636860846 363685042 319454482 467750358 447138779 192269655 139870016 172337049 278461946 708255449 111693487 399399315 916853743 368694903 546094857 480620236 577163557 115944143 661536761 313070940 588421950 338701783 908891443 178008977 11128709 391961401 504907783 367286900 802396669 147920258 67638818 384372992 835717583 318762725 395483995 753511041 138243012 258195850 800214660 687320741 229788901 511704509 8851623 19273492 978110427 809378518 40395397 20637684 40587638 377801899 410691925 587142043 95459739 310606318 781657142 297209095 706116680 899180438 185683954 471198986 675372273 241968737 573406102 963961684 579776803 887046665 343372581 838569535 235517686 232227374 708089241 481438062 469868364 364881053 572702321 910060550 558734047 197410308 141030533 743626324 648739917 146328517 438368832 657991351 760421016 853125597 163792011 407348643 155915575 271513268 261575402 908420184 569045778 557646559 721047886 7030148 118737894 201357814 85004061 194482210 960605888 226759841 547110278 457304182 975464002 477255713 46060801 342163057 843728566 623483830 761641590 457501088 917102785 275021458 186255478 610547828 133892474 825530206 34046540 190612198 545511747 625805397 608298556 500163877 8972921 911479196 499443043 479408825 801637085 570652352 418072675 546301541 906346186 430327747 1726742 54067508 844078729 24367591 547874481 10484338 366233282 565896591 890467969 611737632 949582989 593273416 211263151 819007919 713333466 154158130 765561446 189310780 770557161 334316278 941441488 789241601 857179671 201317356 624177500 386913726 171432193 962582434 725873160 735934739 434571896 62238595 370523776 402010090 825234314 609289978 290229228 597276245 789489110 878010765 668921540 533265388 268565387 83850778 664423191 117347940 157165765 962746435 726647810 10677074 139150851 303739813 875931991 513551170 865483949 345382260 755149437 464179098 272361346 245180783 517647288 842743550 983217002 810744806 32209056 366309325 540714815 981378680 700445247 494808576 186269367 954408324 33706131 787717498 922905381 67819994 127372855 562690787 478722385 60962884 61109500 380176131 690010643 620278888 516730412 701210520 665900322 289732932 245528127 123405697 380168457 781198881 769413449 388616125 162399226 626795010 551245659 753489166 110853578 439242611 109437006 195316544 811225801 316360987 171598293 61476953 663535655 341389485 342938551 866490360 633445617 563177637 783876264 730322534 884092212 323760202 597055653 228385549 423259104 194442646 234151223 244936610 30664938 878859360 480402544 962381621 207104527 146955031 169554071 281942373 534528357 299382348 953101961 620311357 759718013 137901907 58888567 449613034 273188494 399280612 229435809 178725592 840965232 684311950 330715573 316116151 34601625 881553282 289518497 503617592 405064061 465963467 312415517 864603799 330167944 193445057 174380232 55726895 297313601 702283164 581559789 156034537 452202824 506907046 89513973 170349437 16642534 199625422 917684395 829283447 301644392 103841966 287378738 990599002 927460879 26582463 811578843 462783715 615669316 244255438 682157584 239936488 481132184 92674629 597395387 501749690 264137900 656583009 957328891 48859463 828044972 61314846 333344945 322719007 379355148 657221390 707004251 218276202 856042127 290107904 43941783 886311877 833258694 438957381 451657789 195239237 425080148 959971934 252636429 645855668 533754880 341881968 66347341 730845868 824701613 778620332 884251652 660623903 246418859 880781532 845044991 102531327 879908571 860757307 820498186 338438996 189637378 890397475 770950205 575206463 171699811 96690737 248749833 306446583 95291588 361598752 175755170 34531139 653862079 925536321 483194147 833294348 296545912 336885547 741603052 478947093 129023802 225837853 959578715 277947115 798796059 424442463 660449643 302041272 766881418 645054821 846021457 365220480 721703482 929441409 428055181 229540504 225214626 588532337 759455681 883187051 868998816 157720348 668963641 858016055 718695312 288775511 228947642 241607893 963489798 606040424 165751860 2661939 914433142 476589961 906738857 248943047 183872670 692759519 71676234 296125502 958667488 951078243 259710990 36510066 687101820 42871211 795108160 105488455 980825323 695493758 165149046 291074801 119789098 46420393 898354071 955171509 680777565 172481867 784122082 540380026 130219468 543336614 767899305 157824451 95118152 913711071 540484799 511002634 634270526 189705310 196086868 211762251 208763795 982742325 457521697 541163435 850583705 755867164 687663912 565128198 856661355 639434964 879467026 89914789 777688796 846852732 267427756 138350062 700225105 391428021 371839869 794551967 142067922 317095526 62640250 743953907 444206047 565315250 100345336 970608235 343671712 53577342 765372346 745843139 955707907 366647283 641139059 748879636 166793536 586232384 869489370 188377956 503504929 842910110 213047929 161337055 324242173 534283410 185213581 529173791 397247313 866643727 410358383 131798819 831313544 20184640 136140873 806426763 223191643 132574054 722903493 869535293 444380561 448320832 113807319 502692459 900703533 944453429 553089742 376493131 206094538 835596917 933023208 787034527 489594741 85204785 785667693 967938564 351289492 82093940 442097829 343343814 701474311 662894891 654045884 839614681 694914518 183213409 543238907 686039162 689121470 254535381 808512367 440295087 633291608 778822812 628168257 461711671 960448515 371571949 644155323 252197107 830473433 514661977 543542448 476682004 569951683 957875116 669165683 607325319 190914091 646134675 924250757 948535821 235914333 419791484 686365580 532615918 373974547 55815301 433261501 327766836 41259981 242037509 219207229 208144844 481687932 980378724 470070435 398630734 633866052 660483415 432402344 240391672 522512045 994636840 362478538 265767056 486966515 895999440 935772355 608994738 39845256 604330931 975606127 796892897 491838739 419559353 912312386 800710427 664764745 149187408 425120006 900626722 446508061 761814828 913606149 22238492 371239196 798350596 732604654 676586005 30554793 665265204 457710290 336318827 96937861 303734307 929462114 241113080 833128535 401205060 432979386 917727819 157781895 849574804 878343322 663079706 293669068 503275255 510327227 100758599 844524580 431677464 258920733 214938331 897928034 817804867 302819981 159643219 770031019 573059440 658848090 938599136 900894903 639184728 713039452 277103134 254992719 642199298 584527503 30137998 175296330 939692254 494263072 671616677 835424100 75579427 330464819 570896979 938941548 294643869 274000097 467672144 351818494 457692513 814890821 564033258 66130324 393529700 523982600 47669850 349696690 779565038 580127324 568503456 903804877 509585472 217951030 266526982 190688871 61358584 677377416 150381134 139226550 704426163 310103700 719841986 158132272 831333241 817702581 503716737 398009467 987802291 362517306 179769682 692291292 305982262 282825781 762956648 909540594 319705464 769099236 409949556 108369514 878400709 922756785 850343885 484949795 459902476 628235355 346868258 38681441 199036621 374519524 779256772 205272579 533382414 314203067 351042659 935757068 707522568 243654403 674121688 456027992 636583463 534521534 345360003 704329889 786897575 95845268 715816477 952056229 370738780 257663964 122237529 623494439 838477957 64143592 615349533 714282784 154190723 884931230 713883432 977013951 617208789 217569267 833566206 862580782 750465235 196724115 956505832 422076157 645165293 713472185 370801094 998024823 4302539 9249821 450990990 767445205 309654161 738359837 424775903 47650455 637238661 940596544 684061346 165706240 721777618 806944474 374682575 20114335 545678327 865035107 190050678 522595177 536801655 604152606 914926360 152015497 576768865 183252177 230233746 730154850 402091395 397985316 699874660 170367704 509450404 250537870 784084599 276358275 602906393 582915658 448320414 434245471 558209002 181336053 394395608 723645396 276539536 526819736 28161198 178439185 519038581 228563804 317568230 265983921 802275704 829001812 491540668 766464677 466518252 939675900 709058735 984697735 300681771 999231480 208390377 828465539 551798617 663167550 238684871 664764354 449479683 99894523 837376803 464394114 318373451 694960306 397225294 379441105 687674234 150787335 881698365 101191382 889377538 615645863 310177668 745792715 47333124 751884605 542549739 953082781 45208179 824381062 430467422 729213070 912121326 918242054 274583605 676072304 968445943 82184226 451623280 786498115 891225497 756827861 190073276 738115947 805033428 639871655 291143591 955609333 150766230 447209839 414626163 908040423 326022398 583065813 584266158 381231676 613877752 479163704 773159047 223748295 954824649 257754701 677224656 831163708 390889054 514888426 477007084 966699571 491885026 123260310 389433026 933627215 40511205 811730625 249038001 634502159 975936238 406946750 986340812 653802731 660980114 680214708 520295528 187258106 330303952 322564601 131141214 292105655 609918219 556865270 162852 565783946 303674746 737435888 849095719 536638154 783686892 920381061 762255237 458684076 392585587 379343861 926215678 622668612 662741956 47384900 749292771 151866782 866621878 134405403 62262333 482178326 365160122 822764017 399732543 44211151 372111874 203217826 823008027 81493894 652924159 541357686 145025721 18909808 664002980 927010733 190973942 743589859 809476731 56493431 971831428 127759366 154718116 721987122 606065830 203901985 917076730 40609506 623741499 269336022 86403677 233483783 417406124 932679741 471021211 276798727 607629298 227060252 780200871 765741013 945801631 675135158 804741834 538775814 595463495 403045065 11186735 458555121 234030339 240434228 19281177 819466524 986246068 649345891 178973637 165218027 822016335 379906496 553166577 232202985 116105502 604612164 664554854 242770478 530537002 403727228 2436117 380105996 145574724 980666962 320149492 303972965 814358076 10995894 931687363 353736847 702521125 58521014 679504394 6452085 836790035 82413305 430108140 229895632 176077347 569491402 886627852 885560470 211382004 857638611 434833432 895575704 727416403 672931187 869315038 265105802 744137312 295392003 531071078 194037613 785391211 874048987 679338642 250694857 695061152 699520920 574206976 315730247 866106786 310963680 36758313 140924695 992110065 394292324 155666487 615610185 770322758 177632448 46503978 693155812 302822252 162574377 195219824 95735986 427011241 726325458 550809922 440669468 750402914 900330824 147594392 995110929 224386919 302938110 677695199 483295504 420400499 415074007 228681849 445732132 946345681 712307206 250878017 113620890 580098316 343186460 135609429 576934484 111531736 174290286 12183762 304898191 657447996 942217384 347694690 482208715 222931617 495516764 953064496 26458443 437983802 223725088 299939130 265865072 116957642 523867141 348271099 954187934 214120560 560593909 217648478 290569027 53308922 155630194 233970119 921325356 592088652 844786543 727810341 743444900 918496845 685431338 238713187 154814589 986681917 584323901 557040393 262104308 359190159 113126433 524989115 924681834 654040799 448057904 348139948 383745109 990607417 769134144 793776577 832897094 363145856 418826048 180554767 979974706 202363176 500313100 947737657 656818982 533415602 878426409 315865155 91688325 918583574 68443146 836172365 582865634 33278615 515592169 711540875 346787168 707233407 907339053 774343120 180257707 638062488 748019125 327465181 15120504 877457430 983357491 593730069 416051322 390718426 841990894 688427368 76608327 489173926 438010868 725696231 868575512 595837036 11882052 971175993 457990766 80545551 188259089 481838016 193067038 833258664 275959180 266080898 975431949 17410881 68660798 866144486 623451044 862082359 836662463 513859401 857651791 983930109 69561525 363707438 445376942 861377821 384726217 974935227 917460213 731262278 215380076 430722089 539294990 15265298 988657169 28209017 839990153 780071036 777100782 560323855 854485267 550747601 755770826 447565854 170782365 483937934 869368238 617812606 312733612 220540467 539409041 571264836 282082532 774323642 38569284 772780290 495280199 515191000 144427301 484025993 58963026 132145548 393196691 307491733 882131476 478244220 687138082 794616401 987631597 551240449 904906279 573615024 105053846 668066734 373247734 473223089 943804953 56229388 13765513 930321301 999301670 963918944 148568968 146107987 800861522 834002631 290336682 999952810 169549202 749267117 953235788 899492056 154645115 299606306 691208890 61011813 872701245 958854349 681822873 996260064 218301328 830777324 508495605 849638281 466988745 747780809 101764262 155735807 875682311 488471263 797252615 181437413 578238804 127828638 508200639 613259499 158303947 483029041 660885826 433992566 288240119 225399559 942548347 374699758 37394660 204261164 177818814 153876819 996698063 805574948 659971506 228379975 13847128 33617865 397266606 996203243 659127024 234424601 218813103 257049078 199624833 999568364 562542049 156034712 305842407 821296587 305357891 990765412 677926983 795117536 547301344 616054838 491264559 203413992 289667833 612974569 266105150 531038174 681425718 308377078 724930530 63649494 496885487 543076160 385198369 89007733 540603279 484721670 985636894 711345923 422778606 686947867 285455115 590349460 352697793 250128891 975928658 222452560 827741514 676926635 270962105 897988756 235349776 979196755 325185217 642667593 187009889 596792327 444491431 365507848 628459390 766236221 735459508 629230598 634658632 175753157 634903650 772670457 551878344 728933289 820930801 415886369 504391968 694637680 949910525 757593212 615759820 47810293 881759431 798763368 906063057 855481495 421509844 873920230 107351069 108523218 394262410 64743347 160679515 607950660 504348234 233710255 430436836 304842908 582744390 836152695 678124311 907059422 138823791 150897047 854093430 520342946 390105738 336972995 881922088 82972013 687849566 767691044 678668312 465281135 181137701 67356957 147294434 853909564 907203834 696577453 677431476 74920279 189640478 547338883 978963515 193084413 449948091 287861898 65131442 183276748 547783899 728645102 511991052 500444928 496699554 168468390 239300294 269646812 905361567 519074447 221022217 589846443 985759291 411757205 521626389 165716202 81254515 176931496 827484767 27663108 242995558 117382061 492373495 658815955 807248260 561728242 698649119 568294774 466424001 711192496 9406708 921906972 566052085 997180159 287381171 714400303 330329117 172619280 18927630 627433345 633283243 487412427 149365622 815495082 797808594 312138117 213423899 273743127 730592173 968545346 858793004 257920596 712307587 628133778 767524811 619895836 144800945 595489860 953050569 833899696 103435012 230174844 448508742 393298951 144944789 282267986 413769388 247108699 918874046 184680445 91814144 85518304 854837069 529596142 29556536 620595363 594898611 894881881 228034305 654341419 239995716 709938446 337243268 371536188 443904041 825937219 300796739 333975747 902923678 939566831 909583823 329153144 739235889 227339673 196660171 636428090 777877156 904213406 717877983 420096715 62514821 112655607 832066965 288385544 591415481 898762787 405978910 71550107 944590762 89471879 323724142 903692254 318200805 496571561 854252703 445253462 419244093 793161936 435504064 262227569 563564536 951342215 158490336 338539412 333396516 222565469 871106333 570249117 655210124 127936026 799039737 481393421 255902458 571536365 573935362 4766518 404693377 961302388 346632940 197434124 599899808 762617841 222578055 648151618 965048309 142135433 807449519 705339165 696849690 233788887 789070410 797084580 323117175 100465555 5284654 648752883 58963529 151482774 617425104 478385611 879302937 480957775 27005188 437339833 635636064 730082099 928288901 604784153 648954788 812399596 481328152 87046434 842674395 678554215 664996892 664081372 538774749 661614853 736980728 903214563 955748327 698749935 830031664 744809773 412083390 858285115 595652704 83817385 434072820 269557629 941557811 551186782 484273999 304263982 894065127 10788853 584497448 683570544 763675024 833677124 76441264 765761996 172923148 878992951 850418023 634352422 713089513 445424267 705854633 533600324 851514934 256753865 927776394 658502712 907149106 363637692 164889117 625061238 821665125 381309965 782259404 843034569 990506354 425408907 401621439 451144486 934383802 766056634 42811438 240172143 315234438 542770951 647362179 15683346 620635997 604205555 446003821 568587007 729594672 486812211 322903041 345657141 486055910 204648027 455311071 204368173 324711990 749382517 699505588 855406960 861234682 354161145 325792004 986405476 76239298 793950008 480803874 771333817 327409868 645510838 703419123 171661966 166535257 698591629 191640756 604923339 509822696 671785136 556994655 92632471 335326949 797595684 543828850 40344899 554110602 770283546 372761078 574050938 683020661 237416131 641779231 959490896 847899821 555532912 474852922 838379389 641872486 517554858 699545103 680235161 6321520 752086203 282315118 630165189 54508525 134406921 581227611 74586669 549112258 481477642 94974192 554756871 685605646 808007672 264563717 290156889 976090744 628978725 466605710 959171334 423263220 957422430 211622177 777308893 542201579 826978159 384710609 763322610 834182178 648479834 360045156 528801077 246914125 778708977 59723531 528298503 721500046 683294748 354862246 796854799 954644346 9955181 617771686 747533244 215055797 235649071 847848291 884136202 161300648 844642348 306739446 578110522 343697582 843662497 749889120 788853083 238312124 512865715 445846044 708523029 379031138 60192328 520428782 326159162 604480899 22625828 371869842 309078696 276716488 827176038 27335093 31873051 887677557 152753145 706479822 430701941 552701045 940079691 26567522 545493171 492314851 889947865 612227177 231726794 618620448 490105098 917031222 182064187 272931162 600412456 910476068 621746731 418045596 578017651 466795894 935708316 738462948 283615505 584229760 669095054 603429385 458011540 778357220 878902343 578045557 843354036 340024516 654744565 968744786 500204785 384377544 854173581 218561018 669810662 156822903 99062321 815818012 181836203 533804790 427242610 418302154 392810754 869485121 2338913 30931792 589617926 985534879 100557397 932750350 861612954 686726005 577318478 570342679 352891469 108723832 902817998 286483307 514299257 195738115 102077489 715267190 448794048 893973437 309200850 311275310 822877198 487153458 683285510 398695417 842691125 416107373 812759419 588092549 347034265 974429241 401232142 942390309 795724634 764734827 695458983 555830813 234893413 270318518 790289055 213071057 661509052 570226889 222958156 248102326 170894120 173578971 304161142 620504924 365922683 362928877 991260573 108281443 214322158 741113277 108647877 958426959 875600348 305308566 297342611 230063820 627629897 847975212 558008827 888610765 448888962 309084510 550999330 963478302 829831353 653437027 173910338 884712477 841979289 45513735 786597297 218215785 914003789 395913282 566109151 861876864 287136891 22347895 517131008 826975424 378135995 108963035 653714367 674903821 87982611 147965228 893549483 786868984 317558128 423316565 493506324 885717028 24889784 574116791 222069631 662293878 44521914 992698985 341409285 241662598 39287371 808558029 588237830 311437602 906885758 735158467 357376123 633743127 856074908 458408559 516256841 712210591 591632505 218362127 879579782 714613364 916083896 141354581 740373418 664349785 387085888 808682112 107971922 149667589 536256425 304540510 553240354 347482377 80252634 135112878 796647640 10929871 703914671 108455602 175741966 43191950 95742130 786400850 787833556 895187146 236932606 76649962 840467982 498515177 267561940 944336036 984867875 249786078 657964266 180337622 236395078 479935688 68420855 216073843 88800926 56020492 928124814 899236217 882883128 195357165 138525303 902492653 219544909 716246937 619811178 790255068 430322010 13186226 366216305 957539888 756359803 805311717 665878110 227739273 274090818 208101279 812797790 864844751 435783020 813055476 785108858 872598625 685778934 349548791 22117597 876320665 718241522 274049938 94629539 814378381 288949540 554572169 94645707 607037288 661750554 654320008 475122341 673223154 875879522 207175076 631652534 249530789 444067258 981961854 807017995 945930274 227022787 150690102 620793546 576155238 201863611 731667762 509900357 647447538 466935345 48672435 429254544 289731491 776891335 13940773 273816318 950362539 537777400 126912192 153570804 488316915 470037429 845572765 340794273 263537307 58511086 894098910 360201490 588461507 994157257 269063639 447342438 617492632 219913079 845906971 591099037 589727446 883663601 68506432 335371196 112899803 82001580 344637040 669553691 53298063 56435642 240035661 380336439 664478013 472396249 434847472 87524982 800588884 802038319 976184575 243480500 139372082 912249244 608216756 227976457 100615054 717170515 436683368 901286728 156188853 651821676 778040279 647237844 604692679 676230746 156003234 29755988 292880968 858244065 964870612 831816309 920867554 326314646 5076889 592487249 491034279 564970631 915186311 963898186 925925464 322257633 645914358 185401760 305258004 621172857 159270200 414614663 82124420 756770001 383998270 229754801 924791435 418848018 660618448 521117236 188501181 35921441 912382740 837717116 337082524 175127410 583801257 402767858 16043148 622315003 621884783 825362183 519683900 694815277 440187111 723519856 820409496 907782417 642596374 696001927 82960257 594234341 705467656 977923050 767725833 904713401 604956898 274783939 230496770 787779679 416366045 206641335 166988731 194556398 420738338 389065759 336502798 463621593 495334888 743468520 720455873 53488380 756463173 694874594 617888239 882770692 855361233 950643945 703151276 535251085 384964633 118805775 367266369 361767158 607140661 173547936 740259849 852529851 593433220 40813238 513252917 268654864 807514391 117053343 678720641 766636052 889621163 604094599 658637445 567399676 606443097 902882411 699583697 81944360 987958122 41686288 432144605 52850463 195373503 622477080 330943686 618094102 738029750 947649461 951557714 416788039 528076455 762570110 175091997 244320974 26520554 31242277 914993063 995146324 740148707 57677319 39465247 519330412 424433124 228915585 248726908 562429250 88268078 648275229 83453117 122041268 757902569 302906756 413619738 672429923 719978603 738196875 398052290 984812424 903397059 407447704 714639979 620793084 939258443 522055314 963336715 371909999 369284373 243813549 556687496 221844123 679335824 559410657 224040340 91962280 69992931 209862396 241398988 139460285 619584217 863539737 643029119 308564696 121586483 100742622 715691998 779874095 677856331 896962335 110293992 910708657 248043188 793220674 744828934 956740196 680015868 210341557 467778649 312143653 46609165 147754167 566714545 874210208 484681215 516525141 305381133 112243736 518834964 739626271 353002863 614224118 86421414 463500660 300268320 385186819 820511520 611691918 925738904 198194570 931979162 988691894 162375644 192408022 563663266 376098607 53653140 994169164 422976638 61248954 989596767 798763583 785031798 286895639 796583928 534246097 437646061 584444796 240230663 94677843 701147284 678241970 206146131 92820143 336429226 144922095 364449786 872982995 438577040 248691059 139527394 782021452 760314589 40764244 394465146 2826861 920794809 725294287 38742415 395653534 633528772 837232086 552395326 188729253 617060185 432600482 736841766 631907235 564234735 399603642 641920424 639928909 792488962 455510331 234468152 734071004 590422530 45847942 506401713 925322150 593717674 878218149 115433000 701352483 358881519 23020180 622243260 118125879 171537307 8340634 318793799 473669099 173767757 452749063 947240948 749653230 902331552 733455786 332794757 527350432 624115598 259353702 371010196 846978236 278955265 905687046 79649802 81444306 652301264 299623843 815260887 637414434 29655800 640624704 580351041 490859013 277364508 120118841 46544026 668417713 265273502 92868454 194065976 734954550 874660777 822182754 946064916 997851201 785072161 757562142 106441886 369562240 128981995 847183519 824699080 148174526 900166266 872612999 977837070 845226194 120516243 600694692 249953391 445013395 317156879 18749542 990477664 279852357 213421074 160453591 458884275 273460259 229961229 951622625 606500869 751880066 784746658 774912628 340633105 878164876 786326477 480333377 723557327 878350576 185418692 96345504 683428059 368935514 735567759 401558400 363034064 840648391 687033632 305571616 267820351 634277874 649160516 994226981 990455220 796504121 70987500 471430572 494950335 824953315 39822204 60772785 359785581 315538034 891492877 360350004 612159787 441777688 760048036 232555722 255910801 104243785 228819409 918072780 235567742 171044088 584981822 648911134 761552316 506951776 692356762 341069294 838658404 959156841 96210390 173988196 22712211 355185259 222452386 297565073 486104251 113093444 36291173 438758055 902903015 252468152 323525465 497217850 628750195 471869131 18421393 711398645 709817747 116544390 148501031 187942107 681554544 387669253 878658445 308897293 727667539 875369824 835372349 420922963 615216213 758257130 489675136 643443357 577451814 633544171 108415621 343885577 85628507 107869615 366796325 860665959 80000429 15704636 774464917 249109705 952695798 526926885 484523918 488998261 2647030 820243648 530245144 135618189 46712161 352718978 7957296 39523600 601730959 823704900 145577948 146160304 823660702 132621053 210339873 697612011 568325061 331437308 121159691 611329237 754855806 687683397 91360787 592376850 420440598 696860362 466919753 872974446 891209405 272936602 161196688 854575564 990032684 962004435 231591616 752891911 406769530 512984857 591252535 109261458 914848945 54250992 520388983 265029129 976813623 331149228 761014642 15010224 737279336 767555127 819193148 323978280 579066701 511252294 671861539 724868907 280175262 913314325 708112721 924961849 100094015 452566955 676892155 281148841 761926685 208331273 34201501 430407995 785106659 215098474 448906896 19666182 843517887 857134305 658633943 817059875 5206716 167977119 512489197 61438184 667223504 389556392 812961209 265618270 865726168 836101977 358083118 609416365 171874024 25799873 251553320 788456896 917820734 877432166 563741198 298361384 465795076 691717364 884710740 343829952 260877285 277055279 347241756 552908432 398713003 814238155 686298379 446390542 741215925 175341598 570933232 467084465 653636561 208166443 344772213 11883247 189533928 84913900 46165338 498043699 779050563 88604100 996142760 208946848 915723873 462818020 774362408 122731289 702554328 685879218 498984475 170457609 682783079 400839450 46642084 699815717 652122433 426437298 616092011 724334 651234495 891450945 134291863 938045371 36527664 673345667 17447518 385222621 749962748 926210192 58579742 673309945 397713264 33384143 914259030 851853320 319860598 548412246 610296475 340277771 315341099 432514999 711224016 190311337 839842900 854206804 788922658 633738243 537468866 758822906 659184276 620072082 376879240 172164556 346020840 191979092 615759062 890283767 403451015 802744541 672802140 482626319 598455142 159607652 263184989 562252329 451085902 774407250 220395853 803621954 377267060 332047859 203752013 639804623 587764761 288124661 779852972 877629221 979023760 543900477 406945848 166460052 645044586 565619748 314115855 986510727 115059977 79026628 636189040 201232974 383509058 172942442 130594858 265042362 417817300 915754799 115768171 746226435 161781938 62923949 921570633 204652631 520555720 173207839 388869314 135622971 374526247 351705797 573326444 289217415 812694261 342929152 518645267 914405112 233494015 408307944 157993516 59709257 895401521 362908857 296210654 603055016 789399522 303709738 578016190 352425782 997536900 59240731 194949765 20120698 368483880 726827459 491151790 815363887 895070763 928633309 588958843 761865310 651682991 792294644 63774514 902448578 987236187 755648101 653116780 901082687 596948439 162424479 107559399 782678651 180304673 170063912 945180015 186387936 444144554 89673529 302789910 301773205 92931871 630887701 103516910 269404583 550310244 907799680 625224088 329482128 931844490 859618095 445138027 962431637 749491610 292050776 214734327 318178113 701979277 326982577 997826717 379756016 159868215 20840262 494939340 466168663 523694518 662926381 134238899 481099555 272518885 628334530 131709374 173088928 300319640 920136432 668742698 697477923 873748155 105198159 980295338 694923517 193465710 132910141 800855651 535451265 97323247 698407800 906426457 851978502 736395889 462720310 330742914 455538839 422924209 278218377 451209710 756094438 151125086 44964516 559432656 975930310 269758579 367645166 51875054 293188396 858815092 248924783 537387225 949787915 570488037 504935707 391978476 88898967 23046541 552828902 115400121 852475438 19016109 975932885 311004396 493068405 958225085 241982537 817524313 118987660 135720166 860875633 267728898 299033334 11838792 557102881 867693818 843218756 529748144 827223068 487124121 35516412 844722122 349927969 411225571 330019312 576141979 600381638 462708222 701378613 538853824 787271629 175826721 982952645 46419129 294640897 699375063 484644485 768910869 624138996 325876328 867052930 560821602 69556304 469389990 634718869 63375560 28916649 308141460 969778577 614922716 256832519 406121400 592460053 682560545 102034791 232241990 642055786 298314836 532922146 86379093 954923131 417261901 924495871 305366269 705197986 935928889 465370221 771304037 676857043 392151418 926295506 183897134 65087780 66050850 682694879 512694126 225394353 625171600 190003299 968638408 842902710 384771429 935369090 525093691 11594710 59704234 17311578 153182362 219780722 897668512 184763048 941179968 927612907 779191329 888509862 796514597 204986221 314132063 403692290 483750384 420509940 513000796 19517685 115581780 498212600 926010642 413018419 972993687 348912327 892610551 404772386 621468156 355968670 600431716 646615777 244853962 871559383 822922730 58497631 372078857 897245331 468922023 392192122 188918353 225495252 464464195 87281631 12169169 973587282 332943877 148844845 617006861 663675820 893332608 395905807 490168781 686727522 865566019 372180429 541018191 879036312 2675016 568749155 825898436 502147926 849579577 949223200 535920206 495676088 784943936 453605051 957627550 833209937 651484980 488328748 740838031 751499163 309027301 584806541 962092975 530357705 957241149 600020717 252336508 734924871 956637525 429171448 879551762 811234373 963810253 763148643 341933210 596030849 378703230 318928482 704311849 843503621 829139127 995907311 894861855 745118261 827920438 111434410 130632431 865958245 494729009 922206107 206860816 449581840 13800203 314420740 249355780 698727561 502523785 276287182 304103339 792662204 650836800 48146762 281276297 635420352 980561186 27277712 767315430 994368311 215117172 526372238 561809662 390956591 29671718 527085314 713404417 729993662 381977436 240510313 807211203 460519329 399478697 534394999 819473399 730643308 580038377 328503537 44699011 445405446 765016399 275801898 885083314 872349643 937796786 948098359 531562694 956619713 163165116 427705526 983115648 992418222 668044959 814522211 75651928 865811639 136167049 672626058 540807806 723998364 730225877 31778468 889478881 257473739 765040662 440737236 701988552 60457651 199616207 915899349 381794936 639091207 342681176 81300966 424433230 740115099 56091637 291728422 848060146 88589880 47579305 621287780 374524853 196096226 996763002 499669284 244096862 792005938 37597161 862118644 809144426 551738771 267901287 767545819 899188539 385082667 723574126 483338225 225668948 779316949 517784097 982393642 668232731 251082475 926214928 746526866 254277802 606739493 914571982 937127248 805090532 997957611 237726815 37968685 121680763 16348192 105797054 46255235 260656599 412341668 71190392 194679858 651885560 459782068 826006677 628483158 931351548 859103163 859567653 489353871 357100355 985066721 992436176 101029450 214713166 776061939 556519134 300839154 391278374 148369831 974825097 2314052 718556894 601331753 665863152 1198937 99461304 327042339 13711833 72226339 29402853 733832324 764830334 971199399 4664238 828649023 466495292 327107668 811220240 121958796 6453008 592203324 177492348 97702919 238558656 251736632 921998967 563064417 396147284 660236089 381903725 205293283 684848285 462210579 34717671 548887944 974861845 383144509 864353887 226959923 959707611 130112425 154052286 357169732 174708763 516906421 33223238 332796523 783755504 331545820 961459682 886799147 438255690 666759343 661097471 566424372 314004554 441508565 998212962 622289088 30228938 306101925 251182898 117021731 203012062 294373534 954190530 421460745 722263787 521801841 475503261 786796804 887925518 414274896 891115327 68230574 871278302 301968070 567216044 842729483 908215776 629951113 599162832 369701230 264109821 729924788 613431059 852671101 80550395 793217137 239338768 207972690 514626421 561322999 611274713 894957200 828477675 686700557 552214639 901786556 674902292 720188119 85060481 254010673 346535797 624913322 719024766 335942922 530455462 221604791 451353752 598963032 641476101 306045193 827061949 664080339 430519310 973070252 476357714 862994979 997127496 835627543 356908070 271672009 549821051 376832168 939516835 782453728 257989333 682080746 176315088 394917525 985451889 566467078 179268682 291561287 123709069 715254121 444198909 23957453 634210106 71561760 870928537 867677324 987069131 821005505 760162767 709537732 951902055 647912553 812152531 361564226 791487748 599254445 169278937 502115849 871097926 732692455 716036167 523171425 168821043 892418992 862395224 162009274 842269109 536314131 728490491 641493119 558583020 373970697 274039551 374318523 960491903 345248578 191838939 649951714 878084473 938341831 570969002 465025918 662415825 560301855 808773000 722763762 102358786 329862690 732805777 558288579 300425331 496747012 414040469 565160194 1492509 613418437 834120769 792833489 319037937 41490154 877008507 621583395 91804322 477383623 735580122 994353474 463342143 367533701 422232406 782017661 273928235 131013007 719551329 374622481 908302317 83589136 638697296 11043632 774043057 509809044 492042084 275786017 685086583 898586594 303817295 923851311 765592449 355422099 83651985 403157656 432925806 781013604 412210725 847330035 862782598 721439887 742099557 996267587 409891465 184659900 373240031 535711832 221831584 30231938 598302609 437850010 312072345 400584841 203436409 397634950 446983037 65730793 637467987 404783536 546734664 892301165 368275952 212761979 654720483 915372273 436373225 830400735 506203820 292137255 742236656 981118836 487634973 322486599 546456615 363334242 606559118 954416525 718416263 922176545 899898310 856360265 491157812 192894783 972322862 596729230 831764535 236048382 617239099 788225932 385260704 50718546 36020328 447602636 688578149 545765591 259124638 543513471 578341754 580660259 554997161 683128980 661254744 750217200 7074450 377980167 575636447 932702463 676270037 518239382 180414733 561091572 652095186 823293815 632624162 940116187 447448546 702835193 10950264 928809353 530460432 58347644 431123278 237750795 182270298 48857714 937162766 19991503 696527806 441961471 872464463 475631376 38009757 977420867 904659098 933668373 196509442 624493716 719392946 602626508 458764686 584547814 177715029 229908549 424547468 558405533 680225611 896491406 981448550 255133327 556285032 763821381 55929438 925021970 546973697 215866728 107030870 698639916 731356334 783514846 514953322 996581139 763249428 472633037 516290207 156917373 891692022 856963401 570377248 97207543 176904165 877945969 151492109 150642132 281366620 434843816 791301928 672437167 654963082 712982407 159988198 997193719 291320556 700920999 875348370 463890119 819730049 310245139 645528428 948611587 204744945 134365723 483136274 96888483 791744602 838783647 959830421 968211090 6456802 915522683 330903894 522675264 335142761 323695470 469656708 503175745 720598792 952155710 390998011 863746280 866223526 260351854 911849265 402956505 78449054 809820848 208895965 298982954 459686641 964672748 384264568 311554376 635742602 566384084 814699816 444376982 804769992 940640205 513025540 907314472 904563806 711274067 266871032 178760590 863348567 396740117 931274295 581222800 441460048 46242683 839785780 596521188 742872740 100259585 973682088 162788515 342103466 866183650 355255031 216162072 775581037 185830393 807164570 783205713 764536510 728666344 195936180 588639270 677180215 962848287 896286759 103432717 247733356 393302359 795480802 93726900 931229847 332880840 280291373 131551071 183322369 463377960 616137826 642392235 439201380 396256665 554956394 47333803 854752918 21879942 85206541 562982793 929883566 198760365 209176436 57715958 359709279 441959065 843658764 763902613 519379799 859824137 176147433 727329308 834804299 461696310 688421733 365001982 265408816 431256491 509018356 908827524 283086890 758923125 354783381 347143603 517007298 675489426 960015626 33777176 50444307 309341392 872153195 468632203 655755033 343422264 121717368 573489399 859462066 184155586 787904030 765806703 498926223 145206663 607038814 375062607 184584354 123075602 532722842 942835949 510783345 420466878 397032449 273126666 152406482 62848712 824709970 382126340 8145487 788091835 127690441 739727005 299762408 800968422 213461487 97880366 234981546 490940192 311571962 199966341 107648396 861290693 830837113 563652199 866498148 364469715 480986035 698149037 164771723 99392788 788655171 109367339 696100820 194590582 171293333 752945280 452391243 455383137 458714909 245849520 739110797 852575542 760172762 35091248 262793327 521159913 703012797 316772987 492084338 650046635 837329135 110240017 416372340 691870256 259832388 279526630 419388455 394753284 645640079 99425956 459843994 955328614 106759748 102736014 424728686 61768609 846002528 866704421 858308048 245055315 172860861 146314709 949790589 22350212 78782851 458874506 34363825 139212129 176537634 45237706 183258151 553503669 503647142 840970811 686377178 405553776 868065865 752800511 298733124 154106639 294424052 204594478 465592280 169638442 684719978 927622946 217575590 906478145 621250290 713351370 409771178 713255062 359806022 948346788 481746891 744907846 239413860 110921739 2381611 772432655 765712751 276964228 726192124 510079853 905060657 299878725 826235444 497000502 865597006 574786761 469458100 605728571 913506823 54335545 860705248 324134082 903046632 324052961 941258560 205767784 524228175 255542436 68934201 847070746 67484522 966725352 54393319 572109173 46543769 877285040 222116881 210198468 264514035 817620410 734078271 349311084 154335847 747328773 574833767 789471514 516145158 160973702 143320909 472757720 915797695 162813403 762910100 377239512 535555761 476153728 61862005 769177033 117615034 406662711 924776861 231798140 398670689 794346260 319312611 733783106 968828143 391714668 454310515 647088550 116618769 813814348 63548119 77794908 913740920 340600839 483126462 833336870 805689582 25570955 854652322 869269921 764549716 964203580 754614055 212164651 658311360 104426970 547659066 786667738 40418467 111205371 313250420 958381957 976114030 919756435 739111799 282690565 155008634 273641292 934124518 415330424 498855874 344527421 90089713 162600003 679106169 333915142 766791420 281660328 835674946 585745692 515522820 92205644 450187615 876696704 483754349 836441029 953071958 787697303 353316825 591989886 906010426 41706700 213101326 492556821 819116704 849828345 201045370 92814542 275403198 518794420 870701716 277586614 613497601 931245943 159507192 456345229 689773174 978226102 71559259 360541516 27284525 783602446 392114519 996372905 468229925 323123652 624600323 165191988 839366099 8967788 230313095 757070820 479779497 973173729 42661878 121518796 646773069 385217562 393439141 929301381 465142324 287122871 280405859 73930971 476052898 750600507 5534831 479871638 880251393 706840148 875153506 845718410 381365685 245743126 780845795 473592467 162858519 149947596 836926794 873395392 189936416 472587014 80297303 302401600 9143516 277725738 55625135 926648500 153466588 825339993 519162 231238156 875437716 606400191 341137674 68400716 999321863 903846683 840061436 268843973 665875037 924352740 999525472 687173758 949050461 401130812 818258716 597206840 675996364 927016262 363633993 645900060 28024583 481065233 522105045 688948184 753080953 574208066 80461630 218074703 74914088 622942096 218707613 273624595 395829315 228272525 922416861 840992399 669240940 881971401 767844994 855520746 561918623 778212409 555346289 169867213 897550290 518070188 364287519 753452143 965201842 936103596 226427380 213956149 326129357 780401160 910492019 763776249 819633972 87780175 520463032 210668517 966840421 578139792 313753814 562313336 847463826 9023889 187927348 292594286 615370442 299396203 818595714 537747176 253293557 14798461 855443428 547608214 774396092 580313018 865411894 914092106 964543460 128362564 493055575 377951247 505942593 220611367 587009297 263510675 394825913 445000433 28057133 347763150 97276276 273560541 32697328 154577188 875522594 152313042 970696334 342580848 275366665 323217634 957964029 384857690 974287278 802229047 562950043 503019857 869386792 883951513 198372007 634211110 153209446 105013406 421685862 708903523 537482444 437122438 304728636 427765877 497244232 441328879 441991412 354689487 135681733 298141622 470673557 617674805 109446057 873830626 603811591 271092627 872881354 691578348 631327993 386923215 462408054 650720070 920349197 922103814 703620035 540717511 786826455 817576900 410103601 769722404 221632723 855720282 177189173 983758868 583156653 933715832 562085435 841723773 295358756 626160516 41141785 552571882 532744117 232196055 278832831 247757638 563198454 604527033 265151217 52856458 725156936 28970573 656196712 561345388 11208825 610082093 397032410 200015233 702935370 706588624 196653508 245128163 72427846 280971654 120101631 724902860 360920095 810921383 187415874 607328760 676310381 265710632 487423025 239642817 35428211 679722725 557624547 543615653 70840199 424907274 979953820 922972809 135675043 23042175 353587749 859497700 944389387 776745028 859229275 61058431 331693191 841421740 538629088 117898476 116472301 815502123 588165282 569078282 831480294 127615220 487920707 21846873 618759113 315499256 399817443 761617424 279795200 895733267 201542455 439590341 83680961 880767753 621266787 260343293 775063308 288625823 374988510 355922054 229505202 194422901 717106816 120623280 827695722 966255753 227468183 671710275 784899091 238147241 651322843 900409124 3010422 299180902 31221183 26788541 958006796 883200074 51486824 242852571 859385519 314184730 713354089 602838518 494758012 996862233 178718718 191599933 923252659 700241946 256102123 799348757 991813275 692065395 732134737 181587107 22480516 78448318 422612010 533045867 554565226 640152598 649297033 558443578 672729507 60171785 834505324 635376300 61045433 457278752 112256808 795218296 792203046 239168757 374409440 797193535 324503247 805484655 289134422 845132073 818803505 624013462 569446514 645660893 295541993 953760303 146334092 827334355 424512001 412845588 282118901 132951891 751578242 522788143 727990996 616424357 919100341 889235439 895171613 291542210 139618672 143963599 825353107 764000399 692096958 397840287 741346843 31688691 19113909 246834946 735952333 498349209 255859174 784164842 227980994 256013849 560050219 382613178 582720702 326424472 584684184 39043768 50400353 508588433 673657276 61617865 498851953 691767982 934243463 765365887 595380426 512105151 918982089 324132853 47190886 619099519 166472979 592356637 984054283 398088888 861996411 509980489 949734292 732086894 785842939 366064900 746577277 382741925 372956574 117870040 32889553 675101757 207959992 309932669 236897622 100194924 325800272 427998082 607619171 678755090 922900521 307328681 201968930 682941663 943827602 89087736 788764263 9231820 360232603 301359350 157865711 177148789 277004738 151533836 492417821 795330721 515360015 623564800 543148806 127581974 245264925 833835448 962035471 313460959 564181 143561897 354940337 735891491 750520611 398014127 348432097 311404039 288093658 287344525 363163182 705990873 638168164 83200068 33863062 89582654 710254589 724019935 713633980 135259498 93681936 178486050 262067718 793562486 897606329 695993127 674743620 742653650 658595141 520612874 302328317 449777795 698323552 969948221 460756204 54681914 736537189 390014164 907612561 134068378 887598751 513729282 285323525 615151680 366370126 609731735 584638812 571272649 106299813 710819989 354044045 94588905 562884604 476532853 409006792 472549652 206219296 733775830 366374987 822994089 462611521 795742654 119811738 2549012 70625805 513985366 344431755 158910240 114634061 524173289 792926471 856339486 784479604 281764406 628137681 378028405 283726452 884413994 592464454 227623332 546722326 950515559 127286667 710517146 23998997 117843693 179902399 758030730 200726267 186469055 507216039 647019188 388170776 47001067 491649368 356258455 408495791 847961006 506251728 214071318 705908115 647595426 187607068 913089346 966421058 951366451 38633833 794884452 55057689 487574156 710837312 479369842 818044364 970564930 320434372 283182751 78199991 89427329 635410639 70211883 366157992 949738262 628215453 276096929 595490453 452927552 152469870 324956480 664565859 167072580 156895252 644267203 122458081 481718422 720545309 422794890 55421423 392830745 364046305 505937965 888176028 294768453 886431060 472823878 458499721 883617908 20995255 512824028 135023243 477831192 207662544 529573114 192078035 9816367 964439392 788439196 668824981 610357866 363499997 504286716 807665558 347547658 957164388 723434243 956273215 935715753 484031575 715817562 226179558 777249393 673711356 330888604 399891247 677125025 51071704 377739051 461859338 400960810 122712940 834321855 486272952 439701157 426424266 307727247 779946658 884860664 27811688 912706974 384490825 407669354 434267762 116129617 144273599 872907973 495773946 764184031 206101423 856524840 522223263 351691832 139543738 457711661 918867487 780570490 968999253 135510465 575421121 303451102 797282690 800052664 915118396 754585061 899373377 37452967 380929112 675437871 903783216 63590918 161729816 682737039 586535383 467052581 842548963 118686176 533710532 14479688 578627024 985866294 730108444 631560013 504462802 265093566 663474344 329317868 553293324 882985577 189122416 745684247 121680875 787039622 22537997 73328526 1423057 172358265 21763938 628903700 457733625 277391851 173087935 623404925 476345692 427729553 660232224 600671391 417220250 440286992 867211303 382583599 55658600 223874349 212477701 53431477 373201674 443363422 860933268 131450164 308476840 595719069 81698401 634526957 329837755 949843593 643017591 386665389 140194404 255876897 811216582 785198143 715016191 974831845 101608099 751882378 655487381 402138740 470019203 996888955 507341600 355162088 908700245 516444696 623167404 326647999 457958873 658690204 79054405 963284176 299643300 448700004 911150240 125646219 392930414 124680644 188010579 3074122 128105994 550475998 613147741 484177673 379864893 67557518 981813824 835533732 927683961 308064314 432476422 5652697 701496031 339529052 251590914 662149440 313443869 268880761 997972893 817243887 863980857 373394864 671203968 818508871 104726318 313183980 622711044 459170746 238412128 877631162 442170589 633655094 152374206 632692700 918432516 848825003 667369553 101611922 157672443 399042394 132713167 305783404 332960465 580710251 710698549 566282645 887144221 513975728 457461987 977953969 755967435 97069344 948663898 333250100 113147640 501273328 547582959 674125365 964322990 394021962 916478007 794208127 888416861 53554971 198491042 409696572 748139909 106084257 889742997 183695503 68961171 68567500 809311056 203344194 631485494 591349689 107466198 153965394 974410191 217264409 361788875 348057142 236031701 31019477 772707079 501967201 887753320 210798228 708096837 798542946 89306134 11163181 515170158 13731889 583481915 432154486 12780016 729382839 897690644 19573396 463720324 319785720 504876586 397066791 389530193 196521834 633897165 534869232 668277374 626450543 692467956 850429140 61746717 545152748 933933489 241231341 254441370 575346845 266637402 216680745 472199411 813406107 80911316 552911912 14287192 837291159 226630700 848935789 960357651 77569507 443705833 41409398 943223488 486514800 329623652 171326346 629176254 512219385 806710245 952326263 82448802 442126991 420903462 214275889 741551485 843769127 503380965 845576220 228701841 321904412 846105286 584579767 205103979 894440865 520138433 796785465 596951793 897007014 665733678 979951250 978701455 343785256 447549941 934869996 579961510 827574386 436507913 114656255 429182180 194850937 815374543 856327067 646663269 787199582 746812875 864976148 805405511 587648004 186143439 259179452 707021674 761257394 955879818 473952843 142082890 468253708 505083993 380361 954673938 843125483 316118262 209016214 638363442 315741746 512266761 428899586 638113301 437225732 474802468 295600752 271631777 631099186 437359619 681486892 567559930 62677029 722841851 328599828 613075219 30085224 90386823 316981048 816307241 439154673 488663594 806355326 192781038 399194084 264129308 329081102 307336469 916158419 59826291 546449937 724543230 333730037 419866866 477246279 171308145 332860211 588120800 377970749 605218146 91092535 536479219 328096988 656115119 266313151 426660131 278704482 466963512 60057961 738357296 697903869 742718334 154551343 560161030 387497052 589680195 111335574 96885417 310163437 29391595 225921649 193408888 879554358 403192097 481445586 45949065 826802600 733349560 169453412 962358285 223335900 401699619 830454136 161066460 720655113 90110376 106674735 507636359 513374645 906833315 474436230 900986200 901247095 765821732 566844643 712501146 803227558 221808482 842516274 697135585 145837152 559789821 661840417 610204766 722184470 30600312 790581648 468622520 110291284 94996413 337742513 562806174 72101591 108932255 442471628 464782894 15914862 339607445 473183844 412828428 236341223 721650813 404985519 936237818 779889941 419756675 456044915 873528576 366479975 390298057 572005236 911304453 488192338 371577084 513880846 147242714 749011290 584753396 77622364 225217643 702566194 951156610 396920938 844881308 779748427 549660006 78550985 481606376 671068536 558254009 962483093 758146402 37963289 215725789 359956160 755500301 186521525 78344120 484078010 327756484 924059361 987310378 856845756 198476162 772793764 474123194 735569885 279866458 643377096 518952034 568257221 691250442 957216521 447838009 446775800 252150040 879189588 712740681 378688668 172142708 533759960 726977318 963163710 53179622 458086235 258242945 579512068 13587721 37362099 249648833 152349241 24007881 321819180 704838770 949830959 492850809 951674364 322157657 721568381 673847992 478421458 312614385 513871987 261439295 932254018 237237232 868453519 963956472 763010366 897725692 370285844 743281202 635065830 651279024 809027598 467299099 770607259 424571395 498075209 932640658 652779889 720379701 333335592 378227812 218398356 115598123 482654049 185650 412809024 294583433 553648587 766519986 948770454 468833511 144364427 623718904 90535629 362231885 726807928 576639700 292434448 857170847 578380738 832514442 887780316 685857252 300198949 948968041 976859110 442252144 634281136 20335755 403556669 942808289 347723086 573497414 138223195 942371449 409554952 622138015 987688780 662599696 971985082 179075148 736302167 455688354 964595768 145620496 466246378 214500916 885626937 421897798 759919282 670021686 753808666 520888437 219269953 44019441 811059443 438245224 217300481 403295137 268159353 390166068 768725634 714671065 716486228 839135040 267104664 647430251 20004437 651078492 265951259 472744262 154785664 662885799 281032675 199700188 874735542 834014355 750211509 780140831 729322577 161493457 915287451 602107980 287858829 326754631 337445778 113188240 492563037 789640288 488528211 258723274 291185306 322683959 332349668 276309344 98304122 113362031 749617019 165023044 4212581 542733683 753391554 164215158 864155640 247273139 897696440 103719040 53819088 934977595 242603847 355973282 479164044 68428768 994108091 882018033 617844985 94625333 810390772 895785109 708636397 704192719 900447379 713205229 768217693 194204844 49477503 890027748 45182489 989474144 53310227 417771114 525954602 817141142 694154068 54024617 702805352 862203228 351592008 413789543 460639938 456205807 13033659 942263286 375883887 655550394 582954636 931350702 3344797 137428766 305419414 103331485 1847091 59670976 346780252 929712572 126807159 361399428 43404117 298141015 808846027 442990850 412761145 777176484 367191424 911791929 638428154 902996515 555667449 77373400 130208093 498685863 974360125 81978522 786978545 874080667 666079322 814634987 338626651 490868188 718757387 510116006 552987233 396325394 701397691 414663587 301055315 142412769 687628004 222894199 871724094 12696500 509697493 480456786 546335913 2242160 593124062 905637569 214644640 457374426 570978592 707550740 903907420 331684061 564283971 622964201 471362945 141917515 867876572 119447617 328059490 316284632 75845718 520817318 849449921 784622223 32054329 416179118 716561777 19854055 361254135 219474390 521124036 339455575 167129038 80208507 233729567 326099315 965213334 690981127 443209577 676826511 306447373 193681253 550876499 934903289 222196622 997718413 841829976 546106252 734986683 450868925 477007484 803218881 157438456 298950774 579706519 103045550 698349104 781499674 4024274 195003910 5145499 202620276 743247202 774562120 779154772 858759959 335188215 179188971 722882009 106143880 954853757 784588384 518315105 670127674 914860396 914606584 109084798 150606532 979797877 66189337 898618844 862135580 37072049 117849132 802194744 860873065 751845579 555747244 816615750 893373456 562654918 565395449 609895808 197020756 648371052 591661692 89444351 794757663 824365785 246051020 802117498 948501162 658645223 181871502 344333779 617284421 483787317 483998749 919958156 325616532 919496003 832556778 811557251 343095954 869900708 737022492 20137785 340486907 408951535 741673478 631876637 738823769 515542912 148712136 647282836 967660772 767050016 387117610 99296525 865513962 705152085 533019130 945130325 242850931 218152211 311841085 504304467 157002922 244684711 316389344 127160615 184550970 712769131 53541470 418340787 497285136 739752517 159526202 727460246 330718731 151868704 361692065 176150374 193542926 240111739 575571227 467627028 762042464 439359771 672513302 671473374 618872494 101377864 316319011 234361261 58611457 395674446 181884495 223377212 869374495 722257078 214273446 464781199 385670487 670889080 483075974 629356697 544198618 199521534 860800199 109416288 961330008 337092468 373441103 839006523 299066348 342169404 212345026 985957634 118532631 7936424 469596778 64707800 149505837 885895985 301655841 425445930 157570848 403059449 663336685 621831501 894445950 942798019 425857711 10032931 14749160 296500985 547255223 335659603 913318866 279042622 831937360 406495604 864420475 924833829 479332647 836663280 285614600 913880452 598610808 535879792 389418410 283729203 635507764 426281204 426940723 312185200 453018516 750706330 637193912 154696006 463059808 398356653 105591894 609520468 938675891 712975809 248205510 310328466 250460051 834677252 360103268 647117946 761535958 592153040 214601098 704085162 293633378 553952349 959576385 110562231 555491176 585500243 782644638 515554490 429041525 903728109 81766533 668306533 791044474 436096992 505218505 357000526 605503899 475919186 378140883 148918771 3736955 21458378 835577566 960885893 445668615 108972731 499988423 122774469 268363636 402433298 774191149 713500796 611712662 376510714 864591860 659311754 122188595 285985314 737582853 601354449 687698408 499945023 43608271 8986604 615674679 738426655 850968886 474914674 827919570 725242411 317635421 950182050 124359531 25535562 408249216 200594785 764563987 410427952 479558348 663792370 447130019 949126638 759690117 606740084 287220129 265838440 297095350 525959321 714236380 505511649 226404706 353502346 853011633 712134327 810794296 709680211 332729230 317647103 577610865 229950220 92509946 401029692 959105002 131716694 783720345 850699320 877016922 595499126 422746319 204755498 653490937 320581136 190947447 870573757 705135046 662135917 371336311 939563628 629191974 936853639 449526169 178002755 545020424 746423778 321354073 644170075 281259468 121820595 976670362 120154189 204155912 287248255 238886592 357507455 245097972 747196348 30339044 251621958 36679883 460961619 732836179 479975688 441495118 756117567 940857308 775073866 778073617 922908850 590919757 13257603 810917104 725919668 894815358 792327628 509787357 520774372 289029767 348772760 610673883 525192258 776479145 97620153 225936555 937997824 481755339 935399848 640990058 910927940 257507945 543187311 130142729 993227058 930145284 728083053 454788848 244811535 200897811 330387411 888163890 934488343 319531948 774582139 983787435 512402550 82443897 190567954 185588713 713744982 574363964 181315590 741618656 690037442 335820711 630227236 392773534 993805534 10310799 488597370 645351244 855114668 745808191 792418159 721680238 897182482 201967130 273857783 146028247 681815944 689221460 987642899 2827211 279544791 6336159 19207688 770678028 925360419 317802899 897432215 308572284 627938368 896168432 396886784 910113786 466359195 792623278 932239809 234353237 794425001 432153223 990886046 614545399 523954421 465508921 83752406 316685866 825713779 178268461 60611656 796947044 941650076 667088247 938424714 54318190 610359758 856606004 995747567 80501527 416924721 125241034 147651784 619008942 298575596 501409019 958354777 888132558 176317272 862344585 664757675 168433516 439582894 14068856 55279831 817217926 909859464 790209689 673190607 644515140 931190629 628137887 195530498 781866526 775786087 207264065 97737120 945523009 331601879 899221359 230450656 364013042 278178081 733905031 699190451 138041562 75159169 390195259 697470080 813641615 609569965 245301590 810307108 514720025 517962897 210698109 995416919 531041794 983346898 795355038 420437392 681174761 307959800 395905164 191315886 567106297 453402398 42014927 98205675 269189793 983256885 906765524 86324566 166205206 653703816 862717904 707688796 152217382 206734937 99479634 598706047 438316635 889928004 696573388 20816399 556615208 359393278 873838391 203368444 427798189 765558664 542100100 953405262 746018339 194131290 329884596 462339127 638404288 285434545 302635737 517921205 942874986 431009284 101144330 361315319 390767760 554594501 936118727 681276895 205022358 39466239 298486065 435436530 503967262 235061193 473356948 425881159 250998636 371773974 271073842 900644758 129129481 884208938 315254898 866942304 242755584 918450027 630653708 461976303 560227592 857283684 408419843 931140702 128897779 638372573 754842991 677654658 977953055 398894284 536046654 26779607 227230744 548270650 333583668 379340870 541173640 439677041 126821247 716131461 337388820 125999988 516835764 874590448 315732585 765439852 937067773 829607742 161190077 46204413 257375239 730673702 684926593 491017982 820593566 934229547 146237796 457670912 993629235 978402582 598099077 14569761 803528582 738374030 631856645 856609081 625466447 670380320 110531648 300159867 272663924 757846635 655029975 523368056 832810349 931515155 544704162 59825355 787430171 433223166 877575766 967648138 296019845 456181927 497792037 510954057 867961272 11356885 767001937 631844429 109157655 862818114 254684572 550607904 296752221 279871288 432661845 296000813 433741686 570528032 97606263 859753106 756358466 645933774 600596339 720563325 14547128 492857564 598587448 738726945 125287571 734379532 45776302 203745265 728936224 695208255 497170570 564538219 803963191 946141255 702213949 132379554 616709914 935110946 655659408 299498173 963643329 526021839 314287220 699761825 44561630 652490547 68248450 294932934 558163367 17567322 234932625 449001057 301108346 631735582 272450996 9226498 335767747 252622900 648139430 222253996 821792245 803521238 75352808 554097124 136480054 318539874 979421859 176552617 331918866 352507794 70763310 252239410 755699073 933444340 246171064 103610797 267086933 235851254 7160880 788537824 156670777 726038235 860329246 81250760 811678913 332959391 175241607 779596739 308082718 637968278 909694016 549096475 544628102 489297692 105011670 666692427 147085941 35389431 888948549 97478405 840110075 711443592 126578584 521537232 304075859 453660150 572623718 282409726 439468201 168736315 50843867 194319861 411678647 718779391 525031759 605018952 838798194 500287978 198430664 818202159 123666183 578893229 422294410 764403362 964352477 628449890 480469566 779190360 261563627 231547557 228546959 199790544 476932642 123436463 281996944 14866284 80823934 733728137 334705687 315113820 349009028 172871540 969963641 513339251 572668207 530277334 926450963 689071738 693256648 435837443 310863654 763041480 883409995 542017417 586309652 776277701 803347771 933815982 974093608 252032136 380418142 469696002 603836521 544376931 685502324 468463135 910233934 712454431 539496403 728787892 122467857 834887096 61194547 688111379 879348558 542701619 689141882 856702255 377194165 256508293 410035425 745927797 974217072 277670944 425484140 399489873 701166571 353241460 577341353 826018583 977398416 554492660 237360902 957792517 680865806 34251516 396704107 908656452 503948631 577402733 480175989 599436378 929899284 162024813 580541663 142900554 339660744 615941045 307400099 733990157 999339308 832839670 848782957 575883764 953662934 470425111 174484308 936608634 202996136 771395894 109500982 367053449 109110836 924990488 427738460 537547296 744382886 60638652 66260237 814027732 413632425 696811369 632265998 330260988 309459234 21878651 437560273 93543422 203302466 435448239 837316327 551095645 579753883 338327154 310835111 926474576 312787810 10334576 67769734 725551451 414037784 411154361 624586994 643517555 518901816 903377685 890563993 909037242 829770606 115558750 999944535 661090307 747611929 674998175 322583871 490064107 71927915 948482570 51637003 555171782 233743846 217100343 767004523 205008247 344919965 210436668 635844759 204060751 128551507 933595028 693383493 657506009 758530354 533644152 776942511 384084034 208388691 244799941 803675918 337476877 226189410 879099436 424444551 840080732 707501256 216488989 935098393 964022260 642522296 23985773 322184238 815391142 927959598 368234664 311103503 960687280 33653841 748649809 651931883 772413210 208049802 621834429 135302770 195674534 868974817 388095346 321718791 973831450 882205097 305360432 521115721 655695557 800186374 186181129 658413540 513774205 151485286 656721423 404034625 55550807 616438647 53301313 937761291 377480160 589284941 922217859 62195317 513509973 855943024 391809692 346857648 854410492 80764572 432810894 255262517 149856647 775993649 734618811 647141974 85226119 219872774 345809234 663678254 525607524 843126571 822102373 875369466 709380383 453887343 320176526 534167067 572081588 299379242 784670460 709214087 103995317 559984576 4996450 509834253 901879679 858116981 856401144 623208686 651142572 545206843 428123282 78345352 153156475 831691579 597700616 20852222 83669054 797113682 824964594 952036088 540356257 496184036 102534886 371188511 18132428 396309010 224965124 930258824 687345818 684419574 296826026 671038134 895672462 56516008 273615138 963654888 389381039 758482876 440800335 356347311 545183633 601727009 85769297 819371565 803934107 456630897 830668383 201377592 305474802 296172234 447871718 497316088 41181325 43181940 446362288 880016171 158813209 191778780 69190517 396631269 5179556 893893383 605606549 572941747 690782303 655596508 937767367 123409399 501099835 487390139 666859632 319848893 623499031 264741395 520150905 15854611 801482071 556849886 524111466 559828373 172162629 382224961 663500192 75676624 720753528 410798714 867644571 513199918 947959984 927578924 69325239 306797187 143213580 628232054 548337194 60941041 928619910 899143775 47177801 748554283 4785071 498799929 436449227 475995942 42132663 331091406 463391266 803153655 273961895 155244204 750114123 76803650 416161611 230310923 529919976 131674264 902613193 796323896 657147268 353425085 835473572 105647218 207873307 536909285 875985931 675272331 382344617 409064963 738666226 107958565 365670552 943139864 279426491 281983822 167375089 960108678 550801602 882220848 362711681 533834247 980218485 506760724 539690657 855355493 779237374 820410039 415656020 194205288 908525393 831886394 324169193 277748394 838238801 647210884 326194630 350707624 361447563 442063860 496715268 257397434 229610439 330128619 76195962 869448917 896837570 734527858 813546742 584942471 178591005 466508336 912960077 661428080 725503629 290647554 352068865 597096520 418913894 134473225 383612808 344538044 737290956 591604019 496635 876094447 173449908 616533949 415239540 7124092 239314515 265847388 220155373 378155739 690077886 317704595 893313842 523204408 574401906 907379019 397901250 296500722 672581636 676786640 31117926 855877461 360285510 658783355 283331381 309311851 509722892 491973233 648640395 250466454 554640770 313052213 954687937 511777464 987704966 129463913 513241737 263197422 432880697 173435432 108350984 902565835 386451299 943770257 627256293 923979312 538742178 443122691 452956119 141690970 602941707 211833884 86580278 728538613 969749143 32698386 71865338 900119405 557798735 246555080 623178347 872326544 77216597 724959767 854103454 258052142 480102649 195905375 499142646 472051532 546705247 767857803 786972100 651853228 221425681 708580204 574839727 124514595 300046341 222546187 891494230 589846873 986716221 732665008 271124661 454530701 48619716 449972411 987252865 912290614 188940315 229765990 618857746 392198432 321387650 437182904 703801121 675444846 869894452 448137601 331503828 715105722 169636466 77844326 108592452 17514940 546120370 389520661 913825209 8087125 701295123 215981435 615701355 572405788 580338852 268297577 161191574 214714205 395187105 582834581 539756552 274466354 598554912 933771653 684658548 423626589 778221171 485569433 818718270 603697090 468065876 505466686 474738905 957407821 857405670 716681922 223298988 952402391 348443186 728294453 11598745 35426621 72142651 591609019 252207558 439949989 593132513 63482455 868411428 764939177 707961443 197372586 553498456 513938297 185407868 820630755 833602962 353472987 678510915 528676957 261966763 320423150 792083184 521197087 637011610 17751045 110387512 471821930 996879718 605271001 511685964 890173205 945342195 942135179 489025898 645498274 298091295 915403056 92750712 5495831 628832499 633065622 350500961 590374245 123467528 701320127 187100127 319104550 877882139 496835770 956493888 524507504 220436200 39689245 586417570 176347779 365842303 378979853 737436955 424012666 440485938 356672124 311698572 83559232 657239955 902500077 496970707 411280174 335148906 331002589 657767083 894411039 150328465 769801760 488699236 431166641 326895854 600626955 359044682 471871011 1212227 776869192 450399209 842504043 875839846 754462126 74320181 946125889 894590255 596047401 14476651 372713016 2595982 273972195 308315137 588753633 854375710 623036733 183055272 608551079 478219348 280636588 649832817 127912241 888646905 882959291 836441884 716706534 340603849 408408857 172835604 384192988 953322288 12408115 547955323 436763713 657888873 667772195 543672338 970585153 140018357 266432606 545141282 794761258 520044855 804233863 456764252 741204763 711454488 589859606 855026131 528736275 422047444 592309482 134557621 24549784 369259316 76214387 8608704 278877452 4983248 810157199 838390395 806182320 866924914 887132763 119171352 408877291 222075233 350593245 640367536 307236940 927032654 296893161 175230757 75042843 3991513 551072304 368435874 374529493 345221201 379387864 473605200 283611054 606695678 446836856 790980067 182002579 756189687 757269362 385984634 229944504 420223763 732740476 702746551 498794245 639860017 585472877 745683904 644615798 888871940 250295319 186867607 627044287 119426667 140942635 912951156 859926869 771568057 616566250 672921059 227927175 864587610 430052697 918158076 889797511 853933343 620124486 688072664 670148011 909200587 57704342 989256951 260446608 529676303 976180754 607838883 861939472 647948319 563380872 432908467 947416117 949921992 377363640 497174576 355685709 808448799 262236175 629790505 134989440 742400100 477176409 429425833 379692693 493107954 855556948 428055547 528505871 901130415 466080217 52609186 716552389 470464228 854608354 635169729 390776122 638630931 928061444 958085627 306716437 923751252 495497550 860185806 893528172 123977793 486631273 903248484 399188060 760283178 685256654 731717576 317930267 899327105 870693652 334642959 341032594 41939287 826696381 355988988 664673785 837482519 266972597 156828949 242851636 520674033 256773500 392409738 414674923 486897407 678567695 648171450 313530976 361428686 547648325 431298315 27852071 715120154 565393216 105845623 363182575 888803083 376114902 462526053 975814339 321639639 856436833 498717413 65980824 193372733 788474063 475259613 759339112 781543663 570650225 574699308 94370458 679245396 506502488 689322439 834690072 654338185 205182485 289721510 950743109 54542808 352854152 409914304 569655266 937922712 466867093 926644955 486361510 349878366 834301337 173142927 924078483 198820067 691473133 61286665 564044662 976343606 951469084 955040362 82038022 276798667 32500629 246794520 930224164 181167498 538163281 18394314 346838727 573027448 388086697 805421222 922484811 254273582 615024454 17905894 760807909 416954537 99288045 934394509 690523791 230017799 46387917 750359281 85335373 30609135 566570414 143210205 169692240 322806418 101178973 985644245 365898512 988291698 737693063 310142184 67999845 993560501 972355559 21509679 482207667 297614792 88042533 98340815 374678940 924298889 20262889 899505676 896472054 314200103 131874213 182727528 974092924 898122997 964080090 506483698 706325390 591149 206035170 581027187 929671617 888906896 113677473 559964132 682421687 252279632 585212197 912363163 186257647 306958444 291727362 102445297 989937518 792609773 132701025 506318704 156439088 71585109 707918901 830847863 911719887 278569094 534698647 989969428 287282133 880540268 69393653 791806784 779348721 807720388 984975482 285582365 488094783 844210494 107603303 192386232 416347855 229491637 692635343 244203595 486575087 524945963 787587611 656042430 289351506 686739634 543272036 823215021 159660897 858213129 586879154 78856531 971808962 108047252 648567349 754486199 791998921 261941426 136382447 56182254 371015540 902338679 228560732 447069852 229578674 251359208 181714387 458624649 410920966 608569700 672441999 855277246 584049667 612310343 525067451 831300194 895751833 982533300 213611074 147125766 919476599 722878211 854713265 988893359 40185577 713962457 995661791 222087950 321808811 837732868 787492411 649579993 535612502 731467699 461058069 611676238 146280827 827408472 437640459 744627856 200802876 46531343 411676773 494699982 72326971 812650801 7960922 192716928 132029435 995579716 438802441 515457984 25991867 304269591 463995955 395826301 85866552 544984028 99807368 140977632 883947643 58195592 664193429 899630974 573383063 116888525 619934981 8293333 115769939 239864410 76721148 636030719 17045602 349387608 698093392 292790577 411974803 11605582 571588550 711695686 193216190 665652310 440779983 633348941 124375078 478094760 412685019 811777811 495432363 817601188 501570360 391557270 206058996 727352631 80276495 666330408 741695979 730621497 525738567 386118182 896563886 127298820 270521767 437088989 573812169 264248353 730716875 919747527 194932446 454325993 562116081 703916231 663111021 781618573 912666271 675999901 16538096 300756407 786992953 835473942 867615521 306859917 641239974 365178340 954117422 773545393 485377380 618059212 490886674 486832374 319508145 802752657 330874293 79960803 925524488 647355123 686088830 667066531 191399374 985161631 413038833 222643775 344089288 384453128 836562110 14440628 271945946 623997894 385549049 465749110 711194565 211967100 811329543 400527354 742833576 789082842 199848317 592613981 642020796 136730425 246744374 309575148 385385432 210106889 999706988 270633006 530790853 637092329 736803009 886645814 438717180 726296377 608002747 205899338 379457313 97803614 676344250 703803016 990978278 336755649 249054037 939463930 737898946 656867473 433877779 273378454 640531555 46167206 404224434 779391604 630549498 665799859 53018892 839145655 797081867 275755503 443096880 370095424 446784758 784179294 42212588 941457199 935987473 89337024 63518692 860498113 120115867 954240414 691190019 666108588 389801537 651554091 124510812 921194152 164467288 666226432 929808105 75888494 368824307 295856899 329452876 648608472 981155226 2619247 966093820 112945918 160811047 218549282 685528081 322754780 7429206 334484505 742248670 29278473 303364831 394398721 920634990 130822970 500004982 247161290 501837197 653323125 749936625 448980296 782092143 39861505 494238738 788231334 74434274 626652822 213575831 485822574 609865497 682270832 798306898 896555773 233277437 773904154 883664107 756446174 558440762 814084021 796788127 545789044 298796426 162519883 555846106 537471818 451647919 796399710 882239773 200185369 827540551 765694269 938552271 271458012 100429373 39614421 916357429 36921618 699419606 91361821 345150391 280409740 500855578 378241288 677118685 717061178 128016229 317554133 8699044 308252864 574110456 124201872 634601237 269176821 403614010 788060049 634568933 190266029 565699224 543846291 588930419 991488858 114895900 869179081 922669033 594928707 257828089 904850760 445837556 244551589 646655886 997580558 858298776 629286343 646769969 541455016 742783559 463598609 870945659 87973573 826430458 273757628 133595955 950177651 456511136 935513374 476110691 21736796 354758581 599468264 676273849 797938246 771552296 695052812 995333016 722696282 148151435 441448785 811904090 282091580 141039633 415927335 940520631 578682841 133912277 946329522 598580403 32160860 97371598 996569860 989691301 792353961 533245604 738890562 762694911 632958566 714684874 714577806 791018946 927002520 707664326 479395878 259437995 700978610 863342802 83491756 337736008 228941405 296695021 732526126 452401528 467944281 233937015 449212999 764976077 736210958 528134882 928500430 116818683 993963967 910538295 609162896 495257609 6222755 793564088 923409000 69479062 583333646 80945619 208754391 93350332 549292468 266584439 366573476 546160937 148245256 154054835 138300867 124321102 21829429 758399090 10625466 512233994 853291780 878063142 576846704 677433487 491427889 29776248 589360637 43054265 178756700 484184899 67391525 600740058 756753588 57237275 389575490 950711486 595716882 763965573 116512415 380137654 131244537 362256825 90834146 813567267 245744732 146722795 825250646 558850536 337557399 225924476 220988838 952937045 383278782 946701317 709034484 493450251 596359962 673435551 206039998 398272510 484445916 645340215 243509898 188478252 534823018 753593511 458845094 837790581 374693221 93912109 393395603 345833892 278780798 440761577 559683949 437001769 919467893 127917926 355655962 355311968 402239636 344659609 385126182 900197396 556606265 863532899 503052530 506060152 334676728 56826399 594619005 761231406 502950697 494454587 889463209 594596862 333976749 189488721 614079241 159856662 335041151 958238519 473009272 287032905 350742212 517514172 593988639 650581377 912152198 471335415 549306648 395855923 102773401 5022416 253143446 825631721 221286346 638172667 287377355 956070504 232285021 480479461 983587310 611889856 170690069 119765640 863410037 765906108 781987972 827649364 576819037 311709306 946327496 217084883 566612196 210506696 696773585 826966843 331773159 823334752 287958480 430211785 731873366 282081068 343737078 560034396 405136056 874567683 733310649 962375641 379433159 595772304 221253367 441261530 515884397 164076290 121263097 559608338 841895282 334964534 838325810 86545787 731054256 522810576 474813641 49221310 751001661 551275690 734754011 511828615 142450114 221058590 887842990 540692886 97833761 807998376 991845445 93215188 143098116 301280378 542585288 939379017 213435093 842161019 426941645 164083994 996077371 690302172 545327065 995526051 82932839 972125354 613355425 351789815 439869387 758940568 624836859 988210421 423966829 445878763 498265099 817777399 348843208 976839634 875737116 884133191 73321068 648422190 492311835 751865131 693580347 692062054 472015226 681322476 834879497 700971071 198509009 381791812 279709084 958818095 117866370 319783421 310676959 64554477 638481130 373019693 955426427 685215393 121005225 218011624 287479538 487452774 277536484 520312847 87580597 557049417 341937682 971792556 222939430 976517933 60445745 468944634 936403049 740299288 255324943 636593337 453766218 412251521 378578886 319037775 391634356 87319689 883939124 304314816 737428563 209419589 414286737 688785467 346075561 516524235 900772317 305682575 307816915 425322909 268252261 64594416 783818592 504153979 362556329 551502981 574087305 412555520 436056115 260363734 306654218 960684063 435244017 985752209 338687676 469037659 159255750 124767409 490032100 913576372 21229775 24602117 348129156 458053362 918013116 445813929 78544527 588015418 170712137 4396443 541811262 70254785 390731111 860752904 891321824 489402837 466790452 117559912 871622186 191503522 726131901 446689684 207579303 223391382 835860377 551824714 257811344 951740897 418713761 696301368 492325025 696811415 330447609 590213499 766241129 375110320 703174049 796012600 521710520 138514948 853697635 268166537 489878070 138546253 557823529 102703500 137505940 393862963 744349359 438579254 23315264 902868384 753616671 504314039 73896509 841748604 939272365 302425857 423159502 503080706 803239857 308649633 750321632 479528129 687583286 295020549 273474840 448927428 147194535 101393721 968552754 642777768 245189346 673655882 226524392 513980137 893482587 72222513 693618225 645598882 220518426 93058551 374992244 2651855 604493048 471558856 551841909 238357542 973747170 305447354 794168815 494534794 53450932 248928689 655966066 533691264 337249770 180255442 208375431 638216200 226041544 207970652 917727227 324890047 974049032 346619038 464897765 233578461 903663734 645134021 670794780 517320735 348898331 71210932 583580899 933591611 702584991 989947719 990481293 608356901 892104208 307643189 838225468 136498353 461503562 878857622 751527563 462295915 304612370 904413081 768123776 814076237 790663872 909295646 179623007 616485852 810446062 715439665 953682124 755814761 563464375 563349723 568604795 263600971 805626865 438025521 72420999 735027821 871259671 359448002 61384114 238244555 423417052 19071945 475594063 667113102 587705494 129221977 322508154 744305461 910154252 149997410 886229909 64931449 330709849 704293413 169201794 831297755 399743234 930237821 880719825 135652233 844982273 408974770 20007537 573113106 894186640 544887450 62088658 631480692 168338645 733006707 167530620 266173224 17249749 855720577 271866773 377772391 335475418 636043256 931534453 902662543 763072749 957721742 597953604 278689237 995451691 875403360 685036356 262411202 694632989 533278024 827915111 809885723 768243099 637553562 659505069 421981122 905064299 717618287 382671558 646617219 695245132 501806702 523202411 303714114 957781103 914109750 841578958 908073135 478083447 757237262 776049467 864613050 219667105 830690526 869168649 826513890 737926036 382090614 336041284 690003398 268623584 263671769 102904933 704793131 408415976 36048150 839972666 52747210 191148361 100324988 541692136 771039078 544170584 136238135 819522043 164113741 473438781 218407763 770541677 965564985 89465093 16472507 979775330 506606742 372793693 365805527 389681420 801699378 915425190 546139527 587282189 853791313 221201126 537466837 836496669 492263813 105754247 10436694 547929052 802843982 696587829 792251179 829824555 653114653 477419596 217501466 556079756 496124865 428003827 421332974 176055152 621603016 422897206 685557532 458064190 582241966 615999666 669564254 896175715 238738063 774900915 179027071 797849692 488006679 127234664 67575508 251560663 777503702 528617649 172627996 718704732 964064709 525537615 404311666 16836394 907175154 643259541 412024232 208372711 591224954 94943329 546607474 186370321 780474274 556946505 250573654 630091945 47139139 795210905 791007678 156283482 187596071 927259640 30572010 212081384 812826784 105341863 787662668 395989304 935842923 553660590 293322654 943216106 26893861 661442322 412044186 863143558 881478415 204760070 772284691 654946786 352840256 124188554 192105522 745560367 303781727 661626830 592249882 265969785 632535420 301400720 325962719 559231903 129564273 483361302 313223499 647441820 899927715 536199661 206721424 852456532 380218913 834511391 374932101 802823251 616244376 615101046 877441736 726926307 486002785 739559456 51464051 615444229 699871672 270376714 94954304 272643310 518995755 546701551 27692573 7672772 251215104 617045422 666529547 992612977 74418227 245321686 434098823 691760688 87508992 731512597 886336620 482798800 585291663 116726286 977619257 958490693 378001506 747758636 998784773 788000770 290431438 220017927 20574526 127454173 159398074 913064822 101399953 575250233 999276430 738674880 820141843 32826684 382775783 148012122 658215182 884495941 593862558 13062599 312230366 810107907 342334173 203002708 36127063 713619388 909841219 965402535 576551601 691315861 156957140 127286555 629285673 602361058 211491837 137463499 412936374 260038200 961527874 221978442 632361323 405937928 218497479 603374745 798794851 104807080 509972890 165222640 84242646 423539639 272231861 921667001 902280474 485742039 682882050 911373398 848282609 485943565 107238685 711774371 739547694 315007308 657131205 557310572 895263083 146640149 736636342 333740088 99165667 942345046 13450091 617970989 912443671 371872867 382693697 662093127 932684950 884468744 935563304 353547432 839809098 405850870 668733767 539320446 542284241 100166167 380602284 185198399 79693625 67882740 979057079 998977432 203460113 887635965 317389813 60702933 426057399 293009050 792785221 105480216 444293921 741553252 327687961 929049306 514922508 725237607 257777039 697692459 642850511 899484761 986016869 531679683 976164567 407664922 63667353 143881775 759846240 905016248 82929843 992444312 103050366 129673202 630051549 181370544 436566703 921804873 316730180 119137110 797442714 535296969 718074638 73936546 466139708 504429236 349428959 314518614 259019337 705801022 752705667 911231191 887447383 544975849 273871764 467942120 754730532 149407622 607349836 7708181 948684331 538349216 957408410 914289994 4445117 105162743 417979045 835942255 367377009 873730643 113111718 126126467 863205995 992512130 299423902 384025824 556169964 985497063 61536298 135594540 509553877 233180428 468251190 855517255 837498044 229388956 203769418 327506165 316071071 507055151 29078345 292988222 920468623 680978325 640261996 410174091 425709566 737053874 814609184 246346843 740341915 787955170 100487457 37429214 75563873 897639210 611509507 56191982 886433874 579434068 718823435 431374019 297725751 741242841 503255082 698689784 928058300 399991229 450738588 592071268 757236591 229591037 980088391 824744324 234572601 537189327 256354931 410374529 688138997 486153532 628703271 981180520 495414096 889697779 809406887 344078201 804876442 571835485 358850302 114511154 484692410 168734768 546722559 935705141 571562034 509021244 17754794 270978803 100069071 816601798 596906972 856158140 939228014 83155204 293160533 480093693 347606071 215457518 181155529 785818908 812557389 703202354 336696152 576824158 830226596 707156798 589914205 761089224 714554917 353357857 785711914 595924722 180454731 635938858 811790083 741424490 762486693 989192618 892540233 500927892 675831536 344948840 960606777 233873480 369552614 440708323 956794092 578651565 518160125 881549930 282388065 667253774 522687332 901908454 15428414 488111712 801299418 53025281 671617592 394010121 27725788 123392495 940829918 208038446 436527067 13019255 942665200 601188960 59741113 329854539 645540696 31745210 363188741 20688372 762859804 5879025 469848958 543737097 184775092 384287441 860807982 757563413 317457835 876076539 582498883 427853133 108947345 204950482 538723399 818511943 640963156 858913127 760213589 831469260 34872172 151883088 107906210 927180727 241067309 751783515 207803550 85278604 771489868 802426491 792341846 90441374 679081509 860711309 554736415 486246178 509967283 782086480 521402942 905673739 90494986 436013507 558701699 987177675 650897484 330393495 298424404 110347250 432100874 166975353 545400470 718865679 483435489 57389448 901452527 310470449 217139287 97710338 976163650 762875126 719247724 406804085 305084421 653191341 386114236 783586209 367772177 803325081 824072293 490805938 956223343 518882527 164659491 123345455 351757489 974628391 821655413 519550424 417097846 859056227 486437116 417771991 914465969 809469236 713032773 470243466 781738512 338694998 58135640 189225909 211014276 832161947 284967734 368779171 155031789 7358884 947880907 611569302 49491635 576068033 51693282 376952561 159325830 421187501 88600988 305663565 547047411 26018312 51284862 337162811 585824460 32970930 986706986 238247929 457669272 65027872 852177908 867077108 410558924 50857440 681469772 135467759 578365353 673854158 917762166 526409172 37331036 316564384 474769601 411756042 117672880 414189610 553677669 158087026 911179990 527845859 452602759 81678683 418680993 981414707 415076578 220069614 261087206 521307706 561261123 592377545 648200005 32574182 463295280 245271753 974442585 887035687 780187979 823600886 912482114 465996362 174580502 553130471 685763421 402635154 174331032 162798269 323329279 161131790 790060084 927157015 794177669 817874458 798652472 304906792 754036485 160387376 601703752 155113095 235359083 19849477 299841587 105680634 292767116 937646915 900800532 357981107 495274851 491988583 599235719 806601780 632169711 209465641 731027538 191296675 167122663 748038569 42557627 96799686 93973266 697776522 407532155 781579127 470982151 176221553 848815074 252748470 702749341 191396236 595588272 840712863 310930463 472854565 532107795 846212036 471278804 446135637 791262812 635910149 209842951 91535375 509857636 765305417 96097157 520779535 691150009 549477486 295803871 574673958 944288222 134009215 600938842 240905878 405467558 233235714 556729556 126193532 704698932 194362759 138631580 913850956 726529971 483418695 506511390 668087777 359731766 495357680 269684123 745793699 54633330 556192011 952552530 753365461 605116774 44937208 77150652 59801467 223830182 985167679 906439820 946093580 163725238 385142852 263545102 945210996 939162376 782470646 355708570 792996951 915647304 724454477 992185388 107906338 653335790 118606450 604477252 314638146 811203600 884802572 698044311 232364101 983791960 286034954 874211231 515965822 841671847 389743936 222961396 762554778 75425795 670915736 594635108 191516782 188648973 122554990 785290055 429893130 403754999 101347164 140546628 569386171 967809608 377591775 893316719 962562055 789152267 908970826 762808622 906905984 766112110 387099040 132426207 304367636 23218972 727116722 409131190 409658433 893897940 650696458 852109873 537263583 476189547 698570065 811474792 850066092 531685972 605004260 52835453 862086833 156719772 751826215 973508584 339124009 592004840 838543702 594801441 263519054 454001609 286265079 159138006 451074771 683638234 46775035 319705518 528922783 850505375 912048695 490378931 414760390 250896759 636215658 471208707 153211529 519852626 461670863 183086184 282945873 521888067 605943457 842529645 11287871 567896146 242250796 731072071 547505414 574165630 88261123 975341201 966627177 547973889 207986468 448632220 768824684 408747769 690972912 581701581 833686787 747209278 813394125 265282874 9319705 122076630 302105973 975602418 402780086 29463431 280934947 433087263 940664462 726861386 714626624 665470188 430636482 744725476 491911758 959629320 88417374 51981154 666799268 940467357 482996716 929983621 291517079 859807942 362931094 792472213 78640957 195575813 992300005 561403575 459809459 48460342 871826384 933937057 219897295 769737659 189126425 207794273 731395083 962046159 602530664 329926021 726804678 303071143 285367189 497085771 820643958 606382744 527899757 91531146 928412869 864595761 944490932 8601291 736843681 835505104 572273917 417026294 135213142 275726479 537062184 925427006 767901714 588061121 150541214 4170523 310760116 962541943 439153086 714237919 752016813 360737841 630532136 126767663 922074553 745297920 303306253 933741365 471976093 788832237 483549845 607022342 345031172 455782996 764419909 937287566 246935266 991122653 210493767 158462114 861763015 907714179 361149870 31245410 763789849 680307832 424722755 145331762 190304479 499112141 709971558 857442046 301970558 617867967 145889269 686659048 116853561 282391449 566354586 62699541 496088868 81634563 517495616 591619315 609745604 968819514 862828564 983412710 135113483 78570390 110767812 235669881 292756335 831238910 218684122 629466650 307789464 912075006 617862518 639424605 921422458 412390762 381467827 918613101 219171113 978481597 905440307 821031480 843331727 889884965 150258999 118276329 46030329 504729835 36049287 308702789 93350450 62973498 370121411 904959651 36165610 743069785 107241926 827151159 373093732 726567848 822985824 504428899 861311835 153343323 826541691 373673187 597939243 553896640 928175867 400866153 450866289 210457720 148637166 447629214 117705950 427673224 899501035 187929379 761060884 43604918 100617891 864983699 213976612 258746282 486900670 866338787 49777886 614393256 350583060 214159291 540317215 357818354 821146319 363764983 281325641 133315104 767980377 295244576 103686035 132685454 747483926 452142945 434739012 866504477 343082165 427817371 54267643 587554625 605263647 116329207 703219767 766529636 870237758 860245987 339730277 88829121 653228045 582176555 400623513 541146440 381719194 361259877 492222037 91248477 751747913 481966131 605025271 941760169 350378300 452144160 589927109 472620593 336564954 582478094 484428362 745342098 88812963 242384046 190535174 956684304 157986964 556090763 146187036 730807951 621609179 62053106 762417602 96560997 180004427 850144900 168803121 281102653 850408492 643722718 564158589 522553275 979504130 132531938 557640844 622778859 812410414 858918343 306556824 513120112 272630625 372496222 987342693 400298359 469858734 884935599 914726888 392977317 519664164 944273106 670774249 821362423 169624575 237254155 715075439 423475508 675054758 927171373 584764599 62641341 38092238 1450951 775029106 288773464 782832118 932212444 139013117 474692312 248663025 949790956 525357586 478477813 159910291 497265474 472592787 300610286 515828927 719069828 153509147 250753745 520909491 490558256 449724974 656500798 264137187 279491414 867538251 289138310 965124777 478429212 704119380 448705010 782436362 955493902 433512358 746221721 434317660 930076763 667888055 880335544 937968924 755565808 745070971 86822209 814028193 461087600 461721552 472994652 436332365 582384816 978111208 692453251 821121822 276688705 30749846 893055661 86206855 801714353 791887245 721847198 756675517 971165823 310953726 515112580 458560524 141757241 286811011 988050519 616172575 248399861 812092888 813676141 869961363 627953689 496140026 126225423 989131931 586359232 286668432 284607390 698880491 645021104 32664049 476905106 277478276 915357598 943631389 547669965 114683759 610188962 785126805 760798784 355723242 553735388 310569259 161564461 989810977 45623487 192892990 850124402 336643408 198146155 715920435 641826352 163763775 256433518 429634688 105974022 826133645 33659612 150400428 746259870 266052669 840418494 763167260 193658688 267179020 224877068 740184024 53287537 335150384 837814373 62262113 809918310 881879421 47357762 770863586 726384644 517746446 445429443 594053868 607075673 207696324 162920034 803727499 796968248 596234980 388687865 745049772 407578587 226274069 62893927 588856188 214091560 582645869 83835736 152045013 1516726 865127438 527443404 68823265 493846162 534443101 818577084 18525330 55718178 767977960 76964473 801173300 24322340 238615269 272746942 779948795 513963078 855930555 400357933 705801178 139948553 772236421 802592669 297765327 706489389 562917028 595400635 567169115 41807082 206919950 800358993 208565208 801175274 709795275 104967774 921238441 886115451 767084900 434705453 972610931 175185395 709382988 862821132 704228296 538892576 524871236 499373043 782918359 822499579 278215798 647501838 562733647 94760235 655854832 175764731 444199615 464103025 93107542 833899621 244062490 476143974 485171482 234828840 818340004 381427441 691147524 222691172 997091551 396486296 348213167 589960293 926504202 576617704 864926237 176541222 108829052 291718670 940677102 941685042 766819245 826260303 701122941 547187537 745906158 713278714 338521787 963897564 344292680 614854895 779624686 540173522 821420947 237499885 251420870 943263818 187147938 568537236 750672617 529045878 325179979 62106049 445371591 423188958 771756210 661189249 555518439 469644519 862506554 450682580 337651081 851878201 838005059 814096617 343403750 812046216 630836950 909373282 803977264 178152628 631025767 625762560 848472933 607226947 239426590 798139904 471434339 774377067 116432947 217601884 644920375 152336960 1498518 613824972 173677479 689857572 917965805 553006190 455587014 140376051 450344218 772922712 651241732 806355880 348631556 947050131 820337828 404632412 380241140 21863003 730892672 323228211 327678624 176042994 631585247 340730774 491194929 621959064 736429423 967307001 479467720 423661997 82836084 874643694 618453890 128126101 136654563 513061297 34562708 142461151 946748694 751812066 708253295 612313995 384306278 128699349 395235995 864932592 119942154 593086501 816701611 937470691 772819129 57311071 87340010 984403599 615821404 76873574 896858040 439593316 259581491 908952578 511471073 826892175 265025229 295119718 631420049 926106194 215937423 759305152 412534182 164845960 869582145 38606856 654780499 643961147 228704522 869221976 851650352 564781233 280719843 924685090 757579888 12886329 305296158 323760795 123391699 427712880 370808327 175543063 483610020 326484394 320619110 208162368 782699192 528373940 230400057 343429656 231066480 808294644 877665156 261461340 818490785 207950185 584921349 95260466 612418391 45095478 135022943 417138128 394589185 654443361 501302249 265377458 296079021 175287010 977179417 592537138 214024476 456765073 907062062 626811561 355543055 695257765 763027208 625138284 176461349 322816847 114368717 380353729 4381877 115959879 184630632 672023808 395159420 191861175 574722926 255718348 193516399 359300821 185514624 290581413 829197322 749896888 19039268 423926195 334718407 177714594 201434192 127972755 190231224 751300976 795629793 236014852 892450061 354356262 994307613 944543295 708477093 734194404 718934252 943762593 892698144 812572832 831356182 477572757 742060500 771370506 183400822 454309642 110594422 290706505 785431087 86134928 399366467 265613286 9204135 756587185 486330349 976345778 512824094 771819625 65647001 460460649 212530992 758470830 785314011 424985286 129342226 836342848 879243029 194890964 897506376 647834467 990063332 103516259 176830940 661455389 747068306 647582227 43003416 205592708 302170759 757780505 805840685 488365495 139037146 506227510 685948676 569637171 712150620 648779031 99383374 218085764 407267063 458494731 799173229 701477072 167005233 663847358 562952167 474375966 45111673 98496747 999958156 721049697 373732699 152688520 441812105 784375179 376373904 803020121 239730526 210245963 627590445 625643876 745369718 174766921 587011568 164193614 835638673 703982242 187145229 856818449 930337654 719505798 463559887 254719289 910624523 998375630 178923615 525198948 639299809 757260544 456569972 337614729 574076480 841932935 160648665 759442719 355263790 866376309 718967919 909645871 224456609 536994808 717041071 318692190 146757443 732306463 211937796 959201367 890714307 551937979 41730562 212853482 381025966 218455162 821101803 488649690 454383718 895839874 18377529 439992830 604156944 846605414 287647744 193674111 82774006 291698014 42420422 280848422 137110721 604667198 395673581 805787196 402568445 734507289 333937438 332608667 451215400 29404435 158539321 593542357 582436998 488845277 383469043 745633729 186530599 307182470 565247236 109309360 593086167 60092470 577783320 508106742 483881951 180591584 455532606 241439330 901778978 344147134 253483326 148313691 107199763 182649170 194129517 607290459 808997684 983352742 203834913 319173067 58843125 112153113 500431368 890382016 7093073 391368990 260316936 845981387 238339523 696981044 607300313 86891403 570277407 172415204 372992043 635013118 550605709 888404608 877653624 142917066 274452070 482231414 35978957 340704424 105759792 264424286 27238255 586055251 724980390 856985101 726943320 255219858 723106483 470945706 71405392 898598560 604808167 109740856 442738516 714822716 183726524 566756893 73554573 593904220 510886133 863322046 703819384 280471985 890151139 480917167 425041718 666189047 575976055 310943144 872699125 608619788 593118528 691196378 170993891 678997852 610750970 126562671 630743193 220045684 1681151 567653280 722923928 741406217 393285535 486753457 224601456 598149466 697570125 295914731 445656049 833070684 426987643 87360144 541251076 836778985 668725625 642314844 98138667 432565387 682757391 763181107 538821899 918491320 511711292 108204694 875317353 564181359 586510641 409507759 731644892 647863275 394301358 757538914 641328274 941993924 678727104 728955529 639533206 554755227 780963098 120956520 911127482 909054619 8802791 711238763 72119467 381518606 50668506 677822931 326122097 829253531 629630755 794874099 4265176 474088109 862916152 564882466 499541657 382255453 125964302 615085307 99785406 488719548 107174220 278163151 193827288 367496437 520567493 193717941 134238525 223109259 927064957 64124883 672815004 420045567 528785431 695223019 902040486 25847755 154264517 832196315 63216479 635646469 166635828 98223117 267584400 279111351 705398389 16656355 460959731 992261696 197002725 434207710 452890681 638174528 783208751 232655964 460431898 137758725 139167213 224591376 417154798 790858006 960206035 178600051 893945019 253064882 597328476 685934812 900972619 371787768 16593413 537449624 725146676 208352351 237955793 687709264 533958397 225885169 368789995 427497817 825237547 258387884 165827698 537724919 200301262 988670722 393667966 246438663 92327430 751553564 500811183 950976987 483309956 605837420 961217703 195712262 145493213 978541211 334923713 649170765 191425878 778431137 833829257 108457716 677668328 767349052 76481170 231582583 163710398 660904784 741375579 406377801 756148013 438643862 273475885 581130066 310973907 334875271 523132382 264853694 596361185 750958491 87409623 483381219 353833386 306558041 371524737 377706352 227449847 275127025 4193190 46703967 349178352 984914147 232026653 394384009 552035408 971061506 739135063 655568051 845252682 470401922 374743951 951130209 762809359 51612957 812756074 383941787 65054248 497020285 917134054 176222585 549459452 823686004 752116147 49336223 145794436 538814295 268426104 79021208 551492384 32819620 62170322 54128049 5346212 612576472 700262003 754180654 872869867 379617795 956341082 511905486 9848832 796520558 689871826 959967329 880205430 423205351 100052737 506973861 761127706 468555761 366053551 977954315 853871148 589579526 578770439 641855896 20133094 419224042 715247594 869864108 20160760 729907686 522394808 835498194 781859962 501930113 971823744 339693624 288918445 504214420 816520886 15907746 748784636 764488608 630648578 779754950 613298744 804657116 581044287 39257216 815001355 905797988 232959823 847834768 67770686 853056160 210439892 314033274 842297275 845607265 938821495 362864182 20753880 528841625 584447720 747528187 217989057 227696685 840564544 320794693 769954001 896057718 297732014 743907082 287371906 198853749 155912795 140020539 340219364 940268757 99500149 818028850 945207301 637315186 858498176 337803286 901481982 64117594 712497291 654047859 979856915 522424537 839446480 403736712 644644938 558661039 474883594 253143392 561768091 330579913 40142802 802931718 877549532 396076153 142738593 137096980 194925204 607150670 780829961 731689026 426184269 313860799 344685375 114338019 83214368 536166809 364946706 271617878 747822683 828857599 264854092 535709189 128032149 796814583 766442121 691048103 207270147 551259799 958333613 169839639 918636297 500235488 656154932 878075479 385791398 310856752 202543302 219141329 851008016 311771544 718670057 31752758 549081757 15641193 945120991 397331780 330158424 537589058 154908458 143875793 361657913 705656483 932606443 468136259 755456903 898715299 703441206 637443179 355559835 226414874 508369162 436758877 110338853 339297018 643227508 92179167 307181846 353552362 243448466 481715438 607375433 458983431 936522564 166873502 751539212 792467005 499734309 26398376 36046363 177843412 920498699 493570275 362688754 378726257 741423871 154535271 473696064 86955862 165008283 925147437 970396932 666792167 665858844 868879790 898999598 61308371 415351532 195113841 501666452 941235395 733698171 677986791 326101223 948597745 605270591 695730992 332641540 378682961 206393083 421131231 111336026 725999558 267853252 668483798 283102283 226380530 884063491 743652339 53235230 246106646 628006840 354416598 861847075 79661086 592189151 212308008 385134113 817299862 175300394 146624952 487187279 613181750 697455164 954685887 458657207 162867221 655222208 144086040 932646967 656448738 948785414 401426370 208503400 869945866 697566350 260441430 74811472 325263904 612545855 513367872 169281868 902234829 568411937 19768559 350356200 110527463 331254767 681487388 547389804 165443786 776493355 285450606 78478174 119999340 802714907 82875588 841345525 385774831 776937156 213553411 212222974 581560906 673191498 638356367 913450676 528441644 559005713 823280497 261031101 221178302 570254307 826501729 958270691 697329597 701547048 425837429 411912390 707013255 835737084 979973218 263240931 118107878 427451872 779132939 127530484 620753962 47809482 687220114 600443854 710463384 731354886 871393155 554746396 409195828 974906027 614125655 587088358 538968816 230708715 458907592 940508439 357440736 904735354 544544750 661384289 281573240 175325956 185298370 651721537 650020552 331432975 320167181 828916208 64741376 882723634 301260615 755224703 536061269 306040054 991414648 517910689 276949116 300703758 370615915 799006805 466576130 410332275 741305879 469581556 286441360 524424079 596603496 148354759 554993307 259816250 986879960 438557320 81205779 755708281 685182851 169244650 994371605 219896158 630749615 941500350 339606528 636491247 573873211 208158 663136160 99164450 634940306 977863385 166902759 145359585 9674576 617950928 943548199 463192455 226506018 328700715 233219846 288189807 451205518 381340745 897260620 107879068 600223117 685614448 578267173 408081347 987969179 505694582 827571518 728154944 334517713 576381095 534822811 65627315 71808147 688233110 729986453 185409024 35205258 79962665 782184551 945286257 892408688 849192760 745830534 582312561 924204119 859202827 318164556 99001633 114739520 485758329 319318863 45256150 711477781 25332010 500019960 238301956 914124350 148279880 426149856 390210710 897754646 88700565 908834125 837686780 315068168 812059478 820552228 987212487 633391292 236874924 106292445 962358027 803801812 320819016 441424608 728329261 602456708 682297133 806225273 424665202 932752062 39421277 764390073 346163298 276472000 460598138 583939131 11767904 587047263 589093880 426945613 825681528 123830232 985499179 559321916 643485899 364848254 560262613 596301384 328462429 153747017 400701525 146045657 4536334 779679341 847706247 129434596 219310010 176420077 738176131 298434387 88029266 131703454 862109767 618886708 530692692 230436139 764543711 709221214 531863261 509550199 375274133 677772986 94670348 858676532 258055122 757175869 165577374 703792623 843983861 104402670 827405364 182208399 850971720 863951955 623524752 390976913 357930306 336393510 192030774 905484697 69201286 81337685 916464540 578834462 298418415 356508204 322406893 42862476 918684384 912694136 313765325 685746857 765130370 358412712 575218275 960736938 344432496 654951426 122201247 21081359 93789319 763543787 939671928 364429730 620276130 881705058 904440114 756547844 860014080 276345133 272312292 269174894 283449710 824288916 215292993 509082292 944502206 61703530 938460972 466046297 283456797 206147951 170125717 225533955 994876418 760520100 915948581 352035884 544326810 828354095 521367751 521195929 684199066 839922672 104139231 281320997 659962447 953072487 174524795 117946219 419355343 812243313 113180902 532846779 255277760 798670220 555667670 438250905 976362746 554165948 509372565 276300504 457372977 470714583 59253616 450977922 123885444 342917717 136415061 887016568 947219391 591504298 476710198 380776849 295666732 226298022 31625075 415904726 3940300 479074352 515902133 276674920 415925374 954033870 435641992 877907722 708662069 504168095 717174562 428804585 706439256 492529654 160962797 502157271 264985813 183190753 201385947 747247226 963624194 973014292 224092656 64441401 267742739 613755513 893538130 513356614 893254228 275062040 701366328 779077121 58467008 673282116 20709031 300815258 553691355 699184494 568552227 925278811 190414123 908007497 973228137 772741770 813603151 958375543 339595753 11456467 199742531 544701906 200454136 78159959 15176884 881706249 687889631 263187074 501787594 790974529 787329247 481433558 11019824 868604911 773444687 252629808 627458446 234147077 625099823 115086575 554686169 850725298 236440 848724253 280898603 295426245 512763554 271575021 637673513 323149212 553460973 279637979 328312608 553326293 587355449 849467012 79159072 20753461 944789520 653684951 837777652 153762211 997378774 600375564 928017867 860663267 29762613 344986811 651656509 354674745 603665650 287306966 277183006 21746041 213861631 103270952 229087700 408879202 398222543 862226694 246969447 127107562 861372710 214498044 799675553 142787249 97907108 535686004 389202245 143889417 10002044 145073366 106461032 446426346 189191728 101387081 182540759 650435581 10518048 471833484 939543181 817517538 834229382 784774353 714250051 407646988 998707877 214062361 982278584 185439226 985314633 178848672 915928128 673363460 965058910 637133108 618909628 457787025 128037011 790098110 161444528 894247644 422370428 727924846 619849066 591932156 832709024 880018132 486371304 93477061 858533411 629296360 538153261 366379844 286227723 779597960 105508753 703212514 744046245 958117401 196830562 209229790 251215636 838364441 314606101 809366677 809991937 968780147 570985713 357700414 992775738 998782384 527026184 107506000 349228944 384126842 233354459 92434455 557595451 298144801 31648851 344884039 271664909 228073025 471493101 618080184 836675919 396567652 185284868 915863820 87628936 132399950 974143782 329897088 142391131 681031343 219177653 701248478 832303785 69177580 87084851 693663766 289399168 275740650 615315678 900055765 364224849 639124534 572108257 237083401 303011462 131637743 716092489 858421139 673345409 768050746 775944284 108712620 762444368 725835718 878318905 826960661 895076131 261524739 45325545 422161206 849087443 809750555 289834902 130046437 490647029 210896166 658659697 57723131 641563032 319879754 544322206 533855973 631675015 719656703 94608771 783662525 768651443 69827192 401377130 103429904 937313423 687994683 123380682 177393273 351920468 178648650 575116566 617997280 581300769 460970416 808999061 467995692 128389143 650797532 441041845 585064376 556794308 111456005 605873498 726087447 679957359 953478915 36581073 690831916 90772504 946175122 50064392 112576722 318696988 622521331 103862989 152140113 870306746 519778947 670189288 875338280 106039168 185962507 561078809 440043197 70641967 736397143 309392109 92680645 500931316 978944858 722232677 394046362 884638548 786212582 820766726 561635934 147966128 989819448 974851630 565103448 612057060 978198147 227561912 593775124 245495992 263373096 400151518 424814762 823928112 555302293 922396636 842154634 788159662 854813510 848725939 609590667 453320141 946063852 570032483 900325791 576618402 799954357 625950467 330401626 334634912 631856970 645881041 537999835 762676907 80444104 308682539 424241277 840528204 946897826 67731107 465560673 173911603 371945467 637096616 136590200 592622851 100656677 670333851 17549476 579517015 206694797 87427813 140826024 920684803 941662180 607595653 830631861 799117514 514487658 790353806 353155934 140095569 325173690 936830530 39677215 615728866 822246753 20119752 923453174 791482937 133879891 740360416 676349456 247402137 462190327 402475248 39174239 812644111 624908914 361806381 699315529 413781098 848239396 268166654 284862338 337765 304354927 367389433 905143719 851028583 477583419 211720079 634732492 744884837 985553412 357463763 338266653 11242441 774779983 27050962 16298189 435305486 508867486 648751965 781083469 522890666 945858992 647778873 644218761 729161392 198271303 915185640 880859339 928429014 661431984 352696073 673045914 152753898 552278158 374567797 4768925 375325807 279409773 950254574 736630611 151542153 533353054 48771042 515965342 274064277 993394471 165058979 85633090 811756654 8748601 395882983 161704579 364251895 70144178 14309696 52669976 404591233 631389638 761654244 74725149 563036057 516912223 587103091 120568668 161612281 864142242 858384341 527553964 192613339 496869682 842664784 250299479 289342438 360926910 545445348 744384696 832068925 108281645 321705690 306092379 172435570 814467395 551123527 229069465 888797827 734293164 42102116 597484281 373356158 21420189 346621338 483739325 343621445 36652990 714532387 795879081 864604576 453621507 229896385 836315310 935133047 164101125 20770575 109480232 399407083 137295799 870426974 471269837 544968831 102697802 891541293 74370722 247685226 240664389 654950762 989272140 555037430 518332845 286644832 682659009 616461836 180753012 955645732 611783545 663720421 856326915 550701684 812570976 311282842 555323328 813009882 759120304 959245566 317251548 581847584 139240351 397881140 627848969 564640707 580876722 675240375 386643374 911971737 186519002 948522799 549015522 242439642 548728912 627358784 991301739 305168445 805547783 990712733 23146824 310600813 488123990 31131104 293050530 716654582 121832860 200671667 76530891 831480571 44957490 980008943 567778813 203901244 816824503 370962313 433099557 406920975 339941607 235754567 597404257 361283490 216595796 624848297 955872528 337628579 90432652 544719230 992936054 581639213 958574943 68188735 198821892 289795283 497901710 469088965 446933679 629638802 253460146 823011985 842312549 783738299 892511165 266480706 265916819 733480697 38827818 895280351 163739956 511754091 434796446 646245909 630925061 280999795 485378528 305012877 797977856 271273350 678583865 397775078 751447409 524275516 448864385 511511389 348506642 139974538 859108322 232371150 210881438 220497661 661861804 90276166 857287432 751874593 377160813 404235987 767810220 952334666 550735746 703229677 979422262 339429240 580571446 10413556 882174178 319279371 678916 471263573 914482412 643169480 366158638 726080069 362427304 312407704 813000415 920850800 890410953 439775334 860129338 822224079 608347635 256910709 280993646 116242628 929984455 589974040 587336479 894475043 954240604 52335035 461705300 293222724 216457548 488390944 88791845 25512821 775361488 537759982 722200512 15712624 592309185 78687979 440720868 191087504 274921302 360338589 480885391 36498771 317420472 896177808 741237801 59319973 911457981 533919590 340780570 591526236 126500835 766998597 875304186 910239523 419649193 961364993 61638035 909152652 254098479 58659891 883801654 577261323 817977896 460636036 678400911 927151267 968791445 660296910 422945968 110218776 428335915 654185764 875805377 470704536 376414131 565581777 905600603 568502706 484518918 372566528 263532771 302176529 211366751 873922273 130396071 981665188 381211947 375129133 701718507 549899445 301240861 851883115 369117355 386252381 162426922 808180043 199616445 990174666 391785065 181404074 726893822 939361638 598702090 85986860 749242646 921772671 62879096 626964712 256937049 179161647 530479646 454030155 779165409 692756968 321248530 919470351 119166526 2991081 732578773 433606689 744644169 750177306 571857210 109548332 35799674 278548642 599536443 591109253 776615065 391525061 516584651 796661183 465199468 813197373 356819250 230560372 509412890 825882159 491440175 990952025 85508167 762403752 932381558 772547465 992783471 394274326 351842064 166127190 311902073 580436167 787008526 433825248 575454507 535421538 367126651 228071181 793092275 720009649 501295150 246775689 539293370 622347557 930042645 449331876 210364127 196461970 549211640 712218202 183412464 86025375 878109290 357352451 453053747 865750895 102296771 317075935 663368221 827450828 518307929 827918970 937000966 148559020 776619256 780933886 939969104 936365273 145059117 650101594 659275128 968184286 39072129 318379413 704260441 129303175 957795889 311332133 668092376 432646406 51188153 288255855 274892680 39051803 269516810 61245825 565695633 2547797 348688529 290170483 651174660 690380392 227264899 173915855 553763525 302065748 932962126 577969348 445365991 837999358 428027566 550384851 35105383 666498573 373501204 191438659 962208859 964722039 562818696 628239574 359753022 556283828 657880440 836671794 730302230 491436124 827613129 187818866 511679863 899696408 29071998 113930057 802809128 847311516 201776761 371299185 923647065 791755888 401626957 846714276 10952383 550367861 543832833 974498925 655454204 209450044 853139367 954349216 192506097 579763343 931582925 32771547 120946341 86276064 222133056 186758558 653871614 398100944 404012031 417394428 486968952 491394613 711870531 803495594 469406453 628505910 296616611 905035758 820161778 407986744 498664567 114494814 921736844 252367752 176874020 736680454 719008939 883795253 624729815 279901314 95964699 5896063 595180695 516019058 868501076 878729070 402593140 640497222 959668757 576895039 356511290 339171744 481705597 471949651 502267087 549000830 436703501 465903355 639378468 214243897 735984075 855786244 670457886 527414421 487904788 422905260 489085981 900688330 411750100 948502314 915580675 555802623 129893739 546066267 426923381 720513188 751288651 913402941 171080943 243557021 353353782 65886657 602156429 651008807 895567266 350082551 287193897 623570157 169555184 145627630 924718 731945217 656212573 423540793 95344805 988055635 148315930 340717111 857286804 367859166 654848397 263439086 225576135 137688354 330565721 924715339 620912854 544565273 920404816 95326430 54846735 359401388 501134750 174349879 153556939 440042017 181007482 92171413 746665565 37281341 488844199 439577492 391831509 426490504 419834977 550210041 262753652 34532970 128327287 982423675 52004111 474925220 713214115 515021582 398604769 393014280 149940510 716834836 827849114 645697944 142478804 299885922 717045232 37165210 484088122 882215704 802957210 840884698 999789915 837728001 682667711 779130001 701380905 212733233 32940049 66013041 515223466 601640589 17896881 184002634 57782005 233668761 833739062 4041214 17297934 882514174 155947504 509661436 18894572 288950881 17061033 729969689 891488883 769688415 17541501 151291724 388669594 391241182 597625768 666422749 626752890 413029621 104976972 202832294 145459472 237205456 123351870 334486389 892971343 343228622 824735871 275809393 895362758 45026727 320619474 533605781 886604947 413337657 490511285 677073665 349950869 575979468 794991726 861430610 783077227 560381123 618183362 708649044 646236054 385017097 874808211 16103073 242160441 359920502 438496041 35437702 106573339 500135011 717418196 641641521 263118102 583958397 929585003 290271357 117174766 92623288 215250419 166680363 733177135 571448059 330883040 762464985 861704698 366650832 471136665 662140680 681503924 466949921 846967173 412315847 722723395 542417253 848037619 705820581 472788082 117982585 774527667 207734534 380686573 192726774 259998667 936519509 82651375 795383880 370396112 125072300 658138315 53366700 429891036 651052619 891410932 623549794 378305799 450894166 69715482 452557984 660043522 977828595 442844520 389312825 276941641 632225746 717999604 67884665 7065598 754828886 961963551 831868959 5311160 309804291 596201450 308228215 599731807 58815030 812798748 843372063 193974395 682078750 74365184 863641626 465297971 373348784 718461698 909427405 683870256 902793749 370379071 272743578 19333278 164096252 617196818 137782964 684721297 633195237 429952309 470038560 57224666 379754684 44374899 780234795 560109188 594573916 684927778 698936743 221867851 116541017 416076766 738277297 188298392 354339298 893700896 287854008 718927439 192724706 357463836 795318911 57507332 860846842 283148835 466299118 593924314 271025844 797275319 972862712 656583031 807790367 614821101 717789152 647173783 74760772 747951020 33665410 770422662 236008803 182917329 506491430 346429711 501983754 838001060 583482012 111126820 732875315 906021247 742901353 944479129 967713201 534924028 537899767 750572507 180555107 436062378 519287692 210580084 439131022 313213200 726463348 357998415 323509717 397947971 705990215 604218290 75952467 931160735 376818872 942633271 656260851 552968934 776726065 768754856 840934608 58243458 673156855 563846615 581068964 203830888 472388946 173218639 93194218 288196864 123363886 80943454 465276533 266235232 593927399 108819965 619925863 248977745 906544472 7626529 495183445 826508577 530048648 209782937 635781987 403171859 969267191 973886365 514302197 112546999 257259240 805877106 914220185 419912742 126907563 952882970 358017383 211630648 996153711 997801688 917509337 164689671 989234589 344622937 184423608 860281421 90952400 27428105 932180486 79034296 519345437 998559292 612163366 268976569 358872949 262011751 149772093 84123903 379817252 311516034 554698362 919964978 185261702 979386067 775153850 481562227 980598041 663959758 759219415 302186255 97959697 931450548 529499245 232639545 158793269 964045753 406654353 977010876 816566025 189599012 480646301 591249602 479884638 109556565 809986205 364336124 282840777 125397037 77700330 517845288 175329473 229151580 159657186 293273254 965250761 9650206 987863841 493643422 710236444 840578887 651246406 411786982 345726599 144649900 977562782 978747614 626846220 336128918 851357335 365071851 748314370 536166936 649856905 27423735 98636327 638079478 994916270 893044115 237545079 725357084 486666144 740392453 455157454 166463698 597589072 227571639 567545518 907662687 206497480 461771492 667089111 397688981 381994898 400976305 570919212 333848598 439277728 292720751 736593038 103274992 781207308 337927869 825347078 631679297 817955993 60734414 267390874 926698915 472983439 785598424 441819748 691005711 718124847 699642298 235197708 707061292 957321214 546365593 42537724 798147856 440119859 920940649 533522221 499725617 387818481 723118877 439911115 442604771 979116351 314416564 92791828 37699223 559333413 156948531 356406393 443876329 735268832 935901765 554244853 610521395 650236490 783852269 382765958 991750767 689177847 104727839 522149231 746669800 561294282 815203090 179452276 473229781 404658663 492764611 479051751 648560762 146369803 704468287 422876830 221112757 670276582 836473907 186742442 245260188 558230391 332795253 627215639 419377287 323685728 152045724 331463449 600181548 487914116 878510748 938226717 656566726 415927534 641855353 734653387 938814126 18112772 232684421 657932114 898155656 241504967 846990539 953295721 619249252 101819175 78603847 210107001 98819464 692534280 797149053 811929446 746578660 735771114 32021256 227315168 647243343 957730622 12625893 330275864 127025797 619940246 702787590 264855971 783235219 98849792 832267913 878336150 346105548 198141625 990706645 957859302 808226875 899424635 300555353 250763235 213222674 220120345 712529927 469828543 103256030 336540500 536900191 641309838 693031627 465301643 162224521 698215269 664398397 441473503 788325554 890591573 928079344 995342458 232516791 533366550 712981230 593549600 689368598 980042065 187174675 698204390 358923750 234826992 116313794 386832096 454894791 940343941 399901663 39854857 690784322 224637295 213311675 639841152 740445863 593974931 513863533 350295949 727589206 990001145 861606295 647900241 290413198 340097340 390438261 715405669 591049267 582004914 353835965 289193288 215459002 35572827 641198194 825748502 388845192 50029136 733431510 253546519 569205839 17714207 492904590 642119197 239188751 697430157 847422864 382871989 992701129 947663574 629828628 679816949 980524033 104786452 12786789 983906620 982735304 938664618 476345783 208589691 770851554 681417779 598144777 67831991 784491939 660363645 528593809 656185785 839609200 744958729 485642424 436360688 160238907 677931390 225593490 256834959 422623964 882090120 980492870 679206381 410385433 532505500 459690620 207100070 669506422 259012459 737611662 665894509 580390670 845616977 481317453 106238594 714274901 393830506 417293864 464221567 996186798 548477699 601898605 470034245 852617603 992710504 907874736 614637320 796876359 916473983 904773375 529777460 721615142 559341445 960491484 692944236 467067791 724302905 937389662 887578216 700952902 934329537 526088099 729921849 736086923 965167934 52261967 367541013 328147995 761126020 381220222 987297099 970942292 20918735 920760802 976195819 627731247 538583393 728169758 264691713 432665662 254212629 737454307 189116815 168399157 146856292 380182906 509424029 221293683 620737327 872898672 243379796 893200116 303017490 544988448 120810655 882623620 888742362 741866140 660658649 959204653 613917654 589372794 919446298 44289155 652157635 542581200 420457970 834261801 769571015 179342232 893906322 23714602 915741554 243838146 454185702 137628943 434887157 929335513 674876014 682216311 238766720 47272741 936811899 136148850 325096751 377690045 179312449 205650345 98297150 706909872 798058168 372660607 789335075 411338737 722953970 312501451 303751520 768551789 66440745 894879877 202410872 234072475 137093270 762877166 89494628 169331621 581287601 282101504 2788232 61271538 333362663 34468011 532025146 464355324 256742178 967223628 861746130 312312464 234480595 310976244 552100891 319828949 417444707 485559595 310898219 285155504 779501298 173601937 265908606 854295323 422008597 228242700 26117119 721170668 742174333 800195591 8130163 440930 953556473 186548468 807328187 600577425 960087915 182275201 189906804 362924474 976888410 530814688 417717331 631064712 361221630 877744984 10200916 163710345 416822454 605844021 653927626 793646587 901034530 556012287 76181103 169243246 25451363 678207784 632615846 561308685 241904791 934348207 57285997 195459418 453519044 503425327 306392298 776474972 312739781 248301784 372769653 417642733 191304908 655168298 916218335 632108493 652497585 295796073 708849617 759517011 893698975 825685732 523568880 483142854 130087046 592985135 584787822 319020311 266242297 732944360 356715608 10887306 985802305 767875171 917709536 415199912 718832545 962863734 713292652 15677185 929073157 426885826 119326762 588715733 532326597 646075362 808235028 494467783 771187818 78740622 985623006 442066089 942378152 563679247 835110612 830098909 518417043 173588077 20034161 913038990 721575063 391678066 102004857 281678863 217819363 848971649 731122112 448046499 347201167 10414695 2064119 506249016 698535394 637933049 141532123 991020182 391377874 20545020 387032404 84296081 924704931 175051576 731549819 805485391 612307815 419670663 480167148 631538214 155832110 680514327 891763025 547203230 796904351 176460514 600585160 576317498 359227018 245591098 451079787 364067417 335152248 704213929 197666667 854640492 523977514 994834520 458909363 511008957 392342835 679670853 562668186 37129134 694866326 24013620 498135716 639385078 909009627 120796189 96458305 774848294 56037909 68491996 585955866 699567502 566918866 851536 478397246 757879755 343179522 399887080 472250856 637385332 774359676 744477928 980191558 390812018 623655134 847604413 971947540 439888927 401318192 269544353 943889079 217271601 312742484 866480016 672555043 475820351 190550293 52370466 832011385 392392211 499095987 873544380 555418941 551358754 75627511 4874831 164909552 854750520 217839292 364854169 726916435 299500222 290313776 749062703 345762385 490809661 471565891 397308127 838004037 374528625 116283005 59942060 175427606 860099172 378114351 579498641 736372829 239333587 366646736 337082291 48774124 212718078 126702813 147266422 332373591 152828627 728492392 986431257 767862889 405368754 305835897 248221212 304119582 203794399 948983923 340589501 158555705 819599513 109496206 928186955 246661197 87515107 3162383 461994148 432725907 193948119 593096731 508193226 634726300 760840857 503301176 922950655 386046108 658445492 845953310 197790002 480973365 722054243 430751660 811034642 768816920 34886551 789080245 551630775 266161340 143114869 597256053 199137732 694713252 25630234 424744405 419338943 219076791 672824397 474401739 958799956 973068649 430496773 666662010 218785454 111951389 214951631 989376262 818756337 411013135 383948301 174419967 675978965 541709212 209217269 912071878 683196009 443736279 669887316 37277054 572078040 967021479 699653435 924965644 505959603 93347528 764753989 796302571 40271523 247206263 985744828 60737414 498809038 234664877 53695065 219881636 419848554 99944399 623716864 836985131 938721864 851254731 315182034 159776363 199244344 444642216 12158928 468201803 255854916 925680632 635722202 671022935 510334473 220853373 163960438 60146489 496536895 973456025 80823754 278596158 91960793 314394130 780866954 75702019 498587904 381832071 624038363 736156718 357902482 882696728 203202687 158359069 91781527 141123294 4593128 921166440 227179454 387080560 280102731 242800516 854167715 252906448 636999812 726782775 597865496 709976848 763659226 79998280 449226289 86078507 689024030 233254867 525367109 995364121 327550068 899520958 726764381 794230050 524811911 870565925 768953308 249392641 909917890 160560143 994095134 384749292 812138686 418323894 415077905 329239805 929624923 894810220 666225779 498115821 250205441 90503862 498269902 848846423 306269807 283232581 538917484 327231003 254316308 872374516 628383931 152013733 216416218 222656302 715412287 802798878 231450408 448405065 30691138 234611568 509171508 27207443 239718529 630552523 404989274 801328370 573186982 361625864 508447556 916875768 468921856 70122768 363211206 898789433 143282278 178403854 321488642 958512936 700928825 811098850 352397179 79512789 850167150 3518602 662790027 75418128 245491260 836330933 68181106 813109908 567020536 636520277 386206093 221979093 448774369 890748212 899203815 303581953 409545712 891236692 25957104 867930531 581671550 598551058 745747201 465886752 203159100 324579856 80217298 456203502 640946657 642045401 997528108 143679967 683301508 162216087 434469819 115942712 9824260 910525510 459482324 69294519 408635458 102416066 753116958 22586579 581237143 297916155 353825970 728804806 379581444 975294832 839438677 9959045 377523562 892756238 407632969 205208323 994310787 991364449 786413796 527610740 392901790 178108660 702086317 176975089 330943263 582850241 689245346 353859902 554633523 225179539 163770193 600214268 749673939 310120150 271430529 376102161 934703518 229067832 204542416 384827606 7054859 696580229 812240978 953441681 220152578 786525981 374076047 124193099 391924696 458046450 181045003 548295245 273314376 146187796 58967862 219609095 243817308 215818124 950831686 532141038 704352450 608003931 880753774 919280287 481648890 593470471 705666334 594157104 496351172 128850415 305273477 446892297 350946879 710806306 748327412 310235061 409548946 459387820 633420285 14563667 384709298 792993356 521321687 5092401 550965563 405001731 780373504 656215000 341521816 633609823 256659972 9911232 755646328 938287359 609860495 474804179 137098238 947247614 508576229 42173587 790467030 515615945 922758367 495039500 399575793 401658304 512853202 168340327 219521008 156123671 354100777 293103723 860785918 789627590 564446407 951553081 85655313 502779897 802267735 276695132 417726589 948640667 355826624 689788634 627804346 608757475 808864301 683840384 149518829 417315239 362953322 889691772 698865934 514659670 424784350 909944962 535459298 542000112 636143069 516045439 522602780 780280168 470418712 49966015 265242949 304597374 792442904 743132313 119082483 590522559 916187340 858456789 713683161 446689610 168049767 308462989 129397643 710108668 304536454 188605825 403431575 926773872 25264233 285730809 416077644 351564399 225893309 73465895 983030570 654036487 657450221 161917482 208920900 656430547 434751901 799363800 348543222 996711602 872391957 449809290 304318140 665706083 227424312 943111056 594217138 672853296 67353817 89722781 457154762 315672542 884913292 963585600 793088198 787995400 753341453 850949075 351212013 652635940 435556138 364954875 955457413 838819138 12476402 555043850 323051630 764370798 883576149 320570766 995198065 361342120 197781029 453788083 368216380 525194122 269734332 516297515 784794101 224255177 317242886 55765159 782189355 731741786 649478946 528868089 719684314 2263772 626818110 392629446 976328160 641834686 941234966 524877884 490649303 869418157 155620370 5887356 833434195 646957037 807705923 700573535 31402012 622747385 844482348 773817999 308660024 159343241 143175495 473112803 959190931 920302188 737172002 468430921 689153641 777352085 349050239 866915235 586663993 117702097 141146768 776597939 545244587 857049032 51617118 534916564 386429244 945395108 411652432 251891388 244179423 949046237 484471661 924325760 862066863 834631074 694445193 226442587 111575109 586147040 638570849 618206333 731170388 176582741 53699082 465792343 497730601 913142725 144550650 35858370 56763617 541377419 689878739 774867657 340404617 458011460 502045772 194945295 24379886 878813585 497094462 285814634 465839127 54524544 986754282 192641758 590070581 392955471 108671229 489900003 231727496 157114622 890552050 907515347 501321397 799689535 576807184 907385972 258720531 840522332 281273379 119419121 442309613 520108919 57384027 910947368 76884626 418177592 549245342 314275099 902668153 659391849 142302143 192010938 411417152 361151884 666475335 327046157 649030059 262534695 138614949 365336409 187898285 498099914 753784392 114452020 747466382 301117877 278225502 76853030 86097388 248640614 173420363 382419511 365482433 650610046 290017264 848998718 775973292 960061831 183310812 858217925 47649716 236996461 89782470 433468584 242317284 94312354 168195483 972409136 293210198 381935482 874120173 985386158 682525836 256829489 357246831 41466344 12793184 476643377 615814143 603220770 257402940 559915899 714745641 212405156 864103224 117888014 634475692 711076989 431429502 910774025 830625771 336034627 272656314 372042274 434930331 140523546 990008061 936026595 127067270 313939213 432146960 513846173 627031726 69197775 971586235 739713508 939559210 436143996 126095990 14367877 724505373 390957205 923227974 413153651 351081721 73169263 103316246 198924792 541040449 608397274 556632121 255494634 240490564 56271852 470954597 351036076 500381242 247144584 39151621 296297446 144012571 578895993 420974463 941035908 193702798 121931692 469987514 510208502 159007121 697481861 121002352 809765245 519571485 233226356 638283648 635386281 909583633 681095048 108678513 256273185 864474423 745199911 986941368 591286101 503175203 669407739 614512736 873587002 241601911 750006913 596451693 861744671 728502767 70741051 283871257 277663335 568541936 833330414 714717784 288875801 824875667 216895246 824230403 974131954 443459400 937216183 315676163 957324889 133114449 59354046 590745381 478524093 624058548 216002205 199228826 12828056 735106386 665448774 460880655 104382553 751164153 31006461 947016357 751745441 943442008 883290237 977760980 753634852 868209516 198444700 660084419 434958197 82058154 78328528 500384579 782417982 45546381 326364804 145715205 426563142 795527586 121608893 749594975 537855693 23184162 36145797 327787226 967899321 332276308 298505165 609933932 449256920 593618117 601469280 219680337 219396119 453163137 41898088 651796184 178580148 136530287 791499712 447848122 289682085 785319325 421331239 288745433 413288655 296116903 35637293 782881063 728845170 358509450 884056296 702287698 302761276 36865354 953947629 239189785 182075861 339471858 108868502 667398567 820566715 933535821 451817248 672539697 187447217 203493831 582812002 504328816 857996615 694856230 640536021 650745344 540973001 960063298 612300957 335047689 142189075 497919340 321494664 433853387 363260699 395586719 234512607 83377115 103714031 991093529 150236578 442657452 443459334 946331244 946303213 231826462 196144317 935383150 962927038 697211164 19239230 127606076 644081373 940175850 840248228 935121041 678913103 301185997 927171475 221726308 649964518 396273888 371598641 116682591 973110687 606085748 26374487 353392920 805846439 72252947 996336055 992796199 554779512 996226244 833674549 403264114 954467374 582035228 984061564 724744051 324617407 586147483 78176694 268986843 475205221 8884258 391949806 792597589 795310576 88682641 604718399 531719826 674067689 845950164 572162166 766091928 656199867 855674831 652488376 553900059 213661672 613504801 330775554 529358360 447174321 181258715 876543702 868497533 423795572 878954269 999001790 391245186 200960753 58059402 336211516 302191461 839187534 136589418 256424138 490489899 440309985 110848831 820869483 332594090 152089425 188569665 680104868 230631104 115252091 776821603 201389730 12157286 230559348 757016164 565866140 274388788 678401316 12703362 434095086 314651646 780038106 654844201 570855012 429869036 285221063 31297743 152882148 928888340 13420761 993063976 715948662 754134545 374638098 144948251 821281435 830758483 567690642 231553085 311314751 279434515 632250793 726960790 209519225 119827100 788659559 771604950 854012781 426096458 658656861 312690667 623283132 571706183 784041413 127847621 506235396 743078877 473637503 108919287 308705676 474245991 396568366 141863951 770898373 27422481 48958360 338593272 813177606 917920134 622897798 650632527 750948590 24203211 447763967 734563206 149171826 110883738 228964121 860794239 717022816 333095337 934522085 940748833 330862347 429195304 874682487 79692128 57092794 876870440 553547909 693371734 580385130 183447777 246749943 90277019 933362691 175590982 31076930 997723011 385500953 265149502 657357661 93795251 818169028 784125044 586268699 813726291 604786138 443309055 942959717 512767395 25982385 549170266 717250579 504262336 159688499 195500890 487182703 627184149 500044746 721753285 513842237 913011090 860256704 535457972 698292065 235824095 504053241 57205462 958333909 357476690 75970901 639864110 108348652 616647978 365667414 102668266 538484996 424870590 589141021 635249354 848196955 719990820 272117205 489916330 932530417 30680834 234797116 848586928 479761550 766775732 257594716 6601639 492456626 835347021 911248897 521252460 549122294 241948549 891610364 338120558 82962048 212260410 252555250 199854937 613083448 335436078 437929513 335504201 976876861 724281025 673834103 35602619 139233820 918583187 876866365 392846580 127727061 24866349 166155683 157953604 406954409 671489205 109578212 718875061 670885441 288875817 114993496 832846702 187619650 969078457 837097495 582201210 487324945 51847075 760231475 282165317 152229021 544174074 911750030 398923105 248703066 922446450 590486442 987024192 430884862 520952398 186155037 612999072 736107202 991772809 53907695 811898241 955508863 712853848 45805287 668122855 714755099 105980373 307934048 396615527 918455553 116420123 38745899 182423403 357707286 558362216 477800898 769455181 41703459 646670068 797535545 414386844 46494023 594526858 574401979 343381889 211179704 444091535 157467911 963126181 876934876 962758473 498428308 123525408 890692955 349269928 642537210 852687477 561547445 668070466 251578731 365862867 534637780 355016822 842313906 914496246 910961468 826586187 648400560 232204270 702108286 124008746 620194104 184914688 394850626 421846367 460611852 214450524 6335264 650453372 782796515 57918454 927379455 223552092 108020539 271973115 339824949 465604699 431221492 655830446 347331261 358693671 665278709 79904556 460179591 790814295 407218082 912945298 87014781 599935375 777899483 672232048 184024454 91769879 87998585 413238188 256329897 571369316 713010931 263690575 60057069 53408810 128328239 501127494 400160613 605980109 154793032 208918347 830092404 104563848 588419891 458727495 597380669 624475293 521426540 304609858 236780838 804730615 664417845 513632750 389880071 862271323 278034958 637163469 365880257 184195075 946894666 698133116 166406112 50847022 167613288 145009369 397256972 386337554 471342478 187643260 266859620 883989792 82279497 494604346 555078714 508688852 543825720 948630263 266322948 95044176 888699204 213268357 681437663 350742671 657662408 683578856 886866789 966762517 590429502 642404931 952726783 791114874 49990905 240050677 444031603 619682061 41957121 329184161 976116958 44747703 51216555 108818907 184526778 407760723 351951007 598420913 719067832 685979176 963643051 664650673 646102986 513709692 4448256 169901444 704586222 649784957 177217838 643343502 258467045 446255639 267275485 528332984 171123830 16163557 353530481 153609935 606220800 698526675 51289320 142791488 896012472 262975866 55857597 462007610 698876861 701297593 904150591 560789308 448045998 843641850 680009225 239837944 662060321 945127944 668110517 592019088 167439754 733685014 129610907 83563353 934169069 42016964 315709445 650641716 530011476 360983396 371083623 964237593 699713514 971882378 497211188 709157934 410994300 36776665 219302894 455101704 340961543 108928938 968047804 92965874 510426503 676980436 348907794 331957381 900676809 642339716 402516295 499609971 306182964 307729075 789402112 885987390 615153967 455382731 954673948 431159839 303913996 390755667 452654028 853110496 544805623 762741703 382206131 46002940 891939088 309753060 705799307 661316476 320551444 411710757 231858937 313166618 203382078 910081199 315180565 289774309 102265286 130618061 132527570 620207743 986408494 216041357 638756320 972916425 992569437 233110744 60939332 103767732 60607564 413834244 480079093 699518310 521642030 944816586 258394713 404038734 487094235 948776796 105296036 775991234 321243683 989268127 61546348 869866800 837487441 773806780 623703274 465772957 570598696 78132952 893783103 482829815 639773232 396415646 355172842 352692208 294780088 557737768 680436690 316461060 299903174 275309596 509164567 429311395 976600289 104950968 954852623 58874795 997443413 518515319 942964245 692320399 285028121 445447012 710039804 41124638 623865208 134277476 442777009 15967504 280931365 887290225 97843552 738282929 606305693 920559869 128357764 897548275 953987219 317697668 332071231 94190865 600133477 560541858 76179461 69197923 998436481 69765565 880924980 846518388 619954797 123885595 519301882 611579905 944531021 977590759 895414966 233309181 808939216 998232461 735303403 715895802 342061365 732188291 224070281 853916085 553391206 388914249 579946138 890211615 363994299 927722490 739860869 743676184 148570145 704040608 206154998 534760150 994320425 720133918 958026332 783359985 67978906 224355865 905331232 46241282 599604862 981271888 263212316 10320298 319610302 396531453 667787156 49029042 537864136 189307932 700590221 389317274 117069295 450739081 818644905 62882518 967076054 465345844 541532728 514326537 623800883 969452185 437872379 707100412 384281656 709007222 701094212 171622142 839505688 502568605 217818431 232198398 539256592 606751913 145361078 378929362 107500516 346201164 32551983 591897425 382054054 44189395 289960640 539681991 19053685 860604286 614726415 377231257 10837747 600137636 74653443 651238043 558911735 388965546 657631595 808262925 135941806 134104516 598725457 144084166 93436450 17222167 192905290 319692993 424504697 565838794 388504642 990998419 634599307 638593897 733188032 724674049 517155080 4062509 789488361 877271115 900937795 661839591 937563794 202269851 429646903 837488248 42437415 576139131 162352049 312606731 464541720 74193531 187605493 124848002 597178921 683812086 571558941 440264544 304785644 241872825 56852250 876149480 614195664 961948584 300158419 825115269 489314298 637258233 169554952 856361679 998565489 164345723 743750689 830562868 906812482 110356407 221033496 84117276 601596797 836995972 456525865 134554924 932473529 62107452 897010843 483052044 307274995 802560051 895830753 387354419 332086202 913890314 28604913 134437897 433958561 490096193 854689489 609514780 309872813 320687020 611718992 624136524 867452800 890176901 369143658 768244339 680155919 340970056 662238815 897738660 395499627 859143448 458654296 636252554 741900846 829691454 70742903 511402588 774954045 168512329 902858997 619855506 255047070 858526704 216544141 299397309 178300234 92678917 272270478 240605299 469555109 174082140 498896037 990087876 783544745 595745688 78992062 330178598 110252964 978754036 667276048 752875224 70832825 975523648 100366070 216562493 915509816 224594566 324191955 444724150 661845403 474136292 470820458 111063396 640114808 285595696 557438728 219463192 680161074 442746102 438685255 280670787 19575441 445024177 227131669 358484790 623361187 318438454 664381400 858189435 930976982 325165359 504339896 848036448 401936034 341394984 787395481 243991965 843464493 583573919 777939062 814526055 726758385 658076414 460216843 517683718 99681771 284574829 747302331 664803471 87794277 883066840 482321418 160596752 375013772 492842928 926086949 560057939 589890799 459281215 156363993 878421318 168315096 449829087 118693193 859308662 756673781 21340900 742788836 287183939 59254847 958669583 181998444 318431141 195363049 975650871 207884610 626625484 846701824 163245904 514031597 356658969 325383352 612156365 698625317 66868217 29114068 925539728 207353855 675002293 268640745 568980538 934126787 80771157 149015833 700760150 772238225 80369834 987847070 84941298 498337996 286917005 862750277 491911988 688909644 570468893 402080691 873589865 887248776 56559582 130844423 840204347 823382776 829869903 857747303 905640201 444309464 115546720 248539086 374683402 77625289 1470759 387792060 379238461 798799203 833540336 814370373 360342124 455020847 312612225 802584264 366883919 946352030 913973105 342733815 660193539 435447857 167190327 884607984 198192629 495082270 796512483 622946374 510955321 891687894 550450925 300904290 700149847 784401379 485968103 179110282 919251801 385363784 837314029 192925589 774536409 123730787 942392806 964373024 167037866 519840873 368098139 663549884 670496344 733501167 180863842 877804373 953175291 269860670 474205359 360749344 115949583 262382787 426535552 959442489 609723576 471500159 288252645 154465991 225306099 323667890 622334237 385600171 554629739 813582674 67636917 664604155 935496076 374979556 604734426 865067679 577935146 999561489 774052866 378039180 708960292 674884639 971726638 187802810 550072243 31019320 815978202 566699972 213146392 831299381 493088586 375748253 238069564 530690842 941149453 90489417 413883278 778016908 923420905 950277301 727014814 686691068 821919724 994883751 149357546 800999363 525764423 213517942 308928293 201502777 164658918 736590269 458532747 58291305 375070825 909839792 482562668 167378363 615866140 645822609 747363090 451359658 617721524 750084974 536767921 296889490 481411515 83157272 402257637 297426646 113700669 278589771 349741538 882883997 7855625 416055677 24870825 435361200 771296339 15230826 748109834 713090577 753626379 323570018 899158213 959532983 878179583 943263873 796467711 121893139 124111973 694893913 547177037 963591662 907365615 391040418 113352751 651454828 12340705 402391993 557616290 568295560 485057129 759869147 49250030 390530798 200529367 777512150 760398187 243388583 757476910 240630974 153063486 211474964 755567307 248579198 201092159 943586194 425353200 229606840 687250389 125547075 62621648 667766534 260167523 964577750 196818648 131752202 72315541 573354013 771207617 280607794 51919537 200511509 925545994 252308218 416848652 624866862 772934889 966611952 546910585 61473021 941769739 951112049 637190595 581664686 177822945 699242968 42763506 588292825 169199376 774358976 428186697 435431871 633420389 118526118 388695679 43197771 837030880 777163125 854040344 125343950 374315606 545371650 648498558 552210071 803513443 261086781 702750217 278049175 134294666 649628125 847163519 792904370 253454905 335009456 509225404 525085301 348385980 806729774 747009382 736163691 740803507 232560100 667651239 904378957 741520298 314985414 1855454 946284158 851103255 660695068 907482193 145789134 556408517 237300557 219192824 572627805 386171631 462298590 645205185 643594616 566998592 562232983 491131663 858758839 549942753 654882251 356732359 183092801 9092826 690534167 781653480 157637931 249425944 733705358 178164504 41819406 108851660 671429314 25019914 90686289 545909592 207526003 445940459 552657135 314601051 973335900 745696534 418987964 993920922 63876976 846553527 271626762 3908022 389983371 879317393 899945217 891572522 609646031 50881755 235176405 622249114 531017112 523003708 142992702 180455383 450138961 318258404 595311570 696142290 853885177 5940286 88128167 9058326 487299125 165391109 210501011 571069665 195500686 146816488 379184054 150395472 818102743 314962678 87861791 609824374 698929623 394223689 862247482 574746162 721406323 539659586 223672474 99629046 750673670 894774509 368163980 462886128 1542911 739440969 861220970 752652805 816426677 992469204 635551490 99797977 86360294 241440385 359102316 480771901 401156818 463928535 557644903 599329063 125685786 387407220 734022004 569117608 172084458 41341447 687464552 830442795 119101287 708597746 778053299 137921005 60509127 966340969 316185454 395368734 967124524 2421610 694896248 123994395 334595979 375974000 41418924 233375330 338569143 926226808 221162942 407843112 78786138 806189984 530322249 203480340 366373782 83181649 909414010 56813464 925973219 326562478 773189674 885892560 924576566 236501378 475205597 155356593 408181685 540483061 754989206 198197062 216549040 974555170 756321653 508158983 851467437 151690014 684783777 410631753 346751071 239667963 664772664 907327564 572162453 76116239 566398346 583504212 193662951 262560180 690069267 573710206 974190120 721358880 305082281 260421414 638445866 448496496 496800354 342629458 763286641 571206673 202087631 436454888 689883257 277072520 16669321 349498784 35085715 231674191 825617727 172881934 374328944 926162603 258545235 916498321 515480607 207882919 362295213 37944784 599031979 735082081 20675030 771726895 81244534 571124898 385845121 110725528 821293068 390562073 543491030 643132528 305208240 333265341 148640487 735768397 348160149 717089922 297911040 640534845 677512219 286660413 4130020 73623182 720660808 260225893 985168288 767420124 792964273 566648476 470079539 94123662 961234411 291737539 842462089 710598908 511721129 121416299 992219377 937151944 844073867 805919257 778371754 714817564 302473824 398582367 216291812 996292070 383646156 384060032 975783303 386429057 851054162 38460477 260475014 451561600 341586972 38731516 912484152 293357255 853832922 715334815 610358306 474742466 704815303 860359350 974242792 125827812 442546355 619698448 522051688 439734724 740587975 342608165 321780640 968512212 50241 12484990 662914975 664068346 864423907 723363600 995954700 704456729 444652005 757192682 329999917 815460002 955794999 779601658 307174290 8261866 505177305 738552046 567125046 697618607 385327871 149952913 819708781 710470535 240005765 405431649 794814390 697225355 304235463 970688984 811237499 87844638 545413722 508268470 685944893 867251630 808956290 257771408 797420995 207941136 774336086 511418246 916470763 2788911 585981448 62146769 830721225 226780215 925968353 257775311 501039580 39897745 633240215 68595778 917380190 931093052 770383836 687516922 129424543 657464534 138600261 276589906 709173721 190128015 900624707 159243187 719559372 223182847 666604125 144152611 97049181 10570052 508681547 156140351 208038675 446593478 326227767 31941615 131005269 182728692 259453352 449614356 723544286 40592816 774440936 853182257 698313453 861159417 103059663 723647534 563825075 9572454 858813327 482487570 835450975 853647287 882179483 578374714 991939913 321917684 219840864 647702834 162336009 33642246 999470291 298552921 881912662 286665 386477489 553727538 824016140 940259797 603905443 218430773 89748115 746128525 616460890 341963298 563723304 625758304 259284446 994103322 181929725 566971187 776023054 680045452 307903933 559858353 333403558 51399906 708472851 793199420 791187043 567819754 534824119 324467149 498037781 49579204 506000707 699154278 50993441 916228278 735094744 534361556 440300050 409718431 6026664 251773701 887360310 319149827 913582481 995039138 648115967 955591615 476140433 627342067 85251783 746467619 249091100 194998114 601390181 108164251 571025583 256793169 106318908 111934409 757693946 3868344 322375751 953846683 796972372 302751692 116813135 607585674 984645999 649516881 548121240 85501562 909863927 510047652 577399067 688862492 465790682 185154370 455804817 436634104 357184978 397378350 197570101 343078135 343092419 835234337 261852304 95597779 827277064 263268122 384418686 763074261 380178278 201450953 846937229 324975366 504586035 484788243 28692558 790955010 260928422 956742333 125661770 414791031 200444362 953574613 645206545 215159031 141399895 615347771 94130186 763793026 99793311 184078768 445070677 848386405 477046387 755027960 23626339 681344187 681066996 936869101 298563245 409976062 962872402 84536016 601304108 818211179 8355036 355031190 164209954 768788587 875990590 261743793 194956390 264970110 95523997 220426540 937599225 158930366 569319204 432380371 889477456 899289087 256489599 880440388 243486066 305239906 177855823 929541016 801279524 962383847 486148125 744571872 465262348 729922469 388918760 119501091 904555105 906221306 380853527 871613517 345258232 322104927 485539689 886238788 532120378 204741521 81363687 79820515 44011901 31825938 301529430 815358581 549332857 902985605 399368962 608742407 382845310 311180871 496331754 626604208 494050641 374211250 103818909 322685765 237651147 607973215 691159054 268214028 353775288 132855120 920885398 256870509 859357337 3965110 532829533 598179754 680306073 764801051 682021862 417085498 439072989 114540020 75920897 19476814 307019718 315700523 970099730 393143811 355089381 164285304 312999510 547072692 124556705 963977920 775591150 561777961 492701603 996054500 423931048 191072492 30638585 904272637 189312841 708348779 727517319 759366314 81957071 981900205 31612974 237145132 722545399 551209119 95415774 672484674 721491624 369803432 238552710 398142497 771950685 251077946 277072256 104553654 67841621 184738475 675186121 455939889 744561659 978022532 354293599 449381006 887618195 907428190 993652257 867820241 965408872 687293446 293777437 558018717 414099288 787227696 41795429 358906569 958545886 472441251 89228032 313212539 319887867 8348225 508891915 624779111 936582519 902425958 504267561 986638286 824011855 337613569 281263104 944257866 50217684 183861905 374664917 204328677 348546518 286763832 209957950 543513085 82610479 597019753 611855019 584703099 140415542 577253632 207346040 239570741 705781401 907010064 551349911 488753300 805723128 804458186 259006497 863862730 892737685 505206768 262588096 642161028 618304391 817997879 833807881 37217061 155729463 263071453 40636963 584945226 770263665 625959807 621937467 928149510 692064283 908979311 514008939 419248010 627641938 983715228 617846506 547619759 505950032 700936140 733021067 851244358 571189286 13776646 570483547 913381609 868193772 595817933 837866611 652241731 515027896 769174938 304540375 729864776 615874507 984158909 832157588 525074554 423260191 517080710 790054516 642849199 632866018 806253869 730962867 230316874 718114411 568661789 478495895 708302947 667050470 653054297 257882246 396807781 996510497 639967456 683968848 122202789 734879927 926891514 888120252 264341201 266702771 452758323 719483840 915183634 573294789 657065669 575788829 608190542 141246076 899811226 864603392 743252860 306403324 521947879 608562634 678334415 116222869 286663929 316305977 976344739 35316957 932042614 267877138 902508979 459618285 833706941 172648223 278626094 668506031 725505150 622361373 634500292 37830058 784063292 883145990 541464391 414242139 562877445 499028174 506272852 446164408 371537151 943366595 241816336 140116709 147065473 714102187 48887405 496032871 933458602 26066001 40081990 679581549 415910179 584963900 228199545 946909409 101040307 603818814 586897298 156569897 355200944 497469441 206222254 53309825 523219353 126393596 291595819 641712594 981121923 794408025 876768435 537988027 537426369 606239153 159691552 616138536 595829181 207491859 310876271 935870581 445454086 595941087 118075479 191575027 552798729 411925434 669122777 193534731 373948788 307578009 384756134 801690201 217380420 498968281 226508801 448271817 979595870 527225587 698918899 82212863 940924332 489884002 535261644 205819234 144897126 478312552 435494600 739878948 256802686 689052463 946727437 571256134 950630758 574785895 636624295 395808053 932408268 16780048 951348009 66911332 119642832 243189881 260567350 598583364 467094354 260245000 723787164 917088713 439266567 942022941 528946399 637460525 806280867 475491232 778864033 41953871 550844282 482753071 574366142 483938973 378678710 269016083 787299360 694617972 498100156 906769730 576153786 149412814 310610687 662019125 631853835 387879005 446742240 91258185 976441615 779823745 40339760 640058291 205523403 746021643 394754670 193948785 629616760 373968978 686835921 851880199 265273733 479290838 503267015 446075554 81556025 267617819 820358045 321887558 93124998 266183152 444158188 354349601 858231384 356478197 952867759 726861249 946728810 701820156 805706285 752251092 274788701 926184927 447918364 112184634 620390941 909586602 702675607 975839780 312873202 665907378 481544136 868446260 815530441 336941058 576584185 681522477 538362172 25696164 617574831 575144063 692558888 659475584 163717184 338340638 618979418 980321439 279719846 935104297 713231970 10696851 397630732 481139457 268013229 814898077 652032566 643121874 421778436 44520437 938835685 201912373 234153559 226322243 930174066 733236653 205839702 592603709 829408614 984699068 429855836 361307165 790873895 795497199 900049786 138689460 441292010 923413207 44294040 135574844 792913080 705165226 712168077 943264163 994410222 264298286 557573585 576763447 572750805 1788679 286708657 792166345 510268313 881521729 652711666 771255581 286467431 935586187 508716689 916503923 877364413 783406423 858955750 464716274 38719975 974684510 108138648 873270475 620865652 682091921 670281061 894007399 293750749 582816273 332336293 215307134 92405668 316858637 853643407 806458572 885222426 693307644 767100543 894272847 59799301 638936390 462562532 783910972 291215524 793963644 527447185 518862359 610779542 22511451 540451209 495519334 34463161 98194945 915626219 458577 637901980 712797859 46574071 259728576 585600832 517188250 770845637 707891717 303888272 410113453 653525323 163876632 255778482 141032759 759341326 316400050 694033721 64212064 54615119 945009022 11388679 906626247 710695771 487580519 831887843 637692376 59554004 76186484 67563155 382387092 651183879 849839005 281172478 648324050 103063850 779268239 679884279 185502743 512882416 788478699 260074563 17371325 968265664 507707903 851135088 290374920 516987522 229500980 93134020 892856548 413116966 742260659 181329301 302203211 911606684 89392834 417443732 94134371 745758664 293732878 789751688 388458005 740967193 705169738 103756916 488828021 550464633 399806048 123052562 502546229 641685837 477812206 188275938 14077983 333437180 728777321 924384035 682487729 326212832 597893646 840908892 292424185 904492875 84901520 679242416 768341106 990982557 914584768 643633565 916438886 230265892 896718763 130046069 284350775 549719952 192824760 966407457 221028960 501867010 535984506 846845896 910007212 294325527 430358916 923058812 603278930 52594315 444607534 613477137 70552197 565379090 267842931 71730388 256469411 889796711 39786673 290296820 431302404 850143035 950104040 841575088 203509275 317682496 928599276 945481721 148526010 547169578 469995536 450359506 835984497 161482990 926712838 29441861 117862781 817173691 999462258 374306446 122141700 353220790 288884984 762962819 259386012 551080589 710747257 344754677 518811514 519192286 526568691 979489977 550869612 945627814 664206489 219966498 67486744 942649906 98320775 928496583 159945712 48198868 458503549 630942669 596246689 344828773 637463388 386370628 162067519 137713018 994959547 494272018 687807586 714056586 614696163 685327235 829423186 460920837 83567996 554493063 988833370 768913535 219359171 783112345 124124465 959187714 887944597 495622787 364791924 795702049 307024641 587153988 167878821 254766269 383196475 609869161 310296183 316609115 2652795 948688024 435487491 93345032 315047866 464688685 430391219 290690408 905882077 543368778 2623871 13992373 957385901 294368904 500933537 7382820 506662997 654362679 907690253 522003313 672943835 717089477 274471543 8677250 11120361 697470721 217551260 215896968 126394799 661731052 621638925 986049402 534288396 685871702 140749444 482299785 694263218 191348896 622303762 568128934 742445244 908605688 147931887 890284029 233590073 339914313 950516659 295436124 164606374 660096633 586299003 4676399 242262553 268420515 511561782 176784111 178079811 449876379 400604688 183637997 774159082 786130731 256612002 19216079 190482365 112317767 772582253 818080066 321528340 72042466 446339410 829367338 252216769 104485645 713315820 837597848 380137472 734558502 223847128 695712243 923887091 154391703 796008960 944384567 117176949 492297439 168866366 40319479 59847262 397590691 563100467 919879713 329456314 537534358 892158611 167629115 948955161 319893689 320202537 86973681 903389027 174430139 665043734 637723352 541900635 993509448 631098199 220034150 536976154 851372481 687711647 523581023 767810191 350733820 26837192 373471429 48478903 458209832 275366215 566840855 322238848 222444108 243158815 301270267 437959647 733584589 16234763 171470481 727183442 367044147 12397952 555505215 90918207 827310900 37811012 172335688 238666903 966781773 119086854 825386265 703812793 123829696 267337098 162096294 522196421 582369218 822811047 110233093 5140763 68803623 370775116 21366232 526607952 313698909 123242854 649364293 923236475 334371712 151803116 277785156 364658486 340643909 907394032 826540087 428216987 745802136 891777994 764427479 745461650 746683257 207950602 482356013 28345894 895078696 178507776 344222047 933989392 240899349 49666931 642981893 411459908 452735280 447399931 837614344 867406685 858272316 94518759 420579100 667564228 796009649 302482816 363375829 646546482 580012052 177898027 881997003 263526381 128100871 158674766 681311762 919683470 983675000 886055241 739689401 977637192 87003678 341164155 851326486 829243900 692132380 400369099 273901061 975528117 841258499 554641278 377521836 706748346 637681993 493610462 784406681 55747599 980901793 341513559 716065281 56142137 92521948 473709603 873606056 54340092 248434405 421334620 506497187 755067109 935384322 921982924 948258938 624586766 356389812 207328198 307123980 575513238 490339288 888402584 282277418 372378265 453942254 942093565 672240441 847705235 513862154 175331929 207726120 459674150 812116718 783548322 347403968 837461145 482457498 727411069 853464702 506711060 818763115 721759437 740336226 945523864 491150210 440275603 708114484 535076022 363601274 111895205 477583076 617957799 564860767 823045347 771896269 283717427 671948501 830087780 262968021 112280786 605067513 17001734 543779298 679735466 250732066 83690120 635981364 637027889 374804193 205243131 515821111 517276957 317118712 617683426 566410641 19415222 895405991 244836556 657276626 914420674 688784535 579120254 739690251 393533420 389088811 827599297 271337609 629365023 385865319 944002936 256360773 405511112 127549267 816408015 637820053 20327233 498281847 486080475 921092978 369823636 222163474 104143394 244078997 682966298 321332115 14560158 89711511 952218812 954118595 694652693 423843368 564019007 643378066 698411811 663411605 92650306 859678931 415965532 644111504 77292101 432101344 439712215 644783410 621862335 493960399 156287434 299670552 79393636 715442355 592760483 44436768 64925190 970938937 37625449 869996239 610393729 275171514 370498195 980005801 654553822 120937699 601032563 966782861 428983521 986447580 365599175 833357319 680370003 961313758 884659438 143040019 140486257 247294071 646970490 690166029 416074100 332962172 611174563 613616300 855097253 836027191 343662098 221736271 387465987 528067631 756203535 991837550 867045742 416810035 732076869 773498645 566867715 204252801 105094817 357186209 496040234 52517164 96094205 339374365 967735778 576074500 571948049 815188121 997127612 157969473 993284301 409104434 462747622 710315285 957964410 227585435 561379161 845796307 306622950 797063026 353835440 911897752 538921760 793777746 420406888 709744470 830079608 424761884 370550539 710730721 808345022 915673111 560562195 935063950 895889322 487384156 545149544 340248087 947968890 652276914 866970169 412691878 862729221 736796057 783237879 985225958 794268438 125244100 308941642 167777580 695294231 747397826 833481888 141418366 890834048 388796583 931579383 344180291 489577587 993384540 149607582 365217053 541017508 289673550 791462575 470195404 506788315 524486022 40194721 9196209 226104628 624335035 168209590 381118133 796071331 778122732 430327862 610666908 564624440 446324135 656343652 552039433 58462241 650261984 892668875 25933447 987775599 16647772 912167359 719319990 151944127 129825491 842104746 493192869 22492143 82603767 125326273 32557441 683749286 844998497 388104395 981222969 538704045 122409935 75824177 379686255 836763228 601458122 683770023 695728493 18089893 331226762 732719602 64419286 239722021 976086467 862462225 723305863 252478413 845854525 416675328 430034676 641282793 385264052 176692421 256984546 653159328 510223855 183530157 475609571 358936926 120342182 491354591 523477814 853168272 717521482 600335093 149598020 199337506 465843170 762948996 476941683 522022985 754598862 163512551 719506096 958542796 392057481 379324229 918524959 984541024 575732329 376052105 413725967 295932740 430962830 276696528 946513943 311579051 71101588 692518141 288195704 541061142 809077993 838890215 137133329 354380241 598756650 32133189 368992737 355994015 118878343 823783445 232102577 404751475 307617762 584569966 439836136 695557847 898838991 458256720 569883629 487791018 866981110 475222963 155007183 813001830 814137305 435545182 474633944 490414343 235650802 969288115 586260843 45065446 857069271 349570162 651340945 511287599 761031093 192124368 693332751 268591023 662173835 732593561 16144874 58258955 355851591 24097267 484612192 776986532 564444880 537614088 188275240 105300942 444955156 256022019 819811636 745424048 999843642 701367606 198439451 425822696 90345118 261339490 176433225 75836667 204276188 357202539 629390626 356660820 787976441 684734787 106196942 69826888 551113699 23211556 933382141 309446776 751933983 708142340 587750148 474922589 307632388 836001829 431646233 121592829 606336787 211679070 480237921 167827760 468512292 699299029 839268652 674823839 596436220 906116882 363914054 814423853 3401419 486925194 590127690 873604118 737536890 950876035 547260497 858000208 291427113 878450759 218235529 656819190 693033543 523063767 577326582 901715413 681104987 904765947 381505068 620674520 80618460 580055748 140286448 584539428 236182526 314602108 574833887 279070607 988996879 41564016 567923216 624811376 802405476 416833620 23246809 160675279 467845236 635393135 203818880 857710804 830237026 282337653 50999952 334772188 57188045 584568345 317437287 227366684 244378980 483930897 523813164 455615079 746453711 625910809 96958590 529205495 493167241 430743625 920380489 825007853 312566540 16347144 587862098 391681608 558056294 895417554 876871023 210733517 892729608 215648921 580398088 314089252 646026165 432704118 199843581 424036869 804196615 501740232 901693051 74604733 979122450 434293339 650767146 836766004 224686480 399220140 251710255 563238609 136125231 823504566 254071970 351784442 869250079 527545615 813910058 714568710 727615859 202739287 711883871 503193378 362398375 577617072 923578250 380551187 72389212 568882072 234926928 287037330 484375627 859424280 799110809 757178555 489027087 228884807 911720485 848851939 669755084 164153241 206076150 232058335 466087718 805560526 448628241 319753893 371655461 224709481 777922643 297948889 371532765 575444132 749339079 710815796 800104525 464244219 373096776 930559013 158370328 451027977 288220400 186164615 708327491 417906438 802937704 319594126 587299145 301287262 484777425 535056374 563872166 208545062 55164888 405578150 672351355 384695673 441902875 136778927 862051370 358554337 756532863 539050958 690045467 120003039 732216067 592412917 825393955 184637103 883484061 707530729 27660026 141760974 957672663 114656670 357774080 793921236 719651902 7460517 221695300 490655738 438573066 704321643 479291038 905616222 340075390 57298521 293984524 277825806 499461866 832614525 624557412 438149183 127131909 676949610 271820573 876769730 741126583 489405524 902579242 530384081 625064790 427018370 690386620 599732986 632586064 118515997 177682074 496944109 948384352 267447635 755340744 918177644 697614289 754713271 579799624 120713704 415487927 298730728 385244316 57442008 427409728 517020883 243758580 325013223 591066627 149117408 645118218 605989172 680810701 158305793 472711154 222676390 464699116 767870112 151589541 363238165 633613398 278861958 936752416 140596311 165414076 618967676 309164572 221275489 43252153 989465131 472089234 538301005 348946623 158915425 7041334 59674354 253186023 232832038 418638154 177050742 919473633 801741269 954520176 415840303 587686896 415713718 526258729 46524045 740676724 659361372 273379043 941381654 424859533 173938029 381494233 513913117 306596447 627650453 167276879 374354342 836834896 539019693 900972619 814299488 299274698 347389104 720864940 15110452 52163096 207468235 609264730 470509904 554929383 336940847 172043139 732974269 335405373 35753211 942027126 855878950 546233643 394924376 236927220 461724023 6142419 950308864 450013662 424977979 179233418 786903184 839703070 747882098 84007929 538984514 227648984 11763618 229611556 344791236 466212386 120735248 196400496 304002450 863656401 248826191 604990582 363007075 738977044 837362824 238483777 869212583 492198080 865658162 95589749 432293098 111603687 454278780 64162306 433861311 361613915 117969963 810835096 744125201 31677234 138806054 890067675 94555729 532225503 534537782 972462088 35521999 966997244 864804592 897604067 942451516 511741003 800191342 548400992 410968878 835156298 537800628 629053630 290356567 812645775 858933131 642095979 501967919 613471998 290677087 303411027 967241427 57799171 412697852 624080837 685267969 312616194 920836360 986714582 892887145 192878744 354849635 440882822 535271309 309052710 817122424 142033413 422825832 518760003 64062919 158262079 906367982 565808764 951215126 745754762 33720582 331427355 762049499 489702662 52530907 894080683 698879397 196958429 418947244 352182423 911941896 556501507 768246271 263296732 859051818 194026549 181776925 774974931 574818769 189686622 893609953 709105318 453417969 595533966 533863806 311224356 29445943 742635893 359960021 462960206 62894446 207731966 221393806 382618810 704948399 626626089 380514543 107572931 444283482 789431659 984329333 285052683 980943052 683797150 262931619 162287474 267721 195957508 115439411 242138077 841324779 905740235 366922882 274518762 860870652 938638560 64838220 596722185 608901332 955124458 667004035 764402807 727060197 101046140 857296547 209628154 603591347 40252006 678346391 933504264 591755851 981199948 989784405 694995185 683649670 836652555 958595112 543547517 393099915 711211477 876045024 675994226 514459802 851081824 915423602 611776246 109582751 797512580 501225781 958320370 115927130 386838967 637186291 204555044 289518440 789253576 312246547 935391525 818148516 345517321 998323036 790661674 356721964 912302652 178457839 918649711 364480119 184724291 61394394 162112926 147822643 486429557 305011449 613133485 178557268 662634277 526821138 840558371 876834271 274776273 325131993 395061571 927656087 517103044 520432287 58275992 584612917 661203491 400741359 553915458 826366096 810305692 484599855 828552547 792697552 766605584 3009290 773790643 523626165 16286497 277617855 903227398 869236317 959392989 458676521 100197083 938434333 161549462 302046529 31220591 703499419 474575165 530287176 342080269 848697567 237967845 307040823 917234217 444767986 262410991 476978218 353098244 629980262 448822939 785848021 867424234 110917472 246159988 260015280 336945872 326525270 269172224 952251200 611811538 634974506 618598409 675511789 569260834 992407588 124758609 23583463 789403945 672391091 20407542 894548535 484254157 250956740 160089255 896573362 497098941 206725210 780304842 683009447 486825124 87113146 490033610 946680045 375159169 97333398 599268812 619883598 489317036 251882201 621374292 519724081 932854464 564873606 943210911 489809912 23209776 342491218 932682725 97406804 404777684 625477571 813202569 746719859 978896403 986164023 228455444 881775590 749357668 640811759 891842700 801086314 183099259 804085579 901123821 445717750 931628716 616503749 879153528 177310527 109600683 216535079 953854204 931202481 572840214 927451271 998664715 12740724 114166133 263782923 403807696 378149880 443228303 709818935 718603123 481790766 928412268 257702310 880678885 695179592 953834728 155854470 863519089 173449216 21501191 390951387 425780445 739010594 210286871 256867766 322765148 598645497 23839807 173430055 25164459 214583605 594281428 462746509 47205521 980783226 981279693 951850920 200873131 571166802 484833106 190141967 410746318 884809202 977861702 837917669 676386340 740556306 703982115 515849874 765616041 266666992 413971805 270894714 522503257 826951327 570202176 651105 459803909 20025289 237698173 316389886 724046383 90161415 226342264 907086264 852836013 808861443 869766553 302281360 422048453 148847394 654152109 254642471 464778381 22485465 405689764 309913891 443074401 679555449 652876087 984192881 560438986 697228823 23471889 745655065 706418090 751013388 649792140 812846230 889901854 712936079 397789972 579548562 557112063 543926132 657271412 89606690 898840509 21395484 666173400 695116687 391165987 957097040 977788999 303776490 649929778 115625143 749159560 453342238 696811939 879703631 660836914 101679017 655060800 89975738 74856889 805584272 400606858 378138648 525491193 187421491 632555321 743271525 589471067 383969475 158125409 238002931 516921924 654046716 111187536 968831727 224276480 314030891 695180147 906531954 52262764 330430178 310750472 160307570 744871278 227134601 742946633 104135660 253513637 544431700 590314620 406362929 748692901 872880077 242195838 728418177 847521890 911080682 326692250 710790116 87683264 829999395 330683858 114968729 794723871 897818008 617499087 454872792 118575178 697233220 860660215 425625686 666609550 373057855 542798002 555065787 536463119 309514690 858630914 209278900 992511235 656894473 472666502 823369483 863416180 996824065 468014422 854214800 354618503 151309900 369213052 715530047 229699274 616649810 339762487 197977959 574351157 987439432 896509965 416370330 668146336 297497642 719228600 75318079 618309881 73839241 401293783 878852814 335196340 762323417 12871488 13423789 930062715 162671317 210354091 247437446 86403609 324830676 629012515 548741686 758950867 879422361 656690911 422167227 524735797 316687491 644125556 959955820 888213540 961561563 792052102 815240724 715704677 313124086 561006571 22670396 886902970 131824295 722154078 481001273 744946891 601779976 154320531 414337324 949127288 196710955 624472049 412930312 995452510 33419983 203175304 937763989 551142996 259076378 826562181 33392297 327217775 874164836 291808267 259969249 936882216 186285642 125890207 276140363 11892903 779279458 364538371 957232200 627776872 627067836 332131775 177929619 691652941 506498869 40229256 544863926 369549625 481032612 971506024 688473472 346358721 544152263 471278754 899907779 738704062 690098088 227942407 486800844 299512439 275053854 862635387 366969915 129141457 251095785 943246927 429698863 54530055 948099377 289083419 118865428 865914469 468364175 114350965 587900780 539857882 367490392 507108804 105979730 567511080 247093964 219071848 577378788 649003159 723444355 995786437 413027542 953390383 692872464 691927854 808413045 887382313 115074609 762641402 926504978 625164453 200825494 868846822 68843944 88341230 644468851 711201613 556525417 750535654 310252922 258234627 445819460 336615597 885874578 118784978 368040852 57920093 740757162 110502779 491163930 29336730 255511014 399797962 115944985 42759236 656966026 97772513 122890622 11483136 999496587 424137226 110909542 969374687 72695003 64673945 797666592 73417174 589205073 483343925 351705147 592683556 665085774 67101578 876977098 618262252 13946342 411157057 962970322 384126029 890172586 819382651 226916814 113685352 970266954 627004402 440045028 759851471 489774103 39683479 726814254 801984470 882189444 907567384 66436920 774484830 603690762 919142678 569264774 604318634 369441676 813948992 901686663 648934807 974705495 156858932 618111308 923082515 368076004 832312576 191466871 884467457 226100435 224963756 274185122 303091095 489407377 180516072 398222919 692977394 831379281 955947520 412273521 675010388 724924318 562973029 965196519 490122638 546868737 102980077 17653004 656326949 564056014 840495169 979770286 694481251 758027183 388515239 250161496 505752254 365549157 176608307 771036964 489527555 326056781 313803616 69305122 277325023 539583779 734046173 227552729 861900777 202383782 856940025 959943970 829063016 80443474 508228970 712900714 940363638 469481948 429303010 167092409 313040434 112819542 795718716 989914536 69609361 666653375 399257577 179398762 28379194 108662900 372892441 269884882 737828826 579475581 319795929 217121580 103193855 133356760 882123911 700776123 819725927 394298165 27648553 254041476 352344748 960970615 689442110 847320106 106129373 463411886 842313046 697302980 710214369 330957746 502267973 730681284 978556062 507991663 753069184 213704440 444330496 181092066 575856740 264361304 82632396 863962270 994428832 619670614 243091389 387409781 174424141 772606320 735727334 396275694 659772309 445844051 796706913 75034897 550189918 728456488 572661095 340540330 441181908 609725199 284623311 103309804 803351424 237745679 144718594 295363042 924412151 929235317 727350533 885775211 223368026 744054477 128891024 371587397 398794225 507464259 152942128 140401126 292756209 258747773 637161192 322563251 634615727 692072188 961188258 157366291 212089426 422382365 778927115 19404716 279343885 997396900 403572787 699554878 136482558 476846704 547100638 86034796 553623771 953511303 932914689 842209418 905061223 877032123 575579426 668701685 131166351 412716668 297038985 466311192 956610009 53467604 125038818 387377448 814178872 868720254 650602183 832298387 157813027 331685781 15163530 746043183 33652261 960858912 948704769 539455689 684700917 528609350 475714657 474562914 961979873 694007202 692030991 205161174 355127215 413057087 286015198 980877995 738185594 562301298 241820549 422548578 209367773 471681575 779964181 403219166 816938766 11089589 878466099 131864057 519042236 921425125 274231308 48160329 502888899 320337925 532748901 746747835 305215963 367891413 150749787 200947108 39608311 766293989 115160250 465686346 90806910 203588612 944982397 623943946 87333214 545329397 831086805 996784385 351729670 198479952 582139389 18591197 666644749 169163789 893438995 811372544 234745033 740115186 855869648 563081262 754673416 61343875 971296189 640994301 74308434 567008491 647877191 451000895 563743325 754409923 552049405 631049916 469053629 572480786 550380294 908856127 28539998 5159984 786813089 838086107 673201423 576750642 158152706 219416262 67365041 981916182 557637807 657421767 554231255 188546254 663194029 165198326 310146365 396823806 575212889 668909941 394429030 690998380 391353727 751184021 52775908 674399448 901446700 511726245 959773002 82654665 125423801 637099684 810522403 713023341 79882782 578844167 405369423 232902899 571536158 12225335 61739685 904006810 108404374 475166985 934073585 235043222 63515783 380066610 780553510 80875221 103146031 160101235 390645859 690266312 974296825 678293687 650585544 208166178 619949788 532224013 640046044 505926949 966864451 361261882 968048887 328842743 594962393 770270221 64704053 699647242 818714743 530212277 933493170 14847145 975902059 372114456 283218188 528491151 825207366 487880643 744112256 75114807 34323779 568601245 879131738 674794984 73571209 522703539 514211851 326374761 492425073 824685944 384651604 543728616 771637380 564850324 612944628 794416906 53022299 182851231 315648863 105445134 768132330 492394407 128614181 842831915 327152669 105238767 674750065 139703488 75273812 645158374 687414606 721180581 749775033 596336702 365536407 808417191 807297131 232020334 512745122 385167420 665484719 381870455 844708553 271871675 536948851 433043004 602921504 118587189 30417526 576481334 94755068 462647488 668586486 649249582 699389385 878286352 789799183 391506644 354565605 148409259 948928930 717181864 94364854 763680169 565738230 873213669 546447745 538450175 878070396 611534089 571247651 94042974 375337056 104464686 24598496 385656349 449068100 683220325 329148787 669161209 595894513 992826920 543296528 312818827 108133518 688481496 575087186 87713951 813122049 532758832 116620271 221174837 893297924 468059750 814793938 703232137 727490439 496989903 190041315 893532075 283685299 402413225 122482364 102200676 192593779 145759546 582290176 313607414 119000058 217244360 175777165 249084218 807264190 732417208 539620472 398228619 785443272 736429476 521464813 257847441 470958225 726501994 427346650 253473605 616017675 276234768 447751283 294208129 189369468 280183049 686916421 786451592 221086976 67641504 568708118 486953269 151664 300558654 699413939 497786454 162341937 100725064 364030229 892425808 262274768 729658363 286528779 978534101 565761490 46164738 44832299 7640216 106458282 684974530 483639925 245545490 66451977 241901861 298505889 380730363 108615820 293868627 344939498 782531310 957257755 130026651 552138635 904118536 162686074 1088128 202586880 594384839 296646427 114958665 574218519 722628116 619752964 704192426 406838841 281570703 788568303 716579062 577064665 845410053 475596707 288881617 412118229 147975209 495441351 24769827 524863356 48471413 829613677 907376922 718430931 18361802 208715269 694294071 572054733 978454981 584706424 915381974 333086525 411594486 822461745 119933548 161531176 970912840 830650287 374311232 382043773 216679371 944622845 383403320 593490199 793518169 550716007 452926619 291160520 123198646 801918349 513635332 500878757 87666050 623202619 798311728 756043987 305468216 472907492 373504007 788044528 683638735 845328364 400311155 388582411 126568633 797621725 319025002 345661908 863236594 857024664 192930798 872502478 956336457 657594485 908540508 368949855 241689984 862828729 296603834 316367592 972402425 461430290 378862510 490700426 960424651 256100511 227219020 613698230 207610513 554369766 233838512 255183532 251000089 926886565 344323681 720941832 431953448 937256952 483228835 334351809 115607125 326536762 936833555 182184670 619185547 811481678 658574294 842410470 264981148 429632937 263928245 593447718 473208116 81829920 491516194 72049557 382488069 146062398 542909770 135116348 834006419 176883966 894363282 788917168 879770470 650420467 529566217 990575408 337887034 602349285 837991044 747477251 51806407 582065572 573971360 290333327 485962410 781587968 643000958 396258057 20298913 559131030 104733642 19607978 252549476 665365056 128258618 342003365 634938427 341439379 219987542 771100058 140989450 71874465 596066220 142579540 227549282 815889649 628809950 593268305 240521366 860060097 820902477 172193473 598981850 728256491 633471827 229508371 324675177 806641191 839802576 348046817 145520280 317653015 811031402 464224002 674103341 684996056 843145801 923192353 221277599 626320886 145497664 675059994 881550963 145914387 944211988 922668256 446475810 818860856 24748713 619947200 199622324 677078021 558133528 659518246 766898834 107367805 883667404 551113650 163380212 740112059 520021772 583346277 387914607 576895149 334655655 77310273 642702222 638805567 376574401 490498080 741190884 102092414 863417817 755449955 310908005 558395428 441201425 539778049 979092104 583995235 597085510 819046432 443344789 530177281 903200497 38034753 351642705 116546421 510190923 347140491 67383858 834577870 776699120 686057842 760011511 448615280 630432192 536215215 86090380 825239079 397863942 573906300 590156562 327372712 229630913 263829878 710598669 618777413 505323996 4896765 202639522 735747631 720209611 563777119 889449877 554836754 660476420 277738299 658105085 390648806 115175155 914595610 857201084 604192380 917386347 622844227 747806466 418402532 333917021 641359663 410269931 383511009 149811754 522236254 150545260 699609179 327690758 325653378 589458672 34028835 573312083 436483682 525861997 505176999 620080921 887546625 609442276 638811866 286277188 385727957 815292960 428827831 351696664 571710821 751328989 594153581 63436492 746676815 521535376 464942054 215317696 127281769 385131594 212413605 716268602 785190806 969070219 967709812 567125725 259811560 131455449 340911401 590495111 968897381 506084942 59665935 48190622 846061364 475418263 426952484 973139387 67788508 935039733 929040271 194686930 893564848 820204325 127095737 840723293 985344815 563846904 948323091 701386850 680713361 325087225 844199489 234448312 769801992 208212677 551059225 433988410 81551666 858015107 380805811 611306480 526755766 856324044 594092088 840977956 987967320 406062906 665392464 213401692 953126291 344401724 913031171 93346773 377798667 176402007 973722142 79508770 729949261 82817292 149290595 89282125 432453214 828091095 394291333 264357192 540643218 495602162 664504376 452852866 120291285 49716763 789902942 524669812 531107934 961116473 754803673 349080492 828066779 811400286 710780683 35204576 73303112 290330384 625044407 663131219 653256162 359658496 87540718 808295829 206335990 629116760 897171455 108266936 633265457 691723336 981160232 190038705 819129487 151461140 787754977 841489055 834899064 341732036 103871896 899721190 434926227 99685548 664195563 990756865 294089935 219933457 569694165 494347873 695756523 415182062 568839806 681086515 562987028 234668153 925652401 227645460 802468332 298634913 543927126 534833479 270529056 355156301 214159785 828992201 964809129 648431556 965603660 184624387 48390927 646340778 597727295 201426733 373199 69218898 533771310 367020449 612450415 503434854 720184562 120210132 71969341 225864529 171354417 701186831 246839527 30270466 328542939 885803805 932986083 892727692 857186883 564416020 330266789 674213724 256078693 792738747 258193173 568096562 730978819 791423201 139382873 978945168 411788461 69530596 280504696 167817362 394762714 889810028 128496504 225886793 538069529 496584863 93988538 70141126 730289816 234372879 599612665 231218126 515389620 712548160 483973374 90267866 431150840 373401033 257136064 54475315 920685495 892546513 355461937 49313533 626993021 329221517 24351472 468887966 133842065 630059107 253392586 336783697 15412937 724383352 339413608 873736447 912285318 408727645 851321702 28820609 753154230 763182959 665550787 33751578 857940867 1543192 972894253 185289382 680492509 241695287 222531351 254641193 471424121 825552012 318918284 495331290 20388079 958093682 586442909 517843227 20918134 257593036 833838607 309093581 957984477 452742470 822984018 436767070 202062431 492062997 119870543 135243150 36357771 971615292 918432318 803446681 831299561 723146815 178870359 998318879 580736400 560360852 337927537 628882089 776424559 635579199 48069850 834401344 957224202 83473394 680319079 393538041 860562298 338272488 504647088 355150742 29698674 173276193 505967084 718739132 279890685 321587957 954551818 356047189 861270618 843669343 479689038 251330969 519910536 160031985 740510252 436505105 117915858 250733611 890833309 401635739 360445223 631370000 23770053 651613904 407203275 549344514 10082507 652011197 380321904 417169863 774244898 227164490 656052609 134551694 598237835 925097387 618026049 679468133 575920262 390160891 561371098 852233191 582078650 755943721 842998097 129899895 604623249 461626275 536410412 840100357 243487975 394397322 575785574 493719808 72796322 44550257 730871093 627890504 732912724 825909421 627679420 740082136 699378836 213146875 912653636 521365785 972584823 483660687 26886377 514442416 470053784 240363017 509879573 50885531 833759085 466038276 899710121 652070368 735327037 471100560 503494187 174833740 77455183 889905215 313584388 859855805 959415052 425351571 893453084 176199176 350272437 194528417 442788202 764660267 497924303 554428909 410142476 361110381 157509854 574730022 41822731 400386531 554040210 181041771 396053164 548903778 624365226 487038302 178242420 536361976 530934919 309146267 186999370 926121414 517275559 89434085 19639530 45363460 748247471 22504533 538215499 635936512 778112617 769730576 373070604 220257896 682453804 99129573 642410334 587312367 607952125 266530999 847866273 21128834 674696814 824642186 907313667 848046968 737863144 840631500 702562109 639726879 817221340 160236245 715696046 838810553 742561094 502041496 896504261 882672796 48450 550464254 172399522 384946816 734182064 35363603 421308550 101942060 976798723 460477617 164057529 881016902 675200318 286788229 437046940 525474730 287489298 538077915 15981393 474837146 603870540 94736064 613843318 740075323 786479316 959227743 660619850 164207047 703850012 164057409 843513188 439682605 5361890 15927164 577740565 440581607 40107312 450392368 575350918 391547765 309541889 45638356 647652904 702716448 541543464 473361374 432748025 398471743 44242318 461503927 493420661 754277326 620436639 386009163 27136288 43368039 625836858 462220198 514036948 911585601 716809294 381416145 409612374 583140637 604778888 662023610 810848173 18131238 942598066 575032068 487484766 223218343 875204051 560971152 582968487 555421874 978001581 922675161 874273388 17507268 379070197 479449468 537996220 637177067 585858885 356178759 802060000 967724541 762560748 487021956 322865968 590450167 792498320 159872111 652118399 271789566 135821952 440998163 739795540 700435283 725555046 69015910 951325847 610158610 483134661 273749271 487695127 36253539 208407763 204374621 582387825 493726745 64826141 644546984 74462397 982671124 943006979 967399152 431068442 832166193 43769187 678372327 107680784 178250134 599329449 761988415 511055846 317459627 861133012 885976969 641007752 385511740 421331708 384521031 926258973 964162110 336520344 194859210 842463692 756199368 33803824 972223470 455570928 563150529 349777788 840863453 252869423 83445157 844770886 809893240 415136460 182243033 330047064 396506688 880419431 907770864 513604403 966229604 424344195 496748987 144086753 290854216 881364309 196609806 225344016 529257675 394975666 924859369 894760656 890320499 641852783 528432985 212988131 381512368 516133122 256517226 991032520 202004936 622918473 638215229 751232641 550275574 547264111 904389320 230047299 665838662 93144930 336876265 512067209 421535875 52507777 841424293 399164592 19855800 921627778 955810479 808739412 207008883 195828506 326773685 859656616 740760020 826241608 988607989 519577173 403163231 350886857 554256734 678516785 176708586 93123808 864744207 287335847 790665513 25880080 418134740 979844815 388733853 922657675 688335339 352746735 30963378 232740510 472750818 606922640 839947579 880330701 352703071 238183332 888003425 283518067 266538988 789930271 381843457 168635916 802257054 18063337 397687756 542035614 693467899 113409990 399495740 211776039 784077355 319989336 184945100 116460428 27454908 489813348 720831443 582451322 258888432 996932905 687650267 367818005 788215449 126187085 305576373 296818459 222467894 300511201 253083253 531465931 466483136 100798636 889276481 982426655 180054871 964783169 610834916 164970664 99549820 746272046 342706312 176153576 163346032 432224909 838852350 479096246 792683131 177070253 148063819 59454931 907062792 832180586 265419969 142465668 540657189 492288402 5574741 331680113 914605969 906556270 483154868 870012948 680948518 723065540 274488032 69749623 127847366 72392358 362466646 929587590 933731033 608417144 743890354 721257166 813000357 239242780 797692729 122144305 465637183 949382392 117126531 19750173 321000354 81265713 766176515 511087217 325949737 25498009 377182786 357870010 833963372 751805671 586228991 808668485 232886782 395554617 840497057 452196023 121084325 776538740 858985526 754842618 625955380 903627166 450955612 547418270 184121899 279537442 445304519 59559995 183513398 672911715 663324739 368488983 216202493 464784837 609506050 587122750 505201564 430248698 71031439 71357979 513109670 961816585 188599008 682252706 16750647 69698906 364903251 424822080 335716297 637385180 104511658 540559153 859256238 981041681 665086726 962604468 406206157 102993553 280586931 701593658 798659745 89696314 881081376 43658104 375279033 691971967 407976676 482172005 509721712 918882551 642588116 887989636 243581810 539333084 839050521 838661466 485469800 746813811 424353442 573924270 493376243 210677737 581429683 484478980 98954318 448120677 93943575 394505060 709398414 199228993 27686833 286505219 883362620 737440144 204268432 507525558 337569530 156520131 50234659 91028383 650474825 967761084 43647646 797136465 321543350 336535534 157548512 453106519 914692009 747366423 450232212 806874745 672019784 737025836 544028638 215343182 574030744 609216510 673626790 720516283 663689752 38081210 464623290 107061263 306636887 874630232 401891155 372556779 189326239 700256129 910232086 359395746 157840973 530935210 535197497 55852119 435553610 383184574 268353975 516413893 99241408 125724984 621289072 272195745 642889736 493846388 686634822 706858738 376681274 608361524 202323369 153388385 119353054 143826359 176436279 270719443 945335929 480769614 415753109 145884809 161846394 179398810 786061571 790408952 5235812 273706504 128104901 170736180 54194638 713340999 958585549 279601356 593038981 45045020 895042238 235404707 300343095 359264110 486674938 132868302 561665034 493206991 114224360 137013076 889693152 460465717 339955977 870265354 813864576 544044821 24336026 977488810 37354366 981474456 465145704 393762600 270674876 309318945 721207662 767445326 790984005 730677309 339192678 238623778 779820171 66979223 437209153 261529947 675621045 722540651 503251379 633186544 700191346 844295757 268405682 329179613 374752489 428205886 330028192 590071023 473116811 589804473 815750716 950064940 155780820 818827622 722743818 994931113 44389230 623549370 242889791 527382641 383951392 926334433 26651169 513800393 215685288 917969975 747672661 228783960 939516113 847505456 927206337 732799367 136532441 318230844 387183923 35895378 388178979 79875406 440427211 155650547 437622281 473814786 393853089 22317599 446370605 691602678 443013880 106796734 279740354 293040353 995395553 207632986 14903540 800496101 833467018 599851834 610521174 714337917 951383661 910317247 773653600 376443269 925014728 963910437 214275005 201820328 333353803 145556248 36940369 162936208 369095348 565821552 851697804 161804329 210311791 503735717 556954101 537836187 407750869 56588503 475209164 9848270 827221490 962091029 352576381 429358648 97421331 139305068 69458334 961457025 446565088 761156060 185339354 458443952 811641040 478819518 885355444 754829489 327524192 556475173 914518548 420554735 900917437 206113475 785169636 868012823 223354128 533942727 276123097 11223164 911219011 625098252 403254517 250942837 809067356 913248834 525147679 453156771 541131262 598667953 52997006 690618526 233314339 139253545 436610027 106321294 93703731 47944550 546013118 851273434 592360528 970109315 507692920 167478000 778397890 314989184 646591875 383799835 613074926 404503476 151566140 710810925 459082913 657979808 697724339 716097510 132862988 981558998 899211917 874850355 651200461 990826354 525321306 498751991 915487125 652156716 546704291 171737853 109995171 233023772 918656755 338170776 315295229 102125798 696278434 724572867 704816144 632865976 35298403 46762722 803820440 571745929 369945677 544073574 385299197 942685810 981690988 258085260 914617413 625363807 121784428 556229060 224314560 979306543 610346559 812568832 814089697 39785038 368373188 556850843 203641362 574228566 374430568 935964699 943994119 258659652 611235270 645903095 870704335 429964953 739781643 127932091 760126369 962371969 356798339 989774976 195075950 124624117 284441937 664692904 659854012 128757603 929602807 59490537 439965504 319236690 852037257 631641107 159252605 40707873 649972069 554452775 739696184 58346321 112983695 718934136 412069902 917816236 150435 288108562 142784450 805811184 181094083 948805662 652668206 688379104 535541187 157312395 446561394 234730112 367180403 714718639 165562224 114376874 983675765 380120025 536848849 177286050 625143667 408221640 1807796 77656992 208287740 613796956 619071940 772945948 16900448 278550463 753461589 782458820 766439951 569400362 316658896 100330362 811937562 30432484 111471049 511100518 701546300 911057243 148804909 710513095 456802213 701863671 366759872 296174516 484820710 875451193 631457898 857043684 158901784 945549190 69475625 247945839 960617162 193556040 231997708 73724874 614106040 633994205 74934888 513693944 725755074 974936992 893831607 971337650 358386897 555417305 889769044 349512561 483545530 679982418 340240285 810297325 498187098 709764866 746612203 721582780 422071056 998315726 588688397 638035636 159581471 535067980 788507148 433363302 820063859 765457943 477764681 511653803 280018273 525829320 986308868 798741922 706380200 743304664 905941567 673260823 469061259 501599230 77433421 570853699 183701139 992603118 532163414 402441173 283965463 878020992 622362449 552411342 277496956 960987990 598621723 85534621 467691771 900310447 911385614 438425657 580745092 820779008 857729440 467200738 759721361 111490776 274611960 58013964 213992679 550016690 103829056 894813491 503579171 657521073 383806929 905619420 420289114 664313286 559077789 252757858 590416730 469717135 937512767 798843151 595438491 784345136 69505070 650450907 7631891 536922211 616140142 52327949 283751973 12606787 522680193 67357085 178160221 937983588 438550735 159065301 355605774 341955131 45335429 567524854 937990210 47776994 197237079 773329942 282731264 955274565 169800360 461285595 296855264 941827861 100908869 142739584 434497039 184363781 73465716 195249121 911671637 908804414 413835100 718045044 39144928 871610113 833765747 448620803 747700264 676095411 724009380 940352470 16527040 257376662 258329500 998195984 595306880 532074516 950661611 73973643 443093519 732076414 576934365 409103063 713497565 988539488 121429434 905338979 955657406 429512971 392059945 495220650 241081556 193992271 361841551 440237035 978528578 830798511 778617792 720676628 984215671 431100643 97631234 898335416 93068875 255788790 94628410 235609174 163091793 937721555 246443606 847866297 493785953 842549861 477843763 870936425 263125436 852688795 953332944 685229119 975983960 860948053 804774085 111584727 577863742 906434639 22313449 910489772 819566146 127200000 104186200 734756813 352685815 97810346 348204441 415633945 93579255 644565591 561818328 604619335 555415832 209076929 318190291 373771177 441963242 146093414 635772372 195313422 555056202 605023529 709650629 441294835 844313305 919929348 14518087 801018812 961061890 286433502 548242208 704804717 168537475 348532474 473278087 68430147 764555950 698068617 364936854 72529693 815835540 207240663 85763374 849303137 570830470 989866303 834362995 374033057 569916158 451634876 350087409 351699078 895048555 810119906 925495229 329432401 696561247 301719148 797047441 369304937 839520989 135195496 463555154 54539142 732632406 92284958 467414739 294547356 896514922 922420079 811640274 997313292 110440699 152405712 381603526 934686813 968792174 265253170 398093705 984043018 27610976 353160894 131904417 609738987 902727815 540055743 901883555 156790707 443868456 523517921 218882912 338567699 774605871 540937002 669733347 99153251 253812902 253543534 918908415 64913335 490295591 335678512 254685173 282354600 191197969 25950296 172330319 451408985 284926134 747825444 40011099 210495902 244800412 507527578 905395256 176722546 493976605 790353457 192981842 89030180 30261488 355710245 949829263 909917436 437941756 658933762 261390426 27087663 311894000 359603715 210486413 716668441 13917853 49238350 117681088 656457688 195379406 367022809 702766944 261242836 662181909 383034777 684491469 946211693 135060680 203513836 800884894 477366961 582808072 111993241 152403187 137087521 732311747 47528707 640235545 238941680 50436717 27691420 64748563 950574429 454859241 128525837 425226764 786940059 817346722 946760795 766040700 932514359 882513127 344286058 862290780 716020008 84498770 974073794 860904104 415579501 618825597 386254606 742463068 739244719 16447721 839075579 760970978 595265750 781657591 148343459 755002565 805879426 40589533 136294977 275363326 353290716 464087363 162654292 431279993 634208970 206332034 884610452 386288393 331120693 753861053 584888021 320306151 365998528 569593009 778010165 240092335 232448922 607174596 979135973 595336120 179508857 661318639 549052549 48638340 808368683 236514796 587923473 606090915 459279297 451178647 196705956 820199489 329061770 42297018 472200666 268493910 951337358 396229220 101036575 926570176 801056293 311275624 900392478 456662879 606822845 768431965 100751439 602580492 300535560 354294337 948509278 423581296 324234731 679041246 771665324 51707866 101462476 814992048 758653787 764614728 841949016 367429246 90981157 898117007 890100147 968855620 594213137 153104064 489799062 448416647 328289439 262141633 180454388 895571195 203089929 334251574 346742469 197995097 790733032 499455633 783668991 201875822 864867509 748145567 276029699 992410550 598915502 657905136 718485485 769143636 640710985 509951327 403163404 4038980 516909513 169873501 456184780 271677348 564359233 465607694 724092848 564595066 224298774 214305826 202518840 41484003 210778998 912064248 160725727 68784931 750106693 991063755 441606735 833413817 247976864 756801656 427690442 792952000 223873707 717596147 928753046 996551518 617116726 332168687 880440961 240063098 240007398 791981375 351318912 356578923 978907878 244353262 814844345 707008683 96833664 340030769 687347348 542044188 31210037 53924887 922118410 160152970 646368884 649567648 508512721 732957687 945471149 598772805 188193531 461910778 314779924 965478209 206505393 468134191 118039413 739125224 243802060 908943245 966486242 76340083 625799808 311818465 641274919 758810991 955633891 214832731 891933853 696656297 261874749 320429545 959529012 170051195 19396701 637935038 165973201 591875081 206562544 339396076 523253009 151794548 125728924 738347937 36423343 485679863 294408078 941998201 351590878 801235564 998639677 316907406 972863926 251446426 745021446 783230541 838443688 267278434 807085628 993837345 791595137 296693821 902420286 803389451 355182145 882891877 743796714 500446064 974868661 362867872 789225192 218577546 940897254 25220436 298646093 503858800 343916687 240917496 351329346 620715297 601311603 421761718 457031121 247672636 649368936 709877466 152821602 907409451 747130858 232474956 412210958 290453284 917913377 537565562 350707256 867316023 680343570 687110134 843781214 501587794 828374329 178658207 18461596 620068466 971055932 403617056 448184326 984951551 161994328 638309991 34764517 825444017 357293265 283667878 238043341 187333216 560112877 921041340 261292785 892219160 794700994 370651968 552910972 628078444 214202968 203547490 163847007 713402056 779856795 277420687 365750028 341278863 599164266 808001719 126627699 924088923 53549110 857140207 765235034 637161325 555192002 484413271 762891501 916945642 293076076 906251011 21883074 988331530 427717235 937813633 624900922 895403741 247412892 473495807 801341078 18365283 620222100 514186915 71090387 502563968 902239585 52455165 23058176 557338645 990324057 261366012 843973485 847806404 489491504 364378854 746316996 437649789 65313895 329267725 164169909 637135597 723890685 326820467 284288196 738412537 888460443 186254875 490845032 19159933 818307870 190493433 639237489 821612567 876926595 872486166 852765304 814925497 952350039 190267744 983580893 854169753 287491644 134014755 438760456 276142810 795350873 329400597 464089556 278258569 445322139 511348269 985091756 901289013 365905980 981252087 42062913 767613237 639990708 556987289 890167255 856852554 410835934 154219734 733955147 115249892 512556514 122176975 910294863 757103374 193603502 925632306 673628906 409671206 547066354 195068482 76633756 344643057 625277350 357991524 176432403 691468388 662515255 618951599 45306294 959480611 673299578 845007122 138905495 925942522 504625544 647747468 104791161 913964042 287004761 6408432 247022631 743761530 805738041 437120663 615226836 59059242 269684177 437307126 544815069 588972367 844702316 846594948 239284990 49398937 492233692 236687260 582443611 635711592 714906555 683770292 19339155 849030629 121119010 793150157 779468564 288568931 684168846 816423206 123603146 767790613 226248052 570082232 926839297 706147678 304666391 436861103 46501175 592500068 236385350 31135300 696536894 558797448 873780035 475260694 283397206 821220309 460589093 442622896 392959643 760669299 428717576 687219035 831841879 392144812 192163993 387000557 314114366 436261078 530286859 399121557 564534727 457699190 767487251 694412653 565401669 101199765 417379453 818328575 268927696 338376630 96293710 292089560 723609096 977663826 787514322 70286463 141389352 97114637 127837511 66811682 561206123 599903573 222195226 135618909 27883663 182987966 531601404 355701024 160945472 843219990 458650439 809967400 157141872 40827643 947291797 503507546 541538355 7427198 344121416 682664688 829336193 192108108 743792730 314070608 652791166 409998429 118401013 844925011 466743688 356263259 998652385 127691800 554599911 487767790 738240834 987063798 108956145 257958409 760485560 720585767 749957581 171474363 598113789 45282567 227138483 280219851 404647062 422975626 443595714 152132193 474810505 922223021 762062667 248858163 634260512 322887437 728540990 955208762 928002710 23216225 786979733 457367590 827175115 269416357 250232896 398783914 900936306 431120182 449468189 371082771 315722564 32392835 671560289 493370009 813614152 244944286 978754225 643569925 22248002 173834927 747481433 218440662 696366763 209139284 549912309 786968330 656984570 973576504 17148364 738621200 805485192 253956197 857799911 318948857 303580174 549727898 586282733 46972911 194725541 988635532 595155909 766105093 700700974 930922603 222150049 570021788 668875523 552433749 840009124 909397517 481819744 299051474 719650523 74307635 272781457 500434753 348868637 60797594 99066130 412792760 259393016 101648167 452652075 54379798 47932654 772984567 222342363 819524265 117216768 627842587 299656007 66500264 418751800 761165134 359181624 996105205 990228711 904246320 389172949 72123451 444615534 979459547 925009477 379973992 646905542 363573350 289979045 886495625 650578575 488754823 583136703 360031286 301644742 384185323 686443493 116269265 294176813 985152195 222165756 847092856 56695256 513684944 99617597 704551424 482811578 643378488 655143823 266212258 681885490 452501303 773804082 342047369 656165903 101961533 465668848 189652975 496504023 25819154 843727409 582720835 588376989 78189106 448538535 259050879 646836134 553118464 260636636 171632453 362258571 879019580 679066887 951879381 562238769 851560841 71140852 495430915 810035098 330959404 562464738 462028270 542590035 991131468 184326062 832098004 36908885 658531300 48917330 592966003 521113343 60745712 400111349 501492418 189353605 132685444 472178587 390245164 451034166 914232559 757628718 554062583 689688240 663211755 113856882 220218065 617462209 850534023 818939074 900072102 809673775 205958691 693292825 332188558 228373046 587712377 30832992 846674820 541898804 269304694 148919418 31217309 632126709 703190118 868190149 941090572 166600510 456839658 563702296 924513558 702912669 381099710 756072045 420678634 602349174 618228003 543684707 366763880 25768490 958306327 472750277 510103222 226357177 721191869 856822719 11567474 724258672 377551278 180518364 362494226 332552460 175267979 271445897 184781148 539776483 132330342 428798910 227308418 48456139 496056345 411505289 844372511 459651647 979878386 800950282 838066772 22278370 114931091 182368338 348702984 971910036 801272384 700326319 859686288 311775306 143281521 895500447 373354180 509729100 759857854 781415037 847153634 502581 535029374 499100110 985982192 526097219 799057393 173969924 773125609 82820420 983293139 765000377 487168308 873217845 829405412 729717737 474622491 371134628 445378136 407161784 218952244 9112127 63224469 193164792 359353663 601723738 369398286 459117282 845013018 352985406 958763577 930449985 301229923 977986770 2887671 388014144 219592844 779922022 627612317 546625858 710336786 98931047 982073108 685546376 439197709 210616509 671139507 37743949 982709210 20009849 471400175 902045031 451931153 574763576 800700670 761882549 820293143 102402837 543393528 852466666 468263771 626308068 259346988 342403477 341216446 910581041 60515231 358177851 196740798 971573652 942303070 138162073 366975596 398612829 502731237 583894884 992373521 480127820 558954297 440146521 64243564 170006642 776870834 178595101 727179077 199634402 492879813 869074294 116716848 803419236 128848000 823355580 327668374 105206771 652827896 959996695 923654822 622393376 506639134 252038490 756102586 41308271 813950771 795086325 458758418 721936929 608890163 141044537 743484365 124444828 733173196 928518646 652272918 957336919 512842398 181339066 442381896 602869219 885413277 877932048 538933297 195550673 769115441 139318779 324863089 352840411 265182338 142965418 658048417 567392141 110467632 927991891 742347803 430969315 579389585 266153348 716025408 862185307 737393469 839975303 15611736 941422414 756523742 215668004 796087972 273940775 270719831 793334877 312824827 151360293 270558963 322150259 951061126 588122403 657886326 263471829 754077300 487706025 743842919 794159374 679887423 149295063 585765229 873502914 58121416 779462830 333165353 817225162 643596553 699027875 569482912 752691100 313242062 570565568 929731416 119127903 475586287 49048657 890458253 453736086 63307354 984227807 521970816 607742541 280645821 421879769 568849855 80600945 89291445 429922405 595675026 537947809 182855787 871452198 92065322 438929816 834182342 549358645 750202903 678670962 658709912 110480458 571418514 699130611 77705706 746479055 512533535 421825079 76898731 183113081 58134559 229289076 966169463 748636825 908133558 647265251 228469179 463562600 989368538 69276062 601623629 975920621 518386434 657607091 608899755 560841429 497212275 521447490 106272455 220657053 394401293 307320117 344574389 841620150 974373309 298435091 79334 481790090 367668211 78149338 140893560 791198238 671480006 677197325 937623191 846893256 893774393 240492235 254343587 901869470 664020453 862322341 570862365 533767920 283433290 133042381 899490166 72952291 649936662 630186238 349666272 474940288 189296544 232477094 293868477 573761503 424318823 57880653 168004183 647061582 835800807 848034811 259393007 618130562 986688477 788109427 735170095 991119258 77071813 633858870 936955434 781950360 438362802 961496423 42179687 979558928 224355822 673421184 417552194 397490352 167995627 231919811 750816731 864632001 192040810 594449457 562170872 677651206 349652185 690671057 475468921 291143949 200099608 812221665 14430819 131226461 598105728 81235672 484206058 363486881 8105098 811251229 681014107 371877708 666656833 664122503 189556723 92053296 20845570 913030641 128490026 803704675 525582839 36946535 578583392 147289383 696809947 178635958 606697255 263331403 900097787 817495817 841868474 846434475 302291056 191778013 831531594 844547213 624103413 26153004 803650556 8613698 512576986 795390409 819321237 590487556 542104583 278337816 74654818 286164418 981946132 882827283 753776514 200385764 478591339 134851157 531766328 985992526 252850278 183580371 187121838 553761458 826792575 979686950 890988292 836792317 123013422 860006453 310324136 222299743 412546918 299406481 983574914 489696953 938034884 23450318 499029779 700224423 60803399 228614290 302094268 150037984 267212115 439883504 131426122 273744905 932598399 917568602 178764803 551115657 869417706 660252272 182842089 419615401 692159103 844105716 799592783 812496131 495958976 820563882 451380808 171904580 748068772 435764074 390774343 430882377 651566926 455766458 754031055 526530510 981135951 473881297 986800779 247926954 949761900 436483301 512254859 789709797 574104326 844947018 141505538 447537333 913498254 131085560 626453131 224418070 722631949 745575759 756873210 965744287 138824643 694087586 348236052 257454076 476003875 782138920 209427678 105170160 503164337 618773032 352611954 177621076 202588371 758960535 17119275 384842483 917851541 666162212 759174918 367181202 40676887 183106854 954091854 521371790 92412213 211480761 657689642 488980806 130845672 820377383 358010782 258261685 221341871 172362927 688970802 502081041 153374386 829314482 976113009 440894503 832221116 718326499 39505704 838727279 931265755 142643398 506949509 961753549 506172076 612201085 84150846 813119010 697533000 791211268 746413282 19542445 719458855 337477955 793297197 142085035 369454904 693232734 136311073 946742035 479853243 920102950 546664644 288396563 65870073 915726995 715893754 59937429 568395670 137376108 635433821 708908690 823618592 597603997 616679759 616919164 814855520 878611255 137262792 112843581 117028266 424886626 681114921 726672157 300108730 189263237 358539138 873040489 999129970 369593845 202078080 704524424 819463411 651455305 48232426 835144135 301421394 307759187 175747416 612535122 717719540 354163630 106539013 121413748 673467427 171802465 281560338 957710972 258863810 538329288 407674747 327258546 640295561 467588999 197352552 950072574 610090475 920132417 594772062 149604124 303669893 745756077 521790301 428139028 571670384 166509909 288419778 825982366 260452269 73323839 680989061 365162121 943902711 632004947 673759083 715903524 145946885 737654531 655864573 797002759 86679 746118182 626591430 639608946 506341938 397083468 896228787 858047889 777689255 617830349 65898643 152366693 994776231 180153113 396397029 670472330 75404749 242830869 391997690 580934400 458392817 309740155 785184579 265402352 523730969 847566323 420411234 576328551 820150464 642673124 707172897 261446478 384051833 353023053 252362033 44129577 684388097 115476224 402716035 180373569 827485994 235770386 761240070 407441315 940095683 327178737 873027237 848365057 186375304 876903076 306960071 247867412 160432019 12384452 367605659 559514444 950408773 556996459 721667444 227072922 264158687 129934912 373601419 184613508 941766703 821307088 209268110 887501245 87892730 445955797 99364382 180436319 799516756 230010876 387109970 795801527 808095222 472772721 193398428 208792497 710249834 875387646 991075246 863683781 816336015 42164971 744049458 196357668 368819453 324655651 623232892 252694521 934772157 944016075 24120554 585921191 322200481 651833235 5101138 581837305 926880028 316368871 130461731 920373103 67523418 960273668 218221477 5318417 906288496 311949659 209154722 632161420 273983195 671849966 80518122 404665179 574530474 174337828 721280659 889296991 942654051 692154672 107263769 906644335 394778738 598914668 358587771 116982120 354777805 879079140 153685782 476418492 22585747 286073719 977578069 961222369 16628844 801139797 997811018 219915572 579761778 992635579 936311151 513533502 107246413 614074167 458043505 563010476 409627599 60623669 53818031 130420402 6755098 225971183 609866305 396456212 763936480 134621240 653432379 87537303 66236641 744532136 932822501 674637091 106124848 89077008 445931831 995374131 81748001 134653247 101839586 885898723 779865415 632135108 370665626 121045908 321201361 728976718 277877318 663559227 383628457 10919234 280853263 676498790 698903840 431544021 332778674 27380134 33132091 228897598 951626398 432983905 633426870 434133831 762699017 422345309 83240278 609575383 906810332 808734839 635775984 191327286 856195160 35334349 251963702 684211369 586241414 820545249 727667700 937587582 573549360 907372744 135555327 334298422 15456862 11445675 185485664 834284439 404206431 746812477 802960143 675727836 571428760 53632863 714446323 321700687 448083850 329227956 633586191 509852360 957319532 573558707 677938739 291314927 407494125 113287675 898280931 329591917 31720595 184117475 305870918 261322410 973319073 360497541 816049365 124171436 702739373 333582605 953908588 770944868 1855723 206928140 125009099 224766287 170972142 845246536 646776185 483918295 841647588 206702248 33775892 386830526 646272322 296619877 451791024 972673680 668056507 858964335 562461966 496823866 93794535 507283775 541232054 116015076 607605718 228464400 746594560 376875587 284202908 62810529 249417334 22404352 262702320 810242994 177337524 22651490 956220444 182659786 455227783 867720060 164551043 893129526 489896578 805988739 394917910 298720670 980547014 751534781 769170482 98080959 634463614 454964804 66769792 987082029 811028372 64025539 87968902 542085844 122678738 300046828 232591034 270732007 235036106 23691731 234680944 43513772 324627609 216042086 661510740 154790868 557127749 935020124 702590904 729552478 243151884 915479074 504035744 385743014 672178311 777623666 525229531 930236999 277307407 841639370 969112741 424228893 243100436 213058707 685018909 697905479 519715792 583929041 412720825 283070990 397464058 614909626 130120682 675403546 878017557 124813687 993574992 83139590 337313412 586661634 584210722 664359608 135812961 774870664 937418296 928120843 63782126 625929623 380701416 758669 537216597 963097364 687195998 418950572 460220910 495317693 893687529 984842909 236115737 370686352 425597335 102721888 957527620 579647918 524519158 757149294 650750171 295958450 660383504 240204807 715818260 688009463 106621349 410238254 951512892 769571557 601077548 973035287 340325930 165420407 280172826 830982358 222813169 963152382 669994233 984524148 862542980 50418050 212389189 734650126 739048238 67132670 774988653 58022868 591532456 920594657 764173545 639909754 805537889 978593811 747063477 82657217 867426334 677434018 828025362 444370958 261645687 621886191 774119771 510466610 463419576 885524213 51865334 704170376 697323483 996727681 809864380 450675794 535758403 881143931 300861672 329890123 985293436 770750044 217045697 430481605 306278213 869865069 615470399 860123458 212556884 979002871 640518462 311334995 56126495 977801176 298985139 95592182 39953930 867251059 690700116 254130492 170020894 69057062 604661876 948220001 578637093 21781582 984097619 117556472 420335799 940586613 119073146 153078245 404798998 199220913 876618977 70576444 124123127 577080526 544568458 518686921 892830179 370627097 371910614 841142771 808811507 950591399 192788973 957907322 972353391 479544617 435224574 659542689 431851218 219901867 967861080 634059181 415372903 840064933 954739892 15399147 191409251 683550560 951221934 595920383 13105896 900879655 847669882 422591703 204247185 549308755 883627120 786274442 507683391 972794731 75926844 782100232 610273332 652602166 417221292 786797863 418760892 98888810 104701462 900195417 590221568 232185074 660887501 209824991 774912170 136534148 507012524 128180734 939189916 539753788 584852897 232303762 78041070 749125640 643011294 366449129 589358524 883982986 97128771 229054388 160244327 117109393 201310751 21444111 735607296 335960250 573855289 46619796 996345340 220001347 144578187 552221801 291713213 415931917 46328406 36173451 260482594 657186022 865561600 79056602 588298302 478730505 501738370 863178570 840841860 558203526 273288494 143825198 752483879 118008679 403694685 912693496 464947093 518504916 979174496 672642238 300926069 417656516 912573125 762185582 602264498 1060699 970102211 809644015 30260242 586049576 911538076 895757302 793822895 566441066 456823263 386808873 673394775 187654538 819402678 160973639 992686901 498175299 742303936 307549241 945488243 989485286 773755764 941566431 365120716 946336540 69421522 635294232 249643909 862895136 248464540 972194627 176468561 239960252 631878467 702540223 476951484 130009297 831602718 687858027 763986498 8463205 389735219 100369858 129931965 67468022 542736561 206726661 614861875 305424741 297474810 398547854 968602565 974604941 539917036 437122095 818661672 710218143 339274848 481302684 344584356 238495133 700883073 684197339 282697925 431264652 705780380 730954320 55563966 467222438 343968058 793396355 148630241 34502412 960683274 293606825 55076324 620168508 780534512 625718104 846568744 110029016 983125061 827379158 212768698 321810501 772209947 532325581 174252623 660307786 799188587 59922102 562905352 975343344 962571687 568751990 187202389 549115959 600324005 753928562 915059255 777438267 34954332 113758383 62365350 698793954 155864904 622471800 521119651 557837705 911789850 663474510 961677315 615875741 961656934 261307807 140857775 500943783 127037867 79482376 70577009 148961226 468006101 236862245 693229655 335711832 774912575 6472210 290443644 950925290 840907275 404005001 465156420 55108627 731457003 801522372 114984824 470125508 401214625 95309439 801295556 966369948 380245431 156390467 156992588 646632193 235599864 99877293 199137750 894491920 642465338 331662098 723832755 475287386 555759943 708033565 528900298 65107519 413214373 182817000 663868807 672683520 72831019 545155068 590134274 316535435 120268751 751541197 418062096 45771264 633201112 403181518 577636186 883291135 987570855 473279026 663456209 220294340 209067452 452588324 244201789 202081 218846218 903923781 861481791 875272381 338004787 436137470 159495230 838618662 585478165 804088813 868840929 227101895 70074215 329528983 949306274 997369745 244294218 934594154 485492757 168135401 905844095 406636155 757209047 572756311 360020224 416148555 528505186 14092184 767553857 813108793 307342595 759013421 997774664 423597934 923202324 352364070 337928023 213810933 237803006 788583157 153564292 689344959 791277165 508832819 145583822 657482390 326372726 432241202 662381364 391412319 207438291 607195614 451708958 808634169 917140040 848524854 110659354 40172330 557169058 278403215 813137764 8168855 294722372 897865076 618642111 393890470 576410288 814072229 352815997 435690829 362903728 62136573 178849076 940914782 445845077 439122134 55953973 608044780 73171175 861895502 541447842 669559510 751352698 675525293 732085570 305811247 799839297 914037280 330091041 168339173 184166337 22051863 617156003 481213661 181819022 911772474 867775798 224757131 444669227 480150790 150463020 863909885 104220628 278988332 230012603 615889722 548626013 454401362 429484122 512111560 938645282 624636110 594037350 590761230 795841932 455492081 882548810 460090273 568580671 526644334 984341470 800722324 817957082 279278280 40057678 15795512 222591423 796793579 297731372 197072124 656304079 786430704 479628006 832895539 677656896 843614280 126112067 199949437 891992680 932325926 893949991 217263876 700781584 999175954 512735860 651669859 968700209 50143557 748299036 41399475 699871639 938539869 70992717 600808921 383734599 937075623 477696967 331597615 657222499 816166981 242702696 955337364 890632626 25962289 136198233 223303756 8549814 972767024 39783049 123841434 928967618 249994445 387364929 323662285 837882310 998388204 131431645 125465217 711705500 548483795 369071316 370587344 994946545 444423023 244771461 791836837 394856686 433739985 456449470 828133492 994343336 625292675 419209903 873989310 278979947 635998663 382374929 919854698 478633095 842461902 272936075 286988301 457244450 869103173 297497909 403901570 319225178 679979936 132902030 607416446 256608450 790690390 995551936 830658574 58658808 945068805 105427586 268361878 433741511 56322604 312973743 21299244 635474620 30065266 207095134 415190501 853710991 934450278 955292962 553183148 785716775 716213674 564712498 413672016 790793127 219925813 177241534 206823590 24280919 397087002 60531816 229899133 319683009 143864243 697999845 739482156 546233155 548742188 8803043 25779063 721082498 631643875 690206246 189343610 847073702 370145671 332175929 694792448 988688374 940972717 994082488 648952022 18384643 463845424 354658286 316882827 88402315 939383550 773199726 375935410 371374358 417330222 671947082 794274359 148907105 860636318 296077653 199690212 708040936 224521923 777762815 349663187 134584803 937581962 730405050 519234446 107169797 184930603 210544276 852232503 953576470 574547188 355416023 795728335 618816216 825420881 224007641 428437730 165995988 964029854 215553804 68233156 956385979 681765596 96218756 996576547 952532148 4802742 639840485 726778150 315281568 270728394 247546679 198398401 357257275 340396176 288209399 66717879 956178006 351655393 110752106 613781929 912447629 90702677 831675257 720607128 730989280 661141646 418186422 471537179 72729134 931835872 95678097 267068884 634170594 803025203 328409373 513407355 175145228 773377314 641953649 328844787 602057429 195165859 615034937 471327852 986493079 677804605 640970960 540928440 655346646 22026742 757132125 131650790 458984824 362357465 179033244 566291637 955666795 360319217 772851085 441962131 971162674 305794045 262619696 223233365 565465462 443713333 692074514 443812498 908510648 847157387 740460315 375101994 398343603 523833936 801771229 865444145 645461033 354741226 118881868 761251196 886349348 887305015 388338694 711611915 330251670 662087598 419783561 612394284 351729901 338971083 766619584 232503433 508692101 611292169 173140395 541749675 938107131 622064471 154942201 7723143 179869412 148100368 785950625 992019286 131836094 95389881 381973241 595152054 936096795 647175935 503526617 383133668 304290123 767299244 755303513 754707037 357820846 585395768 898759674 477845213 963580013 249988169 547889081 621163869 365033930 216300968 127962874 878013688 28381824 274586839 875448497 595336322 97438270 781458211 556165777 79471758 889268656 993036388 788332459 361121541 748856301 550601411 395254780 172720949 754967004 919228554 191509248 378648723 598417598 507628901 414018853 791593729 196279540 354720752 457286426 208256058 475573587 562347073 773731000 346177033 756231202 596918557 990087250 454863628 381943125 141232295 547374583 310822925 451666901 874796874 978908901 221555900 570786855 953990514 285848827 386719070 403237774 269159904 265716569 411015639 733822731 992575460 390160811 6607109 120544510 495531619 51660725 980191532 239284064 475926482 968066651 401092168 128015366 513698185 167969630 610547733 912574596 632276721 836931350 911382047 636864717 353634217 286303161 107997754 243575759 108866604 11958694 118830544 746282232 103179874 883295190 209197264 46266878 450762394 410786721 504468329 706971756 783977764 632770587 135863306 467862916 586450833 731464199 486340233 188810671 74745504 301971875 776964137 850376096 702337880 692753302 767243784 630591992 825038981 913747086 54524853 926683589 452701989 639650268 940018409 846550486 356224915 199517367 977760669 508774777 560550249 21427419 119650427 234797765 241122049 437444112 793476419 248811497 435949711 173648439 831361526 312598242 847979565 883156072 531116800 249613792 181732582 199752985 780549706 286375180 640270994 278888880 915600108 228925801 422662423 879923657 271246399 19181372 359053464 572010958 447819881 175245736 319253187 63242138 231016598 433610837 160923669 357182286 151613533 839715882 861406497 428558430 837559609 680831809 545217487 657469903 449913742 512265485 742095670 9143672 611624748 721708391 910265586 78123942 507393744 647946763 104237112 220945718 88512481 73954384 92931499 487551381 781352522 275176062 14933812 878070819 542109552 7262285 521062071 882438926 391034355 810420040 876748066 85670509 722205711 979539831 627641851 887981352 23237439 232645253 372068537 612072865 862076002 222392802 413590033 985844531 60911864 175693222 414437177 678958158 694716150 760915912 341595845 760367138 434738427 799837915 660505252 209394639 362938134 785952571 242976908 737445558 48931125 746446460 935191970 538486386 762191784 67930342 403891476 595226459 477146466 543590025 369024149 187903829 583132237 365759387 694233043 654545867 389039165 643279151 94542147 307103131 554764590 812853249 830166084 793904721 560439214 920169805 886855920 355859606 493891558 342972483 398715248 392197383 919045525 871707654 642549206 550255471 972952806 328943770 614485690 850365842 804887953 9926200 675182772 700711987 264790544 826037260 136146658 896390588 58275907 901437893 163388472 646953669 751298990 236382184 981594046 117687725 49703345 242370318 63890421 96082035 613541946 646368223 628911879 697302797 433753923 785697261 516790360 517526875 589231629 710968804 348751562 438731362 507796924 475624982 980140545 117210101 97735900 557924795 427785665 140610721 63829449 270693750 153257504 741942665 194852829 784667049 296483167 312380043 263830301 197469333 726931826 746039669 541573782 494426755 959521225 975415970 209546077 728433350 213998731 424218460 977476995 840824289 398715293 693645066 669735094 286397562 110320160 39859119 688301491 574385335 634812852 533739344 683341973 289357824 272467392 578634109 532273754 468161894 303875035 700095458 55585555 521396576 872833537 859408298 834303776 67602667 954889829 484182743 700245214 27591490 796313137 487463828 497688944 509228441 348407735 151393570 817765795 245991793 406324112 17511481 653016924 140105157 273227896 720251379 958707790 153607254 363820660 178714969 776048077 681952248 911771009 961001137 768097802 822921233 102406637 931984981 742505484 654636688 77742800 162957655 771896335 780170831 427890950 679958171 876253516 443945278 544344586 958581508 740344092 258079330 161689266 673921073 416369865 315900255 501590685 734538945 972791042 376197061 707416961 428061167 279224010 362242885 833669662 688760061 26711901 811895283 928660384 207328647 610131124 215559312 484339129 436967451 996199585 131573691 34026834 655903077 611930345 261285204 855734608 797875566 294128706 634976843 543178279 336184326 995804853 333845907 214984382 846060217 598969466 702179796 704920143 38309684 785346869 500796138 356591381 280612080 763571938 918685813 384814874 711320731 107378750 407336202 103953041 467258002 926799956 443915609 543886304 324412955 604182043 817532683 966934297 801438079 162353120 724319674 399482426 735055475 407446367 694760792 137345414 957268985 813388456 261929980 845837950 920525870 477547662 640041987 731157285 801988675 473697270 825631586 366463168 101092785 394006337 531422889 778978095 377633003 661566111 10200624 111137423 663395236 98097516 899325752 381781468 150054619 653771662 122949676 177928038 940499657 644463677 177521529 813094716 388904393 826931073 953458572 317221247 540053982 236316938 54392099 572747198 365073949 468927343 701409373 814012090 586342496 60108356 478345412 66131626 580562188 589249317 852074790 36615916 923414859 616110667 773837130 786231172 371627973 755239139 396298976 798090393 330609407 960819642 166245941 933207675 446732850 871501919 523388386 499390819 96137420 19406383 34684316 4828525 778480823 36902362 752758216 695545089 261427012 952763925 108599325 695131532 117745545 189769260 629597642 121360799 73861775 8519708 195689503 813822076 368233360 144474317 657874628 301106494 833780993 331858466 97116017 723920315 252571797 411799610 679078265 385856327 510593934 201193830 728316093 759567640 494568425 991894518 530309633 86275845 451150233 575766742 40154226 398399335 282747814 265845402 300482177 702641768 80452009 646809845 376939782 608073634 808422648 430329778 391680226 60038184 267226803 592990531 389489210 921749368 59975982 17284113 143644663 257061373 998708579 371705481 829099034 44969274 648880776 842832601 299568921 460766773 745924403 897870572 979756469 118248034 106058675 295238523 542364573 128402041 233809435 880742745 929303976 561599523 890228932 401193129 870588676 353514120 194476853 303601108 168222630 434431783 180380134 234725168 476476506 778863731 418966712 28905527 497536385 547666057 90759514 439403503 839542624 867478624 861097199 402721167 228592705 224632618 545511082 816291395 595896421 986545593 632542797 272737121 2787235 910534450 141811539 423526338 932546325 57250874 950833453 862446733 827981813 318723558 885464016 493915071 775691033 903239945 246266677 459431491 565816429 661378879 435788302 694128686 418308654 952271019 408614962 146805157 476847503 157851233 900278631 567962220 27778724 380055336 689005848 878420736 165904606 449835918 625248797 587163263 298017455 416718907 332724599 586402570 982726747 376938670 956578263 133429032 312791777 737673122 920284939 144372952 722038651 391911163 514156444 551144256 664115931 9795035 450721698 21983897 688885048 948541227 403504320 477600370 208274956 711119283 663746114 815846114 879420504 36690120 754689966 38322214 361365616 138308228 99464859 312933506 96040920 299889551 453821694 346306967 804676236 263769265 593442437 805557824 608592256 206274770 457088308 293936057 480742162 528912480 495134021 879047999 631283452 549028872 576007690 747801906 168351944 139287311 593217302 724715790 319850950 491478869 163132884 373924638 309481620 320656130 644145922 704130347 361242676 443222310 546780442 477834205 887693099 107018774 776466912 18483904 65813260 632901394 242955674 219031774 143061790 388669353 662879336 663685523 62356409 874959362 326486875 773787006 716979307 6610571 160958323 778740210 376825000 176589922 116586582 66715472 306477893 321430358 750751384 327007202 868684267 317026657 328875676 78878995 341425203 801248588 370781130 431529646 781042313 560329518 144083146 792902749 397779688 501909223 114114048 913158314 452411753 311328569 816446424 457706417 715932716 158178286 312709734 722906386 718364816 195665619 480642145 536069867 265319208 690307160 702058603 461742159 621846563 220788473 351499030 428988026 209528486 123499454 910655166 158244108 369793336 866530507 702763789 934692721 304453811 47797051 561011806 863384344 954542443 39906429 650316618 185899095 591775352 53254359 587886718 407577660 827462022 558073243 598751784 727905106 662039190 124065248 602459696 378715693 842500116 671890520 484120667 641757700 863361385 612578108 479816708 746172709 935886057 889986361 846682225 363925008 151556568 90818565 869921421 189165998 83997040 922374623 336220730 502387377 593547769 224490844 790062045 910291247 22593715 557376977 865389357 23795331 662288347 388213824 258774321 932887914 42481481 784800642 137879162 27752194 215057065 951341726 916798235 218556598 739925915 243355493 117864644 492340204 259332254 514926191 894140509 698240851 177044421 107741768 524775115 1700237 684831885 733745504 285846535 162838401 766677410 741058827 240856085 161906463 19051404 215311928 546560457 939244656 420650129 211113505 122608808 510520657 424938664 759653990 502600823 423605273 372446691 608452457 519490008 648989844 509718638 233623599 430253091 45744307 865656477 91087294 863526729 986347068 190434232 49558203 478767128 107068590 97033400 815757089 932305825 602049845 207379436 71745741 848827774 133561162 479012979 413464635 723649079 543815451 887566889 325768484 926381655 881026442 783350469 485720097 264027607 626381832 646454273 851604165 970790818 242438366 393006542 352084855 497082444 364936945 717727169 243381941 683461112 531661801 240135428 304360740 695395424 331016543 670567460 544039262 16745736 544220221 274640733 330662964 816331930 312792559 135881983 534110714 77579255 473149759 790164956 151162776 23331325 920333947 239529876 489927905 655093659 867477340 633109891 179608136 917577399 555143408 61320553 194761167 582485308 995334542 298219193 81899685 998087575 795420508 614453527 703901941 169012857 573212966 445907830 206730609 577814413 387015940 777211174 183240851 696503937 935987380 873993608 469970405 84528826 211189775 581189450 366270621 808057378 707548121 667150111 720961655 605140274 415192735 333807052 119835234 477580135 526351769 541912769 742419279 88466816 685553607 439418501 203224006 748652432 848175796 759186143 335765285 987528696 6591461 904315415 262306645 230656117 464320854 560107219 283842414 489335024 931337869 282873415 364747593 369231173 613226802 418396405 314979765 232599721 395475380 550272476 823515837 9746708 756866551 881623156 843316615 556200720 796183565 435965726 956081786 117460627 425018440 894607472 403514586 341472745 818541574 337468064 265728456 383011270 760137058 662522978 853590317 479583646 834218023 933250654 5825171 848837465 786403275 266031069 833663726 36495831 747288548 541054592 300924300 147166870 477024415 303691490 845003318 752295060 895868901 625435530 147455429 308716997 654210235 397149221 586330627 173043835 924267499 982790445 820271263 92147916 278068388 102594211 346957502 879821725 371725038 33076772 454625758 232074493 87905059 461959551 558449292 147315560 586965044 676087600 912161555 514791541 584877126 535786781 566253641 133648946 955107133 267677673 539291680 136558486 379836269 438001982 555572866 489897712 262706999 18855455 150166939 737164378 844909279 688700320 447977036 202496984 385719971 40958 411362698 372340893 660868936 423167608 612354694 463273173 249617220 205619749 995249594 346529216 889093286 865627788 915469478 890804645 945869373 247615995 798454343 145096055 849955652 183371815 228321054 653493790 485566395 595079633 923863580 10505026 799640611 502844714 358187752 422120889 5657613 156180325 609885001 883301591 409041826 191287834 332712103 913663262 452015288 948912538 252828564 778737679 1283486 814146887 452757669 511177488 132698908 980999794 750212757 547888623 609998526 275178684 366403160 329952479 872444463 333382615 304300332 977185221 703058654 7015211 364608397 366980676 480848181 110244179 532733292 631007031 5814381 798543819 85540833 323300141 320200331 677828434 725462576 917311513 982214358 920330987 589254029 179772789 932660662 172021232 646641477 826129824 422639574 459942304 648158430 234521724 970367466 808905056 941386733 488109898 818148573 857497426 520118948 897325091 597006064 732762539 877161925 740885368 84989776 535109331 766124387 758620988 877568793 1450127 562372329 195540547 682136810 326372632 351412068 185443021 922900136 717811984 72566899 508102363 834172389 861979754 655624101 36352843 478035766 314411812 47544734 659988656 754666338 271472892 311321180 476915335 887347597 204180391 54328916 364869835 700130457 87678966 464815809 580973264 711280401 737617464 901382273 982182083 941349371 686713182 199991126 721132314 419956983 245727323 142835548 112567373 379013254 244118448 985092045 220834333 7890800 886062829 698557571 516700041 231814847 764342728 647780198 883170992 177635735 855168885 375821271 656125949 78116557 175425568 675905137 643175580 848508384 236534354 841172375 447670603 33610460 294876909 365126773 142226883 633632234 389300175 840192660 309673517 628910538 332114288 742316111 619178527 271492773 536770036 21510837 545504056 903914680 107439100 764713530 321653130 389779352 614676674 977776387 196911222 835544462 662910548 595163966 884486749 940593169 477895143 417209789 586179743 325066652 403131056 677701399 268366149 970363001 193510681 658365960 387637113 848000634 777311304 288594659 346175684 254170367 57167871 784469766 906381004 418907780 943411446 765207926 855411794 385832851 500753424 855985020 292202699 265123357 798975836 584098969 588646942 855887862 205655084 975654585 310649705 281401792 107644898 277990109 293411014 451771696 572791005 213915180 943959289 666910207 511620758 855015996 45157212 972144297 557623433 277911157 728525745 184403643 117387844 97947867 649375208 434394332 335292285 568036586 19906533 973408801 481554385 811187737 232884003 103157425 769412103 217824126 847821514 935910373 459252617 595150922 617423828 876120406 129864016 371914951 464229427 19282853 349286384 50755816 448391228 81668417 337245214 733043443 179903596 487638051 332963491 10744810 673900892 998827133 715917694 990907938 788281372 486987226 39957698 657272015 974992906 65674942 714861266 897541748 37017775 141049065 902140870 956983527 634902188 564522184 901010256 629088586 914995768 444361647 400677197 723845402 562452911 512534398 593702293 889506324 396332403 601920010 716925558 667943190 30907711 693041971 67164760 718173261 709507030 634247186 505895226 472730857 730963680 435291960 203925553 934675185 666273486 312033803 419290173 909420204 323348745 866458303 294411168 55180090 901107985 612489966 767589118 330191912 61814596 190438695 355694135 523645746 364382779 817453356 619952093 437967966 381783682 965273681 464444343 223705500 395806920 422960449 775316393 709173338 84547614 541739726 714512023 271890428 989386641 829275232 602599993 45927762 24179621 991612236 89880998 430252739 10989218 944537091 724568250 976601212 624215260 856916209 307297119 514188188 128027040 692039792 74257141 753236135 658457517 829113263 399392423 806965861 10957198 93750215 909432973 273792357 199082735 645237404 239235203 149301325 586005781 209622897 179065933 806528805 488631619 962593752 750032793 919801457 941150001 585345985 669336173 52162713 719781208 636204277 756583116 166385056 564290188 200397770 36198564 490850598 916945547 648156361 455421859 742164103 556428326 773957457 368216236 825216925 263914228 46975540 769883253 57218597 906324358 354906541 293786900 205101841 165914771 989364672 30278923 806448095 809188929 12034254 232076961 193125442 48405394 291858893 180761139 944663413 236796190 855318502 500157697 392321952 98052670 841415631 45064018 320764370 376281829 124301370 402248175 277728915 610865180 160172849 739064112 140743043 237255298 478331152 518797461 909306253 907187340 110769668 245773391 642691025 66717012 431398338 26746610 567768160 596701308 330399887 936882557 372443179 923434052 489501340 19082283 341624361 812164041 339629301 883475184 499617818 818595168 162789643 623294992 705899756 469588230 200366050 348116365 204288944 121723404 672892711 915297032 556367572 613087642 68170314 702457973 177677511 387370865 561358204 65894353 464119563 871252761 26046852 342038240 685094431 422500998 621998524 943448910 74006490 892410352 511990934 954339891 574783888 473884780 767544017 523130688 51438705 38826105 642834464 880871804 395979990 182917993 187834201 935846099 367966339 304146129 554456860 463709302 980433707 977721535 45832263 911714433 292378093 785922344 284569960 157813335 22164932 971719728 271558959 182010463 108323684 870750941 418357850 622053949 891208110 372291556 154666734 863647377 956278816 793635276 636620865 904288098 906322180 561722893 911438103 731574414 800789170 222665891 244838071 339881042 15790883 453672855 696311165 829814715 205184863 694817939 547591322 377636053 445800783 920583019 628898487 202059191 648352698 948455799 879531824 470651147 695853973 381215905 274572309 953386802 695756051 174431445 717330916 260569803 858715436 866082308 412619696 389683831 679035402 776147633 241974785 326694149 600140678 134781869 539080946 953106721 280196687 440810233 545862768 303359226 395737776 177496160 4269339 511454981 694195155 585565444 782482478 562087827 148102206 915802972 354895531 330624342 873689298 880205830 125346288 387039095 915775218 619539444 597380809 715686337 510568225 776245460 407072792 107733397 484621469 878115255 581817327 978625222 606315388 596019782 247304266 785231488 56285889 927818411 217957218 893998891 154092476 380705419 746846736 551425989 138491418 722946104 924074506 117225064 448725585 655840467 42968405 603215067 277194205 186775072 733871795 301321836 699665382 563759802 626345458 590043191 353987048 987784286 760848981 179151698 336242189 780977451 367278695 131729785 653089255 408758429 355068126 536339596 961692707 35129308 857996717 322951309 928806647 773360499 684402629 857334017 669136763 188283605 869650875 728138607 431713420 855773981 556030436 512537939 954412226 312688261 688798153 905538584 235042908 144404294 772531681 492783393 193546023 393590250 617489523 272178618 673144560 582446219 499838712 116334110 908323833 344885213 921185540 25704946 204235218 710881362 423810515 184675880 464883017 224846093 123591263 746130041 228319693 294102242 904757396 80906322 512848806 256000969 550057260 45864778 443512155 848350986 822558043 556370888 432751506 898914553 558519380 393558423 178437670 31883874 685737491 341221568 904005666 212950828 465718095 7214844 147883804 907652214 64646873 194295329 612895991 220578107 392698622 711646218 957775910 302234823 485275193 902993161 850496418 452651440 962721948 795091059 972053537 650611807 121274782 838268966 767875284 596274639 44505117 321647897 502775262 766331337 84904090 733256604 704348943 914159142 975589200 305542089 548101277 639201997 307444822 677496247 55828646 344044365 808641061 166723711 890908090 586281119 187380330 544152632 317779148 185396824 654467807 754702783 714402889 696591877 962093371 188936473 890360173 904210954 720091167 318544352 220865596 439889654 506741459 829641190 320216572 968228688 345850663 565611392 356387757 288015554 520976124 194639701 980897122 259181074 993200522 401055498 176446819 468457265 827182110 11608420 549474930 473535759 519802198 208948918 267692749 309852652 97561563 275394904 548042233 621463079 277419319 913883117 258585083 352376122 339123283 360638417 717165268 897826757 184999102 380378677 456249920 559053220 767462587 8055177 445438226 654249751 880678236 85268285 55206125 252761027 785369279 393882165 692932087 828300097 122539591 730224256 278529874 390925209 699138668 25280350 86841562 525811939 397569426 149789158 639223749 386350562 990604101 177717671 334732757 210878188 255664980 253195393 500302263 662496374 292312211 45345449 708685327 801290081 646560246 609855783 873202097 162303473 81265653 661865437 219907966 349955313 234375568 638098228 579112688 865518959 371039364 166363233 249835941 839039255 884066996 960133324 710038029 878455752 358185705 102421925 687744872 582553494 606961162 902226026 559998732 842987416 752365863 144427385 48114289 662758233 44462919 378538692 22293436 975205200 771312371 648950272 151456667 470140868 895879572 533940693 427878451 510308712 550154537 739035895 558694353 286090715 220575612 679763213 441867766 358660890 309910906 94001004 421360418 211592662 762468216 164850553 695973085 918515667 497703957 559302452 270058513 704686887 154173916 640401353 221619649 29717031 371911072 157090166 258055946 932151338 930454314 556000084 375096603 515084052 242911698 956975900 688674166 404005563 716569111 333582096 640397952 438587925 528069068 251816198 532934887 697939930 828730760 671911643 855275066 746243685 581105544 168643846 281141919 786040391 732055436 269076564 547507689 331110177 337712172 834215610 730569506 222270467 464914738 604151934 462667292 780438321 950262975 532721148 863643816 217940548 58577453 806770198 967952543 87108062 338762350 678487268 842851719 560402296 379984967 316042270 23589701 619963965 578950545 814931989 887447175 820352930 994657409 831286975 140756713 225532992 465930812 258798560 691174429 418448456 569819631 920501300 129529730 475248163 178067453 353939419 645694700 909795150 884000296 221721346 503187232 705084920 218539760 133439147 323804078 769144620 693634684 496172993 97604444 758875594 999196846 102082065 133525422 773636968 614864757 529459412 907984984 968497659 903754101 862463196 869411585 783973133 916664387 11367215 966481039 832570579 835633772 223697118 579836308 288668305 269508966 937186548 980750637 372973752 415272256 467563270 789146397 942531259 124373675 589659631 760840929 788405869 329304015 210677500 958105219 374586369 907317159 22250938 307618332 679506835 446322035 388780731 147166048 461304420 168785420 825954050 515798317 82673572 507691691 659933963 216700013 667187316 980837910 989526692 455494101 142054991 465034642 26980302 377112400 611131815 795827328 812492293 806911927 494827218 590911702 135100930 81123954 539239717 497866857 843290390 416212418 616326372 792374403 507714608 502224827 730565356 86259232 612065740 548788604 36854334 519769196 542270108 10240591 967249934 970751871 504932795 273776867 293103877 162922194 345068475 499623858 548131600 935486472 116573411 205121250 617958345 833133034 68837317 734307849 903586271 4754139 591548252 881586567 90161612 189678018 942778622 217436114 742793455 844068171 640223054 114581867 866564001 790199721 225681888 237980895 8372548 938127234 531739260 96854271 65673444 208577535 276735976 248355783 923701637 886564375 704125487 12244297 498267850 591600224 81240897 62761422 279488059 975039981 715839855 886980995 365179251 105850177 90449919 838010415 901238351 102097857 846024485 473385696 496088249 724400421 290070673 658802422 475241446 446724379 541208268 350712988 431996459 997259539 648323049 227293231 662814000 808857154 975135411 334313943 940581250 422726955 486433256 903932009 195956750 659878093 910316959 719470644 351691533 998884252 432569492 402936089 731960880 487465183 501687467 265330408 868030858 571246092 787248872 110369947 341357097 993230108 395536152 896692560 404875853 527326566 697324843 502280266 48184459 288400370 623631687 329186077 881840894 907288684 888138572 60819093 229829534 203038275 608986492 601837581 434457099 175798547 16593161 270704979 10012850 174506200 743932535 38681742 910653375 497189989 539718347 941732780 296262955 760665809 675875947 100670955 417226881 17228793 605544919 217672924 47716273 992489035 523368009 44275922 884077237 594882694 743484556 2850303 203562810 479328620 179287245 25726660 556630677 831379802 557538124 561414743 968220779 474828750 240401877 813515873 916849917 640035320 450867092 210641146 418510869 415008978 117600281 219855692 139975017 842121264 985047104 127270139 817376863 91920992 759713652 310335729 943516239 315037542 176692690 670861063 150854700 613889136 168189381 618340772 59577995 818624434 767378071 918043197 900118381 187000297 257474159 553153649 672423575 741564643 551231354 25180573 414427950 759269410 397329803 209183877 372793811 106720518 916293459 972554199 813155771 137386614 318710327 488965734 508572160 460682727 155075695 809707780 627015808 872441814 509783850 650621433 570316040 302131209 421168351 328585649 735688308 704289766 569442411 502684302 377422124 417407683 351968156 563844645 1017656 943295239 82018814 312728656 381001945 812978602 475128945 310338076 812235657 804812974 469025543 588901367 469423598 439935448 478807958 535075642 137331716 887167688 850489737 337921005 746903726 766232305 826626698 619641563 188649024 899126999 777394748 575758974 316940500 530042716 704544026 630823956 611892203 581918727 369815228 969048892 781922421 660034174 929485540 731098410 744564371 827940441 760897069 912018149 47034770 361237314 952515979 567685225 52420001 198361614 180514608 923237022 419694125 176687263 119128318 73109774 353983926 949340499 717334071 9225632 563715097 516272276 516139854 496827282 243249791 415502966 927854645 9327111 360220586 183402789 217589999 403288174 46500705 689770559 957937278 139051620 474897982 490596973 68191320 432561134 793541669 427775837 283870671 983531183 244012998 151730245 430708141 306139800 703632622 80727974 832522235 899667142 673233390 945423763 956231202 12535261 297126808 817583645 694113684 397194944 468656604 310743259 757321041 29744438 254377800 316724789 672311205 448477626 277185752 587568136 299306311 251521774 177264019 56862656 515193343 522846897 550143546 400993285 299975153 468819945 904943 536784785 666258008 835261359 58957683 901926595 303084455 87758951 2347802 657603161 633874133 59660670 358893126 298400877 804659711 873594991 694166124 827394661 452459690 529686988 492947308 288888174 284418377 148212017 738703997 800457832 769713761 211682417 9751831 885562465 159910065 328408075 217742918 630371244 793798807 954718060 828885494 482542398 910638765 202589890 427018332 901642651 870397608 621341432 31841821 237235598 199573198 359078551 311569494 504887784 913591533 522659335 439592993 560842508 4780266 596607782 314521010 405710804 891719961 370843472 19128728 486127084 446440585 679088258 228011251 877206613 590918491 819815941 311573561 208884161 997536429 713506759 807979392 257391315 717502387 182202048 827825279 610199372 826687971 385021279 606674720 195045700 606701342 171624951 130447658 973313170 607376466 686676717 971268897 862518108 817008357 766085304 814875731 611519816 674691790 2575869 192514233 730638270 821823464 250303511 327870042 341601118 613994132 759483648 276969197 993029324 996924607 925766523 146759914 988200687 998556582 58350150 213020520 652123225 505207930 991696110 915631606 564387060 521527583 507482493 799652707 361226823 655244694 31729178 215662900 265210428 808177543 826512117 398801920 596522574 691213983 572835770 851081932 29655015 75489135 243169541 665694834 612232668 44433413 384197817 993732813 229274593 403709924 583101257 260693105 231716459 931341912 86652832 681564980 161991691 873715412 297011962 373195279 100935008 374393780 244774142 407829274 476968054 290231612 640937991 482845459 791461050 560811499 730926546 148792118 185725059 327425498 468793664 247039385 473203676 425973978 899159557 550786202 531921668 341106816 644845033 689934148 492369492 222921102 534350912 617073059 47818617 909037282 411076506 510530724 702245784 216812804 109746909 722404377 946528031 504792889 837358387 28254698 356063895 188614468 556813687 98411003 742598238 475736422 365011166 147102941 391301117 981765062 489395636 114717305 195815394 404854340 174701184 495533391 413319124 598324326 63378282 95685686 66378183 855228026 341612049 461183230 218352486 649340321 517020536 306349022 365739195 437037525 856043738 295132942 678995636 328926454 495102069 85932842 238434457 828088213 958906582 659926592 708727815 27797178 705211387 942816216 865329905 125206041 713517601 314370045 800578454 584904750 5228362 656534795 142136573 765227387 896621083 647258464 655807847 680057864 892351740 816175536 62088053 164181846 203256948 268225739 914440959 856492418 992930509 855937875 243942272 326343255 954553303 719120552 495647501 570186504 325845108 922107957 962525114 891569813 151681301 502874549 457333801 305440852 214898520 154556102 997242008 96332365 407596429 406130544 274262377 4975575 755541278 940685303 457866622 224558884 393517337 44238508 401993974 33549372 632431577 530724029 221179210 616551704 495194142 749196651 535490850 54767578 178339849 355721322 925945531 498062922 879960196 736692191 792456802 107711090 652094423 424049286 785637524 44805388 591394270 960177256 798350502 849363964 231558329 498760945 618408977 555378406 826416590 708812880 82399964 957217827 972475908 923225789 80821831 198590771 595828557 331972478 16249182 116313411 871026674 373459471 928953355 836646922 891168361 393337454 142289927 133665733 904963537 604336429 304383314 869389105 737126819 871127238 119591407 714535643 426512259 780799089 74879331 331877599 214363848 910971964 829764163 138565794 995048211 525557841 382366205 37449318 531940962 583283683 327132988 31045720 101837414 890333676 181373530 943270962 168041672 692356860 875577817 584781982 316877828 495693278 375828459 667853811 353358595 464209719 25069306 592397123 14490521 148898126 194452873 185031165 911003218 998745705 710013067 32283731 537110701 122726220 104255312 778594106 947387294 161208541 451768122 176444264 1600268 83291366 310437642 625260185 354880350 971906313 42956280 105714143 242047888 218265582 432652626 142096737 416371815 52447556 858563978 825328389 876784323 976102707 851493084 270388859 470534375 203600313 961719044 171315146 273659924 443622900 289231028 448034668 550260235 580215094 195632272 293675758 290749116 743233854 761175176 468326192 489121372 932802907 52572233 115318923 729923102 153558721 1656312 576299873 22319248 717965035 409340430 447580216 675544882 886318261 667319761 656835296 621618685 542915894 542578064 652475657 883208472 62832073 946437826 726820360 456630271 966568746 807483998 180311805 716149730 83677009 963086970 296984983 745784405 15386126 39569349 31806062 135986879 143481692 887366834 449298907 686057897 905623025 595924213 442147706 232352157 50791506 261689601 250819009 899012761 90566062 358341392 431053919 113210253 935048186 707674530 905288881 147064659 250971678 804281276 221948280 652055468 633335904 422370801 418321503 938806942 588788228 526805989 564677273 914000668 807651865 465060574 406449366 768486210 636568152 20114098 780281071 617388614 197523442 401862169 629009642 162664410 355353631 591780951 149731107 370694040 345506373 108160418 956983053 980112510 735618243 25922276 612982212 122326891 210996474 906309112 147918812 147679344 805273652 414872388 482790618 718201073 553704895 196884216 873558576 305144509 816967154 166562201 972763630 306831088 451094998 898078494 283226351 16951880 261621875 186025358 977281177 855841031 395948648 400594687 257001986 124701666 924442243 529932924 846456484 673380082 602435615 209138925 672109700 128696440 215298917 361107805 399622719 452897073 604136075 128467677 17026557 689243907 411943833 979588224 511963767 286757530 43117333 370421897 630127348 455447746 170435665 607903260 408541761 265828552 810659340 325830192 816162096 870029578 336490562 332404389 897686286 39950893 108799273 34120713 721770906 283526419 581497319 992775843 529592099 441650814 834167326 457711978 783991515 707950486 814753955 274692273 238520922 664604709 730423577 995998007 746082949 945201668 190187989 926675261 632774977 353350500 706125277 155946836 498750259 281480874 791857726 974033854 540725242 3678481 903350018 22650349 897764995 850852115 192700594 905338640 261713977 747520406 841643713 574650178 342880946 348195490 509325179 830152491 705674871 469383784 491045778 438068082 78072056 46018870 874565136 568421597 841046133 568725920 626908196 443655971 430743275 568463559 457443040 460252707 603745750 856945175 200393884 154914866 43449653 571069097 839705479 87943925 211446327 632984804 92948388 90936975 821933776 815128443 301718984 209079335 266928204 583460564 813352478 44565989 274693165 307067455 795644870 880486134 73241448 521695235 30379372 322778480 926492448 62643001 424138464 724448564 455418368 821212282 681880712 476796949 617762470 346471664 979548998 297952264 240122814 130370663 178545918 605702415 490536539 60995416 382911855 808838559 589184702 338242167 878226655 147700101 326985886 634016209 662675865 443749951 466006385 336700521 634699192 760598051 638072599 235552400 426024665 105188743 54922366 191418539 566256011 323815985 636268511 976844107 121731403 85268296 756302652 686197942 912108543 817378515 402412795 211389476 327019695 54020800 691871285 108066507 774635279 541011070 869551901 845726799 806586577 753199206 56701176 538481365 632170252 352166195 911117953 312892842 128719963 348756658 730130274 464235916 955029156 417263935 816505887 926746022 459354665 923244607 717509663 933894668 971279 370702823 94290995 524927610 220070069 408491696 56431153 142590205 435308942 204969585 866565516 588940630 631521568 82385313 276358148 730602441 498470519 240745916 496723767 421348698 156817949 426983132 88797903 436727860 643897959 373467850 72009374 111934951 385584762 834401155 566796916 562201709 991927152 739527482 509798230 633961016 365306746 407006029 572343548 182767967 542832784 947093955 438972181 6654183 282867474 186069364 604449564 780362565 753120532 938223424 864097960 806739951 472536506 572553380 152732584 820575925 1928617 332393653 740348949 80386491 502688351 58832287 232551328 736737424 933717837 594571693 511948172 862742616 934202843 92850457 367986039 518924205 443142189 31402112 736380815 311741473 600706818 898606669 190264331 975305031 191240298 795642667 733466172 807527676 715211514 411554869 885657098 513056222 899936120 844103692 278607197 246257532 160197928 186005048 70857652 99755701 794302523 350631459 214915015 702114841 746283914 356131209 791332719 59896944 701608493 925538989 964686549 475420851 402821542 870922123 963285107 950975064 275740926 79247956 877838293 829748795 469525363 839952525 430456820 958668974 890462785 273409953 739744842 572106122 926259868 328469535 476989231 942667608 19135186 606000516 202919999 554292996 762045170 466620648 807110353 91334579 320586129 528247292 816378545 668553980 687933711 144366308 506830294 7056327 576902742 747216444 760000808 437358769 82534458 149936677 850404299 860343293 763547090 578000519 830124600 10202008 203326416 27319370 188416401 262057710 235985975 237545504 291044175 432669671 93820713 448884039 955343214 554696442 552975053 635855735 740160630 28745319 959176325 189892440 622800451 928414578 378039056 68142438 368527529 871235173 958553797 776707936 145112252 628461677 667033691 485849549 20268792 617568060 942162392 911853497 786144208 161255617 202875515 746235653 212612265 217765576 216279580 719781204 678172291 883255359 504305151 974714628 570161506 503020970 690716199 477254535 805745181 940488857 302460461 915385490 928157285 708683802 945109268 920909049 995865733 860751408 742195986 821034108 559580502 147342512 349819583 36396389 94580056 654681927 58898438 582796102 49472802 754254597 710773460 996217319 294073349 437313017 346132071 208005222 924939327 365785166 754500169 672096955 489420662 334869984 229302733 400369617 290476670 237719891 635794984 430452546 63311215 713107960 927807388 211691527 982302841 948618729 396385395 370407572 361024868 176321874 951571332 187320189 817323420 156972050 168321022 813156829 770962343 757071382 143287467 703604537 848045638 186374554 710632452 942412230 551819604 128830657 561920850 728830270 184566649 672332429 720197931 524749382 903922074 153969283 161070564 315824241 78515690 709773254 105436073 385786973 205732097 231649925 510483657 363021206 212580332 428286306 183826811 212652182 832430703 202626185 380119 33406078 46701099 907374095 547745752 267019446 164306191 398636812 449380739 851689613 787380467 970934894 273053755 122622069 881916318 234058262 368112055 703878335 19873892 644687326 621719066 931872278 845390159 103318474 879018051 520868382 530357604 598258253 554071120 680723357 375982672 697680781 856402925 784058292 390380780 638160870 404658258 508736499 414192656 583072744 65205816 391412500 146042070 59043879 145922035 689436354 227318020 777235810 913553596 400738577 144709937 171860247 952334022 87943154 83155258 123018370 881691601 370035619 959757603 454007122 680680069 634223962 666982280 281957882 55334403 400676752 726906751 377207998 974844978 749174369 202301314 290422732 373731811 928408512 884338957 687517418 401873491 512685914 988243350 488872076 849140658 430870457 382792876 326258434 98631595 884475778 782423586 766480237 141541525 71000905 593128890 911223005 120409516 996020835 779029318 803701772 735376273 7158794 758200924 630406874 290121193 28966322 398031427 113852010 732557953 765726420 905510842 805286603 896811616 843822855 991510839 918029758 145174271 474960757 337586617 179579008 384968281 22335451 145320316 843017357 454578409 655546459 398193045 1485872 292609766 721037422 767355390 584919666 709926506 760850855 487946011 519862564 605688021 78904792 584012169 8478047 612268479 212259036 842442725 554889629 347050076 355585100 389344316 580874241 416088115 255254712 646943541 641342577 235506961 250746117 327971469 228335211 219111419 978343317 27485042 834135682 643078826 922849254 942422859 81296525 852766287 366518849 703664502 220651421 201697420 814067898 724831083 495506452 330713593 531884903 594073955 688983536 638987845 555486276 828788752 151175868 747146355 737528001 160316277 401775687 495898756 423243425 397428128 656959017 81938066 126680886 75659358 687518649 301748413 791942546 588615435 519529764 852661011 276898016 977421798 937294743 541040837 98481863 52153770 62405716 593910594 119627885 276587230 762436624 282718736 133425305 754097141 774404225 418026441 754672330 274220980 351639009 456192741 717179187 35158731 715204610 900165069 292887547 692856671 295211806 83033096 131691046 997438952 961594475 709261115 421212263 847113662 37458291 606997562 944405173 994075725 82661930 267425492 978288584 361907646 58333874 355726090 474075773 609251440 956425000 737885760 693531863 616252558 686566242 5117298 354696521 97933007 980090974 629492137 559764143 785095324 358656777 581682187 546694767 893188971 340416656 932948092 995449749 93297815 853151932 956251780 903841674 584256038 883146846 786996893 684420331 139003144 179988338 697750833 614360107 810847302 755697805 959738825 213504435 981762048 154594379 146941844 500910069 130506058 636791628 180123509 661982579 481109007 126841152 127303669 793212186 561382900 829320035 518523588 129429107 725123269 240073460 955184953 847034097 841530373 624966727 94072202 57858129 370961406 775770262 918681648 578302883 794791942 249235435 74990425 580384695 846187776 372003266 729467249 409543820 765451461 762196774 84756735 61251439 415178331 330024505 184789172 861890369 827163125 703215987 952074506 916277377 990717327 359417869 754361055 273061559 532686512 129750886 515678687 778687119 492227438 416055839 953848272 367311439 149836773 285245337 572384107 234618446 539273634 734798622 676543248 104990205 167360164 925926757 104232850 465140008 553920312 59781510 737454537 674076482 810061165 285568308 312988127 91226369 581527383 50567056 328834480 663565991 634055239 627236883 585966494 997254719 594760824 748026727 935139604 102763347 834609428 147013355 43201322 327315804 447086869 625079996 402735710 658112645 684972191 616076886 234213748 258345476 332704891 545282248 426636633 278104315 836125080 109384822 567844396 762008078 753668054 819428748 201462896 585360328 397151759 193001793 80810827 547270571 776874579 183901730 912753492 277701987 676788370 937631493 364087205 408155799 619586562 858588565 532017729 516667291 422254740 983723260 975909145 592980667 460606871 748518868 829915085 260491796 873901906 171455343 610845298 407482431 145498601 550413604 363883162 321152954 760524841 971801851 157860987 389140329 721652520 836366873 62326631 529502526 326327291 325230950 388153506 6769426 134764977 143173629 32236506 296859474 959138525 210110427 504216296 118724932 192843121 693984792 804883669 884397174 328697812 518700193 572706318 807598639 949627739 369930062 376078936 967072553 785141939 475952485 317957879 772889160 831217452 205258411 324151361 857223338 542438179 660203799 4345934 340249646 595292360 645993434 771017140 466483017 351249979 156275768 600747638 998237063 258649951 233785425 452804150 505370863 933470106 605386303 495992930 167395275 855534044 133770867 804334878 453175765 181607107 603182569 678869374 171076426 130904700 883511611 520696214 83743571 957721268 361249345 946487955 490443930 530107976 346067094 642999243 141677237 19699043 893128752 563282721 337566955 443917808 301804832 358291939 493401087 126938693 208995958 392701311 715003140 514683168 692591425 798074906 164209545 514775189 244735987 408421807 635424326 620247178 191774318 223747182 611608901 645632809 929674037 677904668 396882743 787723057 642053624 686842682 815331801 566213736 990091973 112573949 238917207 387757726 673734278 994219212 693831005 78684787 754659641 825926245 554897495 19342222 34011568 543676872 749632539 318590662 833682267 583568681 841582030 687990128 916779744 937582768 473705534 843804146 581602032 884389846 332107950 301036692 899884441 980699922 622846380 739755628 236480487 162637153 892886771 975043502 325308877 850833439 506117373 980140743 271906755 29864388 147650918 866370326 930097477 901833512 919086410 440058468 151425598 971134080 819931498 165766290 993344576 84161395 764544524 299363440 135135572 821979878 789094120 263574535 211142879 287734304 626923702 295097448 158397501 742191241 371844171 367655393 903117680 131067861 20184518 837282282 313283165 408092338 209304085 370941739 6816254 811612613 258947803 158701840 62538544 695416409 49192957 55448328 686320703 361708504 540466966 627234749 152263315 846124549 677094468 14612014 194909617 74663803 491535558 850631273 155679132 848445468 292241694 488104218 813231595 956143105 441835582 682903706 371628033 478093700 396126320 48134649 572297566 655345355 271383077 527411224 954349624 221417040 466943483 617182058 917391140 463025529 551548655 611793860 881862031 133604678 192368737 461769138 952750928 130954132 975162846 931101857 535784845 26394481 167794700 35698081 523270822 74427661 920262566 69200932 999411562 62231082 990001037 648768500 452155370 383960900 491200942 751420456 839710480 198875532 589964583 609799935 701420536 194764287 814780843 355167047 787762188 461442237 282373068 503729461 328137816 467802781 71165440 302377894 978348043 707637322 16279954 556399881 683186106 832103365 549115239 472445343 100009491 112492050 781678096 303570560 520871842 995967271 394014799 15765504 911102139 247190259 876574928 502855994 934517683 936646677 480519338 819169994 331150554 87881133 171341655 186479331 884923223 902803376 732179977 647667525 204218034 631786518 456730918 509714089 54363273 226573778 942757586 662975674 544545740 330746799 940692288 177758670 3990848 402023194 198251660 745447978 281745828 825855779 176015330 172525593 633779285 484492530 183293590 423879233 959220875 12121788 561973837 220459820 680962488 327258996 33105949 995777921 25896908 392576677 654571256 539445768 270698580 772019191 55272522 728298024 387819245 67386026 325745592 740592244 689298954 87911868 297882141 923714352 122278738 26021000 27152917 797865593 534678070 176525312 835917678 354592295 286556712 565940260 352188960 308383476 624932169 664188430 186553681 230185245 950688837 291370437 869760599 385142453 908883758 192238013 205586053 635060768 148530730 260576307 296719247 529223080 844691395 5482890 208150814 539148794 985002189 249086905 816823508 347428400 40837450 261041095 210290386 338998308 158500014 48877499 240336124 477604554 354827250 849829752 299916342 451148940 499210926 431912622 901343676 431250206 17112558 7617982 913045935 991085291 852078162 154169111 579968888 934069188 539195565 192270995 51443780 528590462 446515678 167196306 297273428 386495707 619854367 485463781 845491410 146925178 671696159 789712198 845897821 112261414 124460014 140791688 697282213 67311058 802635549 409793837 164012894 508454638 409653685 733079072 322719408 63775742 173914456 981054870 634183980 498390061 557498899 200795802 265224935 117114009 66758284 703985303 649966653 358902442 209259095 509172843 205365410 252801922 721225474 659244828 296179809 864582009 431586916 528294484 167478 876471491 791549740 289253409 405300718 257270108 443085905 298759334 873928411 482065181 382739081 867562557 130795326 389860239 464791329 502656877 491633043 914924083 65770994 269348247 553787357 606912902 209138519 368918841 383323596 251181749 147742689 927472179 339681458 878810781 428398539 33403154 912858709 481149187 226943953 398012503 204465450 898662030 566440143 882271219 323168700 85567502 326465950 659206246 883848000 270115081 855826484 224142541 464073111 933711139 358283161 453841011 594223728 565458055 865324734 144655120 559679544 11202806 776173384 516252212 382783628 104423657 315168295 890245298 232301101 111863643 896765390 627420452 687275457 283493812 685279965 735580252 163868574 359893698 466528310 998565145 24558201 407189424 537309968 596020178 133817255 129645481 100973899 160954693 284663260 809286199 948053538 813488532 818360748 52048315 989818628 14370113 59256062 748839345 939713368 795161038 722069617 815904732 911737828 991110860 227373388 334301591 711190991 980399196 885455169 569351593 709299023 934958816 810700811 353604416 790856330 476324871 405755004 306938200 256596586 723090685 130136600 418456422 741014080 10713860 805960094 125142907 812381958 99731921 374751652 641804078 748164374 685632771 711601554 103302495 534397004 689697616 182507463 140584198 824234982 985938491 22025717 797089907 50937244 685291598 32372590 613425224 41693946 579508809 176994928 732476029 871993731 867721560 392839328 406333998 56532968 303056744 971651150 889122280 426548988 461836847 343540070 895679654 457494547 473644412 553682987 967762468 20417709 614286723 888936546 858957237 957319869 771989228 577778808 736707250 264231698 19199484 118962248 925501029 597176312 142063487 570055853 887041170 406348146 721385909 325518338 434220956 6077357 223407497 472443983 490474795 784350459 464370895 48388112 695649809 867351345 176478353 907816419 974300762 379006504 223814085 761972711 834233176 722409791 587321749 963218823 114195085 894644597 294111590 771028966 658742977 180764857 89943383 392504625 511482068 646021218 283151067 311946244 339899576 522526976 271092983 286433271 368609235 303245144 418901592 556348910 698868944 827269522 26109360 514691952 522546458 923387202 456087059 223440392 733421366 745691958 820431018 734124573 833404199 697700524 465493892 845735145 12086822 604924136 692701429 721623670 232978931 922699680 558353226 442367954 374801265 422847070 104540931 121496316 280876308 301658275 889805353 47733695 812086973 604916066 750550894 229974664 442534648 154175156 71692983 475974173 197132636 841292108 232324279 973362367 848146218 844115885 82740286 925240627 536295765 957510020 929247362 435329766 749488725 40323311 708967812 222744132 139081152 77520925 375072255 830781499 449748871 338264362 2210456 756727776 478163240 384120714 916633151 785167156 906893754 380138823 771705896 884314047 229965541 631076960 874520798 247596175 725258056 206704508 234187279 955146905 675256250 522335106 107996478 39927673 768102946 780334445 438474566 717151449 136749906 409359620 246358004 902907236 133013322 123170296 706335718 251503270 275263141 765467606 473817265 818201126 754501673 121743524 483667819 56229168 226551899 139622628 632599769 123224012 611422327 844368969 506827484 789070179 499640743 324671835 985750693 293177107 799528805 499167350 901114718 116549556 834524436 556633459 651273468 98085910 667207343 98326714 884952205 910531877 679741142 626946200 631772215 651731363 780146913 283551706 346876257 160260807 705874943 94936634 437646367 272602886 303530295 87797602 163707451 389577094 211205749 531343467 234032331 352432850 697590683 415868879 770898154 333397530 218216089 334289017 33302197 748575284 998655514 572409899 658752268 926649928 910971222 659492868 795708078 811038393 372242339 503710107 201577097 251466008 855247135 803733406 496488604 538937202 11808676 770012403 951457899 117870659 473537472 45074399 442748207 635921808 870821301 944616297 16023817 237810694 635361661 96233928 816937012 946975929 257320270 584972033 98440521 329646285 578737910 687834591 823550029 722192618 180205023 881922723 690039988 13230883 741409417 938728857 410766277 304295335 859747329 417765749 460463279 765174584 514725283 70166492 159215611 807899676 817801429 702774798 530616563 716012812 634811516 532560373 225207872 373557015 797561920 959218115 31993205 641998754 853379711 409980383 912013126 275435619 627371928 844330024 549744021 646552682 576744154 362713388 831088953 724449020 303441417 394162471 266206167 776168147 345768948 931374083 538949663 240517186 777937316 374792943 131698898 89462066 895302065 353458002 222418509 25041548 376398277 964449170 713116179 181294670 486683711 863474428 221235258 284512029 583683682 913014332 100004975 51827011 813326016 804762260 743059016 539823582 161836485 394886454 597597874 957146004 108271111 969311396 139101876 55770531 851307331 215486061 399732562 133615263 433167378 784563826 727375325 64991072 566238648 591405493 66935732 157379386 984820042 317707648 65734574 434049475 818370336 989043731 65347636 956728678 446568021 452680462 975697427 160659113 168247635 149834465 787034949 209015780 299741925 465516597 457946725 788617713 829672716 967436304 739865839 383632038 730499409 400786975 568793545 440439365 152391952 822573801 622982251 251038330 171584636 646907109 912941693 976395267 654812892 657323074 789569212 418234448 942590015 331798631 897879224 248825407 195038019 887322726 592421440 37405342 580601750 939984987 296240489 349718919 78848177 590005474 370162032 362532702 651667389 744386548 838026291 814642354 549943907 794524891 389105240 138849250 803073455 418394483 157916712 784211398 585180042 646698212 778484134 298438682 208547242 524272341 428644073 69339684 390682062 32841191 757943199 999970961 745005253 904079333 117364607 990073334 146805047 759752628 606782641 190072120 532396162 757735322 915456767 898665508 28877310 595967674 171399756 147010823 48915835 784265306 106011826 625620593 33539202 406475269 78400621 225583327 510949 878442631 385140732 766163519 369562174 601112667 919999600 460162153 998102657 946010006 869096297 449485706 314510844 613306053 916518349 853432520 928381307 534577715 892155198 480060018 936848823 187821248 976719432 825003180 638810480 914071742 853602105 678186623 678889339 201634742 62707691 527032385 80293485 745688382 523431946 952486846 644703913 579288821 494050027 662954518 96083806 273891317 181311050 606297775 44444334 856137419 142487395 869462850 539323969 145940770 199468826 189923147 568102451 484346893 410948976 953765987 272179318 105635797 659452287 793397949 623170345 956225461 616237485 422190075 871674080 38304388 764014461 141479696 738998063 115386624 137293602 294884950 375340025 835433654 616046035 905383152 888666713 952872814 514435747 948204904 272673885 622551608 850905810 614341016 93417461 620654699 808380361 344861352 534586265 173878698 909155807 327888810 423923129 714920931 856953483 458381825 23733947 153449215 229666845 412225296 682939607 534273487 62561992 106801537 875231933 83724946 549793460 916540279 81065636 554701555 84869015 393296703 110091807 875734280 815065385 521503546 602151309 210003626 521895133 965930974 547485901 279899491 901803843 171640398 238195738 517348992 997672791 420974952 561890873 537897925 102374252 820590897 275412650 809443726 260244575 198143842 995825818 216931952 852128796 893133006 843974067 406704417 317013148 625535451 135158990 785390361 511176333 193633002 797648039 128021376 221237326 206743103 295185606 946812887 132462104 316614889 80086582 399269314 546476019 120002795 323879387 729645903 111715851 512161197 633636563 246994644 897790738 414679705 329660464 595267956 516061144 140635420 93279143 735343265 287259443 643777294 231119591 272600488 383760989 665664100 672025497 698756890 359985630 710842741 59655014 735152767 986764759 646431499 205570707 75577235 682078933 35921449 147004482 563535440 424928645 36415202 99804724 957728109 86299592 554154630 872177815 152072536 32917548 534673904 576647485 352052234 823360280 644226448 891132054 118981764 894932337 422785345 273477261 146352162 489129328 578784485 172711806 140835497 777784290 669001490 910301831 526405881 812360847 625079937 66210121 929963547 144538564 204488362 7124920 880770947 304024613 832692002 807420380 84603617 298919851 193356104 140115384 891675245 35113483 118592394 206280206 997407939 25272089 519881887 176590079 743487180 752812742 438381480 402639405 448150589 889124855 789282124 972370557 807848539 856532003 190847991 348565485 427409397 479037846 766950651 732070547 560269431 889445609 19798933 774040928 365891218 260008632 474378536 28734820 501421188 61344426 920322691 261608408 596224777 28838294 558642532 384761747 52075779 117066934 493511263 972273376 157081556 963101182 997868364 814060343 168405259 54468 687476042 670855613 801683049 339540870 765175073 50056102 56834917 400182442 839896249 419353168 637385279 597670142 251014085 476651577 658565269 487631053 229210250 567364269 54719184 857033207 691347080 929383668 849029820 934725459 461005843 679823107 197673108 764775571 799747770 309137624 326754281 611627998 8675733 114038085 855746067 31125562 623415309 280522235 916297228 335860665 664892860 982784876 419495097 35300364 81164395 295385180 538438049 522395629 936260133 624118828 840495578 330518259 353895531 335969466 178799425 522977481 149599919 477817112 482179239 747052325 883352357 843671201 728186675 629503681 93763316 90207108 277344902 404025519 938030627 619273607 426892364 171219843 873848933 629668870 840730734 7360848 557267651 202987882 250392108 463903882 479891157 760940616 86289453 181109988 270373647 446187653 570295902 887590091 323046122 595264567 999297331 945553933 231578369 92630466 650496637 481079699 797003244 138920020 918417224 276570403 602549519 727622075 841533266 466277212 669367926 18039221 871278459 740834814 406107852 661563116 717186259 653993733 97252395 857408032 596648336 321293873 934059059 883460429 387706101 372144956 848318034 534229279 874776387 723556127 394134066 442504750 201954359 644934155 956142759 493673519 164188123 239857472 942328540 901370589 73842055 934160298 772850616 883421843 555843614 101437584 745427407 278189483 337567134 758352582 54954851 69493628 22756056 608559880 968684738 901939082 383915878 420733948 44799546 113285428 904761795 893716410 120508084 824700759 351960902 967139556 472193381 961059560 695743968 489690195 992417532 159473840 199846214 250148337 481339580 798602306 106666318 711427303 484774037 524511265 723734360 75267543 486769198 813298914 35063570 213109538 458211114 902032645 182957339 760368248 261582854 760638344 685906074 215982304 979692118 312045924 138615214 104053457 631808106 430315443 302011556 930922662 706482540 511931704 247461441 551367669 971062073 219976433 471424762 911758373 637975472 861381219 364631509 168724537 675950065 628871334 226905680 484115598 476235642 794113097 497487153 274853408 899334209 186449055 673403599 924561219 91682732 522373763 364182080 602686492 883315170 668817965 597134627 271872537 378942681 496381056 567755277 892764425 750967733 3348536 85291830 290987131 913464469 944372587 817767651 103923175 638250512 112708599 551544273 172688617 173278314 313854944 306754395 596224314 792410483 760590860 239105881 545719525 789126398 54075020 106018749 44954602 574246369 548006479 30774393 541272571 78093215 853561602 821078069 950800326 49824695 486085241 484058641 67656634 876643372 45074443 316669835 150689127 384491252 847187457 179294007 565466948 925264125 461875692 318761096 414813484 649634822 529572524 88731366 277293750 11705434 770289869 191597505 576622060 486670760 653758763 460075488 906237395 117234472 115051118 558511670 159708300 492974064 474124072 913271344 154335071 724726004 768054597 547097603 321310737 256799207 284092375 553214407 601448974 524404592 887784475 427067226 823776544 675275862 154951854 942857518 936550218 427338397 522261625 969904427 266073193 272949130 749219384 589009435 691246039 238882802 119618128 743689336 340332494 850769692 143778129 602344133 842360025 195134788 55608486 127067421 47456614 129026881 854937455 387322563 264987458 362410816 327592228 620239886 587612154 733170368 391167721 899850915 71734104 527119791 71283409 898071382 540158644 87410316 117473391 910346372 978566413 916364705 453778405 302109203 752834178 401458943 413207992 155056158 683946595 928743383 81249630 210035513 397360816 347210777 247324748 158588151 620190805 415302208 357518240 491469344 990121076 27797785 304969648 52866199 775106852 486155715 273411038 217355829 930464564 252821442 127878751 203289663 741728143 608942133 129176542 578190487 456809964 732559216 43232409 929195207 501409691 290929767 989402932 519509951 717470853 464624675 3883846 286641415 954458722 494731764 935703412 15569010 904258650 440571316 399467005 209764622 279173269 878292344 849351257 475660586 126582671 825344004 620558708 389848055 210156123 588234049 392836039 975638464 481187722 20310173 915137746 650186072 69624418 688168057 354820777 372450130 755241907 427421122 556179349 71898833 452417253 279013783 735846372 788269852 849218593 375409815 554475515 869110021 18445785 739100010 725243621 280961449 445194900 16402484 18203416 380113409 872432810 454306349 925982983 929339821 586925205 272073545 655562441 862783109 329202029 976781770 340956655 929187170 256020147 175611622 749830867 506016844 926849442 194329715 149414385 830894005 64949777 704332626 857208650 138162594 214119322 835285312 138961387 108984779 896717823 54309656 619112759 499189336 522215152 9887611 730587352 645234082 627073853 783173823 864264562 667080090 369035724 978657154 767381855 636887986 549226320 841466292 681853790 601215991 3108851 726144498 756694175 225572439 323360872 936579002 164894991 289367443 421861776 451412642 366962542 522189809 214091648 169243985 495748782 934074615 617179622 801853409 540642612 179761749 431496730 101157148 642623274 642465490 288036971 320983073 689323510 48675227 285457888 52348523 503779930 449749470 998455443 441630709 39083933 464032354 888226169 738048097 510951529 64641065 386136904 867511461 553365880 149473977 42635352 613377616 63953187 332662849 516823864 299952402 225591295 659155760 760603367 828840948 715576267 41555470 559760134 501483153 989580106 444633696 848925533 379873920 337069147 904416119 418779679 147111533 163329904 833828383 423217172 294929335 763220420 731124789 963164122 543475891 576340400 662667549 312585927 135373425 632827770 199755416 722383331 93218457 990580248 818586769 282539371 289879097 585630538 891508850 860300171 876138783 782452344 801082227 317559152 483127456 313479724 76097985 492870983 679773892 420766460 82954464 141443850 70363719 777823050 227671267 187576649 653177606 940029117 823248364 86140855 660810724 821074153 631154097 468308463 741144891 816184609 238078092 188025753 984927222 655213294 878314634 608927342 499891788 454856606 76327148 664528670 498161992 728190227 541376099 41144157 695617530 132455029 865136846 616160776 690216995 353413812 959491106 543925253 960154437 788668381 838680696 327142365 622378823 6342818 769333853 594223619 217170884 929923796 993614177 232431328 476177283 906173010 45771729 265386747 592095184 262034205 235162660 883791871 653119350 690371166 779070 334287144 369244748 658870938 901659010 707879203 949491834 837084787 864879993 23406801 778273340 636462946 481408756 905053488 206092931 528300357 546585243 504952649 299048962 686039647 916214721 231337615 409075682 271818236 977652665 943518533 137505586 249696668 729040752 17624787 635192673 965535125 513473229 322845925 423251139 488463498 172653525 590503287 879264678 358344762 697915568 67079797 705070617 17096469 459190177 939490497 444817172 671498441 329161869 11846664 249985228 174388894 657148294 562751982 229845671 263685311 179121398 905068706 758500817 417392954 348985197 467462779 237988099 162010940 341101734 684615387 119888497 165299295 597015408 578324824 37164452 688701234 501611407 852247445 758151460 848361185 122604659 611623184 528416717 950342384 395999792 599347027 957846624 291151832 889282927 164609751 67328226 29751903 132457661 671948838 51521483 52833650 474251695 644561438 689630083 318696370 324980688 748107562 962423652 605393680 243755278 114229468 817307443 959437058 310044612 196751636 702016450 547139001 981187842 385389162 433380702 735859013 86814663 3210259 575780994 709367287 474729640 805333620 152753665 817425601 388132676 704448355 500657163 3787766 860487561 806423299 3334529 799195426 692424167 476592283 500831065 474205765 781170173 723591115 180667299 711100197 565656495 367084617 489501845 617679046 983939962 321109587 988764497 197902375 553746362 844886735 929122068 686650866 398672281 229630466 359387115 519328189 91932963 811134972 593242194 334678840 894958521 37860818 37589863 564334297 632956860 34615780 482084009 47292874 802403059 902276474 701525421 913850517 963502878 577839985 267406888 263667364 366469984 548047253 183889495 595499466 622865920 634799070 376479050 530055134 782373030 582936979 79035819 539138545 87423713 419611709 983948855 536919666 165118122 984911771 516460630 983318906 527503011 654894605 643547030 500426277 771802957 120308616 913942172 968037844 554337455 352075599 619036438 870286166 712123023 485641834 147848209 89077746 508783282 498510708 551939937 913681340 717976689 951943983 234158167 511856602 718711318 271261402 410268961 382063099 848712049 799919222 484160664 836323595 848940615 516078186 884582270 737066181 860857810 751090509 66622174 725135350 771800538 194370059 51538676 126316329 951434031 654840155 904745142 511694737 693454076 672790122 278699423 3707373 213469986 951376919 603196439 912484643 419371257 808351138 340171353 556733983 365771366 445889268 305797732 505722741 583953690 571150468 120351271 778655754 436476008 718838940 74236306 516353848 687969237 478843873 699795526 885962670 713950958 597644306 587158083 449986372 661329552 890587565 794015798 414487578 891714581 60290001 58411724 47421525 783759731 953427129 358213515 361395915 513239388 323749560 480823947 981151965 914858206 521167015 582626799 461057895 244426966 638109175 417183819 260086208 7186965 145442645 524376682 101885239 3415500 671441356 626871897 893865953 472240667 44544928 164839324 327735612 271733843 812716918 732035618 568630747 987210983 343616881 243085383 415469714 9077082 175414108 386260138 33858071 882243583 225346820 149701294 966984320 398517377 114501832 670748430 658168228 864181389 609344400 685003687 518432368 535479246 540223896 717509169 407652439 487105542 32468293 332516258 441455371 609886261 89094967 870358225 875793161 271725616 899088226 709583417 422119844 93793834 439609273 560779165 466106034 505998700 312971060 186471724 140932752 285919493 967056818 696078536 96138847 820274964 828129348 893829630 404903309 709433543 604494486 349751800 815927568 36872570 83803669 972636649 105780621 423653821 727835232 262451447 798053286 155291617 416356708 318209309 890944109 17140920 527456671 394777724 906076989 63044334 760562384 164068853 862034247 486086082 995595998 467935151 297641871 612913293 584342427 394621135 203671546 736976764 77802459 983128597 347675470 567175993 31037684 247516545 203547740 516569095 436673388 25713162 260003362 57974898 610092801 272358616 522883250 989153949 895424074 779377175 69696617 236257902 377231155 38279007 402733050 824072602 785085204 958656550 762727296 340176408 967695448 98293928 492228191 861291024 140434410 515637034 545282403 863585423 497123711 526545382 704520702 19518535 492245636 554957818 150437929 212404862 347039696 508589072 588754596 760306226 773735664 522527392 127211026 901648509 37269128 507454552 123808891 941836729 774543582 349877193 611913937 914302876 134336069 556755275 917227172 413594185 476380898 923028514 137225267 877949225 563073262 245363040 407775559 64272495 880675590 915926151 116502472 203134554 38234355 382329579 271160223 417729205 169923408 928283591 20202850 969115613 285778370 710034629 441016145 85798021 517436501 148494573 957105152 614033657 77468091 250914083 761097998 605004047 291110188 568268352 931939978 355160913 47405082 689381173 378387397 543034587 255329092 981537762 86409805 961092781 485461216 88565274 665759637 843988473 740711398 57482855 313093430 765027028 386273283 412090733 833047232 944284074 982255992 935589376 225699069 678951342 67571847 59322899 948766699 333168009 661271476 130389625 419566310 703183458 294658601 832026359 892407913 291996485 280592177 96413836 625846651 194398792 482718818 479522848 11947952 856645404 846571682 972060839 733796507 798415927 868927243 858905026 151071584 330957505 993203287 367426846 823725506 388970217 736840416 44232416 806128637 598624750 540988377 538514390 670025451 562924459 948298503 547397995 129103072 537234210 902441931 918885821 874370448 90723568 931940239 947653502 564536263 676009769 353223918 920806655 908473890 210844921 254775929 388737895 495929472 20952899 414097766 533314731 4372991 322013601 565100506 876776290 522832284 762336904 949232642 723328863 334740618 142897422 524193275 719694402 625538498 735674665 335381818 342191967 907712955 835766352 214625035 392993879 397177542 239586972 117938839 934043246 392621206 848413637 366773075 55129382 82546564 805361388 70872389 413940400 341407957 871465805 857731635 487340223 838753993 252234056 135437307 930220919 862249798 433410252 62811184 21697970 617970187 523867113 230143924 109011662 735103091 906371044 519122320 901365830 930712906 641802076 923364007 804625129 8774915 689470423 437660279 851244049 169404780 656317477 244903296 587513651 204966111 224889033 988194384 408617998 577810677 268395006 654185426 600229659 1781675 676108819 930812400 108564713 421299456 433059050 257926821 717791359 3075616 975416306 805390427 779365031 220902207 541110661 825497845 61522678 846964216 166292348 881396865 145593142 66973853 264980689 546321189 731691444 34497876 840214380 406189418 550806554 567164950 280513611 665743913 310373618 268526665 76227198 878375086 125120190 399987725 938109691 947797646 734932045 177341331 53663314 165555159 494141601 852023442 81593380 130326252 496204190 808302690 786533294 703313304 564284672 464257306 752823563 343646451 663847730 679863374 110307678 39292978 164229764 117485886 388056504 57984897 885518212 514022765 653136140 331391300 363332433 384250035 711369474 487539014 24275163 565265708 607725125 574609212 739138011 727818081 417638265 563644974 923729422 735743714 206138814 874357432 606308793 21512674 321883798 474536140 204968487 708475219 905817276 643644830 877820733 717477578 38792002 120874176 414523160 254177871 320289335 22267396 756148370 931848128 63195539 823507615 638650612 986093915 978921224 94931054 688226820 439060438 525384755 255838688 397741054 730232855 578865601 454780121 435914020 864726467 994406785 724595521 240822481 113311461 101624808 957255777 68691111 195923005 411955120 745801032 438186900 117434652 810009010 967151917 375615801 527115484 978327021 180477193 895886744 992607969 124300938 159111584 812864032 558227663 560447550 339650953 399726681 556977759 386546948 458506348 116132388 810969758 294804139 360328464 334020252 808642013 38552478 190331833 805970633 51443233 509973042 973507898 652820237 972819313 376623811 991767381 823122394 226845461 102937895 304898761 641575928 524399769 603866322 110543420 358291950 279643704 270909861 582602115 443886275 530669435 524502253 541810606 347644334 500468430 984631463 565650987 287181382 151001355 868550476 65034339 447727791 382500236 82803233 782255550 724566912 263289442 544283858 407685084 306074546 287917264 232819410 653123019 750533410 420570425 887942598 630593260 521864621 785405685 469981678 886648557 544565372 150644462 617512145 33571608 291678613 175858951 874368159 204484483 947719174 687851040 111107555 79470218 905698397 465056670 980069551 500770661 130699422 540220857 98213639 613463633 584420594 379926343 26735339 536044220 58288874 840375672 330928368 869989423 855486165 296290624 123432782 849471840 600586133 16563922 725972880 368404734 236525066 475580122 190094142 777297198 789362021 517353584 468422926 524090603 863604477 340932190 336856264 823283213 801379997 828066983 421509666 353912550 83755611 670310735 347181601 156693336 50615589 215904077 250492578 498908282 908984314 544438424 806528883 926806427 581675330 825922042 462314588 747323448 301522421 220953088 373942351 333125847 279854915 926300049 956444510 210629361 816689632 866170819 100880473 243722903 339673733 824211586 220320360 349828657 978387817 519943023 27171721 707225176 543412098 381997662 15188172 988884687 666576310 671011388 917153543 650767161 623501748 456008777 637715812 755061719 395743707 637396045 511354325 920998388 356595832 498169398 71974134 51390780 486034531 187252107 15590638 69417514 34678660 145799466 997771220 263114905 373349796 536128909 823277764 115522891 975503221 951357239 22824721 387811054 97884428 783116223 554618937 604086526 173804087 915435129 544365827 852388177 184034060 312866586 510456618 721184151 451057568 271413903 224222727 760743460 222435526 936089636 279303790 80574273 208609021 160693145 739322297 940303931 581800169 375392484 963676735 22595426 39817070 614813083 738491229 485297665 917687528 878800759 158798493 559031784 319466346 421136763 706806335 849078969 985591119 45169444 388086528 331210981 919556708 557573423 525838444 324999860 182293319 163249898 942362620 917267253 867041328 563624736 439068420 140447733 894018729 102702275 111714468 208033591 262211674 647604717 37016787 646198583 937980383 618429464 129684038 884003252 462909633 549811643 583917809 257568921 498040991 643165423 99017463 998353420 391420495 364440593 554770102 202002616 93803667 718913940 221914632 119897982 406370147 944691516 136369436 65320079 853942712 842844769 242423481 100189245 347769521 694418775 383053224 676773019 341228132 938257293 299099801 324455543 884004855 739795180 705806963 543109056 431054819 986739919 964649790 414541023 639971223 581369403 97737604 799114709 448647569 273006307 293634970 453311148 886389432 811134432 550487025 803932022 161794677 389609093 890405469 256310897 983073354 947532056 660918218 779380616 38468779 36982303 679429837 791703704 3282946 483794546 876555987 797117178 750818670 714310270 664295821 843637695 536018062 632317848 999303893 617733281 426578017 199159566 792136701 290787151 504888581 880877274 982243587 949064663 308510975 156731157 399896859 943180989 750771591 184069676 492013807 697441218 684080396 928281488 320558196 384711023 900530116 967028977 905388598 242086620 435494869 492914979 603772128 482029496 842855918 605326870 863950840 725300280 191192070 854117235 537738389 842157157 912283456 379820845 989342039 365378735 704308776 11608612 962838650 872683816 334289650 750412421 810837057 609027419 966225707 490887882 308928788 566102802 936601546 781714063 327675923 73936218 587863894 946895816 985192574 141592502 886981786 606504935 501932177 74111389 216315568 538334970 139824804 359133346 823298808 360176146 166210693 361006845 951399224 205876728 942136357 359161109 457432174 192622636 310910955 575958751 571758929 516810039 882072998 230399446 278271620 391051211 841600690 483295515 614181635 554940493 297068824 77042325 587677686 603408222 962980781 687027461 913058365 741656822 93519705 765740515 275956504 539850076 627805818 237066639 171359142 689432665 925508645 418038073 742721563 682536899 80307390 773174486 460337541 388173833 908989171 733519656 106363651 508304229 85289879 137111157 353765516 366013244 2202594 416390165 319315790 377565385 762521172 945153463 965317827 119458134 979088491 610757556 759238934 760264770 816759684 924329330 901949490 692547807 114543355 542582035 20639416 643581107 804539678 304473692 687251470 850062528 347672885 201008922 216837298 670498265 931960892 813882182 786293616 716317990 217878020 862687090 289721062 500379299 924128935 478139685 149019612 887792362 731759416 37969157 899036840 27405738 895161755 617366664 38886039 477395346 642902676 509453604 738457215 615106160 405020853 493560627 185165129 453047996 894795035 635505852 944067624 218791614 619607812 863089618 157698576 985831627 664634144 331604061 870610987 536070492 723234849 189213903 944006020 755904388 560773877 145328278 834828767 730188854 76365413 238922575 333277137 923754238 982829820 562717170 356945977 280683790 815995684 992953147 380529273 170090072 341134738 100001376 257887054 519180157 600231933 116466621 438179245 731076415 834444769 928661810 805818069 213762549 717757539 216329530 940980518 35977361 807264258 227649700 532137149 441994388 72222904 606922935 12589082 815640813 291007485 172776783 10433875 368993602 198796050 647888022 699898911 598798286 656621803 167342073 169442090 732339418 188133082 49084042 62595821 800407274 840887305 254180015 360453937 153047189 99489946 260350380 261962671 216875496 387754314 241152248 781572103 579867657 863483658 598210225 510201673 710477421 885392858 919428523 250609369 798143526 420129689 389328126 679542696 52042051 574393200 422706747 312419680 978954414 720854320 43606996 814167923 856058222 375530025 708541381 626962187 422855792 8412392 423481517 109603187 71391682 943715009 786155139 910907748 919293020 518247775 706493609 743620703 15578146 561503348 853815116 933095584 918477290 851570349 736600683 179056964 787223610 178503475 922291317 2441389 295794752 641701820 147018497 429656557 2327646 881155961 986707072 71854368 875512974 556887259 18438963 391634330 678229873 685951955 840847980 724803208 490726230 496521412 448895253 273288251 313678777 894967242 563680197 6429543 98795719 751308897 410411122 692465534 60669490 739694611 302355445 883635522 84372032 294625747 878135827 361267290 426066970 762562468 551626345 492226171 495182315 623107993 308775980 711896011 713878917 532524558 87679162 252318192 357069687 408942249 883073678 762257524 519939676 270454659 197844167 391554276 256184660 832583269 711691575 915184652 49227635 692393961 548095946 375215551 72547437 390761156 103597681 282884691 216152487 665377145 591852081 943832280 336721861 779474355 624646326 851529113 243806652 834510846 662557218 330082434 243304933 353979916 550022143 522069215 209268625 20476323 8482129 936128347 839045473 791669174 625891299 598052891 869974837 987356905 573283284 497460462 548704594 759265259 412271725 661766218 668034990 343024137 495176866 538138184 374855900 15724673 223214861 285257330 676115576 601324859 581665044 170832797 615665945 113699387 908592601 182531324 512873921 570373823 894914359 932934581 624816559 110657088 628761346 243710967 790864478 735225357 150913116 185316027 124943114 107040641 881760648 19658854 961676690 349912012 211053011 483083096 346021145 375133314 614571474 30349642 296365126 491206092 283704286 917805663 585483656 447917994 955003239 196856227 83785428 424967297 396185706 123107517 403996148 756206941 359345539 293317594 197025768 533394856 189225159 216263308 392259128 145102074 599510262 201921402 538406845 872846782 237437148 301925263 631064278 944902289 933562857 346660167 783558630 69337133 827272541 834732318 715378801 411123764 284876107 80451944 624555556 887399051 973171523 34310190 744805450 419161041 483583554 731987223 245930816 217601776 702952224 908882593 962078665 367290606 334495068 762856340 85175637 843734608 321011688 919227955 90804316 37898959 206525104 644027800 723549498 294256046 294762775 370207559 797833102 61173788 165791061 356422153 749287785 176631217 211409803 587931935 723179667 247026569 110306368 872116843 472420440 843097163 552004745 188837351 114246971 860584513 614689735 75324758 986686061 410007009 954802823 200992034 323803860 402637160 255730967 837196226 189113012 920028821 126916622 899238325 711405031 802004358 781420673 494032048 577788133 79583530 819619801 556565609 251187027 116762175 421772460 856880363 141847927 879792290 926972022 163586670 987831062 501315624 825917570 725433581 320763681 857413626 772173711 839075998 301802960 921720010 935584710 631887932 153925511 564072788 746372129 456073250 337500001 684151308 554536408 2314911 606091673 796480461 788446908 593578626 220110579 54732608 885482450 393628167 147271441 776573029 773611751 966353279 378033289 186954715 889158981 207959397 586982176 53670334 309473322 992099196 397776368 828329302 391392750 792779831 147078013 166276500 690881702 405164142 270650971 540493775 223739389 212771865 157704253 794636339 190339204 803842605 279584180 424744068 96533998 693032007 656016991 134605246 820476099 817326827 637047189 118882667 676357528 416145484 532530772 550308646 396321374 171536194 356910397 821923926 214013053 434370723 534751014 911053796 332792293 105860266 744550604 569785911 650357295 14772981 331820701 40210467 839733035 372333682 721109092 751428871 986557604 137255858 379469772 197290388 405700631 434044028 950332903 15257240 375716769 132470611 121128964 734114180 17920883 805198172 471612626 791594657 405988733 987489033 459394319 798651515 581734374 832373832 805590978 509311471 225398317 57534408 425421098 690551542 291216782 876448030 759989489 469368893 367327699 607714055 262149796 281471576 355105362 963248510 280120043 912290327 514906744 889611560 594909115 8467069 12908051 996138174 916359167 418453766 378215640 291858149 576905650 175358353 674193130 872339629 854703144 596278532 374540794 256061294 188056968 320513386 858845486 305920619 73109588 959617126 455890495 39751439 750312632 374754486 330219780 586967576 441699218 297179224 642122080 52675234 587950528 792109007 933134995 474791541 688067079 389325082 635080670 876735953 383041192 759876824 432469104 400597617 788063692 835545332 581511772 84661294 426331876 129159713 731518639 721250504 236497074 117926108 115306345 379965790 933213239 659820377 838944966 93581067 139845719 274213793 695450675 334288082 87849600 563858404 687678496 829347980 704312086 128277141 679437558 795370721 500638473 952638799 221089436 573413655 547893227 163308135 152627964 575951148 366904305 590213923 554826514 278698819 138424665 302156642 695407744 541897400 40582352 479871929 963593648 579981325 45773164 25092468 179116958 718753430 306325204 110872276 304085421 904221695 440334855 63301114 863317342 215256027 486846647 61925467 909380448 496406361 870984067 769560390 63165023 76929429 416161988 336144765 756665700 769998373 417991419 704290701 773676514 843910771 339287170 646501118 459208829 508969030 317965114 257184746 529219974 361870837 597566320 485985303 232148738 268360662 133098899 881492559 605500059 435110740 184748301 170367980 342679741 97486080 665054696 573003049 366127013 856387970 646235849 495695372 64101040 199524835 626519075 782835821 79132670 993004139 821761252 109527881 372471076 252093882 227356142 894352028 315242754 506232125 410696809 946673350 266504590 950273414 508323632 833879360 340036902 940542415 821517855 144484384 333899065 387316787 694904694 703550805 845467712 600887047 282438571 666506715 495031386 887729690 805576234 211788178 830445076 857058220 111586738 504768379 775481947 603966764 12445760 356690693 637174199 950823425 598064941 949719798 42741767 623144037 993892506 881239937 170907575 29813701 219768248 485718354 459647321 611873432 42002359 808210979 861474875 311582828 180093737 736655946 594251058 310975328 771223838 453251595 401790777 935971824 854159620 351997770 217200084 577389573 912599382 518073555 944334890 828072380 949188622 387194789 516110177 87120584 974632316 832739059 972392645 387580066 171383780 114710097 814336538 471746580 695277581 813445246 679375839 62833039 86418609 353949369 672912272 88807143 987011613 292639692 941029049 321980647 552722801 243175882 597528558 293313537 92206762 807873325 601627627 749643859 614402025 359724574 782549584 78683998 108002010 305715642 657504908 263712347 508889351 853333306 177196413 984739627 912756578 600081227 830471384 778989032 9908994 353949056 548840993 714428167 970519226 602841355 394533685 392758810 68332870 153950165 487647125 479454141 885609105 968737616 500439812 71072909 260433562 337911140 543026273 67022702 517607970 679554947 752818134 369927341 807829633 186330124 530441841 904207784 188606676 836251055 238422464 976732488 511403392 578870082 87245805 38936730 494959753 137577869 316598391 820746401 514462540 161938795 297383845 343408893 411888314 57006692 302527923 991144563 712623911 661813289 309888345 675607668 741170198 195327378 301956862 176238699 549048138 401498762 162083859 567182630 445298169 979277914 210582079 908704716 83457152 380568343 16589675 837072268 910872322 412526319 647167638 938219176 792145370 147358475 259362658 720948470 313248106 376767285 445470064 379367093 697002668 601194777 472541217 753770269 484811772 614489514 154076559 64372286 119818150 984694013 519874688 76248780 445195022 940918024 724805121 323019923 624185725 268944692 708944047 435289058 879010916 488335044 356152076 956026550 178331191 299119454 604639769 765702005 907612185 751005635 173728877 395258371 592159286 799350426 997545303 370369574 424144318 478472882 331970609 989857844 830837969 953745842 370255897 851582241 630158259 188447522 222030467 109018942 42398709 674918602 884305445 682151427 554149754 251976712 211592994 733973909 506853703 910692747 579750451 697618723 541109627 710729560 388860049 702817195 225842682 115443795 34600199 626362489 165265381 344891025 448940771 474835712 458252026 714365293 914350670 374410686 648231676 27603603 748065025 296905428 571712200 633696277 860785038 383420221 504593506 611589875 145529528 471021946 177773389 379132983 188299133 805428100 478891515 800455364 981488647 145914724 10549336 22123748 873507741 902599504 499684394 559407922 699814291 657547176 324989991 747386612 233610858 6112455 505722255 510947699 679051821 269456957 915600857 809400952 232776803 585519205 575141518 227806545 805077094 261339749 958606918 358723059 68730963 302703837 196203306 58371147 780422452 533609405 869459866 318272203 905917176 743643650 192550174 560039030 219088747 38513799 720198513 32189734 494764454 476114279 470029234 104625771 371589977 787616647 211496112 91716494 279833892 482686619 106264022 356613358 593020351 467033005 155092257 156042370 146101457 53341191 748963375 343827514 872291915 170760888 755202531 769195939 114508003 478323917 15017777 661976562 848205491 534783534 263696511 649462293 726172751 460824382 232242310 394016375 940191055 900896415 796414866 841747735 792516366 781466484 452403964 622904022 904435532 791506649 588795333 679535186 776595489 238589340 810038199 792113264 312779793 395197834 441746169 50060672 766267156 782885647 980319567 947102207 849335471 975675007 950599737 934463384 910558634 316206822 599346866 649424872 267800492 102171349 375730444 860311735 617634201 781396576 763074603 98121849 325762184 664636814 932714731 366379840 160916175 279123735 785845881 964046453 286102506 891790141 281861799 710123189 460913999 149474515 974772120 545342000 93748559 27753359 37645910 435795852 732779593 373987633 410549752 464860818 396340059 402947255 626754934 919003846 601262818 690871717 401472278 718596002 750430015 217733529 359253618 172265422 988919309 974472529 34005727 989863857 827843475 89214872 856612745 983968699 801162199 462042226 588980002 700257412 641964254 501555309 662749715 214241143 116696626 252687191 763579393 449384954 995126811 417460020 358457804 761654244 363796645 182560558 621969334 591551200 93499872 145300579 937570194 987451461 102729910 836835799 446976411 873987319 381370547 560555215 594197398 574124826 901062345 215577648 79500979 797533179 409885128 133475006 5781099 231707156 974433676 853930580 827003045 685312325 248797519 311081466 505080338 832195889 351002199 156749650 98396356 291172666 112807033 215470836 624092670 210062791 399616419 951257281 650502486 286721605 101476278 984883074 600914161 460387719 978520982 449770031 35051871 829485955 250587649 113579048 860130710 587002463 291432496 277272623 771642818 516319196 489762479 915241820 614669837 587984599 846301437 307779957 50897291 229709677 186759626 421544743 756958861 770400 755348602 928998666 551473805 527013988 899442699 226673931 736367804 65142482 468780572 419343638 656789584 737307360 897076788 260655602 922374614 995675110 522192417 935807116 853002709 960684979 627343303 735141072 437765454 571900964 483937901 857201964 78898453 294582180 311403929 607930373 345944169 294342501 309257605 900194736 935258795 569655144 818696536 54776320 673394862 294160424 788457955 664095058 532453564 915197738 726270558 418128154 764400217 704601576 633330402 846603558 208081379 737451214 296854531 526769735 42298850 104838104 386886328 366266190 722910275 785923806 464722212 324203992 133405306 727211899 210545488 396908476 928432669 490751881 43378556 609221024 185483922 657378829 935476665 679251817 303873625 141357592 665230561 355458802 600625071 443457104 328974398 124269204 567080664 826432137 978939261 613674443 173502710 417930086 668800853 877962371 368638965 209016643 705187844 306684072 821601517 236686485 15640874 157863446 629097925 440072516 655129121 747159649 579941930 256381273 807435291 105137562 176250223 721066737 630510967 659485387 252041321 190896823 644306987 421877867 546385294 441784591 252321123 857603668 285979852 565002282 554655274 620350623 442619428 528166311 718776999 162343341 273943132 725065725 37014751 195691840 540672347 980852672 237165042 843040601 76416261 347286598 288760761 14729077 109386816 365632233 103335442 965540223 490027636 905095572 372854644 943129469 319047041 116321144 294305432 42053505 302593476 464263985 637058377 120492508 244695016 82082652 338772995 375039986 525893468 789093651 729385402 941960369 3116139 73790976 464239605 377610026 603807539 857862098 35896359 974080271 280344559 463354993 44132072 618385398 76792586 537112534 697560564 817372292 249838305 108666846 282623655 747715560 364839064 328192952 213514187 30974979 962744847 564085604 722253947 18570868 17621439 886650948 599176177 840158661 286406197 744585678 379990125 187408030 995553233 115791610 13411181 918827390 56309750 314085980 619783851 263771533 26839326 441276708 430454147 349061122 756003483 626271730 948204125 763667193 996327039 848127983 351943714 604053767 13680983 619080887 487608809 642347650 369655828 766894408 105282535 28211668 691178733 759225817 947023539 812373189 179776972 120667339 407098781 445155012 583610409 170970859 709648556 84285950 533243144 290571477 82072005 490636057 833019967 32333391 767074769 281580630 975565807 57907409 551922696 587555534 673350860 152148004 669100357 445767629 373103919 830198816 351123589 71363132 817152774 269915455 490022309 957880516 951637844 674897816 15790097 503363728 999667450 909303033 761436033 969752257 401204570 515879125 810577883 834939812 811680026 215315338 351665729 222514087 604476986 849922458 108470702 952183380 788088458 914954904 522437860 247684060 715726795 861652850 443931945 588058115 206246664 776352765 157035896 302818049 510598172 866703385 238848267 739785451 100132226 533485543 48762665 820547316 811128473 886363162 245205291 280793204 333411570 937104555 488270637 975180499 802545596 680407538 126877964 11619513 158030183 438100257 416900156 719627590 715405482 568083632 295620951 714977497 84512245 613498347 986510067 449611262 782171624 758983166 545056804 490692894 797334984 916700846 783993237 808626675 658080709 345631990 839927565 478642537 700367817 370055744 195722974 711711415 812761708 521380423 853979923 351245289 401559353 305870415 368727956 259040926 153544774 555090990 673633417 172352286 213032054 256427151 997567255 944456571 90256394 877018543 928685036 807170169 407143521 991941947 836950113 160174041 391745033 555246262 977030884 197476961 9643974 594880581 354629299 751186636 39764416 59617924 324415327 701283869 651734494 725857021 298237643 675062447 398968669 435891528 545208436 329073671 472187195 436310848 757217170 822670745 827199618 758769272 414295192 50788717 619356754 879918905 808453069 783146898 412972562 987187688 402243780 873750960 207846258 896217063 649983863 475099389 71181487 500405720 402174676 31736504 353047162 136238919 676095168 365959220 487601811 276982490 854355244 846650951 222371493 507093722 66146099 201656734 306539875 131503081 722616024 924118111 151116445 695008180 80634896 98902684 931029503 574398657 649180715 13643377 331774429 421412690 64894100 206768816 887029531 220158295 120668368 350622212 545501922 799150033 255524607 390535329 781225557 670338683 451264422 205389327 34606909 94238922 257224139 835346080 185551133 137458323 513966932 561790121 864606582 284507410 858232242 851784479 192627050 806735793 727245450 203907719 704117739 839197676 883506993 896357252 442794022 774746753 65035552 192551347 724635154 675426026 126134905 617151305 902764748 142099638 212486635 55174258 296612028 194813418 382929678 741765520 311454728 312254479 429425879 837864587 684327892 162181733 395662655 729862208 51443495 599476278 873200044 272504288 276132148 334471875 498003166 400721670 783116483 11090559 25428068 97156109 806419567 908751367 716281303 671444815 920114906 792915218 697015981 572822402 407888660 57530661 958236447 41648408 545204078 984933554 9685365 264455084 851714363 120700789 258376675 743026073 741019660 254670994 142395432 30748584 572231576 59186406 294115330 154913643 198335380 465983375 974673359 980755389 846177361 767915621 768183030 829517669 295621646 386595131 196129292 744489190 467586580 877262567 929579922 681267913 522953340 857812983 393500723 999466405 894971653 618647733 677073619 117431867 368524564 474205013 435485098 531529554 276213784 547053378 656473078 133267354 144157705 184853570 974483726 764158096 15057852 803017251 624830092 630940848 87413262 657630423 703954828 582671620 971468271 21384951 973827952 140946655 594671652 354013745 647175244 602375513 252417683 395173993 495270638 250517130 187398180 912894421 690823167 763535954 333146611 726266106 165233647 661088568 618671477 77181585 36382332 646821730 76656723 449821304 81321841 213022051 198947457 486189126 919548364 638382193 233999822 692035901 435042312 573793213 726416868 314268895 55538267 408409885 866961371 412882821 575740159 994881068 623715233 402013535 525904873 208728731 219026039 623959405 255537488 413438364 526408813 562859474 795372777 672480324 870631242 531414638 99132997 968071512 945916398 182959662 502426213 774110594 948174380 217229355 485689154 269539705 266713459 584716102 568553088 810043074 27002638 594043369 283568565 460829123 358323695 383750444 606132454 133972222 329725955 475200807 177591066 739413193 386754697 517934383 776265217 551005307 663720795 640706267 316263459 522753224 447472681 200965142 808585657 751827195 859867689 603286301 280856235 327914986 78688718 437364948 990140686 962446518 263012437 632034110 243360042 73031162 277749979 79653284 260698194 476205632 790023466 593799680 490312830 617032837 564607268 273579602 109782012 548794106 308644785 668456206 856135944 240385147 688618427 836809216 986836518 337743557 237470512 766056045 526155917 531601582 513099614 918214722 349386811 960386106 998071079 865882070 966382424 686995661 427673915 621291165 179959608 325549574 239425643 759627820 100573380 592546584 845420362 918699809 418933351 129403774 912526609 363051582 485065434 660288231 296413042 419780228 914668406 415577489 61451441 536244409 701197666 651302877 714198992 360617143 773700026 426845928 755853896 749916334 723018430 389862981 711691568 87750950 856701126 634628534 861187514 385926219 690146626 542869248 559066708 963848428 124457456 61127277 76447749 473078027 267239717 234380686 621127389 471740018 184550441 343255094 96198362 500458253 96882274 118343749 777497749 271183761 566969127 621295252 807056377 838039498 890673974 724811598 708248322 366096105 949296571 310781210 928687272 513633861 184079847 620313894 481199309 266906417 161795265 348670744 10195627 68051699 664096665 192609677 97682889 754952852 471526875 152925711 810013197 944151072 341644638 421659969 956716625 234850254 397444987 290285508 958603035 798753438 380761317 943782891 222159863 609774846 695699235 698391960 473000808 117952451 459814861 684339485 610662836 676950579 569163654 808089022 848922707 279244923 801271371 703624079 401604041 425559049 317583852 846716809 299524376 238156781 255707332 873196540 110985494 455016713 558425783 33579899 401072310 859167630 553300803 346772347 66075453 404539701 930680990 268221510 405288641 821847177 130491608 813122376 865297915 776320594 735386030 439786999 570427043 758821368 40740145 799859024 336042112 681306514 846535487 758954453 39403126 27709978 142931376 570079779 454167717 312010381 70056973 162134599 908824276 110636357 635955511 213093371 514533462 591646644 635165145 941787769 407688304 514358469 677039285 905860879 971544710 255608866 116691922 842023324 718004270 227565588 958349903 171009131 714069325 935555376 572566679 700579362 735978248 433511934 340970833 447384093 49028278 184834367 656895861 854282950 269201986 836785700 417586864 718879177 166654860 749257986 459940836 385495760 240799006 428063334 28172077 52765488 984877735 264780724 426089242 680391351 948266537 516734592 623904008 772435085 306294450 491310212 701062902 451256019 107540917 695270146 57192177 498979151 395312267 828555345 199865950 453701470 62434641 902967914 940823373 979997592 262215182 802791035 407358280 855317730 432298484 593540411 805584721 687203669 163126139 811716850 661831727 817220382 964306106 83981420 16355611 388925644 103828317 329157639 612543501 577595078 195974798 992262992 471800167 781467642 356997674 937294502 882079108 904477612 929520829 412005429 9754646 855082155 415233006 183678679 747103552 430277396 862793902 427784449 316532110 823591238 159815469 23607494 407657539 745018448 927582039 672054145 699099067 866502153 296792554 191881512 57842756 358900736 126619983 248985624 267923790 719161048 335221190 217408747 771867166 699209849 448767841 912488278 611429733 984271493 400432036 415363959 411608981 566562751 677737335 215544404 890818292 434847077 152534891 123095760 623084119 279598204 811380396 243595890 319751321 378667745 855975290 354261747 703173866 510240545 742548452 9483114 540459008 629572469 24489391 840614565 868670611 488388528 159231960 778824421 107242810 406289628 63612246 736310496 35711434 29054501 452435864 185182161 524817053 705775744 780091873 561550276 446300819 320106509 955592443 867579118 345604032 171810192 269870604 78417369 941912923 666957702 65397152 253578631 878281028 192724172 217808025 165698640 546968785 10026158 749636287 954997993 299812683 459955486 35528349 384748 921238545 15261623 973773297 333466937 248189578 490646131 825905668 751268202 168999566 506549027 915218658 278323126 436574169 321620219 849909794 700624536 345350150 878051729 804590765 489108771 92132643 520276198 6468062 147700517 520846051 136306597 218086918 873086773 124474875 708162956 123289252 970393864 3816160 14089482 634448581 70807980 63701033 719677118 483368802 793039801 878945328 507688984 692207045 677813851 418776082 843328999 639526456 273377162 161137706 146306393 406096123 950252329 788562220 804560203 806530151 428096327 701508700 823473914 280476904 128139456 51107138 948636934 403520466 484606046 149544791 665601995 235003693 620312961 613133225 897488560 833875372 360924913 875354242 499935631 866624501 828698882 996485996 175554321 727053827 895612499 586194007 960835131 616528697 866573395 860316458 674348797 538907487 380187915 262085301 560635359 900210794 58372209 600949014 237097845 875997127 284613565 12082730 318714943 730481582 484796711 18107712 190257834 495823375 902712820 61517917 497477849 321702284 345482862 635185315 643901575 133926314 54031652 624963661 333460542 229625405 318036417 724921201 930118021 270480087 452931775 147456226 979691014 92942061 186102402 285297980 252568792 287966236 99828774 385324267 873957365 276298965 151167818 11613178 105039883 987541523 173935807 214328302 383676962 278920193 635430775 6234155 308631377 924757827 247413996 29363167 593867296 224474248 926585701 557825450 552470639 884661733 645670009 684544297 666436907 726906426 220023070 461303984 517948072 527895374 263752990 467779056 353007840 311210083 293334567 328678909 951263402 133428961 769168533 797331762 338591218 908332012 853046864 366610731 711843312 857366185 846264003 462287658 594616893 213672275 13389878 474904269 770391929 698927258 5202078 753392976 80798596 81647132 782309391 674572665 522865953 257067170 773206347 882726699 651108582 128832778 431313616 132226350 510722405 357218242 65673359 357777289 483050803 657171951 532393546 766240531 318599746 914581365 280124133 464070785 397278908 446722086 147419214 554587372 944800688 480630672 916989812 205050114 887133772 101269718 879716342 729787413 557963898 581873698 789135292 247195617 547402407 421333764 307371115 842800106 759321409 220715950 197277535 427069969 195512207 287853051 660676505 943217508 906546727 150969514 543780321 9327411 986949950 150157500 418883753 357756973 680780579 581018148 348868671 161220207 769898436 641485985 7235426 752281230 882550715 50347378 781303332 278677475 672601511 41501115 413194551 511766225 878179096 131650624 379426987 220514923 575718170 80679764 388117797 156070791 726571470 449002549 982787627 981961496 294313890 666169744 673531055 68243247 13099359 354161718 152829130 433939727 309364623 248065428 789846473 577927148 475755557 897551789 329518716 88842095 258032807 110744288 678933238 596545191 513519312 165695150 981588027 71262896 173520483 744818319 437002847 690337156 333407756 240782700 513599116 816123203 802134620 666261405 242923253 155916008 149393016 533497800 881389954 384374031 405587253 541626850 991908835 904816661 609378802 674185198 724282919 806533517 765713941 314630950 786407561 811030947 489291859 588240960 700645050 106211955 10014781 268517374 916508600 902029816 954688402 187717471 932516368 707338624 772867373 756682332 776566214 142647030 862262694 548832030 35023646 645087085 111859060 28491571 915303574 782167588 247942206 355360653 813344163 678195103 825564452 618297246 680888414 394767256 408238202 823588192 43317207 303938562 424060165 431575564 437484304 236016869 368790568 92568785 58631118 589609742 152098333 205728614 162118050 940119416 353349037 598754708 925185031 546314114 986339318 381369841 511647097 501310419 342571365 918083035 286463804 36698343 586582167 316964125 17978577 732747167 236011215 130472486 785737701 991424887 787471607 452849974 522593405 817141968 359929633 12493345 806522537 264088439 617823275 627997242 878844544 776273589 180538270 673251799 428473454 353708732 326516320 94641640 865296811 768811369 908690352 557374790 388930170 299573850 150674079 61454269 986983165 394941053 943225331 594615449 805707846 76596969 732955672 364905986 705128207 120401327 687830785 591500883 33622777 833722500 784997225 963594038 308612661 554710184 99457142 320204643 827663384 81393451 86702320 611292458 584968807 361892756 533484745 532343133 314724926 504765334 949097051 123184884 282308184 734709899 160820220 29634853 826736850 380818619 797379692 434441470 59497710 122544054 496162330 576901931 895910027 175324055 131558024 425089667 171587142 803571915 73100019 895349703 509620244 748371198 226607541 171992841 617374935 287169883 584705138 563921158 231987370 564118821 572362622 899198393 484228503 559025174 47825391 947270105 923986509 938615051 161763788 319937393 640792438 931563352 44458568 569765798 467528457 427770329 754202049 315428555 753911923 923065307 138813737 577816926 78690421 245853549 42049662 675205226 487474482 917436626 754517786 404182608 449047190 47073358 939424253 207935630 578346249 744678662 78932223 492561087 709361396 13549605 913478694 239069321 540777219 457299813 520059512 141729128 21679228 38183116 807224780 457180633 426743577 416494545 750053877 696974687 439361667 808098076 191616390 545226401 754324102 894682780 843036993 420515962 143468296 654250799 860252809 539002791 514640159 194921154 221092074 793318419 397910612 883899948 792339610 672600884 663126227 782165898 784846433 805731754 849150551 220732447 230513868 767362960 19160475 790856178 869598333 516867476 800864106 866490945 833991407 602721279 940516541 217542866 327746039 889804850 292399002 916955768 342379308 833924950 68735968 823550003 508823390 494751808 662160791 567358234 639794468 897160082 720931703 263252066 348877102 260524752 198219682 62726783 737441491 979578258 648862265 551014020 457671113 600558110 810724405 859888661 914389243 583823884 678741839 508320317 523792908 405797985 566833701 804918977 371314003 236149604 866305668 10157005 663354544 633626338 800341091 488663287 659930238 97038191 836256533 868118953 465409021 241715496 490317212 533731179 791082058 262464178 365540882 648945573 490176775 635160744 234162544 877505816 187912733 486950025 900852567 824496749 944765673 962236838 901003676 960650734 848700131 287951095 227506237 546874930 657594734 137851694 320285388 864670370 77729872 441157880 304371745 78564586 482162169 710357312 818585640 542299069 631943194 395939109 483296749 643354251 359557740 3399209 273726054 221937089 301602568 661662332 172641426 948515884 705598561 782789194 314108278 474673916 176146248 215159428 947487762 129766578 403872074 773913058 901988178 181159027 203753247 587919740 205554602 886206623 529602105 710872594 884435469 375932012 241812573 872383041 303354571 828154547 87023360 588762998 601229705 579646937 409654734 476674694 86368238 512360608 338600247 685507882 977915526 403701024 706770787 197377607 927022873 411726691 223048823 603419279 685436446 37083233 304851049 270279881 702219211 942649199 132639786 658249060 198642148 839227067 52328566 873315119 973932676 349738106 315636545 535548783 490005329 338306224 293952408 627812974 950947288 844815336 314172477 654596463 657073964 470803612 533008629 648156678 320478613 455834527 557423921 729732514 120982879 628533767 958282640 397209374 332213557 135300941 46507495 604958286 891077015 819498507 885854202 334805901 593232580 49055650 157761579 361162083 749403374 875387259 679467560 533379641 740793895 793435400 860909482 387272608 569718380 268704926 182761008 927176628 323321266 186354223 689124215 384104885 889153378 932071843 207917235 920819698 39575674 278692509 974541109 535992391 362934243 383960324 720955792 181269192 234555249 203068216 95519619 616770107 953470811 854364452 833560765 473419203 94138462 213561903 978887976 282610871 614177476 431104380 108285534 789629978 694848534 546744139 462047434 365643355 410778930 674569492 328140600 471009196 18339539 813074799 404994768 104449026 657801961 125488085 360145917 305981972 415493794 366963652 849912717 25448206 763228910 146726364 736340972 412326865 27713193 912831215 602679816 910259782 399525623 814169355 910020942 426459510 925871575 154376569 167806130 630450556 583814933 793198826 909490444 452644156 170651956 60288337 650980799 132321179 365345869 105787713 312618127 939821800 932152077 483871550 38353125 948721452 993703076 571303764 274474422 388203202 41764820 755247112 467951386 145417580 604186388 365223084 267577731 566985808 552226473 948749815 26546600 484144955 375619339 42826327 228324564 59338785 503309338 653939658 878156590 518709747 203927968 320342582 974818739 500435608 241072572 825812172 594052421 844390157 154446982 463005333 608622833 771810061 94040247 810570778 165576395 924389851 759584546 651853854 365832940 356385484 651903536 160332014 689084272 756894219 301572220 550545076 55785023 851097803 287786002 226675063 150078508 998800769 338907950 135740464 972101549 787375319 416496272 121309728 723647694 352000606 216834220 101170857 768035286 640181843 711537115 786780421 170046242 872849345 623066063 465886678 601818112 383113701 835405906 452679113 462838985 692337714 212607360 146027443 663445789 637006952 857338944 442862890 569493467 512780155 533640284 320832870 870615606 520340713 855825737 493080846 915361471 261556920 500878828 703305588 369167708 431806785 647870666 871539343 63906362 281045494 519850080 843416924 190107041 28014186 384251626 346371053 808015279 111493314 981023509 425721480 801677291 220360304 448026832 809386312 516802503 58887987 58991630 798635113 599043366 254628271 473069754 535531430 440851124 879883730 460339170 187611289 767722262 306117984 129572024 771316884 322357524 14715804 196576836 704401080 689625657 769464895 196885810 112383867 607867422 446932121 999594195 769460615 445472334 988556727 842582114 827248297 903016591 114569162 900130569 528696810 781907196 336907830 771235422 32404550 284399058 642868513 535093049 131375557 630487606 879227088 921941736 192820286 728282584 922728924 463501040 300185274 582005609 398196184 931101409 704711297 401424318 965949209 471803809 962737915 849786457 476830377 197288992 634324050 597164427 164253306 585833090 165056091 603558743 409246136 842720870 231354345 92065226 491811495 841951426 421085541 295103191 315862747 152491032 344067669 750794761 690177198 431569340 214698265 440691430 222097547 15342418 137445360 858240861 276600931 691932444 315108122 130248710 161956956 258396147 791428239 255685774 368686028 160430079 902313754 278529620 883728184 236925248 330496290 244628849 945514914 89030885 794407587 451514187 790848615 543138535 35492145 134760561 801629475 550635190 984102224 20872359 411669923 615262989 647833896 44115412 598582271 524805784 650820827 267090931 261437005 992547551 911095557 765305725 291492067 71762545 71451476 788939821 628302657 743116825 116981988 102265979 331105130 225444596 65110995 388378817 153942342 854638853 271596369 11287412 649513898 798033899 563423073 522269533 824523079 867247911 711088482 739998603 146422978 251816360 359288603 297810005 66277250 30867788 68991867 43837141 554583049 783634403 536096898 27653169 572206295 851735547 501729067 912022890 962570525 755120078 136829573 635902657 526234487 160463539 74962253 485176434 212062036 207782611 474475415 731449030 840945601 477849295 557202465 381370993 919786968 933920621 736059803 45351056 910494017 266657656 353984288 650921721 195820009 522626658 922617429 11387903 350939607 446123392 786866171 422686009 628827345 178220775 694875105 563162327 658140812 958131379 679627363 821818000 432808011 325524581 32599719 897190779 332726735 830049322 694129598 373117317 867462523 796663552 807440134 594791479 261634746 23227320 553027998 857564186 217617109 778375639 141834380 192134161 962865505 173362202 638257280 730198744 638609763 605491529 451549210 585993291 671660134 663894630 886006464 799738879 815620396 251488227 679036222 242475731 742181427 976781608 831466735 834259969 870113898 907607066 201299468 787316858 686325666 195804942 255300841 326165906 477282810 543098770 463331513 821566302 94722363 524852374 152626736 177986829 598291214 474545118 889862102 323040968 906976239 816023179 275093252 503422366 684583693 882408007 81977689 374658838 97747049 59976403 63845976 104598284 847895669 675068464 651523191 604229744 912912963 123978212 276833895 948877347 964233096 369321275 373369582 504522039 156129297 906203851 245901106 537718663 613950730 643679361 778876257 135349987 879114077 752324755 673486982 448373775 25127881 750986029 793187720 985911787 234823961 730831778 298814489 515779398 132429182 684634916 660889544 234371911 701633016 573178242 767367827 940721091 396199032 607175501 1151729 795960705 896454242 721389445 256417433 80099476 865307991 308710544 596090669 688266190 159045226 133417181 646030990 947392149 350379059 755963429 836053535 464691035 686300086 834099271 532250134 410774609 827464568 79710954 229602232 366482889 396433584 413091291 831993258 537903344 97216350 994010432 116165541 837948071 861524924 128798001 486510332 737500810 626385003 324239180 886910404 966418416 378545939 267712743 796246294 338771554 953460249 398415020 884393124 570038348 37384750 142470988 510335886 732398102 158134757 638454182 263239490 7395230 943439668 870534478 158432023 135410747 260488634 345391804 395126239 868534620 943827201 250040509 754849955 76076639 754881703 736353766 591271592 290824735 618729394 162931567 891156540 147513347 586250449 195408664 444536757 786363676 268832623 33209042 465756185 278422162 959354027 972230056 287218263 308633793 563027060 85097441 33026433 696801406 880359664 797748432 28014940 904657012 184783419 257058952 564156099 976644698 420926091 960422128 194579073 164571642 149950099 815619149 851977941 627782152 983505034 218317195 85579638 498885251 64351053 121796500 132584105 791044480 583395165 140784320 775033669 510807891 234915292 502042756 731580287 287440785 218039056 84876800 617669740 473091220 610882089 126064256 611186783 225597774 147167061 622073811 832779006 183574210 467190887 622861598 229514472 384309624 945487294 932616707 767802315 176286824 175593430 950754084 798130436 909525868 380388172 267054800 157457448 958761237 868232245 377216369 294522139 204797010 919029938 792298052 418769159 757328686 593324424 106556544 661363572 587056873 814832152 216697629 923860461 810623589 932989930 358239503 719716370 174587121 735683133 385122074 63227200 632473043 621544823 717981424 84379253 341102016 986554157 2901089 209212197 551465964 440545170 942934353 198185943 961211743 835827061 12633716 703411245 804628548 46494121 199844317 701328446 13524990 109419641 30587984 292434556 486615378 838879113 354538636 752614072 833467856 620880497 410959276 781598111 12612417 744578925 94295054 291322344 413551223 139600067 455325565 303512104 688277482 990903791 931196600 551093062 247904141 232518175 510665557 99778281 486640604 306440935 432051782 968659559 235048652 188776128 416413395 560875810 445978248 749494080 286647586 625816275 362122227 912737164 703675639 319977394 63766539 141073487 485281977 259726444 273586513 594990652 493369902 488127582 628696355 144314253 244395283 127640651 365583233 780887946 640606256 620336087 633847818 373401358 46707877 125947400 839894118 764071170 874480061 695080740 556592973 269701665 10522217 231791327 803363488 375626255 580332172 272255255 431485016 815588475 11680419 649670888 695298128 19695953 769621687 217237193 508933986 980289639 794984744 27996439 164541401 257853327 274253557 91719499 852972635 58948007 508522647 331124109 367037723 77131754 896720352 751539489 281422431 251450772 708964380 793926005 211647414 121372154 255643504 735584956 196987647 283671194 346249810 585213268 167086941 619277594 596243955 72040373 331178345 351818394 297381244 37114243 266812257 438542888 828646213 227083714 823434306 835250648 891914411 766638434 831551517 225545591 742144727 543010814 190680181 202332212 323878240 909944816 595816725 153437192 136911609 897358169 616827629 479975001 29235371 613962639 457614011 52696046 943384421 214264281 25293476 829119787 941185290 244558335 595775471 268358262 371957605 286285452 58507077 920061004 979850680 212546055 864018043 733900697 16681665 668527581 636879066 373050458 675106944 397964093 4429593 815582029 918754237 51401682 496621214 15539347 840838004 90000041 123874392 821706615 180362095 86245532 632085455 668321636 693875527 48028019 354455266 326866349 847973286 785790258 599052497 92728033 648679857 923921916 476738141 515177943 719729421 369440246 880127601 649890174 434172100 264620607 348694834 632366128 345237634 122937854 44179502 332744704 34106834 749497797 669305024 34693864 750936798 545897165 572542696 729462836 243714393 423248128 556803758 932411083 194774518 766472185 464448083 570844711 209908932 614705142 397945644 356540648 133195266 437264242 598538007 118107979 257767314 201438825 608467662 724631838 127113627 574059444 105432647 514672518 24525314 746138427 53299860 152585447 300580216 276246276 540547564 961366302 548247069 441075339 488725817 415484381 746020667 964373651 255882259 944296067 567745748 446246152 45820837 285180212 688687260 401103358 606051046 463743938 561588966 890350270 319095218 500671418 495337251 526215260 539301632 791139610 293691506 67815996 579485996 282150745 268769083 632195886 954020889 600019835 941732116 372730125 674830396 336907095 224096434 276857560 825943659 370240855 276812151 828909235 673527154 756464290 528025587 219418402 888198487 926126261 312072863 217565193 815744865 485797585 83780407 827384229 193317568 532460709 270003742 603079406 593304021 679233879 627665988 933445597 723745283 102837682 696057742 503281011 873143283 259097735 677307044 143775291 441483088 607475079 958428268 573032641 128646509 871529294 463539583 603034128 284340027 789720401 674718095 798348045 566207745 633265332 597993691 912146830 324371281 204261386 334867050 434318018 693175200 4438338 548171262 677754104 470388034 954971815 390418749 145748929 548259015 699940449 315365131 655116491 950256192 332299524 146697906 860911955 538623542 951694188 467757899 769477306 696912626 346759018 692249631 666413520 150816661 509095658 488004120 904319525 568301906 633656668 479745746 999419109 980976457 899659027 470817801 873489193 431579746 409506395 250630235 789574238 350625260 194572321 74357498 813909063 492523975 174064908 50376455 251926826 145247005 429722187 100808419 557797717 314954816 678579682 725979722 204221578 390676326 431559718 946972685 148766715 922016901 595035174 412500838 884645743 325560081 523695768 9963679 636906165 141900267 148590644 686109782 647581411 515509021 146605453 895890584 96265468 711511460 385014057 240772813 903198133 152192572 711918894 887650 788844194 667221737 706068104 235546703 7826250 183606409 117445305 781136432 137251413 269464630 757522815 721173767 456499388 371389324 283882078 848618131 925336126 176215502 705746822 677727071 417453883 358551565 409428831 613647200 399519421 531622622 138427718 807401041 675584201 244334760 755166705 165408284 147733533 424699588 440051829 619009607 963482018 295075578 59496770 524327400 772308194 937391614 37952160 192054266 816418308 206164403 657270827 719736555 864081441 572039595 544110643 271536748 598125465 514089925 750832806 696656290 329010793 393535297 351909786 153567445 660055437 781404298 150305975 852825636 278293558 418852834 335815487 175299380 539243813 392338518 585832352 412546504 504962438 383716351 956616323 635029189 54519676 748105487 318317076 685494694 448371293 226734171 86709222 332082474 882364648 967423505 268080086 847695646 5114866 273632375 60759530 496405270 698761312 575113686 358748189 128576222 905494679 742072137 463232414 811067125 776666960 836572349 133997396 161853610 439137605 849034916 772844103 844060605 406577714 345933739 366040014 153979962 645535134 23401313 594562344 130034737 721733706 815560245 271191136 679823020 218872929 377995508 20399358 720331916 103086215 937224721 675819397 623087157 226568130 279901228 966221795 288279938 140158625 683192162 57861728 746223990 324621769 773769758 928122980 658546353 20749154 345412490 412446818 201077837 464673965 391697808 659766010 923157918 436182592 32946629 14054722 211736126 943636717 705860737 809282457 211931177 4133152 626905034 794992981 674437170 365407586 835035498 563301926 693434061 702068975 978689940 668968502 587398360 555034863 12669488 102733296 133957654 289626752 24524079 759244087 357423483 871996244 478170481 123252889 344180066 79487500 441868401 850042375 874682443 511658138 511252715 556396639 153402585 595824906 866223247 500352773 183130631 820658037 649296682 147848630 651849843 734294664 905436453 516934850 553427006 576421071 874331639 224250892 944045916 60603646 155806185 989449457 753430212 810314920 789676291 295876127 842187512 37191872 770610959 681178392 219180930 142341224 849903102 960699498 94024184 721303048 636671737 859481916 265223633 742129918 388200616 805416847 620382783 230298743 68452252 610169454 990398685 949371571 386343764 267022375 605355778 781947830 509331885 177898326 446260079 811866568 468478962 480647811 841201433 106021327 579566146 283465785 422731254 573080880 102195373 173034337 427518104 856149159 472292095 897765395 907647293 643920473 965835324 815421993 856750897 192662250 551010312 817257006 999018241 546647712 910426286 240575720 726341523 309598008 314443561 406064915 911781817 278985421 411751043 612916921 643637798 616453666 25201611 657311967 848965240 33718018 858049035 908403017 981305302 749558584 301778533 966219669 189924472 146674393 716482584 743054792 64883110 149296781 164210978 990831102 672494746 875471642 481969849 447523613 759480059 762142943 23214397 864428931 751211297 686427029 821004399 234438757 978386111 140364678 641703252 264146479 282176811 332193833 527171532 138212351 904568752 62182810 165630073 915625368 974672749 842971773 613094069 96412350 666344720 684100292 740435404 651881872 950324085 323396564 765928137 578348537 381491823 665527164 902196316 743166422 138784670 929991958 76420988 672375196 349076535 650694478 866164252 189792127 124430665 406033341 14396448 587153119 696479155 618808883 381008578 341860149 891224680 945881926 652819846 732463028 58043299 289296280 329144691 119723326 142359002 397732289 657720159 964861817 738122074 481022298 183480908 835501568 192273523 974017742 720682951 214021025 931387420 188775724 143968364 766900051 980384802 541156165 171288252 238551826 121381310 707092734 780602406 13883290 908564736 221075358 357849480 137245017 190274414 829701768 560593167 741149229 799389766 486648456 535195855 781270086 253002852 117475854 47664505 792952003 979875982 251604557 358176547 887738533 763532174 558953507 943673558 275342236 424786333 864089214 360464346 653643268 636448616 204597485 837150674 994366322 421035505 758157311 37133113 738874386 365160610 39428232 313933774 440311995 15796412 467294018 637087434 433501344 409777052 634807874 94226674 16955429 615091550 942109532 107889287 56670661 308123920 257469777 749148754 245151341 15910100 847627141 666061859 6752373 917575643 64316014 518781152 136360768 436014697 977829978 842794272 182338202 949296144 865022423 597517473 563843917 767761633 767626178 44750362 398659629 189866047 212704128 367387657 279904525 645601643 688595910 99498119 754143659 809876147 615771447 713730512 939940411 325635686 649999641 468388806 200274065 478401485 684362541 977868548 539029567 523985043 80930906 480964724 174312774 102155130 151198284 55822706 643346573 6865193 566777287 584023351 750736324 242845196 798709027 45053746 817770601 921163314 378526621 787704747 279532054 135232637 542049587 623263997 648282277 459522643 916804462 466983173 757711815 235560123 547359584 520243964 122017358 103002707 831191017 579894136 801622339 275615482 262655285 797951436 934160742 73088607 528058730 281666531 576929861 937587545 725410204 180091198 405988798 397515024 672360025 631519053 617459130 598767984 631103884 181870550 475878672 885872926 304756840 755948108 916954580 81472011 325095613 721280317 160795677 773841314 808201206 747571505 744570346 615171235 191110381 759095723 770809501 726661126 75562198 654235413 9613974 639383325 521398799 556367204 550604090 597788510 516034648 442362408 593604329 55018596 124783260 533386659 612209677 749464962 332208189 368694917 797957890 72400498 729146695 648786276 20117842 148366070 705514423 353943516 719051884 481616728 245135135 604731972 380809136 249505825 473327956 876204629 241847080 33015539 408581371 324170128 221222476 597310920 224139533 495162580 424953003 20641111 918661466 608442901 503831863 440073510 657565368 325252045 16581384 74440381 405862700 544818154 196404150 693588742 993877002 709864178 677996735 489746568 249772934 116914996 816652317 142745787 472876451 732512559 347899820 374080124 161168736 885941492 872663211 554089919 581923466 683232729 913248457 709454584 813646441 124541632 356881232 575544887 229479081 898799064 583240329 218233610 519099406 114355595 591436843 679120500 643880789 272420190 197606793 469548769 573056207 24801851 989259687 246162023 925387740 271113889 674862165 205606492 879361930 488663895 538393854 57862942 603950635 570525939 691910535 643853533 785507688 166125179 253387035 299032896 929694802 219204261 128144680 401675106 707579089 243983493 23189386 859818770 376772535 421449409 14710576 18082749 618730369 341991834 449253136 341597545 199144097 266236206 364590647 636952646 975150655 147882803 681566667 65837438 308433627 586413382 156358450 282220871 956848961 44186370 881069689 679282088 574428826 897277701 919248655 944694972 457387542 775654881 53966718 809628345 785951944 321151922 138589629 451048206 32303577 111941229 794697619 174433471 917128129 354411029 756836168 667820561 813198272 856591283 905140735 298985944 433701095 399949492 874267758 1441238 788194310 29013839 22220354 519815131 640293983 953889892 181043636 272082526 173425038 96214668 154411966 734314936 508794505 89176164 63716626 518534079 631679382 443569892 677793542 470545785 969023815 827013271 840573323 574949335 401724805 706701632 271292270 487200475 631932546 892371696 367811193 140796520 88013046 985216135 640020675 602250298 364281065 889716326 692079199 35625902 420603463 259561298 253468422 225113728 973325985 766605599 606794593 153513251 428747231 656638550 265578268 431612150 674375114 648639396 278963889 797520328 914248320 1293937 715450391 734235653 316534273 761408958 656187384 23623316 263604442 796109414 432553361 122802931 79478630 321545240 739290704 734125258 133923327 259293802 177425827 649145397 438010989 526244524 710903131 601473512 84217365 137461709 484773279 705376677 889811975 861832575 117677054 920555366 609386806 488561114 240188184 820993823 810920670 522817324 691247909 367748907 111300491 615540019 800589335 766993860 670919389 962658777 618408455 117902621 228334235 446050116 143418036 610469105 354917886 890069069 821338675 43859249 880157388 56486568 521075635 247447328 99719012 587643081 950851671 813341382 848283178 547419424 225884080 195417849 393478598 965148015 555798315 32672475 386988156 340403248 997551518 749117204 844926652 157578635 482345554 542531618 164530165 988176888 296926315 212894323 896594402 85589824 959783232 423626023 204853078 212302680 339760953 120920037 656535485 266795277 365000219 543918999 135513423 598606177 292839389 823742862 446776368 149468819 326897303 62944861 830496568 432322993 530788893 303209450 4214702 657423991 856286665 409214178 566140064 417279013 597455579 999851877 38259092 420900155 581063253 522457117 741305155 165599806 847518990 927592268 218816955 215424057 35949465 60026958 70372889 635781301 651048356 134894819 674316842 372005439 910866382 270600754 295714863 448627532 531344979 720250824 723195621 489495929 870685032 273220774 861542252 816015751 126258860 136722567 73845302 257283716 557319075 953133161 442576550 756873044 216284013 869264574 122501169 392000466 316133037 489572819 815054660 264029086 736911633 684436289 220387296 99659687 301579793 558315596 407044223 63800724 312886226 670514667 983370382 947117364 998264527 297070301 913055946 996948551 243282289 716700406 679704638 821974753 26373901 265325545 824651025 72645025 614182178 15555415 908353030 636180678 623631671 150610873 405574426 745310339 611042645 521043625 365095470 113797851 758980067 895500484 650845505 736433157 630555421 746198105 727708126 850961829 224749946 781843030 785106674 702172483 186036112 256920969 873516522 980523480 242863190 771528881 98517302 855984302 553736128 851870442 130745854 396511830 4521288 620894514 429194768 884906764 777666798 153970146 553514231 615575969 843778594 638215307 672042257 163942622 860153054 576934562 15525391 17175200 903152906 954455932 812085994 148303218 333391621 380417349 520739606 855551088 215414701 622527073 191147557 633363469 969516777 707890856 847957744 640537840 318076519 887655674 209971639 950212677 586334543 471197514 505395421 936309090 313922007 271117464 475626559 533496791 905343990 937773722 344170377 843110923 411337572 398928399 916331724 575044152 81458990 112703528 712947720 444164586 34006122 121104359 3210773 964579049 664369065 640402740 233015765 544935157 431124769 685917032 576406424 982003913 130071722 610779500 654833173 960300640 117907161 81782533 767972397 931697732 212428923 692453525 171031758 99356124 952889102 325374902 237174308 136045919 430300290 361734309 451143332 478981461 790271979 727549527 833906277 145210015 278156772 892470441 486319824 320388051 768881668 819342084 570252166 246846554 115199091 222397060 784168944 91861579 710817612 272654737 215395561 693362795 813126872 482552385 819119971 46198919 165346182 266771904 963446468 644154304 156454900 163254320 892532363 503056644 265822352 688126229 54615439 938916599 542660876 971483288 255374391 86713897 840281023 828527041 295839446 441253146 733389277 194069151 772508653 987437891 501622157 669278910 842982007 284775178 431354317 756178675 966630039 497708379 823061845 841081772 443464560 488151501 697279911 13188704 941696957 776734997 571039790 425966135 136001325 318760034 176185482 14226702 387189193 131244726 906320548 375344365 27427696 989000686 501623557 105710538 630175744 186752326 859180326 880075540 415726200 631628178 987361111 599559693 537047756 796411239 639151715 464201836 192122866 143418411 735153792 669183161 807106339 551377184 760420944 102709691 726239502 635485269 366327565 809556064 548005638 335603208 559476747 461819238 729285392 966933338 457724797 849077639 29136333 816255360 376017376 446427866 831695846 940366622 419907887 876347881 891122763 467161273 874890320 316399929 915617476 66486689 79343742 139211897 58175752 752521724 936424444 777983258 338752129 182924870 386411235 26567386 955365118 632998887 204606274 641439896 939294965 100126216 777259846 751039416 646637538 378031220 261157370 446541605 4308515 993110454 13478235 880930721 105418687 14370936 150885631 172702481 299621031 704312221 253290227 926363585 238136944 822255420 354852676 317806943 623006695 157346070 714979890 639990661 802653828 880921006 853847293 784477358 605045276 290682914 26299019 195334150 321351486 322763026 375724993 346770173 384600260 73113820 8806533 837194288 197450282 907762 11795523 276014850 500334676 730036290 82279430 961085350 397860295 346764814 347795748 107513608 325147022 762586111 776012862 203777686 513876810 694132181 160999916 631373567 494244386 59288923 429452219 597295923 871520921 504304562 824594205 762878617 752556192 234346979 339748595 919197249 400158718 394187161 955502389 93106528 325475709 874127033 155556117 874061743 823080888 77082804 917870637 442440054 111902200 461042502 980276213 885316782 27602588 774754240 55834989 261596698 894589389 451745331 82837961 171126247 377900027 816222139 352408331 273220385 762242264 982463926 324742275 349599431 478436446 962821463 859816507 300903296 196697042 373983207 414422612 278557078 175554595 760563267 66554752 759017519 737138818 119249649 908004855 620654112 162776006 974580325 482406007 798692691 641150211 708187539 211281970 275009197 117029425 430511970 683999268 293567510 778555723 7477502 686945630 797823041 864418181 895313176 898290927 32333425 939038159 826326943 362524691 368610503 586608619 236296803 884959007 62649576 213427142 737368920 29784649 596446801 583257800 279481092 729097689 629702909 145781133 341733322 703570807 995186941 9602482 415841393 59531985 308507116 801979129 817452076 219948139 71499483 311976559 883927120 900832690 507718846 368320534 771926898 232573296 534174100 574878654 553177853 881933652 629584675 485734584 867197507 666841864 515247646 772436473 505657699 192637730 105984854 223983464 448701066 334558861 471673538 398181021 932536379 770960208 141536814 889611676 318546793 463372196 325035795 373970868 465913448 715683247 85566238 605131944 292755451 517287924 912785046 259966650 881948972 314933652 871117167 453420826 936871408 152252670 730714794 77351828 422397273 792441368 342579453 242668232 836299783 424008563 617607416 100642551 967221829 859501331 82001612 52174770 284098492 896887596 95381937 544512842 689080350 108922993 436728628 429798279 708144739 297281624 373155560 626920436 31509556 661214689 685325425 132921041 296797340 490209766 647819989 582213358 320525735 15707581 662392971 953303227 882440427 642185596 404896063 324109970 874518972 474935394 954580884 849043399 765723487 129724536 954137733 834398357 957415894 555610506 288236465 761781013 957716770 859286097 340219703 317577537 772521643 745768367 590190987 471641524 158694016 60671791 973365136 382462608 751832487 933352164 924853877 115566914 372513891 76285655 678468757 507675593 430781747 285816885 435976008 669927410 969327966 52971758 422486472 508056866 394323250 577821747 118256839 148592724 234022489 368985524 300271229 939207090 91466247 631963935 821195457 73661427 828391178 51120381 760930050 392893460 598340794 140677055 377263039 658821237 334252136 956100220 436531301 857535219 375126667 571238298 194566070 128631570 4066847 631202934 621980279 577519987 838799894 267991835 888396791 715254220 129507885 479613839 612690109 900283593 286115116 883773982 643646032 752707790 566602215 832197181 444655983 147050093 678152297 298552816 80687284 748492209 992790966 705704772 451037142 860812067 145538377 980031001 94200703 311581992 205138215 968038722 896840851 408206360 62691245 379370850 654278704 251198388 428128124 299009878 335113542 910058283 865569610 355804575 211230950 686845862 424522844 332043312 949059137 558190254 514412535 118689086 234886892 730998701 533409153 994259649 850267606 578065603 523084004 479861863 541457482 258367784 559744491 125117451 867114525 225142368 899840374 323255995 404232580 152666571 605519089 783870270 10906622 100270614 221479295 245616175 274407169 415140484 450522402 92033231 78877176 800708310 346850717 690137368 725000566 661334888 714941859 266784607 18302720 44823251 837520363 574180770 37001937 33447452 472074891 265857213 468822524 877699470 244706358 39097301 397595297 823634363 477588647 189789045 497740229 206273610 473394722 843614714 391923470 422249753 2482446 93143238 860335177 195798351 105047151 242316761 23823589 573744730 469047984 115878274 535665112 439647515 911613384 782368509 670653785 88134538 953359154 277528387 188028083 521191249 990026049 741043871 681773449 587360221 396939473 911149762 446040561 963078927 127334054 395546088 102089138 356571036 74108909 173214200 238937218 345285514 680967615 120609185 772282761 200459867 680323741 581632244 367015520 678537533 173391001 455739203 977937721 422846769 564773357 377347502 710125583 974160121 982982153 145224995 202922116 588685000 406006906 165750800 679191972 899158393 733851345 367901562 93264664 461692373 76119447 452399163 14240129 976944866 828054124 43102255 717412799 543013667 644020381 606842540 162383535 974940943 954747077 895828486 312809418 131549331 500384275 382753984 249293150 687186985 135837349 645332609 606403428 599751613 924460350 592522366 197836959 233589428 471493914 597584098 454925331 677296333 747891756 463669985 917245473 937665252 917367369 814335957 291793599 597291711 693584705 38224311 223448345 639895995 566854252 533993375 138371485 207231950 642276046 576887043 388775931 564533696 396757969 452607195 815060601 775290637 547366248 268812105 10074106 403998901 750019824 881252085 654306701 30950981 71243684 147024324 974935889 750304527 639923531 538019558 136954525 791060404 197744851 578227972 327480566 357439174 937790503 376583810 549861250 533311008 164549953 167740037 31560820 633124510 621597803 521162999 753279033 577637849 640887714 810938350 737334743 341456291 765148291 326187684 849728093 103400822 15873908 456292172 647563368 47667981 446103730 986449895 325100241 203800697 218271521 561041792 853974402 29396802 308501593 974243021 573883408 629688553 504509918 949438831 616052492 803964584 516196358 818929361 223014534 521643130 353589385 446775878 986293937 799555201 641889554 55197970 630247608 474136290 111541617 572725977 794631468 221440029 566140203 826891591 992224913 239568634 871159284 56961105 223375798 994361600 538326050 628151319 144345642 871223933 32582188 869133190 279296209 732821017 835338142 729031591 955197607 945714338 420181495 899955668 4296936 463466582 259253331 366099120 21320546 368986442 233479228 832118308 32976152 313717381 737074652 467360320 682898425 837918200 404824417 976411876 283932000 132036846 86026195 872190151 227316120 313055194 136121457 899338193 116055283 616183129 204313529 852698026 260651489 65125754 91410916 719457724 701231070 113716862 635990751 243837990 99608054 666723752 266434959 952889945 133799120 998068201 481874440 17617804 354973824 140348939 725766874 194725625 589033581 288094157 597910068 138763040 359944582 840226921 228194369 882485285 195010937 877166996 930677828 101140391 881592796 847435726 285974879 440321886 87271309 284873892 254199749 48005206 540048034 647715237 912885713 511652409 758891172 763346032 982352368 633741909 749522394 422001169 881981834 243100673 319136070 676951067 765304630 486828702 79571874 991797420 908261707 883733826 29060744 542454411 898035223 110937725 237122104 178813454 453421602 19421076 945257871 728935309 336798052 929584163 138862517 697400526 577027077 987016856 511281329 505069707 733221468 858320867 951520521 749162587 580266587 726701378 646205207 176352120 570039963 364545282 646042213 906510636 792555436 884986160 789250794 4202040 310576768 141553916 944382817 334498675 582263604 748365747 66113244 984538988 925936239 903652519 719265684 672431097 739623395 314680091 527550514 275803347 205733483 464873527 253129934 267916401 35119363 580021527 388140392 146738932 18555463 929144977 938237821 327573473 671000266 23737289 387286070 177239924 989319163 876201281 833690047 976205275 868206091 327714755 381894535 677586929 740394154 3054301 188867800 233258986 645212523 263830171 700041101 862286191 189933559 877213429 72329939 893752884 991280770 374496701 640478419 420356241 989596443 19678423 117011226 247641182 408114692 723683783 375561690 573425824 277714140 332116008 840908675 692071666 682840174 848890709 499760003 442463827 975311493 555493202 305941523 751548685 854894897 722112175 377187998 231796143 654054278 307677574 353775235 250712996 598504361 590841361 651520644 336991114 196633228 827868538 466283164 944333726 822661909 523940712 109697234 131016889 8728069 401096469 385328733 182728543 298115039 7679877 217986700 780618631 549486104 562505453 114267688 221494291 748962165 768905857 844830064 408479915 495365722 325347607 472117940 391306602 839995722 656468236 859563672 585700518 195594020 769159614 239534658 57523421 490003702 335363095 317198943 477275603 874750494 714317442 755598081 544393628 660716517 639866456 288566725 656460176 812629388 288936399 663368193 449364991 905189969 748853087 748182166 515675923 28758709 693230215 280172122 509543052 393638066 906923261 723791221 374458425 958562669 442343937 239937364 654205864 284200806 646787357 135419383 523748037 457120083 1773489 913063809 290233315 573660156 337468186 806039111 278496502 592037148 436900217 729906821 596861250 854961761 997955404 807894875 923514607 129165442 182834468 452452332 651969091 902140836 416957231 454252750 195258633 752858330 366702021 947788161 523454474 381446537 7426087 486966538 675619471 441707920 471594069 448087510 245461412 989864646 514938003 494169556 648166485 123317810 810271449 59890653 961898197 353523912 813539656 50912660 250554858 261573303 855839993 323372039 65966904 417226415 322157040 724196826 480925352 557157511 590215467 419338003 177762879 611896292 638776695 691090617 227683629 882235564 110333532 568541800 31461580 742862532 342767667 341719500 605275343 285080318 563881251 858998648 697593264 414729533 166927725 19941172 415265712 232532782 173852695 430126346 95816339 502663705 185484816 345477443 256641997 952000617 88083964 49388988 765738919 911211399 726779390 927317346 724342483 166517894 560624592 630880109 500199021 958808230 788195496 626612558 696645131 585073143 598188280 911176177 223296941 365731657 588522394 122728930 151961957 715848327 225168540 45553044 625020805 502554990 873370787 972757138 632043497 861243545 946930506 614628903 595218690 320250878 949486689 44445987 235553330 830101636 78668267 600028102 748138816 93444838 144581417 69915585 763242160 572033150 381036874 342666482 137207467 231419934 315088082 521261416 453989310 966640995 88859923 839379899 15976072 210482274 216714254 532615635 622536244 392840932 987320272 954955901 436576286 636705362 438451210 653777531 969632637 620741795 303418 167869972 666791234 926664131 167056492 757243511 90485777 804137482 353843273 779415914 581726839 386286252 252347164 424651120 996620549 128256062 166870421 247676 908535183 179998790 919296771 819750352 513662223 50770033 815058564 652800761 503149623 30372208 483499273 767349141 565691392 126302136 835638421 891443932 303295546 842434844 516609131 374785814 490959995 249948311 527369494 864160688 823219819 728964450 815878602 323511799 711499957 807853096 507881858 473032792 435419617 66408115 98835105 226757389 940165264 299174800 168782199 963496319 964639067 528591282 986033831 586176077 332786741 471907782 67352737 730608921 893419695 235374898 630019287 435863854 326210709 940592161 97077213 337489129 687500274 101135189 893733772 866959568 159802383 132406533 103208386 797354964 375548782 400005843 618993540 393292051 368088549 570219637 854727699 213913984 4926245 306292432 380599981 151010783 739030816 284816034 495847598 845667519 383671897 948922261 218566285 365828931 64663323 936340115 339395629 785395490 957962116 874512798 102937349 780553827 942511448 141184860 92100210 753073292 314983977 907131941 68001400 605047067 197449084 405084575 466365667 531687718 888623476 32467010 436718799 301622503 541524144 741392250 512973679 177746590 722070983 239460559 444780620 84430239 825950523 362336480 852544571 777249889 875975930 211601679 391877500 236409904 638951244 743613080 192714702 809466750 576672919 772881372 710274393 466364472 3177081 320318867 997007192 546524081 422011178 59670574 463373002 100235886 40307522 192941708 519308759 556810753 913233107 354378736 979344918 738734462 429150931 150457402 693077833 872367942 763389357 368275135 916492015 715387850 633190459 415089017 584111576 131952235 767695868 531918506 299019282 373529504 243266883 399602366 968064199 246635273 990530292 533385578 6141407 808611270 858464877 140964949 504361135 933201677 212794605 273431437 684579640 487309966 703509422 969364989 457781912 619454220 346334243 404380288 622016965 337784043 844660388 471796997 415008610 939926946 432530313 991792823 40717417 661288183 153687239 268378951 165926503 794191316 137626105 255577707 450399676 644875814 232909682 610234178 94585769 997369108 234013951 794094066 793652770 119592728 797047726 18531613 365678717 808166469 46359148 492764212 776167605 744663013 546611085 942076102 354934609 31022283 152720063 6064255 688186556 710017786 315304867 194154380 304029036 709865507 420712943 419082418 207444215 443665238 150238412 199741140 200410004 371352004 554547542 632293230 753161521 237126581 598865709 192199291 662615135 423341209 966666161 309537599 734567518 552202316 6330110 545584865 535036224 244696843 774919140 596486315 92959427 676154146 402698714 55049532 29457173 95805276 516999669 789941871 489800022 307072412 678405829 232337375 389144284 611994640 906348893 415769851 51500365 268794100 517789870 121875850 163505400 291900157 656294603 883213370 713244887 96832878 154070556 623274434 56139058 302891931 571175843 815605563 953821779 256305510 883613147 112484655 196946558 892045517 668998688 238412124 578226596 902178221 36376274 597191761 440188751 642064337 752924827 597578660 33558224 606498740 949450489 69682842 673603644 494573499 610814814 333071264 91653199 736431456 213968864 571988716 611646719 750268374 951176664 899781617 687813257 461237722 194526945 761422051 513740065 603674793 340725572 205836857 821380704 433970949 825735379 877914114 686060092 260778157 10030284 334092679 138916920 214410507 726434381 306021704 144155950 235925399 213742813 783479988 522569712 329707307 54733045 276251536 198489305 868228922 708524936 927475149 96043120 141277787 380117657 587369145 317079018 451837904 222087691 95907052 553570791 81424954 787042459 183961838 216926733 968326241 867157627 542718677 779687943 843727489 852952092 629790873 507894684 167359550 520394564 199014837 337803044 833148006 937770340 651092601 363672836 960077776 37986859 128645937 422332958 427766780 169951446 972625310 714458666 30209312 788703192 268398112 683213147 574416810 578798317 480149222 818508978 477788463 939354555 364047643 896421241 913354331 756870209 872972159 834843195 897525637 995606039 574914172 726818110 241566974 815740950 933259475 201884568 177287778 24072059 104189441 827827998 159323629 617087683 127391261 375533495 869959162 815570339 137174529 124312230 716421421 188193204 82198486 792937911 669553657 866117633 206167358 240483776 682814734 225876052 750727945 799317360 437074950 937244954 334234288 935544577 944139936 814766702 410203634 319466185 643284298 180262925 8267866 658238527 501702056 736634632 25792350 741043798 537761214 352092350 274865837 728922255 874418266 959186517 265852574 24031092 8908241 158126122 832954325 536098702 582017764 714041289 855584136 695612001 659966327 364135980 126659897 103938740 153870841 92434924 678965609 287519805 119968731 319236319 788550799 219087150 746582875 40257298 517845940 288484768 712753685 966548961 219660832 913192871 851211600 686039220 39981207 168603789 482355197 681351579 48319757 92223742 183651450 663350127 265087634 248230082 604185083 893492085 304924055 471949489 877685236 243527713 945090493 224047737 483498474 153782133 350913394 454072412 728927099 881971974 981371006 595684419 794636074 182457790 280058769 795299846 166780211 191339747 246075113 888115277 294973706 576911401 872552186 588338148 520661810 75012158 954495642 57228554 452813406 83976192 497282214 753749122 60382922 845937296 47269945 648509147 395562110 102260658 985745057 972091023 284329218 659406122 884779058 960779472 989167096 64445271 956508062 616178674 639828605 562169273 930624403 758626587 359612819 379763812 477298760 457724816 654424123 899086937 509371939 851163116 343110595 31848545 214515204 226017821 303196761 847990372 90767304 366273333 227252035 488260001 776000300 569504690 142355181 422972157 58959623 532383441 501978541 608096185 509652989 336189084 920058365 232221905 40710330 441663081 155770210 620812305 974494762 536599322 98158506 77980376 534233633 164846104 907861848 552404771 711620698 757997724 337131209 793417061 74154238 717941853 195336497 212883117 147945630 593810294 69312146 487847298 45333397 864538158 446898829 5162068 516253660 172257992 392953558 712476741 251984881 406286572 98256362 342660465 870129592 952724383 163398759 894772333 435983904 704242599 67056052 374842064 549841338 496337078 633886559 648276796 350237859 892426950 713436050 84745902 888796691 180686065 354376909 913269749 68372591 305884528 285788911 674699989 243103160 658759328 564420650 503476231 350134976 69045975 384099705 152555227 563404089 522608224 280389803 20636536 73516206 619734243 250591107 38007343 708001809 839760617 254385691 638430402 355191232 564360182 333843616 537648315 387849113 304579362 795680858 872525315 814399637 992590275 182364435 937400165 473558649 605883082 982271467 910339728 42560396 71039989 870473568 211633172 875750311 669780265 965838714 238501765 266337205 331029925 67264081 658783328 870835109 692283984 98650940 374228525 595898178 999852271 470569475 907172585 123383529 56712727 739879436 424987358 616090074 166579473 92720478 36079207 352363358 294562623 361364432 774338974 237167936 911793043 919693072 174702544 54577919 103493335 183439486 590057587 160224780 318439015 1810651 21755443 679556557 984059420 926320852 692300801 661280126 298525867 678843171 597593260 602460634 99747437 722694354 35563317 945643873 528144847 446909848 858840130 40694689 911039 698715251 580044705 183495921 467689012 770993142 516299259 615259322 685977565 990809891 339155511 734747097 625618259 988555383 837625790 754789321 734970878 162272766 170863562 457513479 660896656 709817130 980807014 219554232 860124083 193610683 109427679 842932154 252657301 769742840 833034290 801017636 837900062 579633135 647485316 358967275 998540678 420042787 811683084 185425956 546644108 497548795 547614285 605263121 353611925 353066378 60292361 548607207 78491735 920362956 794413738 433575793 886485050 406360378 362878617 227249117 451063762 238118858 895539088 88335721 960434853 629102286 413972178 852895376 737477523 980147615 863576282 749894239 403915966 860927743 167877248 108578060 520426466 872719460 399942320 345269036 24018964 684465419 556362913 841199276 667305241 428273372 219512670 756442313 174804316 181421702 37646040 643078587 181413198 11581421 26156868 125183442 634059590 392858034 368288644 704639544 17910235 637601758 843678498 371216389 791239817 381121613 688355351 239951503 930314230 573226368 625417328 423549297 12107072 620995757 409534730 870809322 632537460 942711330 935690301 666481066 708075329 629545077 194749275 60150420 287740615 246375091 933018256 803472394 388110928 903672127 745169577 184562469 535078912 687905697 657396078 609700261 535345761 349233568 198964365 297018572 433430547 103266352 825868860 6224838 699879395 27045220 887829194 116165203 965094012 169580142 648832777 314372430 439095331 492136809 813043439 72681202 435548594 692999360 757519089 709432581 504527746 901185409 831556573 574772992 909656244 674140791 959031128 881258389 699053499 978337348 476077119 830753093 443530446 249405471 334333237 527773098 808428339 843541569 351491723 587427051 708555393 225473232 550332697 54457090 911768432 715478559 365906174 565788405 317584340 168724334 595195535 12966805 2251218 287562514 831173871 372899522 971667528 188938412 691250533 766560993 717824811 492410751 206969378 803729554 885071174 902993630 609677738 264426747 97673753 802131374 480894284 541228440 66632083 569006016 464367427 232594470 665845851 762416491 290652894 390715437 336729772 534021805 38266063 798931621 767992637 111678442 337834557 841706600 892631521 395549206 548547874 981809965 304139372 436436443 724417147 617353363 369989430 943566019 444345914 63201053 299553831 489258396 590867634 986098009 419186121 39366013 849487813 78834951 78617649 984731076 320392390 508422615 485987287 281356782 432943758 466982074 774096686 492864415 563462036 592210548 238866065 642768839 353920846 846904898 932085375 836679221 402688949 22324624 15334092 883740848 31161894 859849987 745485980 474301860 631004819 730506495 375423985 334564225 250163820 157703617 392679024 825174760 203562875 902187566 157383715 350434991 236033538 943491589 780141808 406302965 72162294 414041581 391317466 870988930 651942837 963621338 478540201 327962101 496298834 320861010 452341126 318566247 511864360 604775900 571386899 840982951 949535893 399725794 617002494 188086585 248029232 494653792 365571 992742215 580194718 245303506 465673443 595382311 84193745 140846325 542097144 755393197 15432674 457758200 73892115 638977828 924095929 949215830 86650691 265403337 854096000 606788632 723347672 61072142 121304488 357267845 605530343 954392514 986177838 379379641 232279843 51031549 772783978 222942150 589720011 888962747 485730161 237057975 698321561 416947109 735312531 53086928 877547779 583752926 449820412 844887741 268209366 984730440 419759570 599946051 349672977 199491079 593744509 684607465 361887114 859943802 786212280 836216675 663861356 710690540 694393696 896903920 741141481 706797544 741933221 911026946 431481725 451102564 521146974 706787376 719167341 47640512 69070970 84053739 575807953 742874573 36819059 130052960 803821233 874609310 633846468 614347662 741303245 323770255 110630868 304658282 982619747 145412766 56677422 566072811 374953939 194907715 808836409 85180005 223050666 630637280 887802111 570190526 768993853 454095328 256767171 76334207 329409247 20835122 923140313 311612979 428489565 806927685 591914204 401101278 760243827 39643371 855071909 685285541 483928289 860415623 193384257 772165799 922005592 433097908 1190266 567325912 854866980 740560141 439018176 937303301 895684744 192314175 610237296 49309349 495585326 748051511 953147115 113277004 333977239 872383319 671032772 779909289 102830184 846293684 232683928 875164112 871171784 943018251 328977894 751679832 959293312 837898600 844422916 421083764 317899154 171765003 877616097 407696244 525630964 429296033 51549828 99306570 364238215 517413298 544705499 545238409 401248212 128249498 709415045 678114381 725379547 163866287 843726041 219363937 246562491 346404575 760020141 791525629 852923784 860090820 827650433 568672240 968394971 947784822 197571008 407776754 233445686 56096803 513531185 476141086 820052199 800627362 651169495 863486637 290375043 605680108 873245494 321177935 39372745 622959281 184985217 243031108 188864678 452873659 831303824 965132960 360245159 229672255 419753572 402587245 23310275 217560037 7608931 263919306 478798729 121105842 538825333 318989235 724482831 275130536 275627318 307523643 667732967 894019202 975520400 837169059 979338993 361497852 21367306 495746761 459541799 2067947 445523650 580870233 706730366 457434857 965918927 910385422 890862968 360241092 961641673 323376240 41987197 113189806 702769286 398961099 645609895 190543287 643726253 767877857 117228827 932201198 237328076 21760339 872530125 172491507 647509390 176232521 748928567 394083117 979135097 789440734 299897851 911207085 89834011 488730836 59572066 456800978 875042410 203556442 568367109 93588780 862123888 82103371 601755657 351146073 70399694 102619796 239755172 130951055 424952201 720997035 141630455 149565405 21130699 356376181 551243630 407511659 956389641 116852183 13570306 841452750 624317665 520377560 424473043 487937153 702849120 524730015 200995570 55456356 626799402 31779162 523440970 663558385 291344549 312409443 542903499 45896453 745232086 289473129 535054466 343450614 419236578 898314950 480797197 806240155 417958236 9192508 51066339 583605390 485732011 641291487 966359625 686505279 235548334 901891625 56610821 301943216 788748982 324645874 284938083 218841551 487793131 700786428 335018912 389654933 151015038 368749228 353102812 269876651 246250681 530822431 588593234 12644142 387338217 941265 526530974 995505441 836780347 813582579 889709182 891129545 283097062 342824608 735480610 358940555 744912722 800642929 476829085 909274015 374583395 22084746 529997397 839081372 289459772 447196255 820511237 726690628 199080331 269393811 745235401 806132196 517925318 272381966 945797981 845362490 365486406 551035772 428237427 3836452 378182005 168833231 997350860 932229193 671959535 613766234 442935694 721098608 107206134 301273814 286942396 445724634 554590339 544823843 164436739 605160115 34752725 614656561 787093772 115404030 674657546 115451339 941366318 992148170 985366305 654310918 801125939 774519385 434701981 344946388 58052460 992528510 628806666 690834063 669973946 129414702 70160629 987177529 651815963 310138381 531004645 835211536 910459122 152963026 622925308 16884658 99608700 157302825 728875613 344552668 776143374 135460249 293032080 654431090 338835392 768083508 309580240 832356537 80007356 583880563 328317213 340445886 899152723 167857179 527459102 688515297 421820749 148488907 869459505 756702135 948571470 648469571 185342889 216574487 566924139 303305978 950816560 750003528 611570437 968061922 402720334 513497248 272934670 651254441 282659867 115411000 29535160 234901745 157641972 376040041 572032897 157635981 337225341 449697921 265358461 835358346 202874319 99529992 663871638 11069437 56372704 38478133 331346516 850107933 691978226 669167754 643040468 977503121 519779265 778191080 571078955 335436005 431457586 309302400 453523238 262188284 18131366 678545752 433314077 537892658 106728267 906526594 87796809 203216208 436310557 244432381 518819654 678089770 496187247 235559635 568486272 624194237 55584545 391262699 842351703 993747881 888017614 559092637 476404617 540635425 409819252 599836679 905294798 200213606 238399260 970403589 277573774 856719405 646774361 365413523 885418183 215359029 885548384 560999768 559414271 416344478 605482019 406559548 892299239 164207832 349780257 983627071 870008491 33300928 317895466 376288101 907612940 181450145 873391309 869348216 683433058 605971158 129877937 951306917 416589077 972118757 196053291 305486926 214138268 930276378 609323581 296421137 4974196 754945082 602181776 683769432 442082926 751619255 787727841 640767426 115270833 146895785 417211479 321066668 969809907 700668041 592676037 161968340 545115625 926442595 893546685 267637667 122816408 206708830 475087484 982114668 25233323 662304672 412073187 384557815 637673412 204656564 79441616 180072739 399237237 68531496 854854388 337340944 782845566 117129593 137954759 172190037 341164134 441768849 371001403 468161353 677674540 234218470 836642669 771402646 207225468 127020071 25013761 976519547 449788753 628600672 774284386 548769059 566856439 917641901 182465948 10517965 314636746 918954285 488151931 331005963 658353725 88653904 232944899 209647307 864751926 486209534 982662204 428845339 30211046 592888246 822718466 386723007 207240962 668409470 992932023 315453031 819732324 586266919 584720394 429481561 383742202 169560768 848442551 147437421 678739947 522348468 470847299 201258930 921672144 348362034 983928379 322782177 202534278 397038609 492032478 956509112 265801364 476734384 616012407 908071194 339260190 877428719 273096249 947075423 17402590 333710737 263104921 91978096 328082955 338923360 560037712 245205452 878603544 366233615 285078903 969587267 250455810 880491407 365174628 573164615 551451050 623708739 741723569 215837958 440316248 924029075 171327890 161155213 150503260 662049180 360389457 778910367 351672932 109990267 63725550 958903116 774433087 645592856 585246029 471920411 333111700 861535424 450784199 534565013 650047778 652567843 174749827 774392284 848245235 592700750 263616980 47443906 829093304 837709946 718329333 882435276 782410853 578098445 205870640 898087764 718590681 51736926 768855927 400918138 949785271 5705234 424286184 677975081 369098472 212024294 340882844 829427919 53931072 957640474 644819550 265292612 312943806 308841501 306379934 332232642 908026473 815222461 561559615 860263207 305426448 11236418 916438637 358025685 54376860 189595864 341988334 590218489 469811754 126075956 111732813 2941098 90785929 394781562 924639074 168001003 440712563 514082160 623419469 160575170 214799435 826049249 360147172 290798877 592185135 636333313 476490990 609617661 436994723 998571239 160468323 771875796 511845185 904069223 86147674 792063013 118115907 315862508 928466811 226159798 75509491 557215458 466710135 186458287 305853947 362323154 240573631 3714127 455068064 958949968 497765621 330863599 761615045 327941865 116654227 818732921 595113802 266651979 993564708 872206309 963177079 744937990 564656210 467152716 135380159 129577917 154787441 242101263 116516296 666081773 670173972 139762676 293233865 700579834 598078404 710005271 871211890 888721959 796156627 941513792 379760521 958066941 842216565 151189533 138926554 129454081 663011026 77606417 551910159 961534200 899832036 805071782 66603706 571899440 447287653 345832833 706550399 24929287 565094506 346281848 399511946 200002529 74657624 116624811 26237177 520688413 854194366 563371479 177110439 300543269 669410221 27435292 351670038 910866408 63738284 892199319 295639380 582897680 196503548 510877593 717766376 750899953 795622234 449959389 683593080 422656939 391799074 793400398 882949330 93911743 141083471 648988972 716289455 836341135 738045475 328430666 116760334 632341005 731094970 592551563 421866377 350918266 84977270 300493294 665254435 780436599 217198954 905853534 129998308 920526655 454206733 246673879 608008441 19778010 542325724 944168923 944413280 127510051 73884499 54065647 216909918 790532361 26640857 639556419 864877948 375938377 473906207 745033706 652461444 291498637 448780185 776122809 514661578 954605417 57520171 965162491 669450564 423561436 24183298 884872813 14145401 225575403 802726910 930379155 525361148 426269427 317089271 760077952 589708399 303895220 266351409 589290445 280468969 116746865 172465617 951325138 216867618 180384998 644588217 228200162 619430420 622926062 9773223 48914541 814339494 701133005 486695832 957985417 875296541 752324566 467142360 356970524 232566258 166949807 231550481 119562468 141190398 261684809 264224110 603970537 550808589 878321922 679417680 828545768 250530457 421335947 508861336 949090960 206589627 8616628 452556298 123015631 220664572 858215856 595304350 277938983 450401154 665982439 935043043 906940808 340721431 564429323 845252708 958168120 683067170 828477286 629856067 354802416 382249727 140685393 914651264 177344071 860748663 759917058 537290078 382863533 702800643 958121189 252009654 713022715 398142638 984798636 190810037 636773696 657600216 759848542 91088956 320669298 95226164 795222691 528680121 203908300 455573567 97151644 860984699 477634317 445317031 46594074 516728506 515981288 194420754 52081122 45074533 988321753 222101064 29464558 566586706 92026176 97885554 888647414 70048443 874426669 658324621 374058339 274180401 34432220 33965535 422669095 154863910 409905726 887542996 115721656 903510745 158025393 925684769 852333978 208824577 655538245 918197776 93874872 95598900 52223770 329326910 69175621 848827661 195309293 713010421 985861844 155338578 509831169 642767824 848329839 853140562 799030367 661423861 142038375 816699364 461768516 62545459 67330080 400640304 449977550 651996894 195810410 123864479 653546458 406492442 364190523 403619013 358272794 175330152 787079097 251998126 405410198 496396971 194385536 967097370 95551173 721561420 581865296 853982016 990932863 252511854 504218704 374348399 736755204 433236889 959390989 365451330 54104280 667190929 39485693 154639298 562701058 231679344 103085640 154277060 869908680 107042309 428930102 743231614 181700028 451232353 668873710 417908658 576209749 959121407 691271329 726284723 501443970 476891399 788607755 977834178 16048235 584588879 879160313 852428341 944908248 197676685 327674617 505135604 960531545 266126608 255613343 956341970 7686276 678483908 66052108 28024655 652543647 946165914 934004812 754222335 500584786 691272785 677102522 2712332 924187644 814771301 890941102 957955555 838337959 403984509 152704170 976261339 626794823 851374453 115616959 431699468 403746671 900446186 951514495 928982248 277273867 129124288 203530982 199901092 721280599 623092797 695222960 577486405 158665719 105815854 287018951 333281020 875694675 14221265 775094886 723712755 847824583 222312947 76842398 564164692 383236720 1892695 966977091 9958786 789376057 885467815 28060742 665384626 659771746 918310788 909119792 79795556 504967498 20229444 610195793 308926206 150156056 185173704 225909514 713833991 533632738 525020685 541352808 831510475 717401545 486739592 448819318 3200366 783034039 221745962 469088583 239663865 284584416 537368699 815077649 152418787 796251416 936031168 599671704 807067069 494893266 846553319 193675482 360048449 874158748 107506437 812389111 473217541 979837672 327741050 282614847 410566777 937035184 566218078 598925810 576162107 60950801 626657552 29195772 684351546 567408436 573351841 565140543 996035261 110300951 905538524 513427455 547332933 456107158 350540489 334016051 906386384 411313696 83905535 199758043 108237664 978618604 183128224 446540065 431498845 908591287 32406549 438891692 466011785 377313255 249596874 619068693 711102860 769025813 751520404 529345184 110316089 99437180 751469818 389169739 515335043 157569415 499606503 540185435 306719723 418978451 359504898 512442376 913836452 98693395 983032626 234856671 257156299 894808941 730436754 750138025 171854705 852419518 238547158 832146584 986710490 476586542 401921545 311637687 807076001 193250513 757271616 780843368 2069154 370907280 941114256 703147266 605729679 396110030 368067394 928122488 979319858 509263988 904013333 578320146 687744870 919315552 307044991 284749577 96694328 65461400 226554281 671235984 602812778 643176961 304419079 884986129 648839650 784305992 281332135 298426527 873450346 550145350 771767950 919769384 222478296 708356741 257755882 629806064 151822403 171113243 319764278 532696274 202834105 348463121 504839991 286289141 923503302 836327788 77547604 662115450 696221342 124977665 341264258 631970465 189227149 822724260 772824958 771738351 846644965 661823048 913636946 139839857 679009587 942722221 32530951 945186911 836665844 255664503 709616180 931797252 956626393 135922784 113248582 512710237 656029270 815633340 748759021 495741809 662519101 400306159 118529977 528641048 578876230 827073024 1577481 31235769 83333908 36480129 824795011 460424365 577031189 143121540 865365037 534080106 716136354 458667687 766413768 295550714 955221218 919845638 41327743 349300775 989269994 427508676 998598297 646706754 110968509 233515741 324949244 494389408 17383492 790943954 307297793 667645855 703713712 90711942 121987809 96999517 348065156 28245130 604029339 142346229 37744608 177618529 170149832 715591288 290865394 79777474 256415370 339708234 414957615 607266275 529841537 614970087 204469561 824100552 920409881 707331628 927333536 430883868 618926418 422054388 963605943 257465523 838310074 805570877 671131804 123378131 639493075 702650898 441172505 14247716 147585585 965793980 502116046 502913902 642127506 882306114 381359220 416390916 977250433 564166360 164877472 504560519 128216177 64001094 936912783 879157319 250434998 802449804 867106467 899973436 616980818 540372701 969916646 526811694 729986507 804161448 575606226 33898537 448117639 360253 722322831 427527604 577200532 751904262 888949795 326110302 386883058 188864980 198803378 786348750 932352366 634677412 688614729 679890836 250745175 687027255 755179112 122551491 151467654 853581772 293780130 683861306 897178351 970723197 258992015 449351855 675060850 518256279 951499757 822917128 423972700 911411501 290586232 657510819 371435288 551968231 199369631 768142829 990638432 377052513 844326145 609736095 122159710 345568970 335416471 517562674 340904843 467257087 957291754 606240888 400528476 286589079 68839002 902857582 649703502 233337454 561855059 369568167 107572281 640705294 549895248 332350014 948319633 697285703 736252111 947219167 458147212 815789123 725437065 977225087 610649664 384359679 889694370 714013858 126569988 744889051 662366352 938001801 392786053 459218079 654909841 54560279 356036565 104786270 29020401 506371049 788653088 173555284 991821549 924417132 671403158 684979434 420107706 141498622 813433423 99412888 236670037 446394932 869775050 406270450 91437828 420298520 131799984 991862692 7704137 98970015 948610697 137251880 589167952 400017134 973400965 419929407 348559250 823318854 169075340 302144695 920690394 180462003 239669980 416179404 730683595 571578784 846836055 905018931 58878755 894739241 991695593 452177609 524555397 380839215 128937652 776079022 45191269 164161001 20481305 505964628 176293267 41068952 752057950 684916923 407550231 616295518 86447253 105436800 996848846 559341500 130766204 354396876 139079320 67610904 28748966 665380659 391930808 304731400 221694310 801888016 11560015 221832775 996064834 906807516 938156942 206701478 217606457 927314783 617306383 335801088 140753116 903872332 349341982 247861682 787967296 954382535 309157910 797716857 594987366 787847102 305994766 484330573 671378148 307946089 374789678 528252440 52751768 175507732 219364331 211451516 490211610 358122754 414297856 270387621 498066626 728970831 40863952 378313172 641058970 6651655 15324850 643374223 795375263 133040600 616174326 879032021 797827834 496419893 631286436 829935752 372377098 648605691 853869458 101496607 158044536 285905497 392998779 341672407 401007393 213677841 236716892 718942047 189013780 499277972 861971864 31647102 14375095 168065944 133969655 233345065 1628609 2970846 59808929 229037414 880178416 674691768 782101061 48441836 591282900 225178520 619955850 270374113 584327253 954462572 484931423 93510426 320738496 913231989 583615325 377178905 383617799 638015193 576925823 496074979 999256 558473112 369782258 478247208 167951352 823228173 740582913 124972095 843324493 749712922 621017480 806801274 20091692 791364993 982044663 877008070 772009803 720857097 722688356 103524857 270496899 37654463 544738561 664258977 645132836 396944108 547241428 51265106 61261897 585425833 798182897 432266771 567001312 770989413 631091065 254252634 215841687 521788480 291981480 821214899 909695738 787321703 618899511 731467761 931241523 200687552 22025090 123858151 709586449 860103219 179690796 964754588 205053651 745679093 697598781 443545406 251632294 583894461 411191702 819764503 120980748 940391613 601725887 853591431 133700903 525069620 883425951 121323149 442163915 233827874 481181750 909980736 573313168 331393308 520256891 577767625 384551085 952562595 865642406 640633890 268498818 493876318 629547973 409103950 26863078 710299131 990442922 538304402 349823429 812485652 456335156 328863252 43920010 277935053 219308028 777395752 647200325 824051181 297569658 803295825 542900816 285546577 177875915 642632804 927288473 668660539 128553224 305075018 206960529 966310354 405886548 403104673 801631910 632330717 710407889 741499543 489625060 210597077 99668856 687423548 228287745 893909217 386281027 542970855 466880125 376049469 462689854 826942778 343357520 75305449 364315747 601116717 90100175 87526707 924358380 646117732 787731787 907670168 281785887 606527058 59143806 391638359 975836806 155045522 510928739 424226925 609064239 59417737 425059269 387014163 222953397 178611904 46879621 279387385 268857911 728124539 172977716 678159870 331331274 719386711 143679192 892141248 329630599 757909215 814729062 598189564 66401308 162021791 186786908 142794151 143834974 589296810 556233680 652419057 494759225 44077340 39350765 731070443 184460599 549971213 209717524 110886359 438308634 875947953 520258462 583048108 438662168 480924873 346839614 728196735 494227404 635904760 494018050 836339033 162748148 56136986 428321716 366752930 251912613 947606527 464208778 20113593 948210006 259044526 726979912 976784054 958117429 354410067 287285065 259393939 132003048 751591629 395286844 370090175 401694770 948652366 411663278 604329279 759267079 34862729 716199436 211625483 128902966 172032801 354947093 425937548 712181436 92685768 910840670 323702732 629684918 193204110 256256485 945624377 620083442 795019884 617999783 724271661 811744844 322548683 323179902 895004087 186115404 19547697 892756685 514085543 587034481 113023960 809081006 288078196 738065444 35522660 626812459 991753509 366315274 82019384 555637815 454940583 666005476 332601394 936288446 574273151 871638816 598300883 951122395 759981547 341392279 695673555 917487620 996224049 383789294 118867948 441744005 585113308 453391273 461738772 678364957 933537476 57531120 31870539 396547937 876490720 998230056 148001036 368662736 747424233 122808581 584390432 653480525 502822982 483959348 187956569 825287002 503782694 928985080 247288003 344377005 766309309 430347730 866330948 853599708 955399861 888217066 131135787 494481607 730126054 111155702 719808257 642222926 121763358 543126707 360387417 523890981 635594377 898273246 253022421 602587895 25489133 276303780 903896311 141272163 36296088 994563602 322517526 979903183 379958500 211945225 370390671 171561985 981116853 174609612 864363312 418371307 663888292 403181487 44889767 94583413 670339679 516461137 652499637 469077500 539439239 93554431 650605553 471970100 355782389 179282915 975986629 335591623 53039934 784089439 134483052 370936026 767411514 456286984 664536903 299173967 87421055 514236061 635551777 499230266 440312827 403261709 619034671 587570833 810961519 160223591 865514679 803857849 214483867 846173181 252808127 876049763 904419234 267465077 537948265 642741038 333906414 27274581 139722020 474876534 452510618 17475242 746200771 46343843 583406254 758462562 535395634 64281440 448778218 943922963 549619512 902957019 603096401 987879358 944990202 325407216 850351378 448260265 656891949 359323622 387319464 389662490 214911819 888295141 687206759 430280992 718779838 641102130 103721938 882112480 62998605 814510796 531062698 453944274 49376781 508650360 68346731 659754154 169897798 512330337 298776191 81638541 389194447 852029472 921798661 450178372 249389886 880041124 838650560 315415071 60873698 639058969 377886317 165433457 813845908 278143550 165796065 697055665 726516616 461435516 754930414 98639107 205444862 109416353 997766435 310573150 605022970 54448631 410161290 108530452 509190305 339130865 690232920 244275576 988407206 997022407 652608831 807320420 305313624 97966791 849556634 609098179 140508660 75416982 862960918 927066536 425966354 137163835 425751368 189577547 850067250 726105625 320255251 95265797 556118691 342651108 589111542 149703798 197055807 500542436 886680738 459890291 445146460 778913593 970679435 34621968 478280212 294956367 880973265 437793073 914015826 658404151 81990047 976408738 511697072 705766518 172339608 626592020 218001709 24320979 48117721 829708083 214956315 183076378 672172869 928228747 52417254 420149706 668317389 807655972 124179863 372764150 469065530 197490980 427720361 455892225 981269943 675624431 778666267 197808566 415039936 656410961 33933936 938094518 304504049 45856561 894206914 580426811 511495215 12107012 345979855 981441380 741352343 19164610 964790794 907002734 488201160 910335196 408051754 927680977 221672428 76096038 248751109 553657400 436469627 188026597 627093760 550459118 921064267 52408076 191576901 437319161 110915439 940509379 342577964 374404759 752320940 247582523 24630837 482997547 323560283 968113497 734077416 942366123 602885986 700918803 148793869 592346388 671518533 189853572 263931567 690143993 691819247 164148050 880468257 740696541 914335047 783848692 654234679 597801937 330598242 310823991 259742838 826412359 256546220 335210513 854988802 153899061 940217018 224344902 346308525 868152816 589583506 871038851 498965003 520639277 225072167 392355107 79403453 98130162 950702219 28074883 947071192 380207359 339333581 829442122 563520490 160685156 859028876 47860518 42655580 470164598 172883870 122880279 226907729 635372316 848271692 122464273 888505940 206014007 738109741 885281450 340116419 444537196 772577165 60131886 509337995 955239299 776661803 739228541 37528756 666102703 465868761 721125431 672822514 908498549 516339119 629643998 720723583 681523038 228418608 420968272 345555159 64312198 54731794 400772490 778142714 414867735 293164441 616177181 349586324 240524720 206392293 66458470 239593008 207675943 193373287 338725259 538427277 603656057 820087069 314173529 575115579 803142838 333356893 115779316 292048765 649023876 574845652 22722986 448373029 198238689 849676502 838599764 162490912 992084771 196456519 853491008 821246610 197928104 986359207 845673600 238731945 451928427 871728402 616223760 642745353 87441521 698183777 399604355 999280677 303943564 376793820 18106432 597214030 590432103 922343645 969786650 519437873 809288786 757551338 501781295 267620857 390975798 243246949 562788225 111735571 76900457 189270771 807728537 989414549 696224780 327526776 590517534 334406136 352850478 690475099 995238340 697748737 462735459 577260987 559722754 511746011 226167396 760449529 147661025 899183539 192882728 720791469 598981418 332066717 462616774 818011997 953349362 543682768 979462759 997224738 734825325 308805257 137030498 845456590 532117394 946808236 984519870 104578370 303457391 784478314 374992593 527813175 367693231 889011632 32936096 910486687 770639183 117790404 311895059 21082356 398477832 493818567 62605135 924387491 765574798 34700815 667488825 666375943 726530588 531425014 623072989 343627923 721006362 867258422 116566344 185040162 172337854 974373384 340949183 256777829 961305055 165230722 814836013 792300694 284446930 697424449 435903420 661541757 992259819 300014846 415340008 166997060 259224649 143028850 119967853 540032992 440180587 523733749 831726015 141698924 992805668 577026334 48458924 892388035 252435281 945263412 488333506 9443292 943084213 292644777 754138995 975298973 82916570 575110924 560435442 596314094 13521804 228956151 564399657 308127242 884163806 378322672 586487564 145354691 571373649 811065642 976949212 811266025 748153640 622662963 356276089 806604818 61092570 467814930 703416468 890598728 403361112 991048527 251763231 227759588 216895186 217403136 865290630 64134435 582880744 272061552 942392449 665062846 142830306 347298797 589298779 198525542 657537711 688765070 375823032 16405619 346255535 230274032 505419954 241955469 896488223 892968426 778181459 831835958 873961409 451358618 848463863 29896596 482955883 21453031 725599921 990996988 654853135 308697979 870973982 362538399 672614895 854394929 707665467 60400290 250084560 664930370 510656754 952696746 284112243 315334074 585702493 208091079 258086171 280388073 726504295 13808691 300101486 202122267 302110244 15944321 279885908 682958819 869263284 732740518 232933143 726812736 598245081 859031166 263006706 724713972 697410605 406079899 613904462 246626243 914047220 18679284 550180847 262332708 369244217 465873306 377370944 965725796 597869055 347721488 433081765 791454760 715442361 799679853 257211192 975448201 503091708 876891464 594419275 53265882 146119908 189583537 782474717 107931499 992984446 510394437 763599310 304421210 676777747 409757231 865820732 254402597 918599925 876850974 413235718 479332899 514725676 787307970 923672665 44136660 396309107 937147309 901136086 538489470 5259020 743340077 37281532 905542876 312554777 686682374 275119458 264347511 283699364 552898826 730752894 484577759 428329928 466454646 577272521 305668834 739986621 76466077 757830248 536498061 909492785 756777515 310534754 586015367 315160654 641301681 253719623 550658260 863923985 73783585 573443210 367494427 406588627 197612275 107767984 820772536 787419344 899129523 34377198 953696053 192623998 791732473 805637074 704199967 547858616 638290666 415946217 984431397 424913909 865412653 423506366 450517172 528782729 946028012 655921826 168169503 143854190 388216105 953420426 769645895 197348227 905934041 325887068 225711501 166251368 413869707 667091433 296589882 371637739 255634790 51306990 90127724 155043453 445894067 641011379 705123666 451070900 722585593 805240332 847050008 262149242 469847969 882249488 716652482 228532811 290780338 60134150 800773813 523417649 887919879 503130556 615210800 699181435 928893403 322147037 345103765 606386970 544759753 229701020 192919175 491626891 495770760 87206136 391137706 101884633 731063232 374829935 259230508 369246306 29117862 299156368 658641932 702121327 189688038 710845058 31018786 589698475 69823001 139155914 270145320 974975868 363108034 657241970 918135 498875966 434961712 428655275 347513113 630644845 744123484 659946159 292689331 508231724 192915705 318398181 764009160 855588164 657623130 847572058 841890482 194256576 278255260 564728942 916849944 671544144 787845741 636707381 520127118 492350428 479831326 403868592 49923804 175984165 595331953 597334708 910187276 737818902 971536699 782822785 76172094 885578979 690505263 959013902 359989817 398616286 888945509 601426976 984455021 962820405 742046739 836162989 514911791 417290751 198431194 803751632 393949023 75249991 144355919 69240774 694702363 13945475 203647382 212743569 136363298 769743840 703935438 752014186 261213940 24714258 283157169 865104920 689723357 467897190 316869737 902062639 450692984 611787202 677259010 482016954 504863086 830957406 820499638 667991423 322022335 595078159 589851287 296734370 384279555 952936519 608478584 576740896 583041462 959960660 936125019 691359014 249448412 840228470 436527191 429759003 607318258 892732321 888339159 469339769 543048889 460319587 994644253 795183782 741726239 89581472 804832547 155537323 903259354 430873958 604284894 960981776 327966403 693323708 5891868 945954429 644932620 719902683 787029586 365814298 225343840 824272298 904288179 14302331 233712412 584400214 558931058 962399390 953072456 292979015 136138906 301872276 314581258 759654850 517771401 13302562 644799209 70789567 937951098 843601281 56090150 370601881 969810245 861493962 692753490 342960758 229185676 810092292 80316499 743998350 158826466 775645203 473985282 773245035 346333618 308002389 545298713 776218082 786428514 197143693 135511569 175275895 779451246 118299876 284141887 222231976 239587757 975944800 351075531 125463780 465813443 477349868 500066205 168357009 826496071 544804199 810503533 793542835 580430440 333661052 436334336 232360107 410459724 898691921 543376237 953829810 854151614 802913848 305307642 627075492 486409587 338556418 324400406 348634658 80177276 895585810 876593404 824584151 389442328 656981233 825556805 259189699 77647804 909720283 516211891 429911544 355463278 556207306 208191991 722907931 274320422 708903222 888363565 127398288 120034431 571615783 91704810 797868095 229624507 138864420 859953644 857825129 464865314 95758596 266609988 389854083 934936043 270125174 456583794 456013148 136351786 51212641 468982917 594131424 835961803 943512182 469264996 997438406 524317774 179909167 355066012 143649261 861022279 934026641 723724188 550281855 68138098 667890878 644962926 982735557 34494465 621119721 441294138 115701198 508095732 391957092 164730202 74867842 310189356 430141406 34456351 858111457 730051889 124222943 754153847 331626208 611378821 526660772 277950376 944582501 693506548 975437362 72940699 389457847 667497609 684874050 671615682 687221006 3605167 134979909 928797590 420405840 367647770 577973704 266279141 901349493 62493816 85810263 121601092 831767804 374507638 626937653 446772564 364380368 847350083 198360566 238435450 675320412 509618374 352278516 925475082 220888203 159640302 942517311 667812020 225988695 782608019 169910954 747332854 989449184 508893230 315633356 481552301 194572417 9468018 527820560 177233419 123968928 135187564 471557515 98270579 142472098 637475146 646726943 106520732 275507076 573356181 439265166 927405310 110526783 205130073 277706763 873357254 720504133 749723265 250694860 431010979 80242724 27406107 941502341 835701078 821246976 798845573 21424928 266984268 31309601 921652086 389038567 337097372 868862028 754971700 531210964 306403410 669977933 20694497 807148258 666275961 698332659 484702744 50176830 572661776 776768243 831720765 304044881 289241543 735155652 191518407 152174765 148250679 410226743 778469233 2661762 682586436 748766994 544807156 748381756 961641252 678473934 498361986 245018211 589539920 12273617 821078653 50273439 390650817 725630128 894191174 248923327 593396533 313121555 436618634 126565670 988888703 529454677 141276948 352700921 811034049 867362020 511900439 597769405 738717551 916040936 915501333 365657338 339695046 618233147 457604783 442105582 292277096 467303667 438623611 607577505 66079907 8846453 368397915 855685346 898076691 768218020 88239785 136637767 987545467 712465511 135994971 974816051 866718356 541330262 785475010 597577093 264021605 69550432 680973299 211709142 534686894 802150075 911449734 580993125 296803291 157251355 658235250 998185458 754979088 649179369 498370926 44591478 937001616 755419712 154500599 973763287 579106706 295253730 687543128 709218896 286785396 130762549 10442798 779143020 837197959 474829047 455642474 455596389 427271614 753262447 493595121 959902984 439008008 24901706 103765646 626396034 735033077 161901931 215663293 48084127 601085793 634695765 168935918 375969501 500189138 306959161 363439094 480337882 209792346 618937611 710647076 577892308 784156942 697579994 977466657 637647662 970259262 544099922 428902717 405501643 178575801 366873823 447349805 797142477 49066174 461490389 678826001 528147727 152478055 394740310 714314737 645936082 160709210 884281896 276455133 118687370 425506705 132546301 210743961 677788142 59275477 253107764 871768335 115288216 570829872 747791484 949769642 795190113 17631167 528699895 27024633 671810048 937996897 539224407 483782568 712115991 892539962 168496977 758813220 389806509 56768953 153560899 432820794 745377048 934603354 119985647 660903785 693317625 145614550 47310351 144205810 881091618 427891320 833835246 579320776 936104720 822464864 661239679 720448406 213563359 244400083 16265016 178267350 381686963 891161193 778488457 268861709 282842458 846694286 464803489 173129678 865660745 208945892 425268357 962500224 510332424 478534077 19221417 467654168 950759674 988767224 826612606 575186669 703953146 111701101 732393010 16083911 448593779 592262076 463250024 860324028 45259239 119588841 370452822 419915382 825576956 786415445 328139253 31131367 398137605 304567142 721715817 615253366 50852397 891388432 564094893 332749836 342421313 510556939 499496902 98990383 369993874 209325445 41939249 300794265 96232255 999292621 669299560 192839550 610490866 459752226 646916173 454934093 373762059 809203886 414897296 409606921 921420491 207521490 239973209 835804833 441702646 113596121 912662739 956734115 473952828 939939864 617157001 70255237 959521559 288014073 508911738 975259446 145973406 18421699 971101292 249767793 610736845 272644622 868049486 181950113 840648237 933929951 437710542 445011487 293128421 574196940 155254712 623384224 209591288 846328623 592203047 690501316 58304390 159807790 986076597 951594683 666239522 319569144 732039904 27351987 77800563 52283837 522915689 390899116 584627327 88446773 112624870 161769038 473160968 199522548 19726485 67549994 647472956 528937672 15424183 422573067 619120546 8098968 620876081 629617495 162282034 664080817 951717484 312146805 579246642 253245437 823645841 356217873 584714447 662456304 108366191 344305267 331577645 20893043 900539342 344318358 499060 931920241 494665593 910739302 645947906 343896980 674207460 517240209 12048778 943447884 124759352 762373060 242242344 34253462 912849925 61890324 145526841 213593531 423561301 258348226 611881674 572746098 540196439 21841141 732735934 167366741 941564249 930005692 306901733 114370371 264047822 471921518 40555577 131738777 287791706 432298864 518344516 50199728 41914921 801289889 331143902 762577334 810182387 121797837 64487753 477929075 309516464 263056094 24959060 232334492 424679364 723683945 358074859 962459838 564645132 493224612 575798898 252989626 526219608 574513126 519997462 572834080 241572419 63845349 879116803 592700616 164741362 54591001 785966945 908171590 68484156 237177231 567116227 203231140 988347501 731189161 14616350 434195302 111986966 921652736 464596526 730357858 61392486 259778774 97971822 321772146 809052562 415407185 345248880 447009792 939519372 61731545 745565413 388849302 630485103 804057803 339071261 853435337 155809356 150361674 49286619 543538549 399437271 795462292 314255215 202628956 673363159 745070043 204913768 584116817 643778263 543856251 932998981 826588374 61978131 725540339 543388575 347818315 278435856 431738540 49644744 900729278 504062433 566175410 666047675 53515904 288567959 795615021 490773284 167587362 572031589 708247080 298755134 725170470 977081841 456063648 375456972 256608017 625362297 766400278 760367737 764149961 36500550 19613712 539336820 151910527 796811249 654194687 906888604 964231211 643686804 381806680 890398305 293081989 634381152 391641113 940163638 124827800 48079913 640398664 398280207 980785122 767603170 903414128 892552827 282706048 522838996 80619030 72394926 979174774 500434321 839155533 676796972 833686797 830437689 953218429 302005785 75437965 135211066 983075521 342945924 667519378 59969575 707606108 350961870 380607062 663055618 826565300 766504653 429756291 881929352 121529845 261296726 619622209 976294725 800493320 324590277 379797532 366000786 366858903 751143235 397380350 641007083 405044913 50524989 129505271 389532520 126628820 111641724 243820435 410388350 492882215 832777706 64350938 330138920 704724258 825526568 246879348 162372945 482822524 929500668 813689079 110709365 39180438 915843014 876617976 860600933 550243215 587240859 421701912 441977502 314473746 443486005 326720033 57790584 546122482 889413158 107491094 544150387 961019680 391943749 321481437 188237326 427710301 118555930 801344754 178245876 766723351 638963801 413652448 841374526 891928081 861326861 674772950 628259037 437289844 495263380 873834336 255918181 611349794 672389704 52555620 339530769 409605192 326642472 713989519 259357336 924519897 664736243 672495559 965573504 212633483 401293540 902945286 154161906 66529888 562702776 605314760 13306556 121236726 523687980 66741463 644387610 599187802 577106782 23004870 29130676 911949037 512004950 568498164 758048209 911459115 528653002 199941037 80931782 783712150 137955480 339650976 882440231 23068095 187345880 618993106 116800751 357662570 91851136 145715844 658849533 662567326 255211785 975659092 823026531 292800319 423370125 680200032 580738969 749715100 560126666 752763467 462599595 810156974 492819215 149990218 692550970 444339019 629505417 553888753 255174718 543013472 809932576 151312272 958853935 239332947 772692935 687637915 429471354 572823175 343710358 600301833 174386831 723986082 697440255 961590460 933505552 962772210 209794483 216406159 899507820 479518389 271414635 57050778 506655365 594648385 655542819 986235978 291096942 541192284 776121297 272655416 880132818 509013730 77761 576962550 363742710 582885056 206119606 75979956 898660320 986119749 523198464 830584528 306216024 79729828 927948632 248353785 294837918 633631319 389872370 523397956 871354295 158064085 38379932 381299046 147574141 639466254 225952482 324170849 618786752 931801288 534165366 673850711 65350154 951557063 818769488 563706207 133847512 71805085 335901923 661782628 671695324 969697191 165784372 749187241 456088900 149676442 622665065 623487362 53958356 330062963 328707073 727811272 584454015 135540650 333968599 758951985 940923028 198418998 969659419 583930323 474130614 610471986 721728365 429492944 11041015 357240471 977254919 645535536 613965966 665422238 522748781 966575658 431339689 35363233 695705913 312713419 738077316 685114810 10305463 99740456 842338354 646059303 864542074 522534199 323455008 897485054 29354443 778636695 971667907 609848785 70373466 97616495 34591111 442890700 690689921 262427775 101227391 290825612 359681549 291922329 146388033 512326413 992195760 209145299 334252254 227366775 224856361 77111984 563954632 9863244 645751665 83581194 827634156 382002171 43448469 922962394 54856537 733832607 682802996 546019854 249089856 146275729 756207542 425161274 327401799 49642424 480052898 111000655 522663431 566685552 389174885 896186363 483815366 381308279 623390649 55894332 790930801 161180725 273720752 262074624 312083887 391150144 997744227 48560933 350747122 862887746 357953678 932780472 35033306 143545675 526521862 610220798 23306086 176141436 524857812 153040309 40720981 521191832 579772276 735491144 26781550 134279954 482239684 191276719 19853932 548615716 565516508 229404717 92013120 542591649 188080890 214959076 284283215 668982035 476462119 928112147 691297529 809899236 485049133 176063887 183844594 681543270 615326770 747225710 547481412 931988276 603934795 368497862 868914637 634176161 626482925 270470417 408003612 786107098 761679763 549107935 710742940 3277134 152981957 705523810 983557842 826392944 813988683 204112059 62255930 392689662 828234294 295595192 543908795 33293928 789814101 418425237 576264728 155732985 575295381 119355016 867216693 310896016 126908414 576836876 913113416 895067234 879601479 417900404 757481500 652190704 181722113 486994786 450065403 272707879 711679675 238761797 154626278 473047920 41334528 105543221 700860612 690820917 66731897 756456703 799542676 388445789 783389263 219926165 269724003 279748555 604123489 905405770 957193051 729867141 519486180 796344862 985334454 40323776 764610729 786773677 851752400 596721266 515845034 845579985 185630359 932813427 161384083 607434980 221942790 645909584 974749422 921825346 912441570 965143956 93867122 436153304 472361703 430287128 883341911 606366979 263014462 540728648 977877628 136290608 530870111 175621616 143498098 598450354 189124328 349162489 423488340 813617542 658493198 378855718 162399903 115593923 1145171 334597415 972478707 258835462 872712741 72062597 390010264 272001999 124217863 131271862 970120147 369200269 47690191 70510685 310668766 63330192 625334901 187357064 544900198 716073239 715810468 692177934 426934160 844785765 314068454 964699437 997706108 90048238 10607077 784336579 347655421 348113869 87812060 330613175 185491655 232523877 170752370 772578896 775021810 481889286 318383811 619752013 832094245 614477999 692937714 889039548 558123667 45862907 33937830 203369524 634582841 331486134 293338200 349309448 902553823 94505633 677693244 410693872 33897862 938006900 225713644 596448409 993383482 282556650 788837268 104715531 38986286 648433619 59072126 772214780 75018946 100050951 620492595 531439061 97971759 456935900 323936644 709457815 970090029 696511389 691780200 980126435 988764844 650570785 479919537 193443418 4371879 594588897 913320786 955845522 578442105 262222439 252133770 153234209 495738164 585145355 514265246 117444951 499990682 319000294 226391660 498151299 310771217 765944126 72012044 427506290 447779343 781887032 763214827 136635801 416190945 691760192 257189261 703431377 528967712 846253029 34572793 309281919 832880730 169115885 546291134 308613197 603965467 482150231 446080503 361225038 733029899 441636823 968541712 188950995 983711107 408446719 441761799 950987211 358464465 867218093 793000194 923462683 463079890 227226874 615550514 756706981 701218532 383823651 436749213 899510818 6018748 241100336 416438096 545588893 378120300 649032367 174029162 188417806 690680147 730676707 223236902 750747096 819077203 147773789 806526780 255681934 849709497 601803717 130482341 735180952 564816470 477437318 132821231 951259781 484486475 417471157 284929996 36361789 650739261 498077610 894851402 647987252 160307446 469077550 508372355 94709252 442677849 28346802 794809025 658213536 760454179 840755488 143092097 950828111 420339948 878554241 460588959 380438452 982802016 692231994 607350899 486378438 648300852 51214170 644413614 510317376 901615707 41508717 806565555 357796385 754441897 233954306 294400419 196355149 498153466 112868238 357679023 627227160 960742930 146807082 186050191 522458855 790691954 424325020 343471619 458365183 842223704 767806605 156530446 435994485 607732144 604465981 308411584 966675664 416952494 240369493 508148797 572576932 639265607 524149135 862668687 215095880 595454267 247863294 952018610 664115376 740123702 117953591 451981014 987141565 695944575 373410661 426507628 355613443 490524619 114677564 231096550 595884507 894502548 995931330 745217061 527951532 294952741 687877912 786473832 306875492 47623057 275575516 185453361 307642870 305192913 8549903 613883449 988877614 912075915 231963863 597493453 918814471 660441412 338885750 559180174 833430609 455057546 748053072 148581826 644839002 113839309 302552369 721570083 429133820 997628529 943487867 544420735 284364925 21036270 50172528 665083681 820293890 385559640 176975970 178267999 683555418 394933517 370951479 34036817 43584973 263937487 591612397 169109775 920757628 12114096 653759821 536482907 303254190 607222388 636820039 662592759 818149323 505343765 557878066 693610163 291624450 267795623 357213919 832901750 312403331 850135534 812437606 78976782 14852400 239003606 800587004 981804484 301527488 338354548 813583490 98853183 133366047 768680037 262255172 380169367 829983381 559987643 138743945 503002725 399278536 955966382 312080518 178286293 966467287 628514292 783957679 456006696 566718776 351023744 661108582 965193949 585658640 454027914 174382037 199931842 627618159 628144636 813718604 799454525 286350400 990496264 614874579 868011783 383303409 899254938 687338085 145763663 913172819 507548631 259213655 860019098 125578389 200176811 673708502 325361703 6088928 935019884 503952783 71389028 893848241 325944896 315568872 702252062 951146886 142847725 740208198 336256916 250937734 747577239 447858277 881477599 824938901 846487297 33772467 631699756 841755008 479618255 476011743 460256995 695383902 513562660 235911828 748853944 709570595 524201360 559205252 838484534 464005356 436828265 269958674 791436195 388200211 325410562 192144464 437640573 498012523 194870764 854821839 857797205 182518562 514084084 944193189 626351904 875204427 28385822 229389045 602359690 401293727 473933789 239426152 265904750 574752675 114565512 763170882 706932844 130938941 773092447 576703172 168495979 844897454 86442152 888951447 315511759 55236129 613304935 314867082 898666482 516066245 332165038 933556563 750386584 496858231 6500827 993648948 878886896 730780143 559930848 47567345 215939013 14412802 699078616 675590048 121075606 46188716 835150220 241959491 606054198 473722525 598830930 892941576 229680896 44819895 529715158 858680834 257358409 970540759 251078726 513741826 730566229 745803650 866370812 170828325 960029068 691500200 965508259 312360314 266646343 589287749 416847859 376265193 260200929 737877661 237075465 628217595 398549725 873190299 359117787 329494211 656547764 607300829 270533058 284439155 361713443 212920792 477014994 480296911 108804821 94168352 349846908 338283495 82092048 185010586 584818725 488449783 643211707 290268081 834944395 200018535 311143415 423663815 663618233 669977926 663279069 962489096 473558724 927908498 534922094 6858020 197937988 173056483 775009200 337450374 874033525 540595582 330784397 95804980 564318660 840127327 680673441 877544469 406540795 830218192 87999310 238573121 431047751 962581358 501022647 117501030 861205149 550485658 669095677 1294469 983951048 440845211 13398146 116111775 15243859 942716605 974317726 613842693 185186652 325327055 536429697 144831240 890557737 398861950 115154894 412809432 730093345 780132367 674764558 365241062 110074356 675819355 929959508 435818469 832910756 589873396 197633417 261857098 558659739 498798400 609426092 588376717 850565521 905869875 355007783 463981777 677589291 829808288 61513671 685999632 3734888 452713213 919130009 370630442 996370254 706182200 425225574 404092530 597896508 945094962 949283365 118716115 700047604 454547686 354949608 569130758 660679528 146813017 623862087 799300112 4077850 604109670 160690765 366741479 379779774 817973538 828509876 31277181 578922417 508976159 557137764 790454393 678089575 978311803 303477583 850378626 528206191 313471391 696296771 217994992 849204914 262176897 950887739 586279523 472601872 885501046 17304447 829454725 233125583 983932746 509969969 621492168 292254497 947265728 519367099 911457121 901371433 32637060 716965646 818635205 651783288 423267576 619827858 976706426 432455703 10577336 999553678 17478908 641883490 835473526 846443317 865723176 401499050 233641582 84054733 729441731 556672224 464335366 212903145 184634096 805627134 779036028 160713299 126214082 32801323 833139870 317093 945087574 856579745 441620154 628634981 685096982 869991771 39162836 716700210 478784943 869561606 376584857 41001688 292757977 526006032 330718056 731160704 737251937 725534101 53947360 166521002 54721851 831934417 583974737 897077468 842969894 917826861 381826521 759797265 509510375 194882216 570753877 597131417 973503328 953366426 200508212 695854584 300547473 848093385 310629068 696219328 966216556 599710795 608326830 124982366 291101927 270632834 498848112 127194533 16959879 929792159 856300620 728161571 301401723 926339759 130709889 848191533 865728466 649199286 273954622 460913246 12551000 259800674 959118859 148170281 847839948 643204653 424627435 655215921 755079698 278632508 204520143 889162925 177189387 209555275 913621145 801915492 474945888 148441756 986005590 431187509 269232720 906495339 825803778 315120789 524225323 195060508 611079039 72784482 628662717 328364491 416440359 828628687 14284798 428513655 826109567 810040094 226181818 266838406 837896627 574090534 966392386 26621924 467768127 682172875 714759783 752668679 391274048 724620213 104910941 391944663 34305444 403394109 895624383 441258424 27886286 345327058 810742170 395430969 163172376 986848962 28953438 794465076 863115328 750379612 506454546 277724731 352788809 663493956 173242794 520562127 14028614 837486731 889264001 515153365 803199362 393328223 177540538 879818230 786376130 749074332 456591275 213824942 946728492 806684307 856334946 963848918 80352759 953672264 380247725 938489929 456185309 972713790 32424201 57270918 113187640 839972048 333074191 132102190 272305529 84719487 277672894 947682240 578064760 877666827 857732696 538038889 100212904 410840105 221968927 238212129 680940014 708900289 803619307 589123827 219031002 861426900 63248420 613136449 267504551 195020366 461386489 203435350 569189759 859830124 335165083 802075327 539288082 753651722 831955284 692390024 630389741 202370082 85484213 31509688 469754451 836818993 709510377 567547428 308106439 976986521 15560129 550685157 386992147 216287346 776270333 542408520 166632612 530594848 520335488 679539460 196499816 538068022 633111858 192730863 269743680 233910246 989794092 240643985 239475115 282685974 483888001 24247170 126451400 995688627 655117380 797551213 491029219 542187503 837980489 186848257 628702397 578713695 403722069 768426721 554141072 946227361 836261260 726588711 603248865 787140187 835731342 203751668 581060895 295444207 175093464 759222605 726768567 793004026 790071600 826664758 913867760 538034464 127085624 210511239 760671405 886308251 407342951 620076387 803307411 112875983 25553023 767159251 18093228 910065339 658356434 901879731 871047768 944591137 501972248 141850670 886171857 657440522 723060255 626714388 870988406 932269242 17401686 869341587 294748457 126150779 678374945 574425794 390803042 829308757 231803266 948367305 555208149 399501382 835339778 644736264 214111282 368432401 690526809 998949766 718604901 652621715 671295795 487349431 324073070 35109995 384327823 191533907 896692059 701979325 794151267 242016166 896769826 362256943 996515640 79995935 928813428 717874367 792532774 986218638 550602260 420745156 667400270 612382627 927371639 918273349 988363364 495357579 900683088 579794472 609623088 482484308 302301951 354111990 781935831 319391392 832710568 499469311 372079798 510137231 88184818 499522619 381689804 141517775 279939743 456790807 782886445 20468493 115090916 299289426 560826371 34929118 360719391 402062866 534115923 945163936 532597100 591668513 408417533 820126859 617216082 340740675 56392563 71810061 819760106 100289623 304703303 891409485 216758822 184778199 377699787 658295546 260173415 808232970 873135364 282805548 430963444 70807810 389139649 483451811 795661398 38330745 305365252 144614789 544136039 136229517 581309872 684398508 831137174 947939958 627598681 688018655 148074071 618238135 507141046 399984970 665167722 918653908 68968886 568340440 474206287 679731977 18618765 568785931 848986986 220472161 181907891 547745074 63136363 951670974 991720840 876774880 215582075 79267613 410475976 304038460 451872239 92368113 153662688 642511224 1810096 507798283 961132003 535522775 75685943 376191401 239159984 731988242 418661433 34552259 950460603 440934709 126272257 198522830 54160490 86124209 823989024 897267934 959501523 532109126 719152866 101336776 643163791 991577344 571748020 188085389 52714917 343887704 285610770 832681984 189335073 384042155 662153805 702636571 596886117 402704653 764788890 208076292 50490065 331208187 673159753 747702230 17619993 612023792 24907165 844077840 762381175 469323581 959448861 880938323 616763981 219102268 943602866 830400506 99670669 618691971 196611499 201889129 861051395 465203509 650688400 454112660 993404948 76676546 263857936 985497008 462583741 656912974 712784667 490175688 104173399 180004748 358151075 523495450 603548421 425038928 275391762 387439101 342852783 967256114 242214934 592403617 855020368 966221436 775175148 299819217 356019057 575067890 427199178 875522592 70523966 833652281 835072647 935285125 797335228 645440288 414188117 842124385 180733579 669360161 91469081 692326627 202731444 948299811 259510157 34601591 419832566 613689518 124016246 639642434 191808218 731660082 323010836 892798342 265698947 412200788 612886385 171518311 624788536 58367245 77572714 316163886 670913519 324498529 828505183 550201410 640897868 315132502 209852165 590106181 47181723 275303993 84160992 883732084 953583709 760846915 524478034 887653457 158401832 234400264 258081425 297377533 929468775 735242831 759989844 163031487 949186194 721634375 919726683 460439967 655485944 871058189 261934707 575917282 275802922 822580423 673856128 177998046 737385656 335051724 627819795 997300119 263473615 795755149 875767719 119856546 99470368 289654210 162828130 974535413 781367983 327395116 460394758 606395521 460272444 27961333 562161155 900596296 373255075 910906669 908307577 707148815 474113389 24518520 174123030 612257890 496164514 263826973 459003061 21994547 104531375 367291725 843439190 103482303 123067828 633391896 729006710 195150753 619840151 431413905 924982810 78987922 133169467 283444028 383894813 567461355 18089457 98184672 574359670 989563376 381963323 918781862 964544154 911750440 598907616 384478740 794911956 515425773 241085790 137972174 260295608 868478781 74791885 130602742 522351144 888492634 395088417 623141316 690895565 755311326 940924279 638584518 514210129 31638860 376906384 192586209 152023894 655493854 100091210 51645347 740784711 327311901 242330910 459593303 214698172 473562988 209633230 314322018 842458159 253302534 320694113 584467939 726182476 7991784 599631074 550392591 157196579 92417542 782205707 914332512 176298244 942331716 854957557 704371821 310079271 932889732 532388101 603382089 271955747 451805260 525239972 257245624 858197782 137864548 806299672 818432713 950965351 328087679 523074962 203284131 817992309 787967979 754260336 755910961 537300734 365806634 583065655 946682983 423220809 818930331 440840605 902230241 750390978 52821945 871729319 565799474 579046394 601721126 685807099 76906993 475464499 420948105 894737600 820406428 367143949 987550099 331313698 606208984 991260635 71636448 730829725 154321860 419403575 762476595 301551592 102468375 30377172 141750427 123795995 548550301 116386617 829821300 617033018 318984040 237258210 141473655 928448487 287872382 633128402 839587065 898534642 447068319 7254200 958086534 73778737 723223064 695713867 412832161 787423685 901887442 120261144 564721928 53502778 299812834 663118543 428777439 873524731 325225531 789682402 689771882 686855839 961580404 614221506 147326833 102344705 961759296 560983151 584261380 603221529 948311754 315549101 490778457 706656716 455694265 771587884 73629247 975135879 248023745 24556859 833182797 493790416 966638207 842392539 824067194 258710304 466422808 568506445 149705047 205765080 876519661 26378564 833716636 331867663 951217176 611621595 214715583 803266058 535747719 322534813 188688478 249091987 98506940 262351868 48539505 507675063 17941036 773293275 587473338 832012361 744116376 328504662 524291065 578045625 122631402 15535816 234218896 22196640 426825632 266241601 258132169 884642645 412317030 358378234 934043377 599731554 62970869 757734221 820350736 170118527 925925826 596247755 247072979 5904718 615657476 759781664 682848973 17676706 34521723 519183483 857269201 50460741 707018780 518566015 223363708 665567687 878769111 359845053 13685023 26382006 780435229 748681220 237435257 272365257 207703784 371018455 750073190 578020615 292000670 598393653 320529367 980166483 695710835 453196193 606772486 687630560 402611784 472981138 879459931 873022630 684438370 920505481 985422928 605096768 648295977 881842219 919364443 246224484 669050612 651739512 921147083 519047979 962271353 630655073 535587052 644447330 774764604 639188519 720007020 490697181 560669374 935649627 287376410 70528063 552924309 859773893 252724037 150940165 704326191 805110675 847814524 28082495 697641044 305508358 96737461 869457292 407012888 399542824 462078516 751169612 156134165 393012330 717337489 342667696 114589698 564405745 781235665 985226867 116666193 738908937 828139372 801936452 920074890 763586283 235686264 77807951 92135079 537069463 165346128 993680534 856523314 45449830 252689888 828824784 657473204 829585455 147152261 25144081 954056944 82206318 113331395 614499830 346007703 437007739 474713650 244254134 77593964 937159471 62562429 511492211 833574509 755248435 740472674 642418329 814644368 850507648 345945882 750114958 436448234 39452507 69658136 510117659 117552897 691429953 191499891 588979909 907378750 89480881 162696604 59578341 69777796 534208284 989857897 695489587 514088444 739240456 938838553 670825355 144404244 401433660 628316584 627220278 445320788 57793044 650314273 656915050 117244648 438989714 191844234 147578249 755713316 630543943 494963536 715005064 401600388 698708208 934529177 961391039 75459816 780613586 858989872 289163586 237940061 217941405 723601175 495062587 58084114 775576241 597075152 734793841 905908542 358394277 259521198 98894448 753841610 570668584 318902986 750533277 982965258 519209567 411166165 222799834 375595756 106006257 183796096 931630416 973652308 482099277 781244897 748361217 502817776 847174439 180632458 468879193 134692995 131203698 511787911 428259303 935822431 173101108 123190326 112499455 379235951 69144612 490277873 647740501 670424201 932319326 227204517 188525689 6736963 664348971 435998471 169503742 69299947 152229579 958889026 223939040 755702945 912377421 746346978 912710914 708673601 856156317 613988544 915846031 698855639 491944176 538023554 546172848 272081107 765066934 497971280 247460723 592876187 493606309 987362681 453455605 879622128 461509505 915346050 595148151 854565665 359865094 977760736 941146709 447919360 441878882 510695846 568790930 987714242 183778573 616634080 343870009 238928583 892804854 994589079 239756428 581020197 502826549 585772388 238901593 427630922 610570747 584459973 495429290 588464823 268965461 88567086 870860084 621630731 884948848 686662322 723848194 647056923 687528427 771893898 135121943 284613213 834476799 218305474 911161420 904024662 296254516 548135216 85505667 447006995 359229845 139579461 391847991 574854313 385355463 233424347 643048376 723681511 88457073 672419778 199353131 246311177 806431425 784544932 782837479 668389304 708154481 903114757 315391863 996059272 601441431 650755626 4432653 186383702 418247433 853435145 800192972 825417422 917852357 226476390 992024041 161287135 997575550 148830531 864604580 729754267 298695447 293570480 780113461 897999338 755288474 317995299 213104665 51918758 602387713 64137944 435555863 47230789 74584099 537440832 970016616 252226315 880380386 978114767 276222855 429058406 862886396 356325116 57120849 16178605 485388439 179470969 273353086 295786187 151322596 542534097 714863234 106569801 701010944 548609044 775189943 175534868 868812247 175891619 897089980 798886633 185785098 644350733 389667849 240833607 47295574 82649038 499714948 532364104 64701823 289181024 215693944 521288781 456452081 995254267 120102621 228343611 446154395 626431579 465156275 194174826 539107449 152241103 163375359 136129834 334976022 507702480 799179021 518198640 189914803 71834175 177037325 481235922 893597194 343765787 479297615 254992210 788071898 495571363 564678439 465376643 179207300 81031858 312300671 187045943 910760400 108293613 729370306 520071897 993989464 480868605 903348746 304943158 155909694 705528211 106344347 211513811 357383670 422319541 148470183 911191151 36072985 58538491 307796679 37432751 151664541 753651776 979020017 80406591 691283502 609346418 987489123 133307604 708298911 263754585 12900389 507362642 664466731 791950554 956491912 619890507 276061768 87670097 161778996 186056983 197359378 314581041 527446622 275981228 624131825 50734207 303318904 636794394 379207246 783217107 617156924 635156958 232332716 708482811 74026890 770929496 400153287 849392368 526002365 392678751 60368194 829159701 648627271 389361601 629191722 733935240 71872157 674570779 670497920 725310712 801781466 664846780 691137479 15888392 34129956 900766271 309882861 346944240 112224604 849767153 56726666 93755999 260048267 800799030 650984781 426393137 384772315 856163273 159973231 157000734 995292109 612576349 199830297 461031207 751617950 839520383 891334275 770943585 795504846 505819323 468121951 720924606 853191596 85851716 980978141 620793297 270398048 38535974 61775999 678078795 446709150 734597254 311266131 62941243 354701169 693393571 934547531 998057928 941602352 773145010 87647875 869849691 440391789 279884670 302447990 533143237 283338092 86563684 253562234 131545543 446476499 481665061 592425899 487766399 862329561 1801202 171645817 643474290 375853439 926198354 921527717 274608799 9230179 520859067 821282063 22515462 349436503 603801966 630922573 103124473 619837163 838395083 732092949 229002600 485070195 658786847 547971918 707288927 694670628 714001403 926930561 733736325 380444747 963608577 807307334 167127554 557820271 96653068 920842960 552880555 517409707 921303217 388683614 217862270 160901353 175946846 892357167 935300460 102446079 398278832 72284357 69374069 633766575 185312759 427872863 345393465 14627535 645804213 528596116 577455710 905083761 729119763 746286580 924422493 426447296 751297875 254461256 31918798 163448234 412911401 251237462 538277911 972035231 117426569 676245337 386797069 817614490 575790162 257361742 827975773 876948643 360128841 428990364 172403447 838396205 64196874 634944607 572395801 23041603 981255688 831293967 173518076 336568321 913400111 278139833 136871189 743971564 201147396 849612192 82889951 216180198 573824711 657625770 829893213 668553362 157359316 294459600 933115143 998909314 353177275 607602486 55581723 377037590 119721027 297289155 368541307 767287365 687964257 770235757 806377803 900820176 799092602 202326331 230616038 559599450 156903361 7159707 470562824 505213636 735351983 138607383 128306452 523203415 103245806 926025086 76215891 860922146 417935020 280570110 610962834 57865890 486633138 684277907 936847877 495157785 346469727 331060247 563625577 848010441 416282869 955467367 756595859 23531916 137723355 889555709 696443163 537036642 995513203 258363406 266708062 999784 785006352 213212435 463666001 237141750 628012462 877783149 72380571 651455734 37352618 585387866 980503777 192596108 377829158 858266929 9329885 541805594 402634122 326805131 107945518 104209247 708482657 985613479 133272030 401973972 9847240 891317496 598473115 80363884 429058974 48658522 873151196 839038833 74571659 929337593 5122097 151373183 157784666 900604224 246650852 709077292 942147544 252989983 249438420 964514181 771674362 115111555 540800886 662761906 670290915 887429450 884545847 548096468 932251108 602179597 887746050 189943575 877802900 988919729 311491716 828686194 657647550 63210423 809991732 350944557 999837633 886529240 428795201 293836024 935298384 624140094 563462617 360189124 48996148 611833115 723767940 806256419 739123072 403910993 453943182 620667441 910104249 950659723 723399595 451503773 680642330 817464369 492544223 20123868 603785696 920120763 509404048 378103371 50240 358334592 381217944 689109147 327079755 960942674 639003604 879585609 996919179 31811789 311721284 169055353 687580149 888080582 224283345 175121103 511605337 934943393 663941152 760443358 454991328 291769537 440454808 382242791 923452056 259293039 134434491 730063469 617921320 777156453 967022754 674426320 789104572 823555539 190848964 263802011 420353545 926733237 375081639 469084421 927223676 226984823 613719529 212789462 646638128 654527922 491668334 424982361 936304595 868565834 565894664 561042920 778415377 246954707 681998281 998317615 75995133 402488939 505198464 749716724 549990399 84780262 538980380 828987432 67274933 786942916 101603499 927105530 223404802 985742639 42461485 717723869 872159189 964861428 278194713 722044626 672655755 816647482 271979910 28089328 692183830 414296442 797215671 785082356 476272043 463405404 920608549 371111039 257691563 843409845 654393222 930882836 728334064 67727556 977984289 599840206 469978354 900197328 190867383 559965905 489412703 634945175 257492689 335792030 660507271 313921058 277155667 236817809 728716078 576773454 521601304 718462940 385939145 998317704 140691291 524609877 410469041 334746485 975615016 462126539 436993439 954452872 340822352 751792260 456818102 9905645 415734515 295844353 607711448 842150394 353932693 157975078 791105655 82378981 181959883 926207591 874513952 143895380 678861086 60975209 470412659 818641598 638339295 102564527 395485478 369714891 341013757 570367498 454472290 14229747 933063253 694777772 455722948 645874600 517555900 641260345 420930580 256130719 443500029 215093918 217576122 559982221 884845527 753463539 619021183 64066292 941935780 447645491 984156083 128831152 231403078 40505263 370499651 61312650 479988179 177706636 672137718 746998084 339615702 643159322 397755773 821241637 569770238 125034096 456065445 647192492 975247902 318873341 905877826 931657555 877591861 260380773 139927441 946393552 547039220 525486947 343591186 463769090 581869041 346019968 177589535 873173759 671364423 78145998 789807895 925873612 476783713 218757474 417166564 829293141 428286501 75924258 244403158 213351802 163843581 110779747 249339640 439040336 900683273 890824309 399528622 195023547 242396113 4284547 996624877 309592563 530147059 48627411 83427133 427387501 212056981 392805064 858917396 142412600 402234369 716972046 846955449 87306848 129045713 723715775 470223112 178225337 567118552 258773668 380439758 681330943 196220579 558557253 85071943 429979807 236837081 384396295 237064805 562429677 419449173 705940903 773666093 687236179 684450793 238357144 967074021 821118879 629465934 167862180 179552509 180478208 217445999 694372560 741965241 188514286 462941288 185777308 7704269 571106792 833644759 321000994 96339155 259479239 928808244 915665453 267981285 681370167 126970268 629938606 456819735 606757003 742606327 853753340 383638440 423317445 782039506 734134009 223885293 436151395 924727402 171796236 697663195 879439399 843411642 600769532 285659168 767320596 178166154 187295032 3471391 629413170 212882957 810975817 106626893 71048095 669245319 508834149 281677861 975055651 670935248 790901576 98099621 822454910 717202115 809331958 364546804 497897672 107011197 277532900 900159481 284100973 617037515 447630230 939717311 730477971 865478179 886562913 517474602 581353996 571515194 780911324 673258622 643095796 28998312 711098758 725631628 955577713 977121743 177324494 636231402 788008192 449795043 404231748 673917725 310580078 785887136 571402581 647769485 510748306 944621220 852165851 527339021 92975459 634565820 374128935 641044764 585601301 401944610 80062169 716986941 343501683 652667322 945709526 986913362 562096088 565419118 127577172 658043240 972533030 338483752 949725224 720825285 716240035 367879057 844346065 980485433 922340841 252822311 114849489 673094661 635753385 905237105 337706431 328675129 680173181 232759436 821254716 256015674 783174047 911906674 119188235 610462289 255648487 446703181 985923783 170939405 824261038 959018974 925212140 272342269 389191339 726198485 493180787 213934318 169599757 581072825 662522491 514225778 342468117 874033517 644264388 831903764 870784959 46795586 795324516 697270033 946205636 844000035 440308381 42981409 227524046 720646527 307273605 829663712 496323393 317624899 277725032 571305061 168966419 40137053 927944026 125067919 446178066 173889523 353347367 817009757 975120715 131292377 494966658 854356381 320303395 879869376 725855205 868336487 446991103 884183160 669773213 432914323 485996124 915798204 566963981 27385199 437908479 412504893 217805790 10145387 527499580 601402865 637920542 450413287 15559510 137655526 272175938 575452037 44847093 908531868 712507965 750565664 527602680 850631887 195491455 770726600 248239762 691808470 156303066 928602645 369838647 226164529 7628185 663811087 189607427 933113857 429805928 946662225 958623507 303725849 812666432 525162301 174620227 257723033 674446634 17265614 319461155 538277602 329198801 183391722 629005791 88217056 54260265 956613531 480777318 499116888 135028140 108396778 989051700 670002436 263965312 780512272 662341393 252177607 887027835 419144627 47302099 633423173 948001597 113087115 629073351 679467497 61375624 166252821 609690730 450588519 980947298 460288838 32126985 257046867 416297263 718862290 34252524 749722854 934646769 47335354 297271050 101955622 503479372 76533716 266670631 877556559 727105064 150237654 358241560 220276606 333595022 507374822 199529424 28799107 404645756 254381196 784275860 972596318 288584327 588404647 79274139 247315302 473989214 884126514 181526253 523501751 849764919 392941631 515855348 834113945 81720902 800507864 493655355 982358999 33505169 840188056 484276602 360377052 617297918 329517790 933549467 854819045 5587729 241796840 64164794 575216659 162878384 736612247 260275890 728850088 519364749 707656606 175757580 592163714 607163891 941252871 220493787 163431153 832738923 319749879 149637851 563783582 259725597 101538862 89853220 364142776 120610559 968047272 48480452 610171240 602700751 968612812 729011965 698386200 232800996 384926894 388401942 977263597 336176373 685998165 997580432 645880325 83251384 624306443 408384336 670769277 234653989 393851927 34851717 111189489 723321722 835159022 970253443 753681192 213832335 808981112 285499132 267453740 217655774 416354421 324624424 815475407 184101780 508968495 309139626 113183135 145745530 621111432 64872364 245533928 157884987 241083045 487288881 862355965 242538655 148847295 226517496 972989185 267472477 966129587 359852977 246059569 38900295 122055987 638401952 589353735 593240561 233130656 529958238 60629488 993561550 743503479 876280449 654237880 589587373 29305283 137456976 701616808 33962114 257273958 334118136 779079942 116960150 194250834 198912833 956329424 819122992 815854372 417838778 514171698 392285446 751809579 174091241 297824966 791199526 308064178 983494057 567581346 101452838 4636286 172892421 776713436 180858805 922638235 278519236 339696376 585138534 667107676 512976835 760310574 233045668 87765772 568118323 28901132 112660065 568698277 268673806 800750710 272481973 903783086 448882545 990106330 130318221 451189177 106773723 552449879 118817853 24439905 359816436 644245182 817514816 211002828 143810789 280195818 606186621 593180764 670102685 20742473 34161374 590731192 639646198 839721754 793305894 181205600 627911651 17396760 34808909 794173361 559606683 284083289 213839659 660034997 221978306 189804223 809048004 866549265 409277471 460650681 99654905 978722343 646173829 477548279 690191332 618070174 455470070 503396146 563443911 125931054 187688156 78689172 602396475 109139780 137105185 526929498 316025359 762838300 638002433 863606324 874791582 209737388 334261569 451042125 305460470 564877589 424954531 891207301 111773811 917811625 5298878 752767628 819581658 534973947 660917061 222401982 403031910 883951470 435269629 750748791 14382498 765041657 266033497 915710241 404935122 322096344 616654771 512942832 270359776 877807674 729832722 373544047 998430101 855719473 532205712 50321162 147796810 260352370 415264968 927857340 78782121 175424701 874312744 770344255 789663062 372001547 688770790 51745964 297971921 620146851 986914935 673273296 761069784 501378407 285402525 862567839 111212304 117660564 862553610 169996027 39413176 80035967 179881023 144457841 638610198 950369963 608119329 158617481 172349373 447534965 163397018 990331048 883849225 440355637 806358754 573744222 831379897 901285000 316333869 50172635 845517537 579040606 931200725 268689934 763923783 489161279 459938281 299535845 688353043 881098609 448678085 43060888 925493262 556738031 669475401 183927148 405972923 400684268 489733166 793753373 182519256 652516526 467831118 344103146 704656016 204980306 641471282 223371470 764005125 93910454 511129301 892787365 678607509 868267884 230574512 883033265 481566827 891184486 158511551 957666369 708532039 281773729 702053826 202666802 562394887 135747952 992070465 583835500 933267364 294301934 704858602 474810161 827750107 672228731 753693739 217388595 203147026 151552186 376018876 202298665 162276628 678503418 403892222 171839673 153752759 439325405 631219033 412982791 660875787 826415916 749550448 521189714 495712606 770462725 234205224 492898804 708024301 313450164 680578884 894072589 971584845 481931672 650518423 690808489 234492286 621851139 152567783 605831332 893227909 492172903 899718530 567068076 832535073 998300581 612839329 622941331 336983569 960525077 251840755 479698440 367764231 721803971 139723036 312898562 830376635 181811047 11542158 725364019 416327849 940481519 16911121 452585737 373191302 143961738 411765844 812552337 390116851 389500226 66083297 243853679 1287559 52905770 337871794 203733918 790708346 32687847 99398624 884042015 377641117 851599366 841377186 986816844 423304071 673270410 314166855 70610154 443554216 720812565 94014411 843510543 457314463 359335688 631263516 169668561 491792063 626241615 736171447 835871369 434093273 818039926 441792500 637509676 355997132 875726405 459949733 987765779 124252693 340996246 850054048 50016580 193966072 316906457 346871229 578833612 781398870 316700582 205202382 299725016 517530297 724882109 459379223 722298365 312862648 395102427 299789975 728963178 198909438 434760051 916463659 691620259 16059403 77609633 531157001 344985727 578560512 812088671 858669863 428373860 63015491 642222053 781482097 717152639 252932008 903312001 632970334 750915128 879665413 678289068 468917885 409798851 658763560 558295970 315370821 951861960 836235808 388934571 514722730 222516597 639447783 380586650 345336078 876364832 406170413 464774895 984151178 472910148 349716928 680245758 360385749 161799906 855624331 414144603 223527718 368154229 989618036 537701326 628285630 553542458 185956321 5355183 458778662 944261824 41585008 4443347 723299906 57838595 984798536 810047434 52840007 55280482 993037119 199590965 439937965 429422791 119549679 282488134 885164634 381162144 359054566 548469353 875966375 298401502 202218188 271957660 749299119 751033067 848591081 846729932 589480407 120235171 591889497 521929578 15536948 320741917 166004494 680064672 202862090 872142825 322760971 311844463 791156770 912114663 512136747 255474707 922674869 395110978 767362051 343483709 773828888 267234594 179695193 585685485 952617373 548615811 179727064 147672775 688805524 182295137 87334849 458858295 490268296 287681229 262946823 608272097 987816273 598275453 358581895 973467192 271666599 144254101 804597458 963000836 585555228 460209797 659539317 339203130 218220331 854785967 314935159 647922980 181191671 796124146 621448315 205710463 385522169 884412656 940950696 903224154 80858968 254868982 624191298 272361081 297897296 653156971 214191019 468550157 684903882 693152135 202146322 867544949 258829650 565293707 477894391 168635018 586140881 651238188 473088213 708997085 61945823 409976214 338786315 398491520 713420579 781637226 353148512 42510267 456124990 481723893 942002047 281795762 190590558 271214709 404505712 738988659 780750297 111472575 833897462 141985572 684664537 138246971 91386265 271188273 698475521 238771772 973622863 24477557 175235366 804129612 348160224 827619508 281611767 92727878 858187201 106645427 220366929 134163113 322450271 62131032 732804379 28748081 520067159 795285643 586640861 250914669 708058002 611376500 905279244 619893546 418025191 403249893 480226442 305688495 900582321 7413345 84248669 222137021 332538756 851233164 101546339 708629692 195045839 7525419 859262064 324343458 709426592 827875881 473442760 558748264 93366828 216461326 608615332 816423740 721345488 363248071 591928998 6112984 600363002 983658662 502345357 959966088 415301084 67280151 912504866 613726750 615292013 527945463 796595211 166619327 836689675 361281784 955133586 326285535 929146860 915772112 903383880 818130886 417371461 122113527 432828712 823867391 874123075 639488539 496672289 11762462 970262660 519507554 919748531 809208666 165850196 370996419 120984277 232278631 874121731 733828060 394755471 311268074 319629954 902775476 772989583 800898309 868970767 21040711 689213564 933414124 326123974 373161182 794455243 678182470 339625270 379676762 92864133 201933062 545671337 827213319 604924847 365642312 528230186 996804248 932226478 89257828 125913316 212901977 30772179 342837768 191568687 228146112 78238835 727137731 785742297 902085724 302074480 259822013 114951191 35437739 590736226 904584535 716969740 757474879 367746307 487926279 603087840 734105394 352070368 586342485 892152288 184354108 900276732 509349823 243561494 90990592 216801993 656809048 926312430 170004937 335248265 199808542 739336249 14454640 613738951 588412601 623855000 114982585 940615042 919330445 776367049 158103439 898857770 275713022 468577005 866921652 6732754 189348853 311377408 162588441 529042961 488811252 878483847 928913977 803708392 322100954 928682651 979008166 466208652 483307453 832134145 363752333 678402786 892489729 926913879 55711822 589696439 576149093 414006801 836168396 419398899 917248278 792627415 375945216 39250295 240934358 938361762 15950915 89530509 246558728 213268761 760534314 188004227 798639385 49056354 280557652 284613825 845849562 763799262 650354231 93134364 535193433 361073133 413968953 144713182 146171563 535350701 806322903 492399412 484480351 753439677 567448825 384164079 2107980 902611251 209070671 208597112 515925329 524816016 59963160 289847341 949566057 765131291 840101036 172851062 633365194 341795202 245642986 526219536 938973431 889502892 583492706 917693818 952941368 903950323 796616122 390000720 156921185 998508347 148716568 547892731 533052024 63966499 731726163 831263579 622351200 289414195 595463232 583059335 257685722 349309634 547674832 323713392 347303642 611159051 385005739 487040603 165884762 312560281 743670913 506366584 596325475 399276818 961484640 485736592 591600105 51686772 471482012 869545521 642323616 101547500 716776415 150920114 863865025 367225203 33782930 97985103 492504339 67031431 314258537 474447284 684203931 61571809 395836112 415766559 217700752 945250295 814558309 500648576 166459987 804026664 313040458 565771628 234708116 339707221 531162327 927032947 874489470 934131899 620018473 693988376 274025443 481242654 524953912 473389812 361917024 292178125 38358692 378982079 267074243 616533389 710890650 876636911 684354008 878630267 610339884 269910620 645683123 702790105 731851303 346921843 353730237 396887392 555616794 687134171 819684632 948633727 769001091 530010919 437587550 309944575 612960127 256136662 885937180 96384224 666507770 83069921 703471607 924760783 87036180 403456030 820820188 13006131 24035095 388535471 329997057 590231768 789647891 805421066 498738280 599724570 532310600 558405861 187716767 937476149 563579866 906810620 190948119 264973086 497017135 285365206 244422570 759263003 845834214 79296955 941509737 791915341 878964438 913748897 710161185 548256295 437359385 40788119 639201020 874070871 782847303 271934250 653041694 640090612 148602116 141897020 877145399 276943242 211804620 50499138 489427496 335300855 488173952 257033975 750255255 815727624 41370773 222928980 65514020 110490926 189506844 210478354 43710684 52918130 299551849 175192771 288041102 497948708 555540440 802362914 744598685 631909317 333001125 374177079 66501086 280201406 914562254 569342012 790919712 723102414 502132352 119028879 316224399 325033387 803265146 513078240 139685230 935103905 233709941 835949203 833279352 938899280 557982133 77085166 615527203 334846032 324792972 999464241 144609267 91918794 353419206 26914684 186933326 98170160 924805220 788554357 123796439 784287245 693289630 193059655 719290279 668698454 916599872 553432997 822426007 827543021 583011632 503887927 751593115 161381426 770650769 332692870 784091028 637190955 540796157 403274243 948471230 159426382 297355430 491761322 240877147 583995419 967004009 464755033 870892724 320587642 666135876 951658042 883707477 60320703 897867486 474358195 566691435 564330850 36584978 964988272 980109646 90498139 693303605 893663575 94933764 15421470 947272983 256154130 275181845 120888274 643316889 905626624 265394690 995455471 462995262 833439939 908971864 368188190 452190271 551727333 871244519 107559810 74152711 923404846 426178137 639753013 841048768 703939630 928753252 339819279 86709105 246307085 372880411 207046821 489170722 598296827 333446730 106738094 821259056 106827444 245830682 54297433 856579434 216308237 458615328 961592655 927510909 147505569 684725543 501259516 143319260 759533198 368856425 957382721 436020056 398157967 448920723 295483448 856792414 918257781 747802575 211736693 51623203 671744697 63713999 250546885 13167745 208900268 192873261 79876324 56796388 797628215 683431065 454738580 595954351 402011807 993627844 368464073 629867833 273713417 336493175 807493013 231104130 315094882 805447075 100002400 498615625 586097967 136199880 216562272 695301483 696673428 41516322 382586602 370850730 692397731 230130253 552803793 172114654 254658637 319600185 469227340 132227316 671596750 285355701 118524398 525714000 860541542 885376195 155313404 255159256 756631464 18207555 195375746 808872718 459657051 680638128 100530405 969372565 866448613 840219798 849355933 49390629 586547910 308989966 900675410 551332383 21139551 320307557 696825297 409620028 632970478 117058437 354798548 546033293 618376861 18860430 798210298 695664352 777947767 145431786 736244298 189129494 865469464 304312239 283203803 693669676 398894644 686624520 155273480 471806385 490929426 318608041 252819744 596443320 385842702 262354480 624530904 623220864 604726675 493426802 70270289 624252622 429879470 266486371 316025327 193421462 772917465 57183370 455728172 782594376 478997802 968611530 32677855 761353844 252081580 328837754 700920025 871065024 965922525 287557440 752290286 418337146 18418453 844006515 514550001 705390319 396030096 675805221 951288673 939529345 885833180 971076058 617759953 402834441 690568265 248853920 475756648 899668198 753760739 972477617 831130922 159862511 166867722 557837288 206623304 586653158 218267650 25809818 770872432 949429772 240127315 136790532 531942036 749949896 474252136 612248095 94652466 420727430 170766442 126703139 619822345 33072907 520317311 710622062 25731854 195178006 749838688 755687854 745732148 466918601 175670844 149620035 752900605 748804846 581689829 22220610 366375569 32693303 170848243 719461286 236715086 279781059 687831189 933804959 504637712 433178428 855182376 208083810 199059565 92432676 485370844 697302072 330478426 243059331 950968065 195428470 230498155 356781531 349399314 744926240 63184350 896048117 171009409 753108532 657859295 727583882 973711639 886927865 653494219 791331707 330178047 794067399 593131088 920459884 60265370 260579220 145400645 401743383 720336073 614615457 823580611 288665191 965682054 724036304 114172328 591870286 683790969 831711581 852669151 872641993 413125763 301528827 747319245 876992481 83238304 264874641 678496322 70799537 324574969 996516962 917638818 854627645 37941981 634394535 431920299 375640739 130404213 10613585 101489573 235972789 710215510 357142966 813960441 493624213 398285069 203941924 715472822 493809182 581512012 343307845 732675257 445160437 633942684 512682865 178066926 595502063 530590901 770036848 638255044 576652007 851187255 814883977 970268289 174158143 32982953 869318066 867510681 833588136 770086023 346299417 957835616 613085382 510930762 277763672 337557204 509173170 855852883 836289569 398502121 391407703 660930995 359315294 730479484 621844564 919852502 708938286 725702772 29462196 88873014 859566446 993384049 931247279 712811640 228351546 494172837 466083013 567013725 217546285 505288257 588807955 653827506 266412453 296731453 675872279 555875098 616045915 860505182 94304716 285218513 543091700 355579283 2252552 272986651 984950953 769510667 113407988 667534215 68202875 87303237 677170697 341531971 725030790 794037753 456560170 866049392 823923955 564265458 659354808 664846205 611090273 249804555 927574481 275573132 600161586 439931556 550056138 916484384 406941696 658516359 249870873 910271023 857054520 809689982 276382622 473640250 588489364 235442327 895368780 11279017 6606351 83168778 263959885 500409122 662839975 278856846 464841009 921362032 589932547 44965821 313092398 350368294 571489793 792400422 560389230 562897569 894323831 63063954 969017606 468139171 759667725 388677959 399622807 275241452 957463053 8277682 421870462 363849224 346337172 970028358 672834065 806351138 606332793 103913770 858100685 158577561 641911041 327605321 179209470 477560154 1144230 891457966 825901250 789233212 782232640 86892253 226129143 176400041 190372130 10068880 131240165 264975004 347112766 229679271 306585970 469420342 669280136 261037264 796579607 486277177 434973927 367338732 411920280 952685240 363910291 482106346 1045012 351317702 837081622 702682072 320116064 736375620 359019720 889611945 97976048 384997782 238082195 845300284 238521246 612222419 429234323 377032905 322327501 91224307 225821948 2452983 426359942 554380792 725451818 869969359 360345835 871368908 908882556 56676158 735659937 704963902 811030605 281430490 217712844 15331928 829485805 943648152 518660914 494586564 359485332 403722347 258826856 528837311 886018428 726213071 913591697 505779729 889651050 541434369 483720312 119588720 103693883 605331291 817809812 664853830 398922686 179138496 635823725 822328877 235074589 540527062 838063316 773075413 834583547 78543798 860295481 496878975 958307588 735936037 526779894 626460793 254715123 34941863 820959310 840088199 822323072 393949611 138395387 103981019 386562570 37792817 760072551 122830886 270511459 338437346 989885497 885624815 200035414 811618123 277630571 664572098 218259775 737816012 169681876 613966595 134424945 855513751 226971099 893935539 153952140 887394148 790526775 574371790 686668218 645851436 881486998 610260879 137737236 626340186 948887568 87464134 484801532 804884619 405745780 967839202 170645471 89256208 116535272 75299176 338629022 79895340 547143911 276347105 591203868 679335477 441001017 923256629 430325376 805644739 664282192 624050572 61604743 328827385 456803554 868358821 607871302 353600477 764363471 267891813 761518121 26529443 633854190 970559588 640552415 945028348 729271122 558345066 150674174 647567607 33246591 636070490 863517547 365792673 836838866 161884947 635809484 574647137 938090190 51033524 632418937 920758852 322094407 780727850 596251192 442209459 543820591 957815351 94426216 163450761 572559746 372812531 743360810 989721232 517387191 221231905 555238358 270034526 958544335 911669763 401397549 938904421 847339053 722777621 557003875 249714210 513455269 290836186 903840786 480321525 370891138 637404221 326123509 403241833 286610687 768166299 261148561 738179937 450925629 834228375 362854276 924662708 5445005 969384289 291815093 835671493 906008417 654250144 957776466 901612782 666035848 764148620 248320905 125767559 228609757 172234229 457758091 25567825 646887607 854121940 139732876 177848334 958288829 388006739 896446138 976041032 789987665 400724250 551099235 53446958 776427535 549998299 695892020 467434522 162056992 186275928 976189833 664279802 169641664 578592781 707556110 246386110 271057156 956159802 834391997 215759725 301247445 283912476 930963675 618520103 980997325 393731664 362310302 438525283 539197052 265442866 457791850 176072133 843245895 962419645 433545378 196325595 451419863 147032299 494617136 947963953 263885641 198129502 860454709 340912316 718605441 987740142 641852748 175753786 393255799 227805121 939038094 36167017 863111880 564487834 80194818 77377966 935068191 304506378 582452557 189839572 780819030 355964293 550751417 699344004 998224943 682570203 680724560 777540079 874953980 310678172 435110137 26934434 239576122 734170080 732241247 502062021 658022208 809727399 693760587 733080391 942079868 378402981 34483503 885580739 845926559 857680932 164610601 536340375 341322728 246869640 302882916 323521755 896248254 587695835 991466818 464478985 495106855 738458956 979566631 548060616 844060170 728268073 819207846 363448968 588024390 88488274 864733310 121258575 186083873 800898049 122745681 876594891 692884734 254425801 179922894 866684730 662662277 984332441 739070471 450522931 447021509 222677152 461667232 96411027 727329846 274055868 452920875 808735144 351159561 349202969 559657229 293510797 202274862 472050624 79095767 201400760 804078655 398110403 73992615 212330530 89622408 246978203 408061588 750005857 906824569 560050315 219253615 242017085 263486452 949866164 324374338 513234177 950961954 466128432 157412666 34532884 967548588 102056510 316420252 734400643 363344673 398711317 10957262 759485782 460020091 824724569 713804876 517522754 226003946 872795917 760156570 26722341 877530747 63575771 318728111 432157766 603560127 756930241 394772271 378098513 64455710 550330142 43290475 41351753 477384156 248720547 727976932 400438095 188732893 7760364 35983717 459644421 549321907 790929500 161589498 138451446 179335983 918851522 74230061 998606442 961904917 148494826 560779572 906663842 506435016 893647655 867645827 193339158 343671187 878372459 372927402 428884717 625425586 495188097 812806543 316920386 47103500 436626652 738994822 731446076 906827247 794634431 154792656 495468230 641842500 495821320 396207885 336095680 782989260 130180154 471797746 860390653 498698476 143862908 29557608 112909726 792491979 58552132 159830143 890299977 391635905 896277100 774391970 501801799 955621303 159283387 289797530 995075025 810144516 767784291 130604493 490282064 604389812 928357218 983371352 444504899 731026052 609183964 731675167 327466922 807931165 386432507 824879158 723477760 863849078 445757250 118715272 525444531 251587142 467394867 36937103 3288110 520489358 866976781 455935640 736689140 188406845 911770344 729770526 685025622 403904942 172560713 351304041 442318855 278020758 659044151 578630368 151314554 258462960 716739259 944658596 478433249 478546123 302810369 823019730 473575457 22497835 831202935 772560676 384502998 994966191 828313626 700118246 33361218 576625243 44800856 798531123 248686380 987808422 539510427 974842396 706978724 732326816 607739654 372615051 65125581 266218733 384785012 881957721 658977505 499003908 357995640 353909999 398898968 213848173 600334503 808223353 256181625 727340136 56811648 921776713 397301976 3744669 33587198 248097185 11042010 625681699 769497169 837203285 300538151 716883834 670534329 228383163 457936341 764722782 112840610 895056098 373785328 371300825 161680969 244313644 177770757 507837435 410645496 106535443 962212830 975890227 560261650 825872584 126474987 411976318 463583450 955326564 367607385 844852748 50548070 979593298 531463423 741728398 815674775 210700604 804932098 334969026 592699631 706184263 51988433 643209792 166461815 461466221 332019488 549830389 384224021 789831365 791467155 145933983 690647023 714468936 222897835 48883072 948782753 823740028 357237775 833730920 784861533 604936948 147473615 308944548 271295093 918630835 485587581 662340578 782213388 410066622 883466024 187062892 654586243 319089425 873762646 297372351 853480678 261699090 346340929 671280334 120531769 835381445 614464114 926764612 521979587 679237804 961323246 269138408 183253696 121014377 460220940 86409628 977840531 75156386 666444658 199720619 419791574 918802899 540416860 210121064 743335266 608772319 478591720 622701750 396610705 236818482 127028052 630282096 987232253 981736486 711596540 662445743 932049656 989269048 495869451 901596674 825556649 838821822 310955795 30032563 954554886 194181174 674191202 753475198 678367038 271810476 105361257 174499073 690687631 731364769 144968375 207605841 413269439 294609000 388743231 496763084 699019678 861019686 365954043 772305375 839923876 168002420 334749170 498363448 10407640 543923823 190616567 221212090 136097401 243825535 190251711 999754539 146496041 41340507 152053501 490731103 790699576 321482991 30589351 276214134 143525424 65410714 958054436 976505059 382470310 64222109 227085512 225834334 872965585 847028423 797873347 273500770 315635617 116390157 192656913 851400849 589888968 443649888 184193675 422296867 954209378 651860031 287291948 621354240 125125122 358412607 261349070 182216469 374460545 192423398 128923512 431447833 219252733 534261164 65954175 47349515 965559946 973913594 541514241 660203633 548148492 290722955 466472129 367736937 56910457 914781632 853429843 979378715 324512163 764169331 628294624 532930008 567931921 48390389 990601220 523859148 329026369 333219114 933458442 82637106 755392028 766613907 160442610 4188608 877888324 398291073 278688862 405515903 352295667 13606468 728612356 343706899 793962364 549842426 639255309 882549587 683317060 972844825 133183735 480917443 226876880 580320119 460378425 129685763 348179390 855212281 397994173 372041296 333456323 864959231 788287945 128646454 310457502 385457051 822118009 331036334 176584983 962835977 340830180 542659511 248506956 881080852 692824726 828200350 379858736 659069430 724940862 352552231 635489700 860077840 84160221 789003573 788645436 722974859 884298482 467360418 297397387 512235240 265989869 431489091 969414427 231731111 111091435 504124222 742749379 668192989 439506185 585576693 391053172 778563952 11138887 153571964 79855335 771414882 267903351 88211693 564014482 812367227 11397641 722807486 681636426 559793614 633687002 746969651 454855591 42488308 171465801 309186281 287011769 803508483 405812004 393687737 481338902 526298617 553836865 817443465 649537218 47324513 681055748 960735339 919651064 701372750 821445577 62446720 698649427 376396374 448733336 249786504 6296547 214110438 172694491 307701963 88317436 642415360 686808361 105339245 788440792 491476271 452363914 215352897 273322136 914704767 406598354 344777627 365618893 942495943 326992906 574978183 985577298 55954841 857552976 85972698 248361667 710303537 405487370 108828624 29406023 114735858 665054328 546213556 827819094 146196885 164260025 663166229 1394096 410373296 355443636 241612962 501586770 829806371 763102775 309142985 26481069 905540677 777741228 662707669 186947858 769476669 999457504 962779346 182054525 582676277 866722145 297918002 562051508 26090208 289910985 785301376 120042624 76571378 238980073 679964326 9683080 470135459 461495331 649168491 542448234 728326773 863513294 381226728 803706570 757263380 10297598 307512433 198975329 554945232 642060218 47553624 393546876 667345531 667544720 707996443 469986574 427943143 365186716 529875688 551069805 399664993 312916157 694101202 473466514 146108161 924095483 149992612 50274515 530607294 253626531 262710140 928836047 610111660 757455921 188556407 518432063 255690458 427012480 562958406 981593575 646051939 907976942 485457539 23406379 334945385 626979724 782224735 116417261 357278592 326345134 997145080 482596113 100663016 893526269 728124528 366538757 325054028 463829839 508853977 505048216 653617992 746003726 744410687 960142786 788876919 953324765 180763973 305702099 153001257 459914387 391040944 352270206 148913071 259868116 528802185 158421518 951332817 155381035 63058954 295406870 527969400 300259095 148166596 883465732 405083800 305706199 216142011 104937620 131561909 706804134 470363682 7889608 921924303 847034558 314017670 652286563 296095419 319865096 638790161 753680452 506618562 276708104 466366364 568759696 867187955 155636365 542011037 760118055 42038832 704437726 819732974 698713980 94675576 157734654 223600576 558087224 184845403 685964370 986452526 592079837 717377750 338060138 585153473 403788922 25923073 943585552 208590313 107772422 356016872 68068382 864727162 405770355 926721290 312228225 334810507 513674312 777444668 981821237 406627782 923247587 939837450 16626168 413650805 342575234 481911808 634420935 884719220 615402953 758245599 100438489 708047903 946821545 456544548 848434262 286060686 965328731 374328571 235298750 241712338 747013777 351522519 512932770 613355488 303980278 478072986 986093119 708880168 548862514 619790211 643629534 391658390 617994634 666622729 223116636 856222923 435695335 209681379 749352312 387091047 903819722 679308259 993318042 825491161 298772242 451161196 714943912 635844247 167213446 169412864 829964926 410547632 549445898 544236120 321825518 833375043 351942365 655297398 939165489 318071943 93807859 436948955 357121075 883189422 850330486 374861695 106854794 873905811 163995141 797143351 180558392 262090337 388813203 130691785 578044693 671599687 788157503 119323028 336214336 385118064 744383022 164103214 329149552 349670451 343906493 546758710 147222433 696586746 479272034 495568976 912233678 938620249 286683834 129964071 287173989 298480413 669360358 812825186 849248235 69237419 783977135 806724872 837517870 345586472 881689522 697259293 200203027 160227412 127147539 717953 662559387 650501674 825157176 988145379 913177919 367192445 701176552 16721209 83355378 197427021 522751366 381720694 769952547 165263782 401697901 318501013 374474828 960995962 129479652 689209533 322922506 749206097 379698049 936072986 796276139 743545491 214844869 907386079 893252431 144626189 822382166 837987056 282340234 789134906 99748452 754735426 324750200 391086517 970178746 824478167 50515633 467995701 701344232 133915951 922819244 351650601 338122392 797354047 208401488 167743628 441384783 742988730 661124289 42276749 64423782 471115242 546684048 336201198 432611269 462402438 393542000 9383997 961667328 938772286 543236941 579797312 685485847 961312473 781217689 184546571 641121569 174742577 721174833 521027239 65593851 459198149 114277377 923562114 641623568 610100632 488880023 824387380 852729972 742957176 705359127 792979160 951667654 668651170 674731201 705575398 540843509 872249239 770142246 6000672 854571069 9526960 744034412 490266159 291150136 85029170 578457659 363573725 470525928 147208507 863603072 510570221 888043912 834755878 780999226 903825767 908223604 707834323 215344274 459589569 453749591 369911167 233076455 747553201 279432843 731976967 77283265 964779139 762072639 860769664 497301274 28732051 268511961 22205531 539162079 940010493 98978401 929027009 918609610 258309095 650584343 418120960 148553040 432546262 729472821 996243618 934891129 693323847 213674543 878931401 505933287 882556149 320259501 96170045 906513438 804249109 599563640 219669377 584590565 55183464 959799091 59398892 80108697 549116874 814763082 662921279 542588759 932023304 47613102 641974921 670237210 365042291 101276234 352407947 694998877 452869025 535707128 607762052 843042573 814249602 461584379 131916231 994193826 440178010 608319129 746588684 12756198 899027805 661761339 119358075 196537056 245896327 712930860 648068393 381344423 371654903 204180459 630562067 252429347 845865725 859288724 985877218 117522762 625527545 294477876 218986619 539212470 698254332 559893988 764021725 721109826 782121665 449239251 565492316 336554961 472199511 635937954 988949025 876336129 321040774 121525466 157430003 341751119 264105399 490826605 641199808 393079276 296409517 260666166 336925539 224600050 217261463 587821010 53514849 803266848 637764358 253485155 975835379 937189081 209466514 169558526 152254683 883212027 100485878 924015271 442724691 723982212 392119774 260212620 560738690 768646668 609739462 650282112 54511525 945357707 929109297 537296270 802644172 68639841 650410817 430474395 503040017 154896553 457234702 10163872 619870602 129912913 655536801 250745473 71246013 385755351 106809235 171377288 753977464 635291907 624696269 208561872 703527805 538729572 385522531 267244410 144959629 394554435 227917131 264182869 383288030 858968000 632273778 685738851 51702434 883467829 270883182 755742795 185584364 215658468 7868191 695903739 586412382 749553748 58245236 456298372 829339599 788229270 495029625 410183986 166559023 325913518 35021497 65383224 964820263 771168172 968473315 641499854 287787705 875387893 390045618 28870154 169812461 41348167 868336267 263485075 559507983 84530734 860773706 986242951 895117617 80897530 38366881 838075466 607132932 316167424 585277325 250752516 840646664 320720654 66936586 438529265 731565279 670928983 169250015 253032408 704532364 99858005 849796262 241455363 2346174 8194467 498896871 327043593 491550874 547936548 181010332 896195232 844356136 787989230 866008535 444829973 567815142 722603033 107631110 365988504 593359406 40049251 785264437 961783399 334678208 837911344 543832027 766581164 243780365 995328924 72075764 200828998 240390252 876745552 1031036 573107113 123372699 990016876 755193441 311927270 71185397 199008590 466957554 156189698 756833590 624031303 128158860 104425488 478272248 911511117 591447443 284766854 712632017 883305506 44262715 864173666 995103147 510932342 129086081 5720225 138088893 472835037 178877575 436055628 310917053 801743959 512261710 616096894 782654733 94439638 382768285 751366048 452893402 121990997 637041926 300178286 228623070 432158304 329804970 509051201 575507825 72379281 948056081 208245444 338025217 979517811 269017190 703068673 32964646 323399527 778693319 839406961 316760259 19262972 893781155 583845397 251268408 337234666 161802612 875965485 484193582 128346721 362258209 750782010 485751822 814543415 600173951 77906829 739981853 793257502 899716983 668881878 98950968 49665281 2742473 571050878 464549726 695540647 532826793 150923271 641089498 812788448 649017587 37285247 975575670 69911247 665296087 548439909 380617919 533981 577219922 724201340 938672639 82753229 157134080 757155180 963236100 841821119 290909451 376906855 135996904 127150117 558754162 180911470 986118135 793125869 317260423 44632631 289724692 883769346 328885001 900426229 49540907 259799806 245801715 249731956 776347865 627224090 248493259 829560235 105925971 194218807 383115833 524202594 490635116 577733886 221472745 869091243 526653968 838848036 791548439 519943316 820772985 605989429 715769826 431760823 264547078 225501738 902856596 453522467 984417548 742219656 301684186 748667033 570192747 977577586 70796564 543102514 345847755 696416695 120554158 847121628 631090898 243698703 493979010 739162263 45284851 376992301 183614768 497611482 845812028 872712332 190551919 811428581 827878405 330568857 550560839 194980749 974230404 618466399 309526317 426860317 785920489 861700221 610668223 825805527 361873087 266932447 119583955 692925920 81940746 16603938 298928500 949660711 581407056 151041195 791955893 435154935 74995686 31754896 714458558 428746838 421424210 38630793 275499380 669961781 846970799 585347466 627709215 772289207 607829213 553482339 739286041 268619374 825042124 478209233 800287045 94109921 87165543 558605106 794119387 902828095 77409110 546829320 58200692 160331390 426720846 115998492 966017080 363185325 210497694 816683647 763175581 368483209 907055281 658431003 321452549 951119969 132931019 435060923 983250204 343198199 411590716 582910981 94295171 381606811 613735048 448509276 312184462 30062450 510459403 195981392 892200577 726536424 239603345 8747319 302117969 678924679 199548319 652356221 360982516 646894741 63639251 698917994 628672531 817921301 104240541 720088307 563216903 119000114 282331392 228794135 131269993 214626531 285961258 478317885 169218918 248428086 229213204 91285717 491521135 16614744 447806554 697695108 823713254 204773370 628322872 737720127 161785118 904979917 990566874 467853363 207064239 501247395 165318941 862748503 600465924 114100118 398656186 146139303 784933089 48631603 703149228 807721998 42510940 283159837 846166506 208186555 5478142 52147228 511998895 151973168 369566715 755993335 35033848 222914491 191258802 984962206 835929978 696452081 893633887 245727564 136552820 649768391 694394429 683212983 390219413 704052289 642864034 33348123 464399426 979252717 598150109 411003584 711909124 887439967 222649476 367217274 782805759 198051663 872187970 294393056 342414037 520745689 359024572 944590974 274146027 917205900 956648120 831762387 100374192 411697712 458924772 347523343 537859231 820703279 65348621 975668498 890391659 842655219 753637465 425023897 404345423 611578978 777976021 319441341 702086710 77843144 558293603 233638622 972707272 852646863 602911679 863746438 309866997 336319530 605388169 352582827 279708352 916218815 711121449 219520715 230757644 582875471 453537968 20721837 814979634 124493086 250486715 431866389 748454219 108506847 603613154 805366606 86179327 854076797 807356731 736974202 586072742 655283264 66373922 979160713 560480000 56868110 395801943 220790215 830250506 174538602 873607080 71340408 181042618 776013745 816260423 42047384 222323275 567907346 2863034 175273452 727649719 795945134 441831615 630161431 671498649 667394993 834990378 40330393 66649303 423889717 306289916 738421049 179637049 236916754 648442991 559803385 778349101 411643721 187399633 545088775 257092891 40782867 148757302 901100294 663551075 838356920 234790905 966696991 664176292 253852782 419999288 578668288 633260516 950888665 238139631 259885995 206546930 365676544 282891786 314451836 887954730 229838862 381234345 523012034 122608705 422658972 830988926 46538842 683662893 420241950 806863093 711658974 194274523 754888142 261893045 429095833 394997129 516486418 689120209 447899989 427690453 983140761 299845176 284657405 356403807 373241983 568596855 108808043 619662225 567232477 253500748 928612398 124222497 543961155 34335250 429238126 389657797 861126330 579688645 166054363 353101907 834887264 994779250 299393130 65844341 46462649 617896469 904990436 88303685 839473573 610291972 139465763 442131234 178517695 128701771 807688837 402039054 605583491 303261560 876291693 771845526 974835327 740210402 56189218 322463330 996740353 13775672 636868313 521108688 589667814 573545923 728178295 108843985 394612139 158454953 83890846 602178877 292928338 971285417 363799597 824385704 224395170 846621967 52058967 769695894 39542075 57956541 117549600 684247811 669076406 810101966 598242193 998492431 574706112 233630017 251601646 491512252 520509394 921083166 142595089 973201246 884799816 75146557 824181870 700057307 418223680 987723027 214009465 473753021 716110400 548594219 901853207 713899126 724969617 86640396 294549324 93518603 913974102 608769242 46641485 751281265 853758855 602367435 442585977 756370724 428352040 635108362 960128758 311438547 181826446 276861772 68548466 726577970 794703466 437039121 17335650 949614085 419111619 763173652 504452080 276896124 83780630 424181658 973421832 81046116 500841502 58744101 134412592 655970547 279095853 908071887 112128972 756465316 81498155 471136656 851292898 235509346 193167715 254340600 19177560 87048712 849130160 422184044 285296836 754463284 777334907 153155983 351604018 282898974 540499894 995242993 982370593 260624750 923533630 24813052 932795720 390291794 140682191 814320838 494992442 155375934 853560788 870908787 209217099 350163041 623205029 926983910 173108604 888548344 638452783 169694881 66209146 888038497 240863860 674459164 465362655 104035079 267557320 521661364 509865592 172686802 560816497 550859994 627344039 620447755 804366582 938221889 776705073 595172483 365555425 99299680 89067859 858341471 457438116 134677294 987658100 8629440 577899358 880439708 223755725 596804042 117585492 300098806 161923227 401989598 758108412 681791824 999258150 203028960 752843352 68199250 792222173 832057019 987620884 208606354 125747550 816848198 99071230 906599374 875336345 227130658 209131211 264827118 316765222 572646824 483435960 129807425 46742556 239041199 389105524 526426532 579022397 16704941 863952543 902140718 285737794 807584067 336390603 513260761 133532231 447092605 224187010 424821284 1502383 618555483 871260249 373820099 634873902 197336609 7447595 895546282 371388213 873282521 709505397 507016410 267026629 233200277 113001161 807365644 431381490 84380790 286623833 321126888 687139815 298768032 277629312 981960679 268047304 33354449 778032200 304517204 632680854 58194257 997691114 254301943 353057111 87630735 591250092 728930917 191315528 304976478 863754934 475670320 968102867 59121369 572076882 258909680 33847613 235404111 920801904 963245705 132110685 401118358 490926904 349762570 671846859 440885807 471317563 588782535 585384750 847722015 276865518 378621637 624441556 717348636 953386548 698464647 740624093 41859765 207439989 616746525 704948630 679928805 86841025 823850977 552031885 116552733 790677067 81014715 92660591 819107593 993135159 199952798 515042210 349025998 622523397 992205366 70818700 175564077 753433755 758211236 887351919 7293848 103596092 880835612 895099965 657063199 486057065 986504046 761061286 784192251 193305641 518301805 206334459 359228642 755772530 744144536 296518367 234531431 622816786 983202428 528547756 190728337 437634980 668972666 102540457 251217231 500980475 113158209 797214684 237496918 791122814 210933357 787261861 428466923 602185350 884707625 684338220 601122479 245719033 770642027 225028906 450852098 636750614 230371166 752590956 693351995 877556988 199430974 556048523 219162503 361000966 41018790 548315908 843708134 259669881 449390072 960215332 942073688 642465133 379829799 177453942 532931044 648089073 798152089 978528867 989277388 656070011 415144096 56159347 848402092 356157151 781788113 118768406 549590749 809837203 822670463 296974341 909400380 993352195 471973972 244058923 40170679 994544996 381836528 819158560 317626174 877838124 646464745 387790411 45702521 348536928 206750583 8429904 312722121 954473174 136014997 15263967 950208834 247107315 94621860 823872046 80486149 78112050 487371996 127274825 981248770 976886909 850389071 402329637 428680706 135308738 389236066 729040457 35342913 308281456 295750214 553010982 152206260 629093704 577553360 73389887 136760678 905990892 947394293 564520715 608033314 410732473 37976292 894089364 219666044 791753504 752853085 531949866 465219857 959536754 365186682 995943295 593965945 506805790 420808639 534445889 380361974 365069393 566456240 858792728 674544011 592878034 996454461 688031989 67367728 363848437 968773483 90049825 104506179 819950633 26456674 369025912 170797380 517774113 118188457 31483456 152434384 283651338 677313671 284052230 577346482 727889762 125689948 909094507 650493103 981480542 919034912 751986437 217892308 886440265 62600705 501722584 326280052 526671498 241196937 228066000 113896981 479137051 171525102 148404289 543472880 714078219 406072729 712480879 323040120 701265213 766771420 301061988 402795586 707910992 174863026 536791907 795872088 558783319 693041759 470015635 56863882 679824896 436761639 298746876 713441753 147263116 293720214 537716086 100467498 39100731 754933296 968214427 38396757 531907187 364216541 52093156 134302689 223011043 732444177 852224117 858983379 188395300 251208326 987428474 34081562 630744627 761594688 638621356 645784193 638463495 47067552 43732892 694266216 391815034 239948378 1198027 435095998 935691049 465537510 107453552 551655276 793773371 489555101 859851205 94879616 662948930 84489481 13342637 639627517 206789630 674602160 110606409 628520936 648701466 211779457 931453644 395094178 161610757 617490477 616255614 233645297 97582174 575792429 903151783 194777407 70150470 934052493 918743734 633347931 629596009 828381065 67289786 309179228 331175165 26014759 558820543 533389560 296140351 692689506 94355550 433710863 223124566 492815560 477619410 131067698 300630803 362440713 699461413 418704342 922633045 232014064 95445029 215678852 195450818 105132546 559771632 218513815 295662398 647589710 315677099 625300532 782157359 192451434 434379043 293579120 747849900 683318565 781812447 454786437 423044488 324629499 639042134 200962468 42721031 259156777 568769058 932824135 892296547 406453040 946847838 682682496 387219895 291808068 254193474 428517854 154030028 110420953 609179065 245973560 62342189 917450102 461305024 157954767 139081547 865665179 70212310 259006794 510693092 653221142 835331812 179068860 463937774 204661419 470267694 559185276 23368183 381831915 987146219 473988445 87618657 315373410 660814019 125927517 220192824 35826250 390306336 25803262 212543121 624178015 887680019 216831246 695671465 87604310 557465809 180986395 632507945 398334730 488714508 319168159 499677559 54884988 948068458 67505789 100426353 398256179 361111278 397765092 459284022 199470953 870943147 820537555 676148849 696181990 968157277 350842503 330726269 281155456 360578006 430466051 22835545 329609640 52270995 711576904 188489336 965235522 843411402 138524172 369873780 640876666 517324576 61980808 839085810 646714133 127354425 536082258 410999185 382960347 616190743 436008153 35602372 45657229 323701229 216839850 703322230 951672741 242209104 791655994 301167076 814754307 68623445 283168480 558684237 413329505 138303686 468297253 929478812 705445998 170502308 937892326 456142470 70890837 793903544 268112879 945842542 421449547 796446958 39913427 817272970 903111752 846522100 914083887 223721204 818929437 558770562 542397237 437661364 307455280 89701580 393954516 796488137 655965577 184257099 893680054 766619106 702549400 454796345 806313518 986096596 891874618 600644947 610946303 823646025 378474060 872907771 426891644 163075166 244736753 540969502 587946856 583530638 736158643 968498121 325232752 944725648 113044206 625695512 280141674 859232393 279810386 297974424 805588446 670363090 400207 723501687 454334467 662338461 512039333 629842921 378033279 760708917 459031419 232483738 179891632 562968216 986852721 473844316 460255965 136613591 494360133 653604112 735883054 977729605 921359496 58348757 630902464 232207890 248796898 989893268 346079811 50266815 682885049 652333810 707276257 590526361 927152554 178934757 819725444 604579425 451404797 136234673 61831098 109194457 134412214 636439456 723290124 536628156 618166973 417202434 698571505 176787248 100933990 561980390 110907614 334666775 678812044 5077562 143939220 820806460 256616797 721159763 905765740 237395803 389883092 999550959 475029167 263582128 630042829 232840570 813873699 289905889 198583087 338100831 183036858 873054310 389231034 472306858 885411153 423927139 665696626 186409456 529015736 473595801 352247748 109644746 105275470 100800235 991143295 351909077 772104331 683768321 641552911 188384184 641756194 295873284 954164619 890803555 645954181 332314966 915526805 8163453 995397902 990162473 154599275 562127907 394364356 540886938 13659934 513764186 772956143 51644277 745112871 180876211 770254929 139043871 839317778 694865655 356968242 711493736 847261737 114304950 499005752 356068130 963285817 704894737 427469084 827735881 270473233 365886277 23529968 445196886 696956857 438690771 61327301 534293602 517934854 927584822 641782457 207625943 417771736 195756124 875498894 581416856 596172623 997378038 314701110 173269802 45332532 758563309 954022679 73010391 171186731 375099551 934942129 568627661 757358001 45691561 107448376 711987797 214139159 545138912 64014708 428151139 130249989 547443796 937965945 834730594 480740090 524231967 987341215 803305059 755188150 887524203 812685118 419930935 900338549 767429499 819422948 87261111 71231428 978043336 69840273 618990048 982835732 801802626 728362452 889048981 668828247 631802589 362631542 970124423 976488851 708546309 583671339 909462822 222821145 691237741 59831258 189918447 538510354 21544723 589162475 678941025 49198600 117250412 437974355 311379323 506670390 119157591 313433838 88401791 380411181 552154007 434673101 280758584 872192888 933229788 4962959 829381180 141664993 333824483 970743435 803933245 416751075 157917761 860420876 469090645 901941524 552801713 701492557 506431423 639032257 844767636 805853315 784466583 461737480 488088540 704975652 745977287 472365878 329807711 766973493 965973897 662831897 232533691 474688290 673168213 850457772 559811028 426535534 990600301 559468854 480791847 531380905 141280378 131815693 125693748 898729025 795831722 551233225 415550009 338364568 707103736 408835436 225185601 852785137 945614086 932309075 995991586 599411535 321350812 765686939 583587125 935629848 135195842 628251845 583632474 2392536 184633751 370285464 474742692 508061350 190495643 549636231 496625620 203342494 306968469 553272862 401079922 148341121 110366299 360068799 70292993 197553326 667159822 315813064 711968380 249052114 193093665 948798397 862318460 769198042 903797281 719611472 277153509 15979281 976371759 697426408 641403302 401955825 756020771 542405162 466558017 331098905 846065738 701347390 752955507 566122630 668982326 370103210 183870250 549207562 754294572 290724526 928997345 436351631 105150008 296300052 155580992 991175072 954426583 329401367 528545214 755979170 10963491 143930612 787104650 967086859 652453909 787449002 631090679 356270776 958970661 626671804 801541287 431695437 441722572 33628789 53341798 342622873 648029259 838767534 13753647 674330239 36219092 481597231 624239194 233083934 883664447 758249444 146206788 422762877 212898707 267966970 363855760 468699461 768140823 866504780 213631957 5312843 930136168 107234703 338842939 213811031 49946955 556749202 29137998 826449607 740066609 323974642 487825270 254196226 436743565 807578940 255941204 624939178 189500123 126555608 181227996 81313547 655865551 323702002 765591760 491646477 484475353 101145168 178698494 648298720 502746595 449030107 107265550 182278811 160685314 296095624 338799502 904060791 190199758 610754621 876191869 917203912 749543886 340741339 794807857 44823868 684950055 71698729 642895228 628462393 696606485 541551208 888298519 363676369 679759536 816203009 372311534 675501968 249740158 559509650 702139796 575177968 491550884 774140143 490676034 950691708 72338134 506895299 633469755 848117580 547021438 74779740 995332169 494995386 905575042 848059625 457088491 939621315 347851834 969204020 690598616 607033857 755541946 895334401 235120498 617892462 678692395 995074872 99540473 585240379 113817763 163861373 963385169 404994228 926077225 976311454 220842964 568982321 132562523 47068686 565266570 537742947 819521821 342439465 242940241 214832251 724036174 153563553 924024669 283262181 709580197 58763528 536714683 955431367 836956633 545663616 548516830 560766709 341372589 798394856 932018341 598988696 563931021 231812743 14449032 994384182 579307059 776010273 133987337 489116357 22235189 280994589 739444837 570742632 671659236 937128953 952178619 50935471 144686311 866425964 44015779 537370620 533135063 954434204 209269320 875856734 622920443 992750344 247839538 627986344 238298270 954219867 818850910 187206614 229870636 669026349 706582494 512969663 637783491 688992452 619314604 503770052 57114349 73182731 183453312 39938013 405173447 471526764 693885479 35908559 135935392 489635141 71885753 460762480 160429148 95682009 247757912 30216052 980895290 6858006 901804006 607422831 866622936 398783842 439425946 631719730 778171059 416285414 505049629 778543381 186849802 164663074 55347117 207377089 229794576 211407442 350517847 735510973 106311145 715408280 822937145 487449160 306098338 995546185 665866781 283145215 208580076 396278168 894578425 576713793 821507569 961880652 268071411 463698430 594077348 486727443 605009513 26739870 425379218 344618586 844858190 731716421 186471076 140346876 284697581 841588035 357607190 577207035 876277191 260927379 421794968 446004263 135589428 414751903 623098077 482788587 888035126 245309430 789463430 496799511 171787882 448736234 327602858 155395962 24368635 616113841 942331349 750009914 388781101 486679962 571655011 418102399 613080077 235297717 807313043 688430024 292023292 634832208 730674209 990845148 297802864 106033946 21622048 315253474 694269573 894051322 902990179 467118042 626352710 692386416 54109567 232964569 577251480 998043173 501428043 293472317 840154277 179076232 946001596 556838812 812929336 338222197 221071375 688646662 303993566 205050708 474530453 51897566 879147714 658541267 621634424 601268149 33858431 968892116 297181924 41835822 120983442 192646502 910756517 746887414 38507723 121108318 771018330 976738506 809568308 965319016 621135483 79676086 257097742 682279375 342073141 611874623 247161415 349880980 619944153 273486405 795382949 519579889 310563613 360010926 207851918 663047460 758420935 694416034 385606322 799973039 538761611 274614808 517439415 843962092 557750844 961749680 605290965 864789317 592098903 233849001 227413741 271292296 394166553 926958346 316214244 303559840 438249825 548056612 734717619 550772000 760053591 4490909 391928020 969566068 432138324 438709030 646331410 749356869 723786623 684295931 725591296 846009701 123327678 213950059 276635119 259121972 518869036 22887679 389588835 225321873 715146699 792224424 333676592 715204616 21823329 669116356 86585248 95818584 646051779 23585445 637235132 918818815 616821151 799689548 185667212 303462874 725441446 553502651 210790582 299082476 303826003 629354062 968286056 12710510 984920902 711123156 440568974 900993230 201844745 13215980 921308895 317025905 962593005 718676395 832036685 714233732 478701861 526218724 740514004 153896908 337244202 766778780 176609817 659848498 601803494 962099589 129805986 641504842 247118268 734209902 136722820 487294005 392654924 423710959 784932984 362465173 237259843 317125371 699114520 34704734 922415895 928562304 140081140 852749235 353687202 264179345 708780030 265248258 367596093 246975940 710538555 767734541 707744518 353003902 318728603 224654322 155022530 329843324 21181711 856292762 65675331 847474525 82342181 850604655 386518306 606438968 523549906 326084027 557377716 74045138 720133902 215292446 401591138 897772208 263718819 231083471 894704567 518108590 22520845 666719510 549981397 711362137 454918473 75469977 513096799 877783127 861523339 43179920 437278093 818862172 89797628 302178820 636390526 888728483 109228049 471811644 455654866 345985669 987677555 345083505 78375728 362801006 115890911 704119305 375005650 511106269 484044333 877378182 762996225 42973509 713363997 586046507 644929991 658010971 611952015 912480590 219054226 488828355 475290046 226984186 149298117 871593737 185030408 179347026 850772053 692379999 114914702 229352476 709972893 136145064 708723155 244220234 922630946 766464333 72117935 203106878 925745726 474187342 29189179 921407919 957153938 71865809 663179343 411945347 131346566 550220824 562407541 635800322 947233950 231407075 669684842 179052767 628648808 659867435 320674009 7076208 795476001 637271034 113729061 503244112 336518841 521424418 655282811 360807525 343916109 790093399 588044968 202538997 442220177 208423176 686744049 584297169 696173059 350979368 528766383 649818654 483724773 386774841 476511089 483200244 900417078 651638379 808770858 387997337 594750864 222908128 88394735 744607020 15273262 311208404 565362584 801530350 538323213 714123746 279889255 373471462 954899987 23771996 979539674 381807724 172484400 547462243 21749787 444179494 336351231 771104472 478864908 89293305 966305362 213117006 455230761 796023468 356552705 571146955 477311026 246661428 152399490 988532757 632939194 789764095 753465942 963959152 428919856 736897222 140247332 343787383 469727056 12958683 919353843 82142584 742650735 511933480 923746882 382345209 894054664 618994571 279104489 66565430 275010242 226007425 248405782 241096607 103001733 216719124 246610115 464889771 778381928 857175603 674174822 19968201 611458261 172724373 77366663 154885683 34771084 575751400 309571627 623362403 951049832 231542678 164295436 91981398 298546582 334886558 619962678 243773457 111875012 817349547 313569249 95468993 672923263 268725175 501557457 885695255 778732336 625547660 551419999 114014702 304749273 21094571 883461073 574931492 175567068 421391075 892898983 982379889 187739010 959983683 115877259 849501232 296112989 995721037 535150952 481993126 544850068 764475434 591689188 407173750 462299750 516616766 807563710 768334341 794017414 41625606 776868298 750284226 683766023 780038583 668044533 206598823 833159878 286570658 422040572 877657192 691351578 816228619 935999817 707721992 803757676 706232518 60289824 364889273 260810925 121988891 680252579 547570060 950926550 325111206 66315749 845233636 290070735 510698468 439838582 547143212 700323389 859034733 425574581 869688567 932661527 346205177 806362951 202856622 153577021 495900602 894301150 710289945 792598494 623180966 316221600 372557299 368238441 142009798 338066088 535782214 135451266 738397563 5317897 824879756 982443204 676889913 305135371 727213462 97024685 193081870 831681456 379360169 533510394 24795062 708087900 864767245 977931982 407739515 508305897 277986884 780760503 473095749 806562723 885766556 187770337 107699366 162269279 660768461 114503753 271565835 40994626 880328172 108020979 426859490 568351480 731094634 55076418 244807904 901950034 684655708 980191277 821656774 947966864 200927206 212530686 509886104 940592232 473912265 52606106 740248141 582991933 944525790 46792794 228178263 27478891 398862819 100318555 926818766 472347728 401647049 722729752 582960429 551779586 369111560 670755707 677464896 185688702 262468661 338069149 576302695 80655861 629993395 881330987 68535877 956170675 227335570 674194528 762978150 899695703 735938315 813925528 318472478 184102744 887845771 280085845 736624785 80971537 634734751 3688954 67424875 214139591 873119304 929718422 480121425 569946289 28694552 564973290 495904226 937493202 483273974 844796631 879203014 1529404 526585452 416425680 704488392 256087187 107008057 249950687 941888106 310379077 272477241 350675574 401472206 807406862 66003867 28241737 701501877 978574207 155569023 211793525 46430579 226066738 542913089 100611541 373164439 787907111 229402708 187096803 612798973 992535312 704254367 859326184 273561656 718241563 228536430 825308060 663185975 618267973 763051877 598579506 713771332 479550393 305141051 305067102 642913967 13404919 676288943 876049012 959698778 81437176 454289895 864536489 763867824 510077682 373281944 414076542 677757681 955587635 522079922 492942779 301066457 698039427 67651 24568205 622804875 702999295 326788571 854683098 308149872 639298742 277371938 827369773 361089673 191203720 292189382 525610984 985222897 597855262 263712511 166852264 30563242 604179895 91455892 44390493 444722499 595490518 85408754 409189490 261481193 190058630 902713335 297446530 658684977 802052943 887358076 230824684 185051087 507807462 586578515 758270630 739495457 68163673 170346721 157529364 317961861 363620257 862555073 309194632 930050689 103665819 141292839 197083546 854180083 188848591 650956168 617774771 900927965 479999210 567616501 477202366 225396669 906111104 897647392 310814347 535406227 293424268 239584053 151403485 862483663 800384395 551421955 44470320 254569713 181400928 790028080 752474369 928093775 716720590 226974115 513238206 726636759 241995817 972043007 208627859 177875010 724239034 616974256 670198146 267120663 253044970 643407047 618627392 192128401 144494622 22973722 778129766 806154679 942349494 293548749 904062444 596122240 525287808 206400785 450115945 35853978 726510848 186644325 188135809 312830546 644000403 959592067 595670494 506016830 10412471 368194862 109537922 721358907 538686855 226818987 693720521 332224819 758208102 399321177 429683573 182813915 199690830 139546603 891098303 363893652 246269349 315518637 969311120 749908656 448816154 708424699 758233289 269378842 296848681 928444454 56827432 85980654 119872299 227746823 76874105 982830804 341701818 253745336 868617337 330892351 384014487 78500687 180697989 550301874 342223255 402150368 958516169 961403794 339305662 564497489 819466851 621921306 224374506 970283658 728175187 556385808 446134779 49740056 590228315 261452689 508735958 696993652 547832659 855954670 839217716 24999377 445604062 697184294 29730425 794799714 60649074 180993533 627770025 501172787 967569267 422614310 767032281 756062915 197600801 30673620 606090167 442610462 264952013 729032084 388669507 340654810 676787314 798408010 455297258 669980555 836829710 495661108 558549933 269176536 262248875 922891240 294754931 270311321 134895295 779389127 946711272 943257349 729511452 16056866 985240529 88206776 243817452 318136759 893402154 409259150 66978022 951451887 157898692 358678214 816382099 577489101 501611345 172920637 446265244 336431530 913660330 511378372 492810055 827089641 298254536 351646314 644200366 515432865 982338411 139221873 426818437 755012235 642906256 873712613 956854885 883079156 577690855 805526172 450277070 92160880 656273033 236107985 514880716 67403545 357808256 901026402 404197002 883001431 425577107 572783866 230168553 279930252 81765756 93692086 19603843 972980581 632474317 693392504 248216654 904975420 297802040 695905666 369258601 487678042 272085926 850830543 382184787 600591054 644604704 275903116 562040647 292567754 823156376 901117204 541382807 866233863 477652315 921554179 393183305 245933473 938313464 130439506 286565611 169992496 632020121 841580685 458242039 582912397 845485881 470375266 934975052 199629364 981075536 40562893 584052367 398724595 748951113 731366354 344808619 32834743 408005985 154358196 20950040 992913771 546019331 964928341 269804753 666481302 91519161 675419205 163780710 319300108 198062797 643249290 481439280 165656882 224336279 56415169 730828623 830853401 487631640 179720760 24778836 260065857 204272599 949839226 22596234 766090719 773814216 467596841 777376926 123318095 286739027 691216472 275631197 367696656 872970173 40727342 899024078 371179847 231363144 20507544 197509525 290829641 756355311 5828265 118947655 43716518 403574975 773567614 106398737 109935910 420483102 85560771 936733942 128500783 734178939 131826826 355858769 115917372 947202422 513267338 668750777 222838849 450084683 556933343 68159022 646894271 620437761 965603376 669387602 660766173 88784730 720907439 395541980 502263255 859356216 298077117 531962712 399201851 645613701 394592959 964150007 540582985 724413859 155598535 588724833 619779514 661192484 833058047 944493799 464835974 64062958 787783563 297569730 853271915 756602966 455655408 687654667 597028019 930247080 78746711 882523958 394332170 934021609 258877027 445603507 529796366 770245560 839182803 160038630 466832451 520877477 271148658 922141279 260740225 197043169 641840725 234516337 920208783 365764147 369896908 601730325 102234439 92592859 131523077 43315221 692603407 996459580 499697583 682402081 476082780 723594417 646005055 387226974 175703308 39472277 51783453 785433497 872018622 852867645 568155055 852697246 376203349 243072235 277519847 506270725 531552877 835546865 663082647 28465347 316161539 275758418 364431261 940682292 60267581 309809246 465014746 870520053 545052995 981048294 922091609 171650433 399966015 281120305 364207238 60144440 648970609 856405476 347170882 4181044 998121672 764794466 641793266 136795910 695968839 118470375 405433754 964445737 290344720 903648282 223203755 153029337 677318610 164933882 513508131 784797344 281329542 389686643 933289298 974461185 452987724 981805322 229486050 949897095 70463589 944456868 370900893 681152842 49155579 975016582 692568400 36258606 324778431 856513886 367204404 848084707 437699931 254220630 620047356 889066442 467678245 932575119 559907656 975862340 645259825 85553019 964043977 434543752 196350548 991014983 673361588 503928845 539220334 746699606 754242438 610125066 614306862 599096845 580564926 352318465 168684987 911791027 878729627 919679717 767570812 70515431 562204051 888358757 879074056 821179233 406019617 534754110 118501101 395712732 49234645 904280694 680549535 435331371 669739880 937608820 645416380 912928000 51870219 305696096 516486885 524151773 584071230 534947881 19170901 379523036 891049932 777192095 611879424 778792948 528272193 703149687 610880782 529934739 118578137 915265018 906175112 260242117 539202193 767996993 98526847 389236881 398421823 676470277 813372719 322131068 510378006 146435512 55456144 591464021 962028992 619236416 693501213 386124001 605541382 417175762 758845277 372486772 997989071 560252316 713447658 982462244 352020905 879537890 377953987 131930818 566243288 293651426 116116164 657047373 74254038 246242433 192252936 320048421 815579699 627855097 94570821 417583450 901475254 288787772 461581723 941144806 772308927 581233890 989515808 442202741 803905437 839675039 128071907 163580871 917691608 59231904 30271480 842224110 398849674 30057244 161180357 178880743 217492818 628278075 676521038 523157076 724598666 2041385 721065035 451288087 787095216 284754358 501704639 482007438 813454450 229917072 268888407 615422584 227864070 65656140 234956521 754857473 475033002 405251660 750236275 525082967 250945899 531122894 610205111 272417229 481483171 439873565 277094936 228140862 111246347 385751907 937459302 772290294 867317980 133443061 729923075 861187375 623048368 839615813 129686836 378821462 762167219 794483260 569551600 641566172 748854391 296948182 488545729 459125862 793841535 348609278 34875138 573999569 273479390 26932653 472355501 828980160 842570355 789653753 230488732 6525899 902933752 204499801 716901924 15223260 369565352 719855242 539340473 227724204 333740439 163442259 820360642 590894403 810606516 750420701 771852837 661291059 986730985 450217087 230002338 361667419 769247621 404848024 400461153 109611593 107080554 244019822 89945639 616277916 666997473 61296945 398126157 394125965 113853544 148999342 890394657 223386345 596861266 323968674 386100644 654823653 478523428 112783922 736035863 141249350 297163517 367986850 248624879 264830573 18281698 654525240 12577081 389381148 805843693 493944328 563710579 820507041 955583427 374727030 554238270 538962879 31621432 26786103 512568051 643882785 862344879 847453327 762022620 457342417 437115953 153987990 368566812 939104006 571705668 423733733 727582885 62796466 949104730 647469147 905329686 297121024 426353210 919949292 897662588 556241311 507622034 655683013 187516246 505625241 950632844 585199943 867442129 488203625 770786483 128674854 747177978 645145644 752275405 285500047 707473419 231792931 479960974 385895730 966013367 206007941 619190688 107936739 863453021 985322207 259364229 797079704 252057024 353836122 668653211 375609507 812943937 480063346 832292623 691972108 803116607 132010773 944973411 692276706 463871512 287536915 339021126 221668702 814765575 950400727 698175132 16306412 923264340 547118772 800757779 490430294 450393803 108579326 353370937 192081542 204767363 174046019 581490225 487162363 665382630 701091202 576788113 540674361 511587540 567592215 261137547 781717232 528663517 801744544 62855291 878554800 259978843 910587225 414371840 517708621 959959793 238535757 141712681 637531420 652499814 460619134 918362596 805111791 344345493 865009870 160759539 660136781 823283911 156898178 175427757 454113747 559713487 25239193 181980889 908632453 964253008 498847258 213961390 631162555 390759362 584012413 464592645 890131051 961575304 723394450 762067522 39720457 754104385 164469280 288756191 629003135 820765905 958150317 827501165 870960047 144163265 52723125 384445936 988237467 412445297 331732795 421410851 939655158 19521985 746056612 329541694 764088947 781704774 875817558 32964529 260126137 780062938 321897633 515165617 745431778 901355754 895409656 407455253 524631442 907228019 921270656 321329330 765114009 521821189 638303864 409711966 951277437 374535938 341298912 54987528 396310088 850843884 469384375 677516122 56783769 703500295 461189879 832701752 305141603 310489891 309976610 825607592 566980298 809496148 625698527 7046979 920291395 923047071 139783521 608118149 12615520 736020159 582443669 673104752 214894167 150924654 865063144 57803773 657541659 880436312 418025628 409633759 552639833 4653761 48992711 368399289 541710403 837184440 233525986 308023758 883192231 878981404 689266338 889770794 201382971 893827630 940996929 113388845 573081004 703286044 586398138 886222685 909307111 461007312 321592514 81877334 230664245 836749465 18748390 320804443 253080294 743039876 532228826 906130616 338426080 282170440 842246996 493194013 322911234 738870548 927005005 54734592 460568069 472772347 593849984 902727917 443369256 723374146 362200755 613006095 355100978 271123271 166140141 763135291 676146392 913984305 387528613 392809728 291394085 99215440 664307709 220609240 123163195 617559780 645212935 286735929 267157543 87581781 65992587 965786666 534675578 72691415 802124840 96789220 129933975 290534854 371004942 840381244 626147444 525842916 202129734 269210260 911582576 142188340 148560969 651632049 371144498 45011487 472053582 161712420 254207515 618164995 113793593 577835767 542915309 305403118 262163608 561651620 550280694 988452193 52190956 548652974 796153423 607605025 883045879 29183642 361049960 183169366 255317660 319900848 376267627 243305232 535760920 270743882 836909889 539970617 841973528 691790842 200665074 242622388 39147055 685156314 88301459 711843456 340218474 132230080 908397947 273621744 940894597 767839975 358000892 396962676 54147300 502390539 443494890 627962187 711530827 740081640 201584449 593758998 747026969 822802274 155399057 901730807 140879664 233815801 97657585 248135022 96247293 156037064 513552692 954666267 186642137 955741306 649339812 515283513 719918641 968941117 352842072 626488372 983855097 779228130 196599627 543342868 944520753 194429246 917867887 978249007 13061488 124576973 180243256 361033752 256896940 351393848 84244979 672690404 962798511 684495928 977640572 704844885 64344077 828521218 37490438 182811933 767395336 193123891 126891962 76978030 427301517 9973708 779920722 938889115 759141783 109520958 305472517 210534999 943208396 143475255 761455210 794070396 724891402 945467333 75764485 622071419 32510459 745105692 557909727 341865838 716864325 807792440 532865335 508985912 757618741 130053832 675379503 374679918 466589110 324183327 997972393 350871263 560103688 258590938 412467962 185709734 893372207 699418945 754726910 733240912 845121157 409325010 729205787 950890262 563166591 532914893 850744621 56336407 434204862 580608250 460713072 834246664 7901140 173917601 428389312 639878436 380002105 813208453 606178310 763244652 961233472 760859117 874946139 495366706 30461005 831199271 153680429 788529762 301652387 967552981 556233825 642291260 818045945 727108664 225561816 958982520 304699259 756860690 137269271 123589647 825049964 22795362 650774580 338888738 414032729 6449132 893857943 190163311 956616766 881198353 650323402 753625787 20906206 470995639 786136610 556382310 295779375 775388674 373061560 556948815 418339400 956917990 519341723 666782417 468461852 939202368 615199342 987460083 595353632 339259103 557118968 57700736 465936327 171555468 667481536 831346574 569627407 503493984 614081049 590834602 16778899 932387104 929953377 284626104 686200059 168407482 90467947 517476404 435500416 718131128 371091207 310853627 176426532 158751361 897215227 318705641 43126172 270154812 94170918 998887313 65928696 807227923 238833313 651126092 773564275 335479796 575893480 689539948 49017870 728131432 891820541 20110314 596023972 20341592 544328036 315136416 99300689 958844937 152188076 998210588 78824712 396945488 633501220 190091788 680798683 453298028 22738780 260719603 885377852 884587222 789586343 423695757 203037585 509672965 8378763 207731132 206472438 728609111 578286282 667220879 176421156 68457844 879041496 289061268 964222206 515656061 827338625 134410333 893977185 757937211 545570733 762422157 687453128 41058225 600574923 686426381 51966549 740839639 354200739 904696460 743061019 203533260 741851805 532742926 442972603 999450614 652387939 879166279 599722866 276661661 55253137 89815599 709046860 147027504 6913620 673695011 982932832 617876806 83229860 204299332 957733980 391039509 326648972 605850700 623592203 153307914 283148034 281700629 515519133 364469355 218190539 86286851 222348603 714969935 792279035 249212091 342731230 773354532 943888423 711189189 816615325 136833253 5520268 306041034 846841801 994890762 251806870 735636818 689048261 29930267 848718674 849615519 136969720 502071099 652345209 842083637 500506644 700018524 83385897 374367997 33257224 149897416 995060076 704017094 599421497 668757173 398944843 237878002 719757108 460474026 130656787 303672174 212955475 856319488 485344747 154532551 612249431 805590782 19840372 529727411 776801029 618307319 100357157 648334613 839570946 567263819 831040619 583702454 288815129 305452564 289258942 643338310 396362488 287392661 821736653 804554884 887188202 702099639 783986575 114333335 802262770 578075549 599629575 203205921 519544494 581850887 52851001 724982753 383081918 498065199 631104880 936836818 472936349 721627600 715265763 305641827 293987907 922787849 45929838 315660799 9963104 768352999 343260568 851851677 552309669 489710904 773550366 539754640 237645176 939721175 918943592 334252893 121540625 788487446 7148752 686126975 639971685 861957261 50643535 502926353 820271977 583891356 672582724 550474430 888376806 734628575 820368513 266864453 393913804 666845543 635975420 782913303 676349342 275752203 125709257 384880752 697085779 362864678 100105556 319525056 780184445 758047022 144723903 230699815 189460836 637652365 143199669 520114129 540328987 333259797 103974608 534874873 969671894 820784623 988003717 596235234 10773342 465810246 453858038 315030833 570983901 162686530 671917633 331045440 867173611 723631871 69189177 14191167 74798299 777714976 780435232 520384941 64591200 178385845 893317593 951319389 353633556 283046180 840207483 800629701 568397205 485201836 367222222 146896547 926819930 780307717 422320222 460889325 998680847 401211027 324602460 28951386 923093870 907393815 661841642 938679101 490475415 888497354 391895160 134328121 611519856 445845689 339978360 288566308 124403004 600442336 484906700 284834843 26473187 626975888 135238199 112342922 644257834 439124298 705361851 536865662 973713843 385225397 514140069 178596925 22861511 653177409 702576153 692448235 775037551 83732326 885104708 804861595 85654220 640323170 182365388 733732033 163176373 292250562 720663256 7270196 832383870 992488136 347027091 446559112 568023351 782227075 335540568 373481412 190336286 811594451 828689277 55729982 998309929 536629583 558732352 589684734 792509355 632705875 955424180 471773410 530986882 656819783 248158862 97368571 916460087 267003984 12209966 574935657 36287584 514897793 416934905 692091676 364185734 347638046 634741234 739096440 763190351 661473099 936150925 957767843 18921818 677162543 729736995 990986797 422775097 956286682 290666663 615243621 259872276 891531890 36274792 109526228 477956437 418117049 575363732 563710006 6405739 303173375 476053678 444144370 603283399 889060055 943672397 433522844 45701351 602495035 622522895 810003630 727919897 57875519 378405466 144288556 720631818 745342243 90253112 309004961 276253077 771401262 836931888 869404982 200070985 388346468 190077243 795532433 671176852 907185283 292012906 366419327 388231091 600000278 264342718 537143191 35282856 981551186 599539226 402136310 104332836 831083074 561927624 471910753 345468841 740909061 930358311 575483172 266415917 401449027 51568260 39567970 319083421 970926605 454594240 186931698 358167694 506609346 141006124 93613361 283599880 572123030 196913667 576554174 174354492 705402307 169817345 479416428 516177675 777686206 681427869 784764876 379356204 309421714 502180932 349523036 798366774 267319932 490249919 303516740 314256230 316507788 149441390 654889801 954218078 594458959 379043098 634376128 860565159 189953346 921643646 64285484 146749825 872244733 297698023 199756766 501887133 732818634 340560473 73793818 124059373 883409591 326604142 982834341 124419372 361315571 380040743 237118596 175480211 955808550 175502946 783289158 578912997 8839564 925338797 718274698 236429398 358292136 398218515 502524866 544457181 788410089 407778775 321082103 836190323 420099840 11919040 103479014 217387442 585134603 893238560 96067506 346161386 663845144 59327535 399013974 252592951 496256545 341378559 371347876 186210504 602401973 785658902 123927566 260194862 917501531 281429868 354698615 611464208 346114869 228919008 938243064 954794833 386772551 884663733 178088533 724826605 518085263 858127756 982361425 338157734 443492732 786678702 349470876 502322430 248870519 377929749 215160803 236183368 792004641 380993121 873618162 869978675 916790575 8000308 422915638 288994525 778665875 874223091 260060153 853084478 492494498 280713762 75769868 825178069 838180024 955231195 701047643 238013997 77213008 741596026 300741897 470137119 839750702 533210891 578694166 561693275 354527370 232719306 167703351 718452178 442842688 133256853 719461282 79515128 212795522 977657891 285370936 686377114 819444139 950060571 268454153 106575568 122359620 504729650 242708591 530310754 62542503 50583042 853207699 137201481 978847694 122554610 746786044 827452048 548614659 50383638 224840326 147512853 282558634 204905308 391472152 281037906 907799316 302554836 595829106 163485068 776865377 313450476 514785319 959729334 272369801 662056973 314194389 553734964 566133649 156366499 760988399 401093262 167337324 487509143 273347663 456079361 291448492 869751702 261636534 448447481 873946511 756012846 221292683 349598084 711767359 427059565 752133267 70057353 456560351 972839406 665647271 772681839 949686129 103666068 279359476 697342675 885124388 428618937 958776882 69439971 632226099 665175091 512244060 477139047 432129250 809904595 674932915 552426982 482377011 517003219 307363944 200356911 218927598 15174698 456752851 440167195 26463485 148381541 688045734 706900438 989023359 518909558 545844125 146638288 182957210 215249995 297250217 959137398 76742666 667185619 137565860 989423162 137648275 928061654 983658843 744987732 319016814 573360467 53700203 421950340 712082533 25237655 750423713 535563576 244463050 168598673 341394665 738171124 84917000 656195690 467572223 477655323 347680338 994364414 631091073 8337919 552049707 441588600 945821715 456074662 777706400 92453715 766447919 408379936 172622684 852952797 798270035 29913304 559154076 298365404 287797673 307952658 363409153 990199762 368438307 130420844 522821795 67205637 724443559 171046588 164334839 550365743 191886909 900649014 421997698 770978630 893312632 706865967 35075151 387805649 478819227 539951023 588718490 367074657 593823946 844714470 325828001 637100512 40652319 262608989 761861860 727441906 219255955 719981657 213990365 228640375 220542339 565845459 496233973 278494563 995387534 822245339 853321934 533061935 112093746 269864206 550497602 135994082 828635222 961519239 243587888 978986265 63436027 305045631 240881026 110539482 489394191 116783593 956835837 739801308 840699873 246995538 499976877 160740031 705322499 116438845 957262918 379985600 618113296 430551638 679803350 856419028 295214795 314309481 977767257 820207040 673705882 757253178 947840825 173142480 325773442 79240912 45766826 751894507 888457885 966318163 556290283 591673689 317074490 166122105 814519882 401298982 146589254 964890539 707267133 211217411 326358983 287257725 169484020 686989609 947712996 126835802 650613364 552814274 582233835 116753514 33190281 561439175 574295774 584769871 987754567 322184074 225742831 713144126 161216657 26242924 63927116 713124732 645232056 410631182 297562894 498363900 383285018 182812067 949738946 754438421 541244968 281654278 979087294 268321931 47898311 860598930 620797256 875906883 766136210 365770148 644239168 188321129 847808855 97723009 656359204 813643913 274284375 448532582 727545397 760424402 490095152 755226647 719701122 830403109 728546341 636014284 634109702 625816300 259299614 816503686 413580307 115923654 770527000 216846101 712753602 982180412 497628974 88750327 9465513 569102627 599366829 977154682 960641404 812890272 651813323 12143563 29465186 957172642 293178117 739686097 449665830 306569864 645058963 284877568 20323667 94007024 60940846 276325200 718370467 118891219 536677206 188899040 52335292 37351614 674051911 837551061 462272265 223639505 270703310 591573025 224900402 504605767 921905239 714224207 523450737 567619038 698498044 674826147 170016803 716114322 980864270 503558689 29829886 965290523 292905348 785481670 37118471 176351833 862293086 321960192 970706517 13569605 136920561 947182441 704162804 92172482 865083871 240806605 196794332 825529693 461114627 460182401 371905272 439058890 932762214 356129079 683669330 951463987 857806113 741301951 53881265 816883828 406108954 606707659 893480694 715801138 416618203 901108608 514528362 556180222 249319901 355537777 388486151 703554916 496117070 188294170 942182846 445095011 687614255 834415378 954706666 930600566 48252422 968930874 816700010 544504661 438502600 511588624 417199097 286767367 489110988 792390256 596076230 610425924 188529084 164766908 399599700 529980154 499548170 647333932 106341160 618727269 746373286 795662888 330156114 909314001 188658169 147541054 447638179 471869270 341934316 737946602 490463777 223401333 783694291 600225904 64931629 846104430 77015312 781384738 541346771 151732039 269080056 253479265 878147552 91857959 80943135 767404277 609812559 742185556 163794205 333206549 776021736 413608985 593191503 394192642 287664660 369518641 886226183 707488721 77484796 281511399 130779571 799775200 937806342 156526170 870699302 293644043 179970676 552349744 916473119 254742009 925849634 333681963 862403378 691524046 764080719 740330353 562137355 533416358 529999717 227989076 785178261 574911155 527486813 765377743 266788615 750412219 382402369 139434937 388654926 548444559 375146423 301354045 18175482 550274041 694138599 7986911 416359711 284995318 705655129 761917575 904809499 936727521 760715874 922770628 715465396 74632505 380834873 258134962 477212919 599182984 46756296 222427168 540724557 816648281 318454023 120602492 395846898 717381801 850068485 255171758 714010944 352376245 367510217 910272776 296331484 383021733 248510553 559566381 641113207 265179581 103073497 795823004 875444882 95606647 677472687 572499624 539002520 418191438 233172029 643481058 726188506 339805089 428804783 887387371 813816083 938279413 490246468 574948823 562523536 893167340 708621489 577376745 638388951 134098703 618241905 31537907 386217015 455571169 341912927 110458803 322706837 44302250 79183464 803953566 33571276 259857833 344467375 545756842 827861042 504959535 396585608 347414058 735457724 951605616 339387422 53879524 563626650 817776074 860326952 689047860 357502626 113953204 618493238 398573383 440941428 716539868 491818935 863367411 339642743 324214613 641317617 985607447 351813691 912526630 993826062 834690680 366946205 228408550 860221590 287071793 840154594 495892313 591547231 105715350 958879483 780034486 300430024 32609761 124807017 543516256 514026925 356360589 901644707 860454018 779967540 224468483 424907671 72504003 129583727 514274935 506243994 801248900 331096907 767262136 881105396 550649949 392727415 952555300 849404965 131390392 683026452 241514342 729682119 762132167 317548805 209212090 540067123 645495823 549465857 316586828 517972688 935343095 920501039 898378686 513902701 343572186 761671479 45530309 820092108 739639573 111254994 843238784 707250389 504973546 962315541 562278193 613954476 80977659 290662776 403790592 47654720 654808619 627439251 737079970 86013420 763551575 795205983 987569310 830438305 975655872 209277892 555546920 216846737 413489759 542046551 57226584 733596620 900280425 189223498 278179115 974864289 823572470 694072628 678906688 781414874 448905769 154455410 361579585 594414406 762637065 700577489 394150393 594488201 864319768 985979088 666112126 828856354 168595193 872490265 549454747 307509676 70800361 836181682 423583841 545406457 361651392 510986969 790819718 525300998 346378595 237413827 10062944 656954064 723320729 351444485 439744287 745712054 425619427 409838761 701487863 887594 145766798 155565237 947412424 362458127 682046438 262548918 777454499 566490870 207677140 567370576 851904326 629636788 469142931 807197339 4161973 751695614 730072555 891919296 271194559 837195698 445819887 404233666 500265147 341633685 309136980 718009408 313856759 656962991 908708314 457307243 454046095 31721116 608606049 37647304 527657646 492480115 144380124 840175872 511830029 85580894 880529319 807897827 507463723 999124193 378390975 606514311 527917746 766942353 413312491 946211416 702650999 647420667 252170268 80240861 965069584 443806953 128328819 304241979 611317842 398031145 89004003 693506969 346315788 505726144 82333586 730762625 101960459 704719781 447641649 658903308 478027962 961153538 507568390 86313957 793840169 806926442 668356454 343126305 442605815 18446015 540993485 200770933 310779127 576641345 790982290 64422520 6454020 213974005 974640975 890719699 355900530 405521335 977815287 41604300 840518071 202682842 508720805 809318933 518107273 146970546 356009837 434546870 987352796 401096942 169862865 642126771 68581796 233629245 483018613 443023960 277060774 391161942 682708379 655518516 299205445 663204280 251213665 547758155 227211151 191960610 273272648 561787951 491948474 684903587 258906955 622553416 858239131 142283724 818426338 106419554 879684379 846934141 244312235 16312007 622109366 346899288 718226542 474868434 336503851 662606179 946466308 747748057 971564918 568633503 971933804 902276589 967935799 935698518 718739422 429264447 550557507 432917757 601919746 725794137 979640876 66288860 306015077 755000725 189678410 998685963 810883613 773527865 895041812 123851136 631469110 124876676 933279669 54800038 149301630 399902206 164789519 187640189 254360496 286338200 163184422 471892500 775381778 714661133 995744128 343691077 950817630 909382081 562367312 248494316 689148585 958127510 788674399 682151739 14501452 937568228 948436584 307690012 296920229 95388523 340848017 36766784 606917353 974285500 33691063 288798776 301497544 270298622 374196966 851382458 510009487 643609477 213779886 929796278 946916973 256198759 965235002 208890282 313747040 963641191 668423687 470806413 925360436 303277574 782430402 109575502 831790905 992447634 425385335 678775798 287272883 256780886 962379515 507367394 656351372 176339783 451315819 815558835 272469095 431237776 715403161 856605523 785459446 953325139 753840275 48158197 64664538 712960419 627519427 104043620 874131943 860174647 98971056 196277017 202241811 649352012 931405797 602027220 168241703 672214034 746800856 813921317 5379582 486103033 900779550 665083598 901329882 910261223 606049596 255213669 805468975 41144123 483477313 190056946 556112534 584323255 329284379 575637673 998443956 216388829 261684685 465816265 721862181 762436654 37574807 154712227 542039817 103148364 762908047 941958575 312186566 446374119 940830364 652668340 311925588 153435866 327725600 168618505 609703178 975351407 582848016 53618490 348098509 836252427 546525459 872583128 898247228 856672339 833961241 28948179 535429904 3753643 487103823 203681855 278867320 421011565 486313137 399627570 472305718 618888288 219783535 430919920 903854526 638277297 647445813 557734852 15318032 31050847 791297598 675557291 196983570 551906771 972424168 893462138 297699096 895395582 765854643 10126030 510034096 128243297 824060606 970585639 204229243 668364197 597313216 997165248 560215454 594556572 100760176 910350314 733952693 957509591 787811015 145474783 832123085 36182920 933446162 515981713 571223577 4678883 3427612 140783449 80864339 401013737 523255745 157028233 341407689 545122727 211132364 475423654 604264447 835724900 246923700 38759028 53999933 523945334 48262148 717310392 939143403 648785570 350115444 764614644 853533703 396620268 799709971 854149904 926672733 158426446 104769627 127992789 366690249 208810001 70147711 237760717 604836473 184353684 68265268 556107749 267512736 296342343 436046212 519259329 738764072 964873632 45859429 171257878 322006056 255856295 67884676 36909989 305631590 264837173 352773433 253279166 816705659 676477018 334476423 337742731 602848782 293269218 285928995 327223794 102544615 75612591 484378234 860653518 514044674 37790792 338728579 577478140 302027051 768946124 740716453 253235312 308071194 811508895 890462690 572154470 869819880 323902447 429562305 121262242 426684066 609513872 536416749 909101581 601648791 779329681 895304024 141229801 435424972 378488040 886726585 231772358 463942815 777953804 339819315 614918957 659954610 209062661 147789804 260976999 264586861 39012223 98374192 853439346 428600409 951706481 653011425 717197331 709707647 593629171 854630924 643613218 308205669 436531473 216674674 758244992 398900035 51546233 605947311 702371362 604304369 656371823 216028684 968855108 579992101 416282404 245561144 316793127 327364193 794282362 484882004 768412820 702567685 255169371 163338643 933638524 390597243 815151329 129707470 361625904 699920333 352781733 805212749 849794393 949726661 229792736 21539564 283018055 89724217 469697568 162781364 879697141 571785679 417201392 486506880 719349142 554109252 414836156 730520809 88676783 875495721 591159351 385037621 54063781 295880636 601413288 571291741 621060185 497289631 80782136 925833583 261456213 255090728 829737538 280677465 302802838 876662454 786868803 428489065 611410729 143199996 930857895 391488944 721065676 901947379 106789294 982591175 401177109 638788023 256179984 114638374 964801878 381804010 606102977 113283616 841896729 802480810 877454483 746212107 816652013 646111733 106265533 935391251 684242481 221274398 183176278 930644876 468010894 855967946 137836065 31522199 33469289 675547586 718389189 175638888 734057186 289148116 583155302 662810933 161142280 642133809 849363030 509409372 729066670 332265549 489602987 961852072 862675220 643951560 784609910 755036151 646044418 99100912 492611285 384358910 541869784 5251810 858334644 927576156 125216456 338649055 601492872 614674359 15980006 295465396 480543342 238514891 259517053 459053304 753264935 376373339 421735444 979881456 394037104 497259487 566088506 518568196 620366622 73049563 531933499 285152666 462833185 82915591 283577617 237362832 288123737 57107059 425812311 798758905 998770531 946589791 81654745 605840698 535668463 413252393 36685816 418923838 65348775 755077386 264210381 753759910 609118771 715883304 289471687 162928240 456771425 851939253 901948543 671695331 106484936 672913334 14305019 553460488 247652284 571097018 576095651 185159810 449780827 658040865 666390495 48668823 275252039 615769163 642321251 518706429 270868008 796293492 333050629 788219880 337756687 530912560 640965995 145335041 39301638 810317929 981044583 288740655 733338832 223682193 596494420 232320140 768002759 754076064 633355361 474872954 369595817 333975059 669793747 244410873 470720994 828280146 8118528 902266800 407291867 338701916 143471525 184829558 531586786 109908166 151052476 340506314 165188601 712661916 175719276 908179979 434394680 541291148 65468402 752398300 766544281 813001620 706616835 707870976 830585196 51043762 964389495 193967275 244832239 971585723 414142515 422178502 137823895 994380995 903905091 470375488 893581 588803054 181692249 252932073 661038351 412405222 249711150 667529935 936426420 496951297 625827811 725347397 409178788 799500395 528999590 285393926 487712960 53487250 801148492 306921940 303127861 771954760 922620822 535537566 318792136 540287016 549907087 819809318 957495052 950812240 600736068 75311332 170471605 728067155 808620932 354125743 700766319 910700161 22239281 308102198 172502514 72040952 920860882 298372774 554217797 695030092 402237211 114194210 772948755 776282273 232546265 549616247 389148972 726940861 562805863 61799487 354593226 211482079 833547142 796494566 705893721 103374692 157470211 4068920 336120199 891739132 15164144 365918213 169798740 97584469 651946161 276613378 310501620 90286217 703060577 477589762 435208204 573129499 602722147 647041175 705599262 45594292 630853537 48101540 246133098 110724643 533017183 735729441 69657517 749529976 742133380 734077257 270286326 254608306 819901157 103357903 65359396 691495757 487234906 798263458 343841537 995668202 455665895 777305401 191187055 730411108 460146864 104358024 273610774 341737331 868567992 408249763 686605291 321695234 369530369 381838192 283154211 525781370 87265773 197425582 44618642 606246192 19268375 346936453 241845685 203472853 368970882 952461498 450356578 170825876 80032278 131221646 673600624 598026974 226366193 420638856 494482680 391877382 855686146 633382290 344509238 603055995 868265738 132363472 341413790 237865353 426862497 460136047 381476775 441784567 615206854 216991746 618671324 511484699 268074556 171838880 671762287 641077008 264292294 530388553 412201177 689193502 559103305 922923043 210656380 665745517 925580453 887177293 640041595 878657248 742495459 691711128 108902017 986810902 122378269 356432755 410193570 632117274 938343650 364810093 195786785 484867177 172346278 429642692 885068446 599573441 766997543 463010538 397868378 371389524 668689637 629360236 916504656 923841949 332736725 204640589 646721992 849343159 909031384 713871932 331119661 54861460 914109587 698157956 671230081 30158232 28904731 288069770 795498293 90153931 868927498 705731690 535002308 187211249 79763932 344920011 768545397 658087482 781630143 350384505 346767306 944659133 768626380 309270939 543700878 836589207 864998819 207523415 469116464 152879099 519616752 973377165 167590673 149189441 25660452 432623473 672769491 425474383 133007132 175099882 144217395 740454077 853028931 130588295 510385020 503820532 404034500 392099165 955733941 285061767 474495883 651203057 229353978 50656929 879625456 403501192 520063557 616558350 873303724 387679048 377824071 209123302 394186101 873091450 351575437 307113972 666690270 453274079 155783452 455541572 135840712 823927018 27923606 542360936 205781429 967826241 339340099 151854657 223914652 952260671 662464585 885350960 924404474 71792339 189452689 819095751 77793471 71251115 403731573 124469845 964230484 693988407 329028993 339285977 239727783 585116920 670641146 821121068 326074751 448475401 358507014 150125073 137548183 249019770 107383933 908847596 304643339 610950864 529909648 584485586 401191213 454472400 535577635 238690762 566530046 467474512 964228868 489452878 245061464 527443133 839905903 114029283 196337739 891725408 161892794 662027100 616226295 441837470 370915829 462977451 659382320 594536014 406602851 642179044 619164549 393261654 74475223 304704896 54714590 108656797 622484151 711223684 54932873 174554416 286769119 975458533 672636593 342991959 237375111 652821535 942097204 254322999 146297863 875585455 580248668 258239645 745895456 883570502 64594355 320613678 988767329 259674695 648649816 268539291 44043081 610584726 803037508 97969305 325066305 633532311 500640394 61313827 870475213 595688282 83193679 384730202 140442558 891204135 314913642 666604809 688688079 685409171 587473492 699637620 970548826 688498565 27677592 527752440 509226891 981909382 28332543 79910154 41013204 183208136 821062511 507864823 844918984 152620619 637045845 113450934 401347588 890208046 289280425 646178512 238173645 583016525 266961045 887776547 74617567 262402532 872169367 193458695 393177865 900462697 845408276 29653069 699933064 868716304 287303449 644929619 229925228 691572123 534087261 170173783 582721947 6989609 283835762 505119106 239470282 933884109 22736335 747625356 654118567 837244012 621520034 12162668 443415172 1481122 411580640 659861169 893234919 326949069 883005878 382418212 474048486 985238990 350071264 934310510 603309428 499325853 187895667 721901007 124427191 31872535 585767575 480326373 951230686 169899506 269301284 23332930 187257733 624211987 668845119 151987391 644092846 726934141 837228595 374363482 65178274 24463103 566379534 505823682 427752030 37977973 798855686 65821148 86270692 1976903 451776242 890395843 788393111 4864431 546324555 992129395 892823731 642974268 475896701 258584247 526182442 467037624 30656099 600948029 963135247 71557560 996114273 795964348 238316473 2897500 554848939 516943366 341551240 195586343 324382576 92734130 888865604 663061673 550060225 510067478 890245896 266724495 311264766 477069602 431858485 703741701 444353037 912466095 503241647 36206901 50897379 400425501 56078942 938517677 955136108 759694610 771053865 25669766 305983368 450376362 505300848 7349814 669814590 411351546 914473402 415025097 418815118 38551644 646616102 858296903 675327341 217946011 131188868 191894660 479474947 264604133 110215325 605123255 3627707 758215196 77728448 781300667 284174624 46204055 160616251 249448657 641311986 773825038 370346242 860136659 889320198 28973778 92618031 345060407 221003680 510358546 166528307 644497518 911565800 162183736 724707321 15604135 892233088 710777976 417185441 338012114 514912622 300104339 895917552 976037371 586394590 757797347 759432122 194501607 796746489 666075082 518629490 651811533 55546470 719106890 547159918 796727607 990035385 319495027 287478401 175563622 628327298 987550343 462508707 636970148 804692925 231634836 94118032 24381545 739250209 3106737 819256899 781924856 103826482 506011373 742512280 373401575 931340035 397650322 447632215 481825658 865261783 118929618 270943440 667553439 182056634 613807187 241265367 992284929 377715811 243875817 679425925 385785180 458934306 925197069 572099154 370579408 226360731 119703200 701766449 299608063 997037299 482836140 887921166 186356340 989714573 92131184 361855309 114999626 657991669 475593133 457477334 535666133 413788505 149414927 994136543 301623978 309809221 647237819 436970880 449705022 115599064 492690469 720000752 515167641 26441615 861892356 931823070 463483383 277876390 277059912 975017257 553481754 596806813 720087341 958313209 294258046 188273696 663354520 684569205 329581656 470398216 938255458 556608970 239344177 413714729 954770063 344815789 52981836 988749877 441985887 333445006 702187627 895267497 364144566 120544575 910948950 279987120 695764550 561779569 406198574 673081870 655493277 934914929 105579738 136820575 896730672 357464 281476102 406646043 291324933 799642534 386973486 736017974 74183458 389145054 365800040 330718653 263040574 84156538 398205936 387566300 503763610 834133373 406015283 663759471 510602448 979499169 557690993 466554868 82327430 391025584 536078227 803122441 975028993 511338441 678631952 356249602 74488424 180815760 941538344 404775277 584444055 757863807 602566055 708142360 499238257 3669102 554537282 86530831 213451447 487159391 673946191 940771626 216912605 537553117 317155107 481765654 608202039 631448425 71329036 338769612 233121835 165133518 481087719 731791568 997377540 992497918 268429622 485166055 833527683 539717408 391884591 982637295 979510398 970560144 940018181 755553984 808688807 663027882 16804193 244499359 404594582 604182697 162598004 703985325 808281714 135157318 384863095 601981883 292674223 592414607 647833368 413017528 186880996 764611269 535080026 757293237 874391913 418085595 41569365 28048866 110853425 509226439 142635280 148668919 59902265 550054300 716935129 961101656 896882880 21021552 643935649 736966001 474565153 913968075 39147404 228858108 842118377 768134909 754791258 80255905 1089454 420555459 564875604 315319678 506820784 933308106 301355378 824183240 457007632 802564264 123256449 959162045 360342817 298363125 375305438 952130508 102319591 271554895 532969824 866679229 377237796 124493152 688551759 680649079 254264387 115034594 708763451 377126970 927342025 475761814 291277615 680791124 95843597 515049731 448561760 376379068 55312981 362750910 638664498 111210512 196438623 661277619 259809866 74364869 915033998 456320544 640364664 413084123 928792982 612540708 99472741 753456722 334666153 610991978 600698035 469067138 951729580 49267864 336703863 542055041 159293716 388687871 19356894 826318162 292129149 347299806 752979959 72298902 444757748 899253515 944655050 325091671 996386950 657570805 145474216 868355614 595973419 969324906 944245561 359520661 487509097 476631139 912487462 803813426 439313225 50695833 365787310 953642220 744757498 166400261 969405992 979708889 81544034 823392282 619824668 37303667 499236597 96764679 586465104 714474122 116425890 262230780 825448045 604909001 604724920 831759631 224351368 658611764 758737597 488740164 511625426 351731299 425840341 944592461 120399222 316914768 402512440 335892067 530728439 257489266 34530200 821819968 571502775 853372907 237214425 633226632 131460472 63023988 203819188 499422415 760265646 255975501 477435341 755793450 456420111 234659637 817100413 449425901 492150664 792679470 213566286 965593455 12180603 73416267 179764319 917993069 615270064 63726996 439269529 697345265 251806387 582229319 481094799 73665773 923768333 223634625 282555043 637213091 953281611 770255956 44511955 953594587 292936568 437695751 965646765 619146365 34070827 859901080 826116921 875204852 834160715 800441661 606976173 527714502 851429346 22388666 724341000 109968700 685556898 889086076 632483353 412864243 503097502 691700466 189616969 151761896 388965823 966293301 502862697 532593723 402874626 995602020 915413080 155501463 705718591 621738118 888473395 246158750 481758617 643006183 155339493 678560269 649111633 429875394 602797676 670249195 99373164 839330158 749152035 719430855 65203544 390387900 83191986 108418977 669676105 663282071 846632266 608801301 408877308 787468730 207092899 418958078 521706877 308038117 360100454 828904529 685638930 133104671 306279699 179480859 490479091 319989575 338750137 137319057 777409309 58201531 677011248 842594826 266208425 550951598 744856244 402426676 818050557 534946698 344136206 33120051 818516512 512120693 230310861 544437348 23167690 57259295 519359484 788140511 313678216 433786521 663053623 62647973 756541676 306305495 539334917 970728212 211309126 269474492 387417495 529342948 791817206 700028121 339474811 726071447 398420915 42452357 705445038 351700644 279961688 356447452 688897459 713061810 38126926 202007027 454330966 83413453 26295777 984852414 356398675 601971348 964469336 893549325 345021350 731897790 648046094 496686911 205030904 973602880 239502080 886041758 307926540 321813843 110300893 135985748 674853264 732807928 879580840 606552184 503342335 393286722 39056635 824914267 153465357 838030820 624998882 2187991 303627984 309995752 790009085 569893763 181794878 517638860 209197228 78263922 145607350 463072401 868450140 227029893 847646846 617730826 908508133 986613979 582002434 787451163 942913211 781352664 828962861 597465734 330603449 133483927 72122253 688231637 240391941 858860231 539962576 129999321 226307668 995295801 168256461 368403944 485916159 110622277 789762216 309264607 945835317 563819566 861925936 48517194 461408069 663940792 422842417 608488033 805563033 518007761 108434388 453909715 741756660 269690927 935161585 649170204 730745129 467038610 639541128 68276037 504286547 405796489 502612763 704213171 681114770 666380438 937745208 168188321 743506060 164267771 61150413 98043485 356595769 14904580 436808179 268593938 600708988 664646413 86141309 240581733 841705211 112910470 939737321 22301661 981202270 483250204 758442374 730568781 424652238 697687182 170795086 272048235 152295327 638499379 892030613 911904681 853096984 612242753 345968238 540571456 511873777 304808472 904860578 279919554 96827207 545452869 810619017 471373147 132341310 179116203 440755633 801449631 877632482 561488065 199505652 92449525 347746324 360548508 948242804 654155410 507038626 289691573 164800257 686894617 462952212 680136517 338482848 474969870 987101726 417190058 550515121 152139187 155873298 71088302 983635614 69573552 242757293 760112199 693444775 959611043 764012810 441686388 7379863 198542160 454435157 205212706 304509991 28676542 567240396 611331383 263918232 89757349 980214176 884447097 96834582 422564060 209974071 985785494 57552667 61278597 468601428 928091729 103901496 822055692 646176233 16328135 459930748 683734921 269423009 851959577 96055601 522445327 828328451 516678368 19232121 74479393 487560891 384815050 639707953 791301673 127033280 655393923 175841770 700465817 280669257 296544120 862207836 687847355 169579390 46172719 788767717 122802037 184670347 266327718 448855632 745214 479124567 591714809 574469968 309955220 569901558 694265950 896937231 59277919 745901396 258546728 106836690 575851349 62323916 85634067 628571496 455998532 120500106 203643758 92028265 629311457 181372694 610140637 973514674 242625819 448288920 55066210 38291226 99972365 174266660 156290118 717197189 932635861 471712237 306691474 250663111 23131914 148061455 276147854 191078831 192450492 301494461 395164987 439543624 943268562 24746126 208562599 875922268 712759783 886328481 288520769 521388509 751763435 664699216 469778880 97468543 491275373 612515346 608759974 1597573 497015929 358186669 392826192 772155759 153617040 242194963 786499912 186001694 130929875 909401712 937310445 364858092 372072226 826950141 8811987 113044267 745645289 126571952 939841373 332631238 433496597 992787131 14536621 422110778 926125377 128108086 417709028 91213752 938847448 726601901 925496882 886573560 180371205 106108305 449192721 327551878 997378447 618928863 485811062 989776722 216809133 453836742 185241348 775085984 22079293 297851601 174951089 78427625 484524580 990734819 68747440 841426632 289514447 75013518 699444485 78970982 738169682 374523859 689219050 366169476 533290158 450960757 678944531 44625704 522649985 825878476 912243002 315046596 587014616 590875617 989166639 641369335 23977267 316343545 892687222 489501030 190966627 798943284 557134282 787507471 647272596 360967063 212208708 707237509 793768519 265424165 550633239 480801374 397044102 943879211 223819503 601598565 963990407 940729739 246085711 666741691 576901549 615703663 360342748 384396817 427715213 754943920 769257109 335497103 104118466 446220571 544926508 924930897 14294354 703153048 722836254 441276470 296912418 689373559 134524072 770813889 46228012 618541905 619037799 511985264 634040149 822400308 776934456 297877148 846966389 853987125 78280007 707898240 98956710 704362781 268178985 769983805 967163424 141809956 776770837 24343509 642046597 162618365 673858062 371925739 464978289 22922803 161617300 951256637 287172215 510527153 339409758 367876545 106670012 251494868 851587053 966934356 960490050 131370821 418731708 643030302 60760336 660640444 325529080 906803551 607222516 171920096 390818274 492236152 604373636 842035779 421866509 130710870 607587032 256395632 297123997 657401521 541146276 880471938 417197024 270367492 208217302 954610122 230230765 7332899 495922998 590679676 871170066 729883785 207551321 670411152 962251587 747133643 130210471 317798443 78552650 50153739 624437521 921806567 232627306 162166118 970703915 736870741 605848542 441495267 777543651 351824309 702373385 412655663 329068403 351862679 242054094 243925089 702419968 800047700 782598891 205737525 421124598 415930063 952187599 878149812 317351577 864944949 549175210 651545976 398571068 243577845 916924921 965939118 690163566 972967401 352148769 186531057 892784446 577093343 738360398 798493353 73530124 352484731 347045667 291632658 240405110 408713948 718085536 429111651 692553449 176788229 385894557 281159149 293218062 388441858 34941678 943031757 756375092 914737272 227616287 655838299 83744435 877312355 785771448 429253390 343001743 870660187 472832464 747725777 470185075 241803562 844484626 981236816 452281156 799598259 495245726 704665884 423883950 179804998 603202607 23271251 792823799 679928163 143518930 22470421 881099586 238925132 300719493 152499737 853168781 101673475 499800408 251683512 738291305 936219921 404044001 428169125 742087249 984364905 761075040 892531794 625371313 851967458 753130254 567447039 760107203 901308429 219685009 885200398 46321971 364709885 932320171 105164653 71639856 122295356 763326808 539112188 347358145 248735975 547340275 860533681 81143750 416587111 983779909 53139498 113635625 786859568 748493204 68996613 776352864 276866911 516331288 629757354 716174160 956263326 409228917 857928201 930397832 47681121 142517948 819604567 871232857 438398506 944942805 712748951 553430481 131371529 59539385 6185675 437096644 854939141 886883777 506189263 263157199 46069118 876076260 988405383 419976004 97048380 18781618 615210943 532580391 586607600 687244739 152528822 736204297 390956548 716976864 673278792 394215403 417740142 323651253 378909040 744445187 5213348 875001233 79688611 571313943 541722080 233033000 22893215 920277682 573975915 280226336 890832376 759111273 811276974 399560775 464819224 438978639 908587643 894256003 598816223 129146395 183822380 167382797 259673757 338406821 906505032 818477135 126206876 467001940 895675500 923837419 869018183 619478329 171976209 882312372 153061375 27562949 639880619 996802597 141831207 415905318 756781719 425652661 429402914 682996024 44320661 1142831 123134176 241532957 110049671 850116508 496403145 265249124 124347184 271551738 488427218 525195688 333562505 157515992 202343724 926558477 723013188 922623302 873159018 773555935 12060121 804290675 634659228 491215187 404240993 596098330 731755830 853917897 275522712 8979340 630015846 887967454 995911364 88592198 64158260 490793574 536311465 429650689 61727218 239891357 414949578 991735580 386514604 896098572 30425753 496623415 424618437 59605557 82013611 762236671 683931292 470559274 742259116 955991257 868184878 573582260 676634837 564436904 638250298 43741553 99091176 225963259 837152631 166701570 597964369 274342243 510573221 293690204 441956176 673866301 315658773 501372471 440745207 64783850 459613166 482908799 516456935 980881195 247489994 837861799 118511692 159010226 586877175 807644879 448052980 631609192 994612293 877325063 972995680 794293221 996659837 920497684 962628697 12557208 582667602 563463519 950631366 720955029 571509853 256696790 982525051 684141636 961174258 419303244 248879807 38663858 990199743 813101605 765143258 428962007 495006973 19606906 915412667 665722705 317237596 170789140 638621929 149551900 752883784 789811713 871349225 119016123 579800769 765173744 171712633 120834467 543654101 232402972 511803428 297028793 355175871 417230017 265196363 99828403 677905501 773424396 102239974 28056347 387541244 129772969 36717240 684691900 486449174 778849378 729578581 28785360 698770089 3772732 665137235 325170364 815600242 266469605 292993693 30068370 756073575 386061962 667673444 15897084 221915687 464384975 951999289 765088884 468414202 180461797 635649648 117452092 755436053 361121864 518941801 167373880 74382059 895221594 318500503 319316512 94299416 362578254 835562759 128129654 808103150 987196569 464877266 721736790 457138886 712497229 408774533 283389269 617840755 539909792 948312789 540675364 894244521 105427931 759985391 657543784 827065215 252830739 669412838 598948898 988462178 79456727 219737283 866189310 896430718 25784847 24736446 548043125 20556829 445897236 402317811 353328914 263316363 479542863 355786901 926393212 56176762 964813938 947146672 442543251 925621551 365954455 61074398 742097709 142898899 881500827 536611534 907393997 996788731 8188762 144511131 37736304 311676275 154449174 41319768 988764901 764413174 462129137 726479461 589623086 731967271 53588126 900343453 252902433 616988335 182522932 748499345 401203102 889833853 497107771 902265277 42088443 388973906 734102953 75229461 361434777 778316546 696485698 297485624 501938201 661621053 629944683 230576949 255685947 800158589 13934297 288159519 328270206 456776897 915675611 46146035 475603039 564418945 282198725 480791311 941817685 432806291 94675513 260181554 424057274 305113321 934258655 444557445 279233658 657928337 503218496 605024857 192705802 876399388 887893515 479340156 311106943 412608912 90434625 652097878 843994429 45600761 794105691 543392151 918421213 981387962 791545942 882909163 41651776 252501946 607037132 563896359 497142756 813010180 707288868 978888128 478144710 128598071 740958093 236369064 701974147 173539406 498115108 899385294 314399545 141917231 695021107 450143867 441403476 630336092 211208415 213557769 779807640 42634831 876503076 253087819 490251429 610646623 856638652 919010929 851625015 122946353 685704836 545506518 24585535 471981709 442416894 226927583 260146925 379839156 430797005 451850461 492862029 400700712 550406004 211543618 402080291 805152339 485857406 354817530 774712230 343359924 668507999 248834629 241866269 909222936 847385242 477112099 156477866 336797625 327288402 106529322 552241446 290187520 375961617 266030687 764850702 949486274 252804535 470046657 377716806 270988603 582007065 199961119 152691648 518841297 677707954 440496212 608346686 177902149 386603991 22804164 917606958 647691871 864415749 284960086 193325637 480754604 26897598 973667314 324817980 11708300 39716651 136614993 470305725 564147391 45273085 21566981 640101771 438128667 280076720 957740577 488282662 183635696 43797406 756791137 768590997 718080850 622916843 864968121 911622507 934837945 179608939 646654433 237946443 650352421 560469178 955378626 163328256 923499306 995292028 860807094 746414393 865248774 514066228 378850437 149939636 151026093 437361511 732119917 19117777 603900947 939563055 669166746 87585492 62646414 948282960 132274158 472276873 354470384 176817071 559782200 30862595 809947583 921486958 773476559 792064317 233767626 116792050 585217438 820041690 656673710 637114917 452906716 517570092 138549995 455109613 344128040 254989433 162052882 693605725 640673289 360494574 443805798 975450955 551611284 255413793 316702837 353483583 323160708 374884798 661863210 792921261 339973306 919695394 347679029 791276458 172723775 666753223 492932290 432263722 557109825 174800533 808286898 28429044 695748600 719053491 849898473 175445132 683415958 685372668 24071637 547824034 265188999 301966921 398615654 147061685 56786957 746072454 736133063 770471197 884241134 98000714 847735979 913081920 651273421 968310056 773201376 243464099 803043330 886281759 704743110 335416603 698987510 96288281 153630784 549582498 383785654 737663853 327432121 394440899 931125830 974275070 648535529 790999942 802676148 806312121 621660899 994506808 858071009 223027471 154713707 932033594 483036530 17445118 484998849 541195647 982804658 799738961 841950938 361562217 380100058 2334550 974327463 365695522 988683897 432285909 304663965 18164561 517941083 885654532 520888568 810165268 385986690 777820417 316707937 828626006 248053415 502642669 876837797 836690929 394962371 823408899 765564437 548168812 240437757 738670632 456093775 710840051 847729357 496552192 450086313 680029394 929934517 324888616 173338498 855060544 507833442 628956523 332264955 419802108 758792228 367202096 711942318 233327162 621653425 497538130 339879057 776248583 127756573 699412310 20863551 719770156 234145868 78654148 503088183 720792368 804356405 966255122 704297523 563623138 838311981 908910114 756284814 304500884 307841543 635337774 754485324 773977694 528548067 136714192 396589428 325924030 338434663 514271874 295262548 80220369 538504562 174815322 151622988 799179318 270879952 227649319 29327815 893786167 882082702 822965108 567202465 790098827 91661528 493347506 552741257 288035359 762386821 996318824 342498756 324308146 270030054 291609922 556812019 735413369 521149720 395874255 376760500 790240768 96556441 880813780 353090211 132653758 670446149 718160096 488798114 859219393 673106398 138022347 890026485 192289940 92485228 918011998 707867812 164437797 691471793 619092308 256373907 546552070 634100586 3096206 64774322 349724312 740458789 736871132 296173084 832712887 573132255 411886210 212904401 782776151 8264291 694664977 888502397 923654074 944553952 421624411 179807476 16631307 688020572 607114943 472316907 83296289 920432639 306273851 670196990 848994923 615479507 90156256 170860811 447584998 514645107 19157223 374076051 398859423 6604966 34293425 727185462 780997586 367455640 352709891 878839537 227215988 815835589 156252711 489633163 136328646 313198622 86330011 181950899 67721333 961187438 71073667 918406436 767080014 563800062 150258077 395757884 755378966 517421584 738790439 200046534 506321814 170061994 18947773 612040024 655950754 730842801 232873053 573184608 387826722 489890743 817887149 55496764 824427108 408664060 986634996 493135947 202087211 995631322 462361350 759316536 527893215 512616591 169434437 505580443 447344812 710755294 342395008 740685739 240097624 260295637 522471895 235494568 933263127 104679176 282365638 659564225 553761745 947762941 370461427 55021707 793257901 112601806 97258289 966055312 578622505 13368362 654579082 604090493 432640718 98216740 314122299 82585459 296967018 853054702 258358839 265163759 795103885 816364638 204510825 714726722 161088696 486117312 643576818 370669465 703967221 388355121 965005580 477507442 986876297 799736750 530969053 279479747 868107370 885487584 164491786 245396349 240104297 146059411 822748941 192440756 431991574 697515721 785507827 473894598 784246904 658279943 362849654 397011182 91758045 583094201 941362353 363586995 459946757 132253037 227914389 886456722 625911992 497776305 719639059 585107929 824913824 274653555 885944844 444922402 72591546 71826776 915616506 669276787 785070764 715644126 742102398 521125898 879896332 995312448 568524222 812464352 501682166 711137291 246547349 611002675 883473957 460203476 993209121 885983021 145712628 545542975 895153050 403441337 281936401 593647203 377282040 989013380 488544297 909433865 358962680 500099591 502757057 699677404 336763424 406495475 531428163 122264511 178106253 222592589 291958434 524196765 837220765 332814414 789161763 277659617 496665101 833268854 297222681 981664770 887544297 857825593 384338427 319581319 488906028 176090160 533478061 944578942 809640694 972792625 452023650 382813907 272415626 387402221 513678946 43877456 568206914 463548019 17634395 502217509 102919967 702888514 394003673 458209157 755150070 14340538 745471026 598226280 201893666 464374600 244481457 583631833 992779979 492050543 356152231 539465136 14180863 818111163 464748490 878072420 418828174 295854872 528146388 831756069 819370686 992719386 53668351 431653716 175587545 148156964 462042243 217977189 264081087 158757372 699142500 163571642 613975898 927640160 762187699 911406820 781898808 553240720 630490141 908297680 115800622 169505574 5108475 184917879 268005067 274136049 889736092 936783360 24238244 3907172 974546808 689077806 801967706 317113020 878695521 728245530 16537486 656949479 484843041 42874324 484554023 819416407 211729812 330315747 469167700 734922090 124155854 219087200 577942684 339142420 119872470 864860971 961716060 80486869 398482135 758054245 154485533 630820391 804138262 605160476 681926533 543142669 38068861 879832783 28699985 978566351 820323613 414473468 168402884 157196878 357611330 807425917 877550181 708693093 736290972 793089482 16799763 994809585 949574301 822714267 754616787 854184957 673364882 3586939 247871813 271172928 301018142 147163226 563038580 763224991 189823181 678633505 249096954 751271372 154714798 115782938 273780143 608820330 331366230 843837697 287041529 516440109 261472618 889557324 676339090 535102195 876595455 10905946 423028893 157756479 280641298 856145038 178888056 313668231 908963723 796439752 559669 95733748 956294058 376039497 742588560 704980523 382235313 159075838 816924350 196014675 446189814 707477093 167562041 126723768 354461034 965291803 647212962 102604702 579758042 311412095 92847413 65453182 457455370 757171024 922989158 606777649 391641655 688849080 461725229 459763830 561150898 65469750 748805561 661457243 97681506 295646390 985050679 379401780 925748323 504012283 576419064 300330683 805534169 569254216 55687118 56387790 437468529 334921739 382399531 268197540 638161504 803750154 336787165 595970081 313976139 863813760 854584142 627917051 19225376 226411098 583746947 799617124 691564548 123327596 657852921 398857089 686722736 345397752 454239960 335971139 10921005 386764086 776581765 685565039 332100063 931249144 45200386 463899456 313368354 805108757 956157139 989452047 674293793 881878780 660702406 826672398 358298469 649727293 958689829 510813833 896648562 47025744 788185454 374411595 801589039 312698391 633069684 736930968 379120258 596512683 271228104 517671276 112469732 999339117 936541563 730426419 767433366 370220926 66122868 794621983 953518991 415225194 35859316 268807968 187051713 960022083 861355154 827568860 845349695 742240389 183105998 445948571 946309490 924163430 449683516 486944624 485081165 564666061 630123818 340723426 257297365 203406480 1848446 712548245 974652896 384007773 767960656 945656729 224800795 612723376 279866041 327418114 819705792 214537379 947192270 586553616 851063265 758207566 19738487 419861771 986708884 624067600 765038873 110761225 558435862 361307983 106494038 733929830 125350698 470104695 459854003 223008889 326287386 439920298 20207478 863988238 429674810 197266518 862026497 545929588 426471402 856305348 885028087 897673718 839224050 541322293 733965 238044981 679584384 767540204 662656620 739052662 561873400 798829026 170179464 638279260 750641527 586123942 295657878 241564426 547684746 952599088 452560803 547862677 589295482 316556408 829427710 759003259 736879189 889489859 41583033 646981206 424387758 768897511 850659921 967843700 834624579 440383651 371115004 251865094 770969765 332507106 350052342 834577908 503682292 249203480 353311716 504051990 895084047 155735449 760063310 746499021 909424875 330661025 246266021 548293728 318704100 279152258 114817384 984354397 741822553 486189810 929569943 176432601 173106615 738236868 234546164 3913168 413126593 858626633 781038067 811787032 956387134 825407708 192487297 193532180 679429245 944596630 901150908 764917306 752174930 551328992 853189027 216216395 427790181 156231387 503422067 584508303 347555929 892025960 746114694 261719051 759320110 858522930 427008333 670131234 272514171 360280368 269765724 161718983 826256636 313864432 201009466 118183240 899874863 391711991 298404327 251230116 751369413 657857367 700626564 442875679 452040138 947601696 2002690 80343488 542067582 22867431 244691737 312496377 763286640 93873106 205555721 8404293 443987952 931513909 471799247 812187314 341257392 448323745 156810807 853157180 462234559 929688152 88129501 452936414 551254595 966789441 939548000 650292491 946034712 718219685 652652101 149180869 728786191 164529343 774869107 466260007 591941726 952505615 345144635 781919716 736066940 369366936 224406148 430114892 730484645 781500392 45180547 382986473 879840863 95330315 673565124 987517017 412248207 757839105 567631558 15585173 93534786 130370352 13537417 638777845 866117636 643460210 285772607 555501242 655207599 114058906 692787644 229631231 786683687 848519773 339375106 544559120 903329184 190978417 291426573 596047787 940262285 434303348 547761902 245916530 311681261 991131719 475525689 697908240 664832195 956006781 727156863 744655400 153991389 925933583 254855069 278987737 478322440 967516182 917221528 972914538 967431651 610077242 791971579 584664121 597862054 611198549 710950360 725962103 401589322 379141292 208542819 800270663 918120440 945817340 837646736 873120713 775472875 94393562 497914437 276178204 120722531 584523076 524286943 735540662 54624400 388863069 789084026 673739203 653666958 84738243 853527676 853562879 983408160 973561597 183268239 889355916 916144986 899398936 603589108 729361291 194975880 318816381 65126016 680583539 151092344 868315117 895839789 284774087 664983762 560804523 933549290 802537142 647157391 550438792 80393587 589575279 600925870 902500152 659999898 336385679 205991431 243338542 281701464 598973007 285858087 564809257 1537673 868383014 518634018 782410106 443800173 552502903 210802450 397148097 373374832 213879080 316039481 53512332 378122252 420959217 46978064 107205892 742283809 154795957 459545680 297823004 334236554 383330508 339744700 745596191 234937930 529597239 420046583 837311097 527925892 715792774 561293324 543579974 201218390 903392530 786921762 786344540 519480675 719120021 169534220 577258583 589407479 650020792 265030430 771499783 738130883 941734366 747428912 910224318 216867379 708111186 663290498 851313710 13888291 608543256 797189164 748975963 740821917 163040101 361789196 456867747 934545294 861700360 953574576 870721470 321649665 168181821 720724242 956520963 271401158 269053809 573984796 569026575 881614163 421790576 828088417 314574630 311549452 889522498 640936179 877587413 906195495 888408421 380620542 505512641 921548849 981390430 314327875 201104947 662319446 345371235 275644567 524161422 179017005 381566216 135844190 563233348 388341737 147565615 597559920 366999154 544983136 293497038 445899405 631666625 821925834 520736439 111150464 963359568 645545184 653641447 106697039 363673351 570085469 265717331 330213488 214941323 623758867 636728572 315150269 364814525 832912824 70758948 179540583 467686679 678493957 286970947 197292071 414724929 14647448 737161835 884592858 588738029 586626570 610561039 153041338 955864561 375864213 780601895 356268956 682810590 191396472 994041093 959152534 329788587 146246120 455969142 488882404 374460647 139650202 759838262 133711706 665948009 692716063 984003424 876486583 894016334 697004420 268354572 31230250 322993273 336213688 21821526 273781227 963260345 555914770 981493983 18043038 670686355 398033111 386596828 42032477 431963847 549446611 894559043 60050605 465854473 615560048 848470637 870424321 862305495 663866015 225320969 645334920 931824904 451330188 415730236 774540838 444808903 722217213 123941963 934906687 301537010 501554570 760184493 418713603 463538061 626609185 12575463 779584148 58485374 333580711 649488036 889635638 954251896 635830210 102001990 574190162 410224909 766427326 515907045 699142536 177370763 746453485 570202533 747507780 555122943 652496593 376681444 403810157 465124466 1471389 255476419 417751429 57969308 971549308 627917545 130101961 597227670 838496639 398841682 823841896 311105953 670357485 459768960 978329086 531050818 426187376 895878282 787660795 105642463 585071434 452257205 186160471 56770026 378837805 782056227 58582146 308379889 813694732 797362216 569911455 35538539 935514078 631294109 105869763 144597888 883151962 142330043 583642737 696963852 444642476 450517873 493480466 591619047 813148462 992847430 484062535 502032010 437345285 305984281 1264009 704628784 514731064 629315809 612276984 366116722 872843371 833393856 217897541 903459030 123855934 512443670 866439391 634886161 712422906 376517329 387429978 556921075 804477330 870406802 839163978 97780726 267549435 384796357 17002830 958189976 258347453 723008042 151155024 763707341 799793156 720687882 945482401 183890847 341534650 519917404 229598766 72881388 102713689 447226899 359442228 305020868 857532414 43180281 875978314 690924230 241041808 34083373 184524953 771972845 830492006 376759120 437115176 660995288 54971106 421679402 940043863 494648716 186284923 540169876 115293394 543181160 676428177 818769540 151302279 553665553 480823958 431600619 411248238 188350695 468627558 13572622 991130113 509662665 722353475 721141854 831220617 606808948 805412158 599633475 848116844 105603356 62044622 387047557 316165948 526725427 529116626 523803238 506651224 281250943 497314232 929061537 128916575 994877679 925135199 136369602 695009577 891391714 539282453 96650343 274703564 550922779 200516595 243105989 578638255 848523951 482573722 266738412 811667285 156091288 104705000 919153568 557834810 532918568 864612503 399924092 642079171 583091455 412282551 654825210 703654737 54298127 124655134 791239493 997362036 257843842 817175604 311304254 929612524 221716965 480383955 307246546 668864707 547361936 802116721 219039282 866173796 676848768 47099907 211338285 81834552 758420334 957812831 926995298 200686922 42195206 536819804 225152244 452255376 877671484 227416995 117155195 836766674 714219733 781896009 456422347 292070585 923790921 687286906 87204897 730354735 475296939 812898645 363149763 497382806 764636489 256645929 165103740 559617346 299813193 635842205 921638327 127554244 150504824 889501177 346247048 818122686 243231500 798942685 133477076 256329145 720172826 539653702 839573395 310300770 455061982 779295110 449529276 675331992 547801612 971344240 852252922 941026714 178458669 808613473 968159310 468201519 352052970 446924320 823514939 317385009 10625833 754929418 209408391 587712769 720817191 967776067 279763482 288548200 607222422 537154687 951831869 789422763 717645036 516224271 149606780 652292416 86173300 855433533 279245971 646063131 260678911 253827248 55484977 713712042 727216576 368252365 567439777 921162653 817570876 340820763 679284283 602527941 694723780 964829805 529758908 468796793 767912196 804851022 856740689 652786193 873678157 10158303 912109205 741068927 209166575 298368297 639415459 892619559 745846150 758914227 106901911 719827176 748169265 768338934 128243351 101084687 909936381 74302313 964846216 238835894 152554862 162077729 748716027 234636589 376688811 426502848 520166296 665887006 428955976 954221198 30771411 807801542 754245896 413015679 966952273 382206951 209860859 237029306 295583016 543707878 273772251 811747763 905034144 404566784 740361326 404438681 870013899 974485662 359224255 40604849 295928043 952790434 316439121 656574394 850943521 343371668 507173021 171622251 885250632 688268943 421614016 722034138 460107819 317432332 35039670 732525874 686078386 560695619 731655089 8019285 800724223 282865692 890290117 237568105 99968479 824845276 424918618 905527235 709698294 392173180 896688892 324481556 879322769 595765691 863571385 842499062 875912158 180159117 450949866 190350425 337244384 141371439 33207221 853673678 892677212 787777958 235926665 450637924 783498774 763552961 509804789 307131343 902046226 287868379 600577984 789152713 763151445 241263256 354160026 316245137 797442543 305860190 619226867 469063754 707672076 788264412 459626774 116829322 598561530 488028965 787743882 571933141 528374398 494300041 272102048 979521097 885857183 438209748 589824228 742113075 418749318 123780161 486612105 576895915 595679833 557908437 452801436 215088632 770999224 250262579 999193661 579946823 792460004 20322532 950423016 509780925 498291499 616309635 3839433 286289393 557308589 188789270 198782713 328607934 963727719 651148747 296155513 164036972 587842780 354939340 934866080 491655633 422336718 917465204 108653076 8566675 742225274 891802032 69831953 813530363 340598571 554344209 691539820 753216285 486699038 66091583 96499623 619952988 263521814 462925717 180276290 831420757 893916643 901657999 777634641 265207618 992920733 866317922 987892672 669194362 564767371 603730841 909966258 786320694 571143127 991716406 556837694 19109800 314875132 773202258 953486121 896177252 942606983 81785204 962025860 236179270 242738263 675720111 610978252 647783038 9010926 865908901 593004338 573636344 420017786 659866648 959381366 126107491 396144569 489019344 759298672 490888650 324460557 684144034 243683157 34716213 144570054 927855147 304568920 368509172 21519964 300015353 363516457 968754497 311040342 936820023 980900700 248695790 695431264 101715756 693197448 494054231 613748608 693648058 995559236 768555575 444394935 451690090 274192392 515442313 603179150 428795156 904228001 210598323 376116196 385173721 209869046 585059644 335752966 950586372 887458618 890205682 83768 481224785 608118564 143422137 140766727 759412280 709862868 330758878 462142548 989646984 115482314 172342997 482030829 336971135 72796889 649336479 58494274 262589730 983463839 260842704 91932637 637444203 558650613 687466915 85847500 566294139 371411515 459751042 701625841 594007381 1691286 283280267 728699124 617106008 546850315 781045422 907480741 837648971 708035489 730598546 613406923 193131469 257015465 586890659 143734595 392539261 336540194 257506019 348246354 610068291 727251804 102209600 877563858 673957680 185168644 410093965 232945828 668034010 15026047 948119529 237872729 399908931 949976688 973410290 652389937 908921591 525128890 880784117 945449049 184723837 74434201 83158928 516740687 940083727 776787678 243102012 283613295 944822124 866669329 890758056 882302648 986899238 392887283 429632701 159573198 439908538 307922064 952576257 244807168 525575885 184807473 961771885 459080980 222062993 560207829 626701216 795662745 255498929 249360595 299391127 520359366 618950577 670054422 823005282 48889740 580958402 688128712 412067283 472885066 631510872 656601720 421251635 534420992 216322678 294348297 115271732 406227727 499104417 779198076 106961097 556498054 777449705 721285178 936149636 478460549 597666891 46435782 229161223 812899163 780617992 316696288 515738928 50848341 55257518 206410869 149329498 808170943 697877190 460530954 68262110 187403040 304663625 950027741 310056013 329241934 245010486 69702828 999430657 137148134 472829422 858215946 791399954 971418367 575377138 336831479 837967299 448183584 521930389 801432648 431584908 133635926 7178269 35369793 410882421 451267322 96059675 900938753 827720667 958211835 233396238 475106240 392347885 121950953 79316575 713790919 226389070 922967551 239430881 311188276 173679740 184622243 974189917 58442038 797398938 752911935 215435152 450204715 298089628 938115237 381477499 809679489 67365407 348359101 243456578 759460187 111526866 662317886 680473664 202976483 996369206 841449939 127468731 640451017 215999569 115266915 448108856 495871325 240521660 380262949 896748601 58129510 716832780 715436014 639127316 165861685 164827748 974606156 633602526 139270001 773330477 671178924 177186958 274799483 531672873 20643760 812221283 183961378 103917626 967556603 168827797 438352665 467260188 565326775 65112241 783342135 908529593 957131836 351182441 173717833 835128709 627254399 603339683 161058216 991811985 381980757 249604569 846491391 531186744 622166269 358032034 618836214 85663736 332463704 59008005 277477165 233300384 701760288 856091590 489686598 13406324 736644204 602818374 32763284 961143301 834389192 939547667 736995482 576454010 237036948 925207860 857353304 167437579 15627239 394825660 835661297 82731231 926610163 216342522 245602574 983939389 110658648 763416577 89750418 885402466 906306516 862183029 612293577 913046524 814671141 636466857 513385564 616389220 698122792 843139407 21084132 282434633 451531169 898831440 343255707 955092429 768407929 983188898 639487828 134536028 108178714 339255946 849720454 289412705 443739011 558596652 50714273 61312422 525583688 273662999 125842999 58541029 709533116 95856727 479758230 299693985 621335683 606324973 4836891 345799954 735047932 982472117 982694815 36424982 235383771 607766793 443497052 551982240 571428871 854185204 195579708 759579653 825422773 426927521 742091954 536985467 17863983 226383588 155430334 634989375 803948107 816376121 8397514 977414300 779584797 607269049 770172255 400857071 126001788 456696216 350078697 403290221 964744191 502662157 618758166 985117126 50701151 805122018 680395084 384772046 180894611 684284832 901694708 463409349 793685593 573523954 292728605 104229222 965806807 235612386 866548249 585119318 253173537 858575615 787207488 888850804 692210811 39056333 812572460 137986100 211862511 884053765 231145338 439146798 814772415 220417717 79595049 61363142 224153044 800526947 502699527 771296122 751572834 69597723 51514709 569580008 676952178 317254739 619633912 240800441 349171238 910832669 639139692 438099498 849148054 793610384 858642359 259534049 115780875 791917951 624178156 381460091 445972789 766959244 426310499 786673933 341935052 106023409 118225584 1039207 606951922 930092487 69485742 104174946 462074102 196247728 923241956 551431846 936075537 658018854 523997906 801937866 479079711 26915581 128752631 959774201 212181107 729106280 57153043 546108369 631374469 525322131 976670679 448293169 475234477 683857861 624913552 72636965 542161548 693357127 390106249 420248508 358708234 27712023 965319220 176881034 832691376 43044582 659146123 677100289 921688875 775393297 462529677 898166072 222280205 953916584 217025136 217734266 258620710 296025792 344401088 228694366 711384048 267331840 236166551 802339889 236670939 689677442 726688308 617819993 260874471 426139455 538775256 358767452 64555024 722075384 89799288 444277712 762943414 651505645 542959152 147572251 493249850 773743114 898303023 397245489 337363605 920401267 359573964 821874672 258393972 486587902 164866899 249164054 179626735 895301417 654408514 372547000 352338267 110642851 271022850 685027325 664164044 312803935 400370547 195291787 796151761 615399570 799792656 425948817 93336245 171315508 78811252 777610431 604575874 451690097 156012781 127533971 612605522 826213807 511515924 646751781 323642514 548520807 884592066 771374696 778444181 15978542 390979545 322810026 892059042 274522767 144168741 16563495 10440522 437183677 835340958 80199718 844890730 563905901 497982560 561802057 246534170 172818089 742459003 624415582 563622296 909874586 888349621 795415246 401117845 413431036 768617326 948581743 650806105 549141865 654862577 34057457 764905481 770428204 755681718 188540478 850577190 897261207 953901654 317895598 561071107 297145818 98345593 219944294 820347126 851556112 611360343 974431102 903589193 299910541 602980554 188800993 522863810 766167118 229167614 457591630 708337189 801350500 75362835 232953504 698102935 581714175 125279470 529253732 441737077 714734722 681289234 880961644 518185939 81087358 359539304 762131853 369890939 414149730 957841612 851409673 637973919 917149444 691485221 156460500 33153338 413462183 792614174 347225370 678185716 364991074 897446949 642698037 127693213 459040011 858099561 278131051 819882007 426708440 195479204 592060465 541970167 581586849 637779370 980845750 211368595 233242938 957290177 670207783 981466075 30449913 136845379 586106586 484094644 371890967 488271632 635525934 347377701 606805683 808462438 155102127 127163783 934435357 890940189 475760433 855035318 205853255 184936490 706642407 736649294 367996455 634833782 512426760 925261578 496548606 640560402 525985408 626270593 890984944 519764425 957606099 974558477 232278352 855461326 817639140 809730189 823307271 736873914 192985608 929828583 352262031 546702998 258643336 885354640 860781854 222624784 825895390 430253388 8143906 180508176 83619410 892375869 366213543 480035958 658409028 432745976 247388909 39549781 236183906 40000329 385865770 553617628 717617313 457262745 383359689 313354992 36030563 445976902 929277557 755759949 359839614 697344910 921489739 45293329 648236095 877535430 296915077 852602427 788251521 831635648 768850711 23030361 816647624 51908050 853840547 870362430 677377525 476088277 266359062 42466432 6092108 956485940 578188265 292592099 820675652 289780728 596812021 59647078 86636039 620390817 932752995 631082452 718156355 596158198 524159650 473807216 378517045 886979933 711746710 740010160 529927143 423802909 1174658 350708375 146448300 201577534 47556388 275120034 840244832 479180792 41461579 62493319 6242295 444475037 973313374 248586699 793869835 749887692 79446272 22228555 674873098 942698342 958916026 623827440 371854221 441087544 257179031 237066423 312601272 813681678 250427357 459350780 267912132 9004058 222786411 237130878 361750038 838026633 851740846 387277384 18063437 545952676 34123567 879833050 765860839 66550754 285508341 178021532 123349892 479656274 352541303 868264849 104429116 362527081 456054958 175329738 69041785 475870963 805297895 561735127 370125107 47280995 575145335 171427118 634624058 718175023 825189306 161465629 983906977 47689857 197935255 648834267 304624875 524666730 585949776 215086053 306330411 552418430 233913555 809735217 959724966 281474929 109395424 258031800 477137958 696438187 253299624 807225908 561018455 91880473 167249696 81731933 424300077 470758571 572101127 70459927 865506674 147735448 412906225 986876524 441451577 958706391 266966606 432457724 710925408 962199971 654387307 575744067 700976120 987515135 639876716 368836438 131798091 780179935 377917189 342379639 983155396 849578679 938234046 22974412 842099482 410485106 560281602 310089492 27155409 669362915 2918718 596477243 376463690 506100502 464543771 460501388 753949234 526774157 394397571 369943825 359443402 632543980 39741857 804221807 946694450 103320359 272483808 921462660 531964874 644920337 78676240 124054695 557219082 743563796 716764610 893485490 322379197 907182429 689507269 59763041 874115700 202028204 249055094 425616609 81374274 128563977 350264429 480277182 446264679 667137713 993844763 12597549 100879679 798996322 784604643 808414879 198680036 540033866 357145137 424436377 831082616 166994541 661636056 653213678 33230244 10935866 658919341 881716518 214456769 185133026 822609988 545082469 31846941 459490012 219384342 887285644 449362645 315492614 241845716 642246455 101043837 125330959 928156047 668904338 618619398 910846155 942944883 72035285 627219604 577340966 92747276 695359270 25860046 111320261 437150315 719442024 235580903 579428459 153988697 157155117 641431642 421992308 187402973 671712850 730620014 395844024 638537217 354621847 821794426 328639133 518097799 103029271 733035289 683670515 410805322 166617035 222669648 206058635 237331886 142603388 619563806 177916866 204238678 480469849 211642562 7385127 932490049 743100568 649527205 550133802 718705315 849070892 654270327 946085379 56163166 656708863 549254473 822736091 748847338 399156938 380268980 418038398 529265485 887612129 717773847 993573098 662012974 629770837 829574666 547228059 50655583 979383043 347548714 657748335 251520055 976940797 575310893 41309360 843933146 301425710 556313752 19408887 861425983 470067701 356283139 677366750 935187253 982046545 191345871 64484560 105682578 588260570 314857834 559099039 664937796 358503560 770247551 444187672 934000003 13430286 351732707 809988962 416260711 80146950 742106752 282336284 450416303 132718545 407066638 308294093 743696079 336628051 555569322 697112654 264121347 446844632 572278202 965510043 656072115 747488999 648966709 807768844 897674399 279624363 947260822 32798066 535595658 866565032 618022490 829008847 884766814 4482281 517908544 68311632 22501900 605460983 713801288 599243451 83262256 786505987 700072840 179237093 349282223 781340667 941055294 152158518 470135493 829001861 11365990 290031719 917624613 962396319 195096259 22664139 319017963 177975484 992592808 664164159 932976135 744141860 503290369 874278557 398484653 731619036 375223653 366665990 31835188 218930533 27072755 414454178 143270951 101479276 992228610 343344889 514085826 843094443 991811996 510057480 343145228 369628177 565234230 975730316 899463202 781717059 175146197 400007841 974106421 277599534 519390179 78375685 202383497 49000609 690383818 518103735 603473678 595466612 199352134 304032791 758691218 940474682 362066153 202876744 945369649 984362047 321991782 140469666 219935412 430413582 447955937 868061722 429370088 644770823 61530707 764123091 458028498 546642429 241995726 339416590 549967294 924072293 379164662 758047472 647643314 606360931 24161877 370901110 614331726 874742921 569401327 741153551 125579208 353825154 716836858 837340534 33160478 840705184 359842087 596643898 210930800 998779791 6075812 478960888 348343265 172443662 213616863 887811921 405112344 811814873 923126618 734748318 140405830 569914878 797509853 551502700 249176670 498302941 686417693 203230079 612140384 623921944 692431529 914427594 714061757 471817382 796904527 546825630 309358723 108065270 592814696 205465425 138543797 600066344 682104578 707594867 154659348 656592811 754840297 719467240 734888232 303998907 275311267 395997593 190821005 26212508 145214432 652103399 258971126 825764567 522871104 820870337 31861484 41934249 875378629 972067676 580268636 294697201 131931585 298985471 425436898 660593528 471383567 615991802 948221471 156658515 188446956 897081302 465202331 308060824 303856362 974426749 9069612 387981355 359540368 911550297 182125040 189559872 115586690 525786086 731131598 804434897 758674314 798230029 164575951 701336475 569970592 277217193 63638432 554468417 974304635 488345199 976656204 135235320 156009564 139120570 307663244 755438049 136195030 997891468 769743044 37585971 276189955 797819434 978982260 106609956 17840488 669778513 517292119 728324060 968175393 136489614 685241325 410062897 682824177 626035365 297341170 342868551 872483486 144981609 729876901 857966000 536113261 663425649 162374593 531725052 51302745 2264263 938975105 655971256 695097742 229496610 539968619 158667861 849475222 830687154 175981610 303712180 62946200 640191542 430403199 496496906 733352157 543436381 753796471 433519279 582442736 537617363 210212472 661343733 778908169 948955345 504958943 861780206 328825075 482751858 982135908 350230703 923352773 59959846 815467534 225394947 769377684 579094686 701514687 678961109 129486594 629575926 855876819 978040606 690699260 260720160 162156299 199286337 535535578 133886664 790713011 192150649 215036088 504819821 12113013 414571993 222598487 725703579 105224264 19357447 352094479 377207060 171435868 971743290 797444031 65040195 626964957 744311030 221559819 790848238 345388110 617493495 725824908 497657056 667740082 915874863 94009840 939534469 365237627 751144760 271946057 38982157 604089019 705230496 632189473 116994843 510218765 700399784 358375404 208609425 225586515 941655454 369286411 547285591 812386994 607444287 361279303 704065100 70847881 9501419 35127737 95910968 876859275 544100049 734344556 588013913 754454156 916851558 826407404 237272213 854900647 272436194 510557231 162549649 253210100 867097993 964429380 128830285 660466786 996648483 741720266 427597578 415126852 475435948 890478395 541594404 420504364 138247593 344066829 604524184 77844138 396949144 84343777 964968429 396385146 490650038 387934196 228575200 797321636 942674511 794127294 683720532 474363258 306073674 155627117 254468180 24968092 104040547 891158213 421160527 507049627 853284397 634988664 886437930 447926885 555334653 679502201 349633510 433943124 533080216 438815333 112820314 578636182 123061578 713148378 361644446 982220924 349135189 413545501 734568880 861449192 502901275 910381310 905305541 675961279 11963565 985452387 646318516 258919488 678390438 559173729 474803546 493346475 784821619 632639515 86640440 830962997 210714444 704020971 304581445 424214749 264838555 129568062 919046375 79879799 995493046 263290414 273019248 139552455 719235192 410744456 796705422 363970031 889387918 51635469 57192453 319224431 779474384 501168587 633689061 459804761 469933548 221048691 873323186 703727375 159680134 396483821 245995956 321772760 746317237 240691402 130948788 741030015 400098999 937613461 859924837 892068784 711754453 159438123 213722050 915794468 721953511 643310679 978854103 294505384 205517399 863977530 96474901 944365919 812594414 557847568 180994367 446992495 862243022 621931536 270613261 667885814 861922016 303160289 539817548 569853367 52842981 293888613 646343582 736980105 654855666 169907282 263807161 188710521 712650396 308628045 856104274 322591494 997869790 407764851 637428617 407507439 989047341 632566065 784364896 269944509 883423373 693345956 710171400 32128038 829775484 358675274 689857116 483754176 340398310 758426339 214368209 31850256 221896129 759248047 791902735 972102895 650663633 784980450 158196810 325457074 245050378 72996107 26776782 913461138 273213540 823426343 800016824 571760375 971337017 231135637 96042018 961607478 21021518 434232584 324479155 52954168 583163998 636547621 65913771 732519924 171707662 640380535 124018356 366913068 701483887 345282533 674005713 716076827 228396549 258620100 516774902 617372121 416745413 232889653 438679549 629535091 572767789 536085444 613129837 657648407 227247378 807275552 549902828 99349656 77505823 142667867 535573157 670049210 787034013 198590656 442628897 431221107 485248979 280233775 509807290 782442834 111258724 851928374 318748606 206456769 61489737 731412998 322275108 203265002 566140173 204003435 209784922 816662979 912632632 708466624 68702388 50223120 696836787 492571240 848459510 27200465 700451115 434883848 794168888 992370451 966401720 147910816 76810982 810496957 196642099 491791363 307646308 374455513 254071986 226816119 454537883 959056152 467034389 694892049 898042826 407750584 698465637 186575947 947767734 269518226 306100366 380441473 994036177 172791082 932571065 713276579 148778572 763823783 876885385 273883464 524592381 699285309 325771645 236583943 582649606 633593794 46136864 860591226 629474501 627594446 116752871 903726473 574793450 255902426 733158464 84454431 929871967 494125129 729932448 599187299 275380772 80667411 117151511 898779149 911871564 990271637 569238298 216346388 72039190 616040827 343763242 471087787 431533128 349714392 358459655 516749351 307877958 780440311 165765434 461491885 810244286 801992688 377903718 335768814 987622776 345795469 805754114 836939560 633525265 184790735 503578073 305379360 641103107 328116716 642583087 786708323 873189086 91308069 116687850 559333872 722428788 445882126 330505815 157761450 450435545 228734897 333688772 295679770 153321503 772890626 994116802 644780878 372433701 53246049 500877506 790563554 170808102 685225713 654726071 161287197 693562139 12710380 300180431 993574243 657688698 890488111 293828048 797854261 351522357 340091815 710563065 591361157 731764712 288036618 475636695 24295873 591075681 798120011 17972495 269503142 136262231 207952766 681457347 624767841 384165086 151298250 30659007 492223052 813599509 337966531 223172140 176287759 385753781 322665455 403317562 839423689 609825521 545491141 564789933 772772522 604489791 411700872 131461748 925180260 551341061 793481613 995193163 970372484 651615703 539324500 207386368 191078991 26212106 945908562 910060152 186039880 384349347 564870767 109112954 408355445 828998786 65805122 511871320 913808740 255469428 842408503 681650682 394154043 657250838 163902121 455096164 741511680 663170031 290796224 282065856 292944089 340915110 924058342 569175056 430951006 795967732 252217231 626072193 252585123 234262396 919628192 21256781 898909716 667792111 571091028 660522390 999654272 280014949 683102383 218802207 827136641 933160783 519391576 373465639 540772823 114074232 511188284 286106598 92715584 809968907 26850438 57598518 70723539 812656079 487313269 998873408 357714022 426397393 100856773 169702128 802625221 585468797 216351006 994695402 149268823 593429355 575738752 769950681 609183124 380405929 849620014 665364141 869240407 5534604 713768206 214932272 789090913 832970228 386942299 81905876 140415766 219163806 791662785 908691920 828509571 706124963 701312775 315190039 738032953 835770878 334891721 545450430 320698856 13392556 655147667 202134994 717592713 99420477 435828929 465926046 107470505 37624256 430367785 428822359 202064760 673198442 634199203 15614945 839466883 841670184 222450355 436650479 617322965 675017471 539108328 404848846 843719585 376995108 936037310 321113421 320025231 741967535 592412723 874448941 562042458 512831704 338540230 238117467 568736059 367736205 260629845 864448062 95996723 430682131 317685221 84152025 288919232 240314946 207814560 335984669 273266875 109812688 772100684 185314684 721989503 334646642 291534598 286911615 840762301 181583660 243652021 635347973 90388895 861494422 480555506 346186244 455151806 953346193 980821111 368872002 586972504 31869170 380066793 614914154 978551177 963226754 674607657 825839892 143113823 349001985 898859470 195237096 671642984 504692540 176183516 819291566 842878347 187692235 669412111 706997556 787293910 648723096 565154382 883938289 875594677 920230934 80201200 846976984 313589506 396181793 185319789 355785814 492355442 622656264 638030054 904010671 253083529 195551285 668118488 439566259 584563866 114589444 890123580 907864402 227591775 256538829 74293192 971698050 114480012 124264187 186237351 279452430 397311786 864499055 277078014 450591345 219960555 559280262 958108928 395299808 756018636 186942836 683806964 714537260 720843047 551661901 188664657 194421782 936029879 130312012 927414819 434284831 731481818 929165691 954706163 468827508 407642095 672801333 270241409 672404897 756550402 770750976 640215962 102845129 770861146 578773308 915801202 414905382 166849309 193522190 809883922 578194189 258058957 581014138 539884463 757989692 431720109 954548680 548541899 27640039 400456834 838911944 287820360 153264060 586969986 312288059 36396222 991205633 601039265 252038426 496990079 94688244 112091960 165513558 509507900 601778377 756788964 731330973 271187246 815026480 941968759 147312433 639770777 145685234 590038692 344753735 989642864 945127604 1140727 614624386 620385957 263008402 98169982 88844287 32974647 481628062 591858218 113072105 150101165 152209200 216339971 713238053 932951842 262026965 264673518 11834636 999872613 492793933 130994270 225299478 683697403 131966266 801703398 528487405 666222036 168406100 797024762 612445484 183371514 59628187 36287970 198824334 982095346 934616100 658353390 300138541 609915540 647178324 614186038 394796569 211409225 274241699 933372672 988340908 735966295 754024940 772891841 603162411 73532914 588515491 839044151 905965647 311646778 718769794 510804745 247984477 133131997 719808799 547467938 816277486 517382727 527970027 537626868 590409073 215536246 303695485 575957826 459320409 526294058 664912604 87508575 412081814 255403297 369519854 938769115 23238556 872274237 288824494 804469028 883582479 487788394 325255076 495848080 493013749 218607456 860163878 728461632 333315683 141884348 383282876 766914500 646104826 178022632 411862086 838493457 753428400 62951940 630576938 615741602 371942764 927124291 200645324 806602713 406816947 56215759 561118983 680281563 845997700 180452564 856102164 212645773 686568550 854314341 754889496 159355059 797825002 444335936 948714474 102582401 550496806 461771525 161340954 633502541 592940558 965077711 811252971 215694127 68685831 797059661 862130516 294724233 348877747 832989749 767944238 78068992 495419017 819957225 243291281 484411917 297648313 998990819 124232650 660796144 22473622 988377336 507566568 769716528 273783037 537534492 908263843 417079893 333018163 130442212 385744445 680373663 223477559 542634366 381612687 36490091 452167154 127005898 487372791 370924974 895032600 351946532 238635639 590306144 892864103 4235508 926443046 45327285 643399938 770101273 886230994 97072958 869518778 656048012 715156384 248855945 871329755 570435473 227690119 170774550 825931260 822043900 861592620 419900806 530186266 824299243 242542123 682250326 85828509 849607035 696928799 38858102 88690599 493443470 777005830 580650200 538332033 840995231 871231342 458284681 262634557 206440405 339668868 567612046 758043644 847972904 986227886 351360092 341060762 286187411 738139820 986046967 799823281 812143243 737630195 858202390 543103948 703929847 589115286 235450327 62648405 776354311 220319438 196357662 927811453 284442200 128427619 868562807 823836571 807779049 222505113 562855220 973748095 902037536 464726372 981547201 34826714 237057726 940919045 330047721 359257343 73315032 812055184 940114946 736237117 474935213 45073276 283871837 671227104 625397662 599341658 13432424 282701886 984087170 205607266 895873719 433803086 650048178 431996383 171533133 822633328 850461767 429758908 304130423 746351641 777580446 608438275 97085147 712107109 16016783 469928426 106204441 371301832 681460414 128501278 506047440 673686139 652158018 30312038 117825679 244457224 453635410 493772141 704877097 232690395 842805816 610124440 921536241 992105355 240378340 846073146 70999772 666269629 498709231 511969059 565867249 522185328 141663753 619029410 493738240 63306551 291970049 990056302 356103536 710949366 793368935 455799345 40669377 959608502 800595112 404778449 385651620 976449734 3041143 939241044 620484007 568010926 417158787 376053660 676923797 60132446 917321397 405260851 659532725 279130378 622299063 463418054 592790572 39713607 792371079 833954960 969761836 316659756 469397421 351448103 464121948 80211002 405587612 442050332 375759430 502704609 376103351 420350824 551094488 700168718 537966121 386733798 295584534 108174566 688785741 556465063 939312026 478781862 947228589 114667171 995867164 947061501 657426321 655976632 987958868 730888244 108080245 441954091 211096556 437989653 205026303 966947959 104131755 563591793 137944950 63106309 760352366 35743266 132281544 946481785 806509417 514377622 396840298 122922815 244827155 188885771 371232791 480716854 539493991 122733919 969328574 604723302 698595283 50620648 145128140 657149901 825538676 933766532 615625160 125087092 732195130 928262254 547799155 136124519 779563520 931625218 174050370 32015013 941202284 912036135 670300529 70362492 300809711 125198939 724652651 457615477 611262769 226385284 517983229 472309492 435289595 634567361 489639925 837971220 654908736 119444570 871791503 854845519 945530575 356493190 173182886 566431864 200859957 981023219 93262603 531933614 751146915 483287813 456512171 10699851 168504222 569463258 703835792 920650761 177701647 715140486 750721618 458294740 95684770 996888500 80827258 118772995 823593291 809640278 666120915 997917053 548971046 663866554 307242098 918420577 38607258 24904823 405040130 126249247 891435476 102786887 362434374 748950297 675294345 624884062 255422732 686459315 791610188 535589351 236229105 757883293 603345026 988538111 487883144 464732973 17697927 706892616 124438432 936383542 410281218 74258522 360345678 974126440 456465306 723726235 295518266 160407004 309468498 287765447 428571167 831966203 402823093 447192613 32927260 33149172 160631234 713413076 358277488 139283471 663299864 220208295 972418829 284086294 155485062 35978696 456855884 184139122 655819642 518967675 984762975 343813304 955127066 213540667 39168053 128713645 684655790 629159945 548964359 200641364 280354394 908504663 677231207 323103405 356726384 486791739 623013317 463119535 370472798 194925765 502822423 910574264 902245757 62487958 324032301 639401761 699531307 522250313 304853525 717882250 97573373 293523918 968709458 258528216 836723595 549217946 239516066 931317277 502144653 624844634 631107047 475880636 753204823 695907052 864109003 539127103 9779549 751741211 23665499 564962789 230404309 491010037 638369779 559216989 621355935 34923007 105234515 517337142 706100940 412873615 19189844 854535533 652343507 83137864 531709932 620402988 410566599 790456666 544754165 342205791 335797778 822537560 578070735 984167354 471467497 85758221 375401215 31639743 716604560 77214450 970861013 557553495 355606400 517929651 209512177 367727236 904886584 167745365 643871549 627762290 497912938 361370259 467170778 976086851 381659698 606180591 929806166 915310861 549026838 451072833 845446528 403827591 201295608 312552417 545885658 318339090 568008839 916181568 81948885 158510395 414863138 19794572 140562025 392598030 888086283 571639087 747465863 971901776 638250094 654156568 444078523 637917008 348352272 445073699 490032118 583817319 336828891 526270834 298639258 937483072 968570881 375453169 583083567 568399873 482394306 786974433 915290568 556628219 319391226 476478344 659458460 204999619 808220773 818548294 580619407 291576277 374763476 266831631 136436962 414425236 548069929 624566608 319342474 486751058 770907298 998715174 655850502 2049885 893863340 939125140 587470416 518571373 973515749 725722780 584662040 491515313 310296875 791078537 482349424 678363920 910217015 925909160 616644252 68198170 822970908 155281077 937463603 137723180 436473296 216566959 958708531 723196373 181169800 487945898 512631072 318383911 262949505 897411120 383923272 674108945 643797961 902710893 690354816 677342531 274327233 899365184 631949320 123079130 573931616 259799341 797969515 990373643 831328701 733759820 391941424 57667261 41405992 767935444 461565032 32109379 594376695 122346621 460058978 352394141 921688632 288838490 603896017 896372331 97927374 485044362 882072220 972163849 848033520 697849588 660929542 919460486 820855992 998545460 862129136 313382862 652572886 732278755 90952078 630829668 828270081 579238437 81177434 838706375 567171201 682500811 354783816 220602242 887023160 926285129 510072643 537432997 299525598 140859105 524393912 177530435 878136815 154714904 861058655 40315924 111110884 181964469 901023575 718530258 946474413 756994923 445190691 43926043 159166894 414477088 732101069 122174151 174873421 41022574 458579306 562739223 414915693 640485302 502491860 471789113 69687493 487170498 998999593 997291178 789876510 92622326 166203992 112147230 34744935 894143898 904171444 568807325 97724528 523875837 39617516 990569751 145170143 818647725 397686103 182287302 749120032 780854394 706878924 668263814 770812813 457920005 260981826 135995628 252217242 7124340 605863454 618992153 484740302 716801907 769528085 150459776 252415922 535660655 301182038 748841616 772986552 719420409 532736901 992832653 361462045 928980105 477627358 854621088 896096198 945743997 218101570 295837595 833484830 662321406 502541534 702671322 277216823 173208134 574343553 718394091 633885679 905410012 84793827 194026493 237459810 233467084 32697965 788381773 760121868 222975773 222430854 193948522 669842070 367287670 764784886 118000048 111245443 448349574 675442784 996029109 285186530 295680378 502611359 765971709 677306492 508499766 991853199 832595990 126534719 214856299 358834515 257076524 272536579 533828842 933042242 504594249 876977787 653891693 906343960 768846458 103689558 935358736 103180434 20584402 694822873 923844313 458347709 987015716 893572751 345015191 800030249 688182963 35495578 580759243 319781245 936055664 601572101 419375712 141707948 496299793 550827788 331017221 866001070 958433007 627213609 707423531 114974666 206935812 957284574 706657415 521540027 295722278 345252345 341362177 265026225 531799665 465784409 641063465 493149672 842900451 902984 201404530 776686180 776464835 352987806 32302098 124836339 310640316 155561588 316394661 471539614 696966797 635562873 444338406 876257919 165492454 595842307 878984748 84107111 334136683 616227423 688707579 59828988 463430524 581365836 383306484 198997712 923284090 246262415 673588448 218221572 477814765 420571184 493158295 279959379 950003746 875414241 789877475 824895192 815031509 832508952 636808901 641849804 569320766 954319429 143442268 777597697 65878508 2352017 216932038 656455682 24905719 342873431 785414523 212923766 429411137 226528510 727907134 234505260 785045221 701402120 540218846 614429229 620164265 859636621 866688027 38970086 402642882 482911849 673255623 675237133 845933498 632014460 381131838 424810373 115910034 609652657 255534882 474935593 327905140 846909704 705435055 25108525 756004586 957644340 809382644 630400598 19836670 305322913 623759760 566801847 812169936 382677336 668560368 914043692 418371444 314672518 974128963 987194132 232955320 604439025 842903605 486182368 582872964 507417157 47132328 605393486 320036065 346081064 459413920 557675884 38271978 594264773 67368077 51827418 234542319 155634313 716156942 142455178 360311019 895488978 161822256 630851878 970569332 605005682 237178673 968068343 386277958 240683972 575368371 765188658 855647727 95874144 207298037 477498254 782454934 747444591 128679085 558287644 403404172 167778234 229854028 498071334 84111090 676183426 252778382 722774222 951455261 150469839 732184831 65500978 451756845 730759606 981711747 370131399 304181841 949768257 187615865 694914239 972079015 311586138 15151464 335195169 407622876 173345593 731637977 747662896 138382484 626773322 812205427 585352538 366815231 579915005 200898301 157447897 507411154 458196680 257900355 638002121 695672235 110499470 765968028 781882945 437263802 892345393 153311646 180280440 370732283 926981835 240575100 796241003 28643321 704212380 488648875 693572943 991602957 761582908 532078921 421443175 862297030 171218741 885273518 648674992 40105067 57508812 381635152 27696768 924365627 999373487 97819860 565423851 374216900 936417144 624281798 617990543 670926155 902804887 541751105 277112518 750307787 457757902 799668760 592933390 568586951 889677556 921961955 485926738 641414982 300012785 547276962 805871428 467476037 372788779 576290629 866466752 583121512 82537877 817022444 642489199 30617798 420829032 108097492 620980638 193859909 19336834 688119104 3410523 418484130 373116677 217272161 323211117 865077210 974725083 421471790 980403666 206199467 525859509 639857150 482397118 791451914 248762096 697713504 793911170 663081421 468326456 424027701 641504650 185020136 463407184 899353254 396203022 258970454 835305078 715541229 980347150 135564482 643134650 558952801 430834836 739616404 649346235 723747417 906814106 113248951 180130451 396124079 130978946 333375282 18584773 252052376 328294840 676707424 693175204 625946649 158867615 750659837 884359660 739514574 806207132 142393767 228537901 252166720 114278204 552682512 996375234 700300328 341589819 610419737 892816412 75808796 693289260 278906543 989011827 728012005 318181870 229091295 542983334 872492755 582947279 217054320 345693186 82453536 958775612 65855194 617446235 858530051 835840009 703714576 194252964 973861570 233969870 759463125 18050594 760866103 950634136 47659469 92929719 263508254 691319303 651273624 34085939 292202529 700700653 515539583 815982275 935547708 974611974 890786722 799924416 324575970 757608149 274018584 646829782 621631972 370691323 54562272 35737039 273806356 544035580 813279663 411925410 94972103 137825968 525783808 576359302 984047980 845518061 854920454 831639655 978933639 523116678 249780660 813124773 145652078 688347365 858774455 104748534 162780823 597605122 662313252 78715084 435782461 145074329 144731881 989841530 130328907 20654362 810920339 381897801 56065202 214874475 746014589 150889548 220465578 578001268 661846030 275326997 707408586 337893173 500607824 633516675 901076246 32264691 583363892 70730219 818690482 883216123 303650462 991339665 683570256 218581425 130851955 847208479 70054776 586082831 282073123 413754422 265090696 999048921 167956424 326081196 5054813 834316100 991965045 280840911 771687232 541724174 986619248 146365383 401853604 469941326 215451567 109316948 924633224 799198437 686473277 439973742 247840188 274703832 860060766 736911192 979294611 589109234 918266211 74388889 434001339 201727154 86748299 972473750 307652499 367531124 367163011 202060404 300774852 943964946 522790679 40949375 947205929 10577471 369257824 929955723 153045883 207743103 982652974 8582816 446354755 790368285 73471928 425135298 103856250 965662244 786029701 882407921 449287272 120658214 591256210 172087127 600034647 860190784 374839055 601985240 438181418 309051806 299756109 223870238 572031756 364214798 528929276 763895860 645644657 107705862 126313060 412992819 784409032 30144345 80675505 589376047 595396526 508650927 260210634 573215853 145141262 617194733 543743432 208254583 121699283 758322328 652218447 469524752 125888433 601266100 491419163 475954944 495737277 668593272 927374035 959249673 749295110 413973652 329254309 3725281 736414699 444999662 415740300 795930770 174800096 416895611 73012339 174925888 76937271 380039154 472338521 735935354 554248641 650620464 772789312 54767668 563742266 317592739 473912412 750092738 403417853 596318572 879907005 524964336 850389516 975945509 113848718 446831064 43038038 88186242 143113666 636082904 730202643 579167680 707854725 913551893 352939522 967657887 275355051 101006810 713632719 453201804 637780484 804535643 279531840 248882539 295714332 683322844 806151561 522870303 102632859 161649654 24063693 396551833 896656269 56649896 17998219 980345861 362012286 20606213 25623404 976766072 407918643 745678182 699941309 694355681 414444776 788951858 488903850 221841521 582269819 618606006 692488566 54875958 892573774 800975309 709379321 598786284 52080909 987135721 943820065 84990257 269009952 509501355 921167794 561748848 498432027 64524457 649597408 718821886 588224362 911557860 60618225 193918259 966194751 606627777 917397529 207418311 440127009 909084794 868048029 551759744 457344612 717873698 475918491 688143887 532423437 921605296 704262669 754352388 960642734 336750380 714997273 343512223 755615792 485039877 769011906 425628873 790549959 492557695 24768202 18684309 762237853 954100665 604126244 639831984 312409184 920407163 428337684 146953638 763376622 817850314 285501379 461588401 228033134 513789988 962338866 74627747 14354221 68746100 703922657 596561030 264962361 50057903 45400291 723966127 68985813 831073352 27972958 853856130 473494464 585897954 746221718 722907497 756412108 694503617 145342404 163763962 92885727 477713549 347964431 902205595 26742975 42553694 546601481 510372811 506744347 170070235 395913543 471790204 16090348 694648903 890460832 713265937 268076424 665058158 51235564 521444203 321935061 701619242 602532498 419253144 734891675 331621295 444830368 141937157 610222428 461263308 354688387 668325112 507567572 523005951 953530154 968061498 893081662 75877113 199008558 864888944 833791301 766664261 948428536 924429194 863397236 419185393 482056965 848841519 546816512 778078830 49334049 956660475 149338068 991536263 498453862 608075907 564482116 78416302 739843670 334008961 323291943 845647711 792194318 110184071 182354305 256224179 127092739 937290262 939415847 670540323 489778581 604496453 774813764 953840455 990909767 401499708 970513384 306369430 371644542 689741494 435056981 977665941 918353392 12364355 470796457 345409484 947027351 421019109 201202670 497272935 921338655 250357334 88057090 816138585 951559827 275203674 445845093 612930906 366788657 810912171 559796896 155900277 540989565 680726227 489107543 566278809 680573824 215093682 838077517 490571346 208477064 658574828 813019635 613368850 950106153 890918002 594054533 200438859 410255361 729857803 137469091 372966459 199783623 906208483 679528703 102563257 739265719 356459459 370087711 522234244 406776438 772079084 747977364 423388944 129381494 852271579 930379570 100261487 746836766 690630324 129219359 950206737 646878522 952629088 726640288 40728823 51626974 30327211 708731254 532098256 401105608 661288920 823821399 596746492 492986749 492359010 256660296 404284720 174898129 130749339 655257978 695406001 753386297 115139722 129748957 832013212 579533897 352783058 145348591 820695552 675155559 159985176 152567315 987799975 504920710 11971988 789711308 653444535 682421674 267555037 853558090 468201066 432402560 675069512 155338561 892228336 182273815 879708567 121665729 29487140 938950657 679523899 423394920 56263793 549995409 907038472 348561860 884727909 995185032 299760801 298601216 965162403 379573026 453874272 838230262 622086440 683242369 975156745 727313435 948551377 733934539 441193180 853449547 856750599 956185166 243720353 890653502 211659493 930545551 846056514 664173822 151491707 45942330 403516359 557740985 555513176 386164599 459365516 344421225 775423557 836882871 943520530 493316469 183975211 965184658 450717907 534490370 922514137 911269022 980601272 621040944 567869972 514158773 293707712 82476304 141631948 287095730 766918516 491740351 51900903 357378617 570785118 547782792 14321533 440247655 552038701 416223238 421949223 860399938 236219452 939426194 628043787 198901367 686538969 342554494 624614346 27711332 797636919 2773976 239398110 776199959 791268761 351897844 221315691 798914229 291143491 178570824 146646041 502424592 857462847 895151425 850958608 44776281 710877755 355556461 870449966 394341235 802443961 473358304 21840382 844071467 759403555 9665114 613481446 459661058 151165716 846148725 344708644 868706783 646258642 412668741 42019006 230476512 363386755 613752467 659475027 993167213 893904890 201358657 283468244 729760979 460356901 615258625 447396296 614745343 619240669 791249627 132686967 493659749 809073226 275093490 242894401 564248178 946380842 689610644 540508406 205425041 444724416 623631398 198383740 17815523 874034507 603868255 360374034 643361442 41411918 280363836 127972343 893588049 634371484 832661859 500498734 69225643 748141439 616149887 185538978 399539401 336803545 866922008 963026183 741065282 109764996 337520225 560886391 95062891 960696285 380425060 455474520 495311551 232534092 96146504 110582310 200204465 550708022 145553550 721209815 152777784 718708191 76880527 245616016 411957560 700008055 233941083 630234171 121317483 226249861 330494463 624418677 105171694 132212682 924877200 167918993 358357136 435624068 331669494 939840309 694209673 51721817 375088446 761557349 27229945 371890378 247898146 85972130 341407878 441203961 99096626 53309400 564606253 877422012 747954144 419119202 56503906 160073999 978616063 147178867 556288826 351410966 621628072 773278718 136900699 953005847 493881532 222449810 819714029 933007985 466674132 391412511 808729069 273197221 605893637 966825884 711265458 535864936 751302098 495077989 494660400 520092714 141330699 74507550 541664903 204334819 714957872 179658317 505461489 462676929 749647360 108915819 870096856 242354368 809944420 541655129 900790756 271473453 967799038 803615664 293030336 547042707 208170859 179753490 262753929 751574570 584231349 213283159 838593203 687005157 362148707 445478615 292161877 777148228 903033828 854127045 958151704 829499671 162234288 910225520 588504715 232185196 228957743 649123661 909719867 360595704 258623682 932929670 170761377 523490063 176315306 707407867 891981945 245560482 601784363 626650547 372258010 682052306 852607557 410908779 836128296 709416906 407905216 997803950 361046103 975386936 533393309 87006427 359234657 141141554 715392370 207419937 455776310 424538608 185181412 465520101 920318460 394684447 334640340 370437857 944666204 863127040 3735163 366875742 583217846 445433097 765724912 716057567 350972860 833581879 955927605 559573409 779208822 851577452 154723048 442162761 732567248 192444114 797180183 771958691 134534159 198500435 80530131 45479723 534872428 487126536 262893734 941968678 314997890 194854141 97081737 732516271 847382847 135489610 298137630 752358473 148774772 741315280 281344737 229579257 737490612 1777147 180196291 317259806 458332807 546577747 451532967 818914289 184647775 210217827 978011832 862413239 993855809 132691618 779367468 383207458 775148463 124844823 813888431 520227184 545345293 922137662 742789177 988802759 802785923 253690560 922535657 376517201 399968147 797086183 354540088 277896673 929769535 850320608 24532275 391689709 296870018 638195193 381974000 644298479 555222769 613235241 295900557 534679708 836760182 893481600 834366145 674898017 573914588 885440040 184326653 936870661 467855799 723709665 245638804 451420203 249593347 231995306 532177690 729747777 452027447 77703785 502702800 177816966 254934301 730332416 543050955 612131581 830218806 425316313 850235987 477141883 443038330 614305408 795252943 657200412 67848058 617084924 731644623 92034056 909675365 340078735 923474135 726825967 187563096 988066012 749808415 740761465 882087446 150565524 922122548 610790937 871359611 916027669 337620835 369403550 932830499 70240084 659743309 333829652 288970823 843033513 698447732 958041620 722507312 323354323 75360921 965337132 443384375 16629837 913266745 652132896 982759171 533711828 715979881 39179799 210112221 561712723 946131134 220223654 606900611 360412572 46399027 644960098 638761847 969288800 758925839 513223903 347923743 13582460 675111127 627091135 64773298 85845009 575193316 869450729 691009225 193148741 687662966 339234948 541453409 930220200 429152393 900527247 632108559 598642908 171609620 879648511 243411841 1441923 348038763 135699265 202686938 90044100 32400172 780468716 997355586 577325912 65959066 475009093 176268782 393182907 973240896 81290905 687800546 470231196 585559670 674035490 476457723 844843824 43362265 27898256 162909928 384640796 677002471 665013158 635147396 418309823 107078140 58935042 7694450 153402115 621015774 249091022 966455374 156216679 776651194 249041981 643303740 557326790 721869459 40685537 26252827 919808477 157780576 606666726 687945101 84953992 539094435 765045584 307054041 803278056 126151183 192781475 255801155 211789291 744484777 108986605 398687008 636141838 91108988 724112150 524973764 789919285 425924083 215672445 733004150 818059212 713213438 319867666 720511876 19932025 259517444 618851154 805020357 748486584 355313820 69815712 484420134 684926302 638309439 394260307 249549475 133702097 65325849 839565582 401995663 818640355 666690978 483544714 150433423 349775653 451338006 961329362 915401289 147236546 669773143 42751667 771783016 934669441 368898867 527266947 619671742 20863716 6600531 483803561 609269671 740763195 873994392 583923667 994563652 481877769 968631365 990589194 787808171 599593550 242752838 145595089 795487809 51891860 159859605 568980135 343313334 755785637 842768285 469664243 863935127 41851505 934426575 149344135 301681147 297070837 739891925 333179644 715901561 446068966 231768103 422643705 508235840 949492671 225550556 454187663 774166316 281401754 919682223 846810640 436628939 796493698 164970546 704198053 678840306 949356466 105598247 295932235 669429555 312184613 219700620 245518640 492558945 671401055 413645025 666625822 324768409 696310240 397452812 126727611 329731339 129143966 268020829 854147924 99814086 424501933 82598101 842132101 20775187 78550548 583112562 530147185 353626556 206167002 824568131 584084347 759361640 241154715 646706490 286050950 416339196 70846383 754383427 836378726 556495780 214003595 428127737 742910559 124026026 936263276 897140354 406121403 766652539 490664280 981215862 841863066 416555188 317724840 765436646 650562102 786382094 31352520 500052688 639598005 642313838 88559264 852789248 111994372 323389516 854403167 824311820 494620191 679335182 556907888 441957728 835305327 108935463 230350654 46714329 63427870 65212489 977879336 206688148 243717990 508580101 845806312 625795562 871897373 872276305 716369184 980148785 215617731 184844135 622709986 371056727 650153493 746162993 620562904 809572164 524888988 175245228 212506218 719778213 917663574 421928423 175756234 226323208 137473096 118602963 9025167 379930310 290493191 802049553 75099949 396448313 514882568 409868394 679033247 404349623 532960968 557555143 741551382 532260656 569940299 543043671 369984727 352541724 18908200 24970298 93184783 389327910 211871364 260316143 963662023 878822643 803297135 414167175 141314945 623548668 145503602 819401016 414850596 241954547 393898908 561217780 484313401 124989342 341363107 413745707 978395955 32687975 270804465 992036963 283045961 619039592 4791265 459189954 899054119 880910558 810182641 51998256 778672075 656698115 899616354 599412747 421343028 576006331 642075395 564182579 267524988 70509434 609721617 176577816 824770043 868668845 186774353 371404812 308601558 404446971 196479579 12902478 207334185 664572238 888599838 417298803 576176785 954911721 615004574 172557801 477201870 40872860 180132000 857700405 455609929 303281729 973989650 571483486 580387717 484122261 400246337 233901954 766180637 354476836 819601713 232797849 136659994 178076256 20878962 735144193 269981562 243395055 897217644 278045553 357019608 528423468 506032690 886884113 455322322 984322942 529096870 140284773 625320264 850251692 552894184 39474362 872105804 593897684 524805367 799533490 7477970 597542615 669680565 582530144 221021357 223742454 844394083 957489210 516443914 569116461 980947599 437955117 712169272 598629012 618806453 296687196 205013360 289069208 798742683 890877528 885959955 820801271 902005627 442403257 327989327 950727837 666204182 851116474 5654284 244953835 678451608 300580249 885387270 19217724 178128599 724606946 632175444 597093358 899115109 35153068 927884490 781020950 699986132 445610346 954298091 398448099 58035510 774058948 258949679 274041696 640587329 953888601 910137831 692892441 35134796 768810917 913317488 800329065 198078021 300121949 314642068 17838654 871858258 110716688 834074275 571029044 212570761 380893382 628489202 30119307 6739343 925732715 277915282 955225988 594824294 422113637 811317688 482680512 426210406 406166658 459091254 194756693 774848842 710449335 862609214 920072244 637251027 684999540 552655404 213644374 72451759 600068729 860444842 506185456 41948421 209291432 707540020 308579250 912791564 289664549 872608764 541536567 895349046 503551683 357222977 173350859 553275995 544633982 234426947 402585864 189970085 512532062 460471205 426798560 187003931 470767035 144611808 911252462 49059894 429102847 117276930 632337082 28509197 927396901 125072940 139317452 730603260 546557160 335965660 205530448 98053315 76476196 199442248 40055145 531081978 8256886 806052177 584319939 304914840 607279123 250125338 585657811 946458475 541845187 637527464 794902264 953679189 235106997 180780985 195273141 395679377 579881180 455080855 515577746 801839662 712428551 23035091 59393665 42018246 658126699 87070570 979334062 65614564 244260973 596034219 872248176 753526012 464121784 205362105 108805993 211660919 623703837 562430845 432620167 804925182 982321192 898217346 128576481 449014184 510273715 516450300 608248166 603866094 833175580 775838275 749452854 896777580 26174606 47757535 41276669 714024538 452227983 179732965 65930142 163889836 493552352 917002503 792049185 204529733 923351816 396866897 122120624 289160322 299830664 652942766 148830454 445706430 646703091 357908705 605678866 575570431 21619899 891185659 971270617 166747531 119601390 717985546 649790200 29008822 685026139 179510815 900678781 602192413 76044553 989617092 819558782 100337843 659847744 207636582 105271996 942705043 932673588 141287438 102853344 674653736 537705064 160428012 341723880 114073119 249074767 588193329 404604449 463405479 382749799 412767283 851266048 895841123 382570441 443549746 645501873 133275809 684667225 814555067 810367776 490072260 777751877 873747402 742944782 104719559 624064706 227635150 510900800 758912611 684835320 292599079 527638221 419961515 850782097 259401565 250681482 916651293 567225936 916705268 151295059 433623185 348417772 67778486 989922889 160985746 180501686 48973666 503871401 263083466 760520645 212056788 281932540 303437013 533076254 302174508 870910045 733348615 11039477 792021828 599596870 215159095 73689332 128944396 553443481 50959635 727198897 994982 96018215 520599852 508366379 944052016 900881736 278887694 214313945 649925667 519979672 561690391 530815263 847323166 466974097 493282337 959032519 181367292 542858079 444071399 523400361 723822732 982455831 217802920 978242903 115248374 592677907 6722021 297346311 776583820 384844824 677924500 136247611 206182499 591189867 445079175 855087191 822392702 314735102 93781028 243375692 831624228 612035885 337309058 488689883 955804068 228920475 731819646 341195028 639337626 231093771 116972984 66577310 68938789 847820237 569192829 644504199 486559454 216049243 105636578 853776740 447031773 24869096 392927783 192714370 234741677 475827530 743222961 440396340 389148853 635809732 37639349 493911872 42974212 256756223 39975789 111800945 485752050 47362671 581392237 807277262 138295696 535666202 471576987 811700717 560336033 135195245 125328201 895547773 443469066 667127981 213061144 387624009 937758127 305244050 129739236 790902473 55374507 362314255 868299159 31440344 610966775 200962618 859118145 349024930 135350349 249996940 581530620 789284147 553664837 57587440 52022325 839125693 259530500 494290455 213283597 697119719 39769662 637902577 884961678 949914862 364340298 273618890 689424003 113762902 606947567 977375016 427306183 796662073 442717545 223168787 143009593 122824124 177204929 795480986 486015903 320378047 78329498 386031014 835993220 370556889 928449602 178219916 294636792 279958262 861283498 249220299 126988317 24972032 701070911 202049564 297045050 274099687 105494689 848910637 416029254 358534578 970498209 582820569 789111772 555634355 631791834 265044159 899285134 324341585 169656937 281261316 726732148 830618719 970830250 958520989 246007948 234191236 672839417 517662510 296156417 969619411 191502015 681415107 267612382 681468479 288880556 42082243 10726015 167133637 275745874 582099785 644230636 272570799 198346044 927090202 281242023 108169262 187086543 750350668 840244379 86681152 373577414 221912373 966313719 341925546 770982259 862836716 772637497 979280166 402873639 158154766 762128650 620111666 327017167 712243088 703329118 585033840 731975507 132025893 692172803 142188978 221050508 46136730 228592462 328177329 471253527 182653860 931389279 410574938 871065362 758815074 453935469 301069304 321064766 492559277 694765573 280919282 527418719 759662043 284716970 518119612 46934396 323574793 613371003 17487401 640415030 12958474 638903458 375279090 713557573 689067594 872285876 777814314 734719300 585802701 608339867 146888057 346994269 690826266 290790475 793075989 118617223 626716630 612508683 527818360 26295619 498531706 909001521 853882129 229042859 436551283 743158365 231091310 515849957 597134187 108465809 427191747 595794601 390709546 566984940 867783655 914651627 952588969 999176811 906558112 865863076 623004632 112721565 768477744 738943 153398291 836681321 810661243 201341268 957114124 984384456 232145126 4374198 430584370 973403151 77470253 201148451 54330580 179047961 443146525 750936076 565134579 675797635 696124999 795395553 903947559 782271870 150425638 953745563 309553280 445222715 659989050 116962277 801414731 501948911 962033904 120014858 465049643 38972556 435150194 99083580 639719341 631643717 166578226 775032999 901147347 709826476 243303314 166305829 111404893 643764800 734701024 207880545 590554797 247511758 588822335 718922996 753825650 25658439 945193796 641698192 74884944 963361117 798582103 346451742 552787560 695443015 474862206 181844217 872236932 420594314 427966971 365670617 421924577 564939631 139501295 432156160 4160562 28784678 288284013 127078963 698936949 62743967 292608718 806758435 166719811 538739416 523728618 28108359 917716516 297509699 581981005 927993068 69621917 718344935 285843584 547944004 571872401 640672544 178529444 625001467 696874329 328810312 561128679 13186354 586697695 925330383 908615918 851171684 393792914 824668706 565843145 443597956 747278960 371702605 495866942 65038888 525361098 500349058 307508345 433947690 24655689 249801246 837703103 872549830 194690026 87208319 312295764 442091147 501453783 851075926 634838559 303012097 516649795 665956608 627360885 480172578 365247865 814618689 764806599 197498920 228751770 856258249 935189651 30290792 276464837 407489018 311521506 176702686 852727240 508588447 967551210 300873187 729550325 92689622 470183502 456386268 79180364 87676193 35198012 274678335 35369886 853790331 590113520 404894419 998423817 701392858 114579380 31366828 599381180 868614906 785961821 150402170 511546776 937631675 405324234 974338280 662033895 465623055 261479994 737078309 839806896 432204653 908637656 904163000 257629534 62954168 603641399 538561992 590951857 230995274 149857248 339640139 184831057 870669850 461704285 567976056 699653910 790501593 776692124 714753265 965127514 436989686 102736982 954920738 428931460 756499703 587733670 57820443 160270665 319356561 100950837 241022862 370354817 176748833 41169721 441506779 986341051 730013921 851404916 167923991 478028887 18519241 47863131 62786306 709420140 560887016 259786588 947698562 335895564 314045651 786760552 354485186 610314229 880890396 398853465 551554674 606929129 87351710 755488703 458235126 888193035 842957897 632592242 949746384 124003193 983037488 309892414 17688652 730518872 249150856 934284044 123744595 622130229 133595071 680333323 81720788 197667411 979028135 658171005 95815950 310948220 307482836 117197181 933309165 423692838 127561231 303558774 354796501 940701818 722586998 621336713 768104171 756642431 100660553 481132184 289361685 497195486 677194809 903050775 436582424 515237768 646644826 277457924 799231812 699647221 510707098 116137652 123876695 790635487 784880088 216671200 393088545 972752868 646048325 90327987 948779965 768654414 824948184 373091734 84629441 244519941 743682393 934415923 925538331 549199335 98393560 630185221 294935899 85297206 217068363 810694824 209870262 149960886 364242837 99288136 694408016 350617807 713845936 300415209 689341780 42432689 491456485 817188095 349780646 927666725 410912345 689025284 287960116 427635264 191226102 84683861 400116394 824697672 338961321 942324080 278357817 554939272 11200753 77736150 887499666 75177744 59165521 825816525 910751240 266357409 27974798 932144173 49366493 957034578 884816115 926859272 430761880 499975464 533229265 950170229 878835739 706129817 540763155 520287017 567584115 816854684 828178188 210497445 206213295 76028604 780619616 847379692 972744916 222979369 866891921 456338788 324649306 777212120 538898792 716925354 260982273 984261636 439887755 57415027 425680590 947068830 86381148 231087546 851313929 311200037 286275960 541827511 82944316 580772455 640211621 1392794 765763615 800456604 424156268 906193393 345116314 50946237 347289902 569098053 697146744 880914373 820286752 638154588 107220826 671718067 716111331 334964615 412842073 141680288 223788121 498014370 580001677 181089532 108523034 590240248 719103529 420469326 633917469 233271222 725512810 111497975 217167829 775478744 52909532 376368140 650369688 480458760 477990949 650776105 633373381 480058725 424550859 762292639 698611559 268606552 222086229 827809707 811884257 247681278 626796570 315796970 545934967 296411675 851370514 718542797 980138014 247263517 919038623 389093306 471139239 322153054 402194747 419250871 926172437 569339043 932945677 252234878 654356280 366952237 135823731 88671770 225038969 857685794 630612522 876886118 189526021 47909060 167958588 548955463 906742831 348492489 1286039 610740229 356125040 6025332 870584702 468465532 296680136 988205902 256093899 747709236 509747797 521194615 707452018 369747449 866250495 189060206 26087636 685988211 942948488 374935369 716635064 345960658 603942691 300142232 753803945 962021099 702740305 488689347 792046231 347587086 835658114 878202533 43858498 428451222 30236058 550800270 370770630 880191951 261836249 829399068 864072530 746356464 269908029 536794868 935787384 553108856 459679250 989730308 810232930 394401261 300907581 224096094 484315775 530795220 687707071 32587261 919895250 71276824 352864414 437238715 103357701 986880417 234968547 33939346 435765479 237991407 637219022 531133141 964859558 474706249 512805995 1851805 654685093 308283147 983047493 348876908 770145966 766348393 963760007 760159478 199272698 289247765 974473089 777879564 619630773 708054510 360200799 737079807 881609107 945042133 689005595 679079069 951371640 163754373 656365534 626353541 172306114 825298805 248026036 542504434 732167326 575405093 305943789 727632402 201637754 107815230 32640815 79577042 333997501 966625213 641649788 946548992 993433405 797947885 227901693 371475606 325778742 183031270 629151844 810042900 297263279 348729894 460402054 7369740 256946843 655642991 907305173 309596155 918693407 637830159 27844922 170944856 124753012 895386985 839887853 966767248 12348082 91648309 860945355 20567848 565038406 958372744 493544380 46042081 286645322 948209892 927451800 716751517 325918922 211092910 643213075 782845443 168350364 587349366 777069120 786755543 106157190 159274865 489190839 875600437 145612191 290405052 10421600 389744639 948359256 776756242 656857513 411826823 573423238 983418505 658832490 198849287 777792717 278193207 781369607 427369373 369577962 921968412 190156817 575104277 708162183 459955467 767309523 612866535 640996303 683526236 660930318 27109801 559703904 888786860 382989473 845662714 785172357 986759003 202387887 311546788 682040063 156539747 242860282 972252510 130997742 802559007 289615586 640413280 11196021 747947016 430612334 967240609 350156694 396670538 933124439 825245629 403569332 806094004 394882304 571999384 665870765 109339270 55585816 620152792 824362186 265596266 181099829 967272711 640571197 898989696 677395856 501373471 596096548 92575933 660437141 329678705 881164009 236834010 790564635 71215528 130742432 154621052 572142528 995373494 863098719 983717935 210886637 674087856 11744651 673872612 437601803 957919191 165355999 143009986 224019221 393341641 942050227 737459724 939926785 482709051 916364780 314837680 18742670 73574228 672211492 214778114 696487865 966938822 280788388 534448066 835817492 22500353 901093009 958152234 623016143 300158736 779566592 789502440 227031262 989225947 935025452 212225803 865166988 958350730 714677762 278772172 977268355 655896431 885894571 622699173 812252561 498142481 173887358 376203357 923404801 735172542 444399712 690952159 871523481 714851033 916795855 81491326 734164899 257814168 90883463 403542461 981018942 163713509 837220857 179540161 175700448 551087627 290514468 140506176 293722729 797751481 942633168 593014974 112471995 356430316 376515098 595614570 339309083 549991734 760034590 947941281 843385947 800696281 238812499 952771968 317925234 607801795 663787767 72452857 101908434 664120670 289133128 709062979 646559870 277428773 419573321 307112716 823406586 677013328 767227619 913753445 717810918 685251789 367327734 458864857 416762636 376773967 987563593 811871880 914953587 356100212 34086316 11462536 43947411 412963509 310276397 660107833 869942361 769445509 374861974 235291733 925737658 41113700 473193137 409121399 368536493 620768821 957231763 163391399 2502745 683200261 669099374 637734251 10312691 674561427 81135217 536471461 631592330 885527574 43586819 292923175 547270275 881601837 494417458 507884040 888985391 825598249 514704873 274277069 454352380 308191354 287897634 12261900 32025570 663887729 133041908 382853259 802519395 67195179 53926520 230926160 752190727 387755214 267060726 226131099 226979859 748294914 11119377 124445515 409560156 619524633 504492778 100854433 487444842 512729245 12428261 868892803 173759016 53817612 230545020 546717093 277529041 439693898 734847997 775008316 339145560 431221155 922145298 334192254 796051898 796315523 187816338 107580855 687484994 158573661 594421283 267343858 408351416 118156819 496373396 645190458 968622304 642847077 191853657 859290141 439559068 755898088 516057604 751341885 386715267 579459854 974349719 572009154 279746745 172590110 359347313 337911730 865686519 891538263 929959713 611221587 4878318 598375797 90783280 603282718 411476008 415541891 361546493 971427279 312916146 187564422 800752443 158766784 275418006 983888755 90100832 338285870 703276074 233450316 201750667 342112904 46265734 420324490 650756892 583558518 828618337 670466397 168706311 618856184 134790773 665265497 284620397 559916757 176375992 680414884 529343366 415472730 984856149 544327949 241145693 880388422 936948951 324433538 194197722 735650453 177256450 15581570 133572485 532400967 954832542 560908395 312852429 100791758 678232791 600744436 279734444 901862172 783046451 263776823 748918490 31709997 592479762 121758346 726591615 358163694 634326384 208242115 29712897 719035634 217650522 233084627 506159411 86596135 933802951 993768497 611790265 295097833 602215736 320861459 207587585 236814246 142391548 318169232 292182596 514009121 332559880 869253549 250361801 861740618 359854103 41282009 469005337 275564048 950922991 180714625 250542788 124864187 838977112 898216634 476610804 876083865 186547424 678547289 131655852 132634752 584336756 771433236 269614186 539540224 509599208 268804025 242938975 404898391 251907629 626693446 978535607 205339823 870789201 161615498 287123 860673971 961985873 942598558 297746187 976018673 6303133 949896225 804533327 901545722 973765190 447728891 460898272 570093535 154736856 478837487 893946859 936680936 4530826 140875807 38199508 697003131 940299294 843427884 134844633 812819763 634202167 257314633 685246737 747505152 610997589 447840903 912010705 780316992 932272453 98163423 384219473 416063397 266845931 378206661 250046479 319474287 951963851 168246736 397969951 826970237 965591261 271014022 88157465 444683268 485849891 693742212 34457451 697159525 208171465 461634785 763437557 38516981 141022614 379316545 279868509 785092596 348756327 711854705 211157719 160304277 995944471 664783126 56855157 5260881 585118496 69534723 147480689 144892995 581386265 634011123 572152588 600666659 118417809 486334870 795801289 81977115 159689577 229163338 874989996 953481017 679121476 473378182 881915877 193170002 743931290 470291276 899968094 263731045 757277209 550905768 228110920 957467546 728937070 453215247 85188068 779355977 251617292 898344231 825929406 165459580 222659950 63370184 381610840 583324489 342837159 600751131 729988686 740783198 118970507 784717732 598998862 47233017 786575689 142622737 872216086 915591533 528433184 670104413 209096376 834013889 671419812 592065688 510944477 648937726 850809631 810742184 755314859 470373558 301278865 589919769 505436572 217954001 806921405 532536115 896506339 604770522 418204080 840223908 272969504 971640753 219280397 662666448 875517985 325260759 16112556 918635434 702920812 146269759 99043327 853559241 756070735 260364977 264714010 682209329 266084236 462127213 490002078 260029720 886033553 522597731 3437054 191724035 164959311 956819430 437426647 808753671 672759190 341402230 210730848 794773298 229294053 655871058 641237215 701964998 249756669 971784781 337944168 340329947 249038003 952874717 560630746 247300677 618218890 936768762 641915849 708052324 886769077 860234291 21046728 167297826 52471080 191800055 851003952 564783997 182916179 949467678 466342757 466529367 524255030 63760376 513019577 601798473 417501160 377426985 302575529 527657470 245594793 989389770 387896670 894953292 330071441 456059860 221644157 232195346 606291598 951241191 298026639 717097714 785709700 103976944 721664397 639723015 636657633 663926427 729567576 370494075 596674471 78770248 662332806 948875036 659758965 476008711 259132240 525417534 313944122 149756993 873215965 77514706 849841705 423221750 632783583 510790769 904685524 206781954 739446362 680540737 345962858 569670414 203050911 609121041 778497301 14539651 299063342 475732499 404691000 288499470 10817498 369935679 413833258 268693307 540022054 883906744 544010442 986044703 225134947 6902442 305386553 133397178 804266571 544830498 989912170 966204690 79893366 555735458 293057610 266656877 210431246 710809515 694079675 374398497 320735905 56234753 266865376 973816292 28176195 784343472 189859543 934866017 361389137 756655030 980339907 673489016 472300519 971184646 882563896 130278701 235730013 390735962 14100831 382794906 736572285 944298984 414727178 503905153 193627447 887794099 850869418 373912379 553776342 721170105 700113743 508526520 133025204 691385854 228029572 326082739 602516647 957192253 283518575 15913332 261140049 311351681 154885609 652403320 55334872 800009784 166051176 453067546 791380974 258623500 493481256 76799907 161247930 254728392 16506288 786912592 285612696 694861911 862542892 454076391 470498895 878626404 432596831 11153941 724705945 350228188 232193544 118455079 327512620 876695323 228134063 549837547 952035169 58041446 713926262 801807827 383773973 774021307 35640676 245449944 685088849 807397964 225654794 469778344 809774417 328561899 838297483 16485456 870787497 438283034 419928000 809907475 989523581 305358745 767451729 360491413 248358985 533976964 529420986 743261741 402983243 538311752 747213574 441241910 50442705 498936038 78316887 333118399 391647446 310707180 242192408 589012842 248730687 812378306 145902445 280639066 12991078 285083596 165989793 29683202 659924023 808475042 778511195 75156849 549999249 96865400 242178307 282679750 995786052 265782818 737611627 324288788 299589740 70294160 86357769 445143317 544472048 950916364 141070451 535237819 795832055 420426714 764956584 854636904 658008937 696597853 953422550 406712212 631485176 986035156 611175107 18195596 32845689 663043580 220901244 600184379 183537967 834886291 978770309 224739681 481295153 929346810 794099141 31007507 970467502 723864224 265338474 567521915 548634307 438890215 98379518 655967200 368073090 836112842 333774279 228315496 931702333 179012048 453296568 188240026 695788843 26280699 254489726 3458383 168435248 632358075 609560078 931567495 759409494 179235465 402979116 212786858 159923044 477510562 821190566 732743653 690434345 570581733 562306668 870537546 348131267 882240814 223645010 572979660 814940443 777923138 167773489 344901580 46355412 816226888 65309782 657950864 632358561 632103944 203322502 820630291 193120552 538455562 820049755 148554040 827027216 884181722 226096484 611648741 16259783 939201486 41267833 918612685 110530496 570637883 874160061 393138432 94679983 916886889 389835108 68336287 432624938 320992413 630685508 176548477 673378455 478520814 172955127 291199772 136671330 177075319 881318926 942519037 497507073 147614377 162108453 655312461 422462437 547858030 419472755 789261249 646897578 927978749 335359070 759958075 63436984 483421594 555228498 769700218 589627142 372155488 802716727 336599910 508191938 957878775 382729704 197523894 675176324 502241447 144627788 165392373 905108263 536613651 170107423 846863376 568035569 890548424 752443542 573243129 153940890 339193875 73007852 68109024 848502324 289331501 564980449 235975888 640838364 77522535 131441348 824947889 551767351 194350132 375314418 580504646 557791782 222890503 950793611 137288973 519694188 411140186 316808778 411287882 231284741 395597396 102082006 766538419 7236499 822977031 165525890 635026890 599550595 896758535 702560458 906728283 220355518 138470270 171137 856742757 78354349 284260949 751306998 730299780 951727942 603927720 733068983 159030143 214827492 861337612 313872767 62926445 866395141 128931645 435394601 244881252 832588796 127768499 42099904 759082305 214940997 226558031 150959169 99410010 550935324 448956482 128071727 88359406 3308179 145353249 943208269 964953074 542614661 994199285 581208929 283135131 653243227 405079478 895448490 198328627 16313858 221605587 65361841 588616390 293568473 3452890 762079359 978645205 963313206 528597267 199348483 19708691 602963087 371637018 471664107 658087356 962797913 610133336 9839457 559012246 109060683 405566913 416721402 709530803 25097028 816050144 373088566 660730220 452700448 93676156 719395066 863590998 19181510 442786990 471781459 682417950 894643616 194102850 931355037 845035170 325139335 708755560 564845691 139750887 20952421 406815055 29150417 292114470 564107941 775624889 376829872 743879986 474551165 271159079 661827026 974873784 466886099 980001053 999671047 351859792 212860287 52697915 748029244 584546981 122812091 957897183 290016207 838679858 645711620 261336088 618148149 128593675 886805291 501477287 570243940 139063735 639948385 569310127 769801594 268167802 984389451 892119049 187559164 96473791 455974042 374059712 197372164 15305155 268031640 507647832 626554803 524995611 285167374 481602209 220086903 489387797 802636144 414427129 134960319 729686400 131024093 929163335 141683956 598894533 357406279 838815612 974161989 408927599 601186062 140274307 559010209 744543326 550522764 41698404 554949837 570321199 180963434 382630686 954317710 795377884 835690742 836046394 872694319 67777257 240209879 362868394 373993543 343970629 819001985 245342888 311405226 634477375 331870369 241220336 904117761 911010080 670341524 227875569 328259466 236502154 984000164 951481118 484250405 570186101 813842946 734349169 848406257 387688061 745735509 70701858 906022211 21661697 107824827 664139648 724015943 377654367 287390966 960677169 294256354 603440000 734711495 980847026 332719038 840707869 709368583 651097951 712172057 194432799 606463738 27326674 296824165 77391051 849705509 279490148 470077155 961086082 701770789 865377392 993701103 495718287 122171217 819365136 704785578 775315762 469050894 109052904 626022569 56876217 814591688 778442663 5260480 190325651 989390240 857849550 810991550 457430446 750584213 101503199 799148549 878731829 302985747 247733748 906009350 4042041 684575195 529740022 590518248 826083292 140872279 417297818 815665887 297312405 847631182 63539679 71297527 518083889 753038844 384537557 889260405 602082405 970102051 211889094 78235957 661957405 827539124 932793100 984562214 341440009 546787677 54857236 170488399 409141560 769429256 261054245 945935277 416110906 357190459 800443091 641979026 664527451 266798261 316777148 486689936 663943958 725988977 37835920 435869334 143480674 26270503 833128351 533170546 135549671 382961088 729160283 570575519 543208686 455194901 240380636 460897245 912883981 506671167 865566703 610339074 507568161 131606946 657134266 446916896 71736805 582876898 337623243 697963745 952663079 439504723 548431704 223924040 106125638 19442313 399173079 887130198 787030383 687446784 153638503 274085529 667283656 612144477 423849358 553949691 894758479 551498656 615431208 991250546 637290949 794979681 334417607 574017947 228866841 702639391 405431865 974482958 587473302 694713044 499479423 627481802 537589553 883167347 889879821 696943247 854860055 736791034 539704861 4693498 503172931 759229017 553476963 56293594 513897601 678625279 98830790 623732957 5091214 822587438 783425181 828711290 575643601 718960305 114556707 629083636 754991609 491893695 470125028 860302779 654700577 275822767 944024219 210221770 670648593 68817522 416674604 96817696 174847037 955960389 713952110 552555788 62323435 485433187 314570165 506800825 387131015 1230212 294425064 516019504 435107544 917349411 29687804 252218874 417211363 987178114 907542216 531284171 112102015 565570209 967231622 68486134 308378318 705537878 402817159 147539145 483736897 419859065 24940418 292987358 313601120 144893684 756186769 520378237 684863872 614783473 410125053 533112919 309365504 147693096 984762516 892286220 291441373 901241011 531067585 70553270 290464124 330519921 909533718 373528965 504591544 123330851 558416738 549031219 36690002 672548105 821041832 651926797 891293681 257172612 306922015 266042444 433453576 313412312 130094060 551146848 775224053 375490834 903997278 977300982 62113925 961230455 397005943 748278043 305542184 770565451 238787361 400894820 603033827 767941042 162982712 536967962 84268497 881555427 326234099 796935813 416154804 35465565 964796789 964996701 238738725 864677949 674068918 580747969 296219720 625511399 808502079 241272794 439388256 671251066 187411870 169420403 124162091 63261903 896184252 535191760 373598205 944864142 110415303 399857741 129090254 209004088 196930917 808956002 228087112 860264246 492464399 645898475 15606574 992920287 885422017 24618054 5388368 386840166 228639029 711181142 933108505 664008951 352995463 836367665 670444650 744007179 30792283 796193301 105709850 46592136 940475084 793213204 323592610 246327153 91211074 127973119 714006123 636826530 951643933 894203770 775506392 837370608 255948180 645525744 358241088 833163813 694746031 331186684 40671241 478301833 11205366 121776378 279236520 479631373 656543004 23197301 34829736 377077585 741061287 320249753 921137044 795537098 692631881 144004577 146190442 348816870 655269852 477492244 70060214 867853242 696316013 435511224 369827237 537518346 689910306 10308120 288432917 268189886 701486088 130662785 815841858 568610574 889891626 86926457 95475678 374296925 51468034 527651881 109815797 756106794 99418971 856159817 236002201 843029179 436436617 951905142 708505950 879563405 608582695 696871052 422270233 5941347 700707302 845733571 467188840 646742966 804996850 837781407 720542604 365674645 523016255 384878349 166756451 630839122 887418670 365628303 917843585 911899105 416800764 965708885 665871715 831275297 829514369 25211110 46142856 502293097 177787121 46382414 412764800 810310889 802180208 805016454 761143787 557248639 48710534 742573899 470306729 966051115 285502360 42054940 64626263 165227221 703622980 920823287 176909522 598297128 816505787 208347204 746168884 866025902 958587340 110338626 117939990 240180178 2861824 424071372 429803202 352081429 325335890 498316467 166050706 859544980 243990804 576099682 374664249 813821096 917514517 165138365 894964769 33110940 702879667 562174590 735307908 759301556 918067395 623900445 994460965 116717107 81822248 995417101 534081 146488743 124294059 204923114 36964830 491951458 489060472 587030040 960159641 356410362 239538000 149361462 438490343 676996401 607917790 573846480 478705418 468738377 208620205 360994945 954783162 943453047 741488358 728762594 503844927 588684238 867174236 669500142 747445741 422886103 139969116 170156595 200798265 413797703 556716016 791370715 917201850 52318023 705460772 336703801 647654210 632703334 99768737 32670582 234634763 899770358 902430078 521998962 110201302 409081451 107360608 68077114 21997860 517008545 904293493 981396877 649746924 951379743 232016554 166056666 539169861 903611113 97201015 764792064 407891434 508077007 579354652 224536171 961908514 317151537 728600289 515868611 298589237 97831329 345331798 746931145 606363668 967091687 709834565 847276514 667787067 233513143 971333552 463453273 414564077 779088019 723359498 856236297 483805271 998134802 131717268 4677884 779974429 963430390 74352165 114320438 997450121 510041169 949769414 616381616 642266884 149921150 995975737 501756771 819307589 803610383 577022119 28141628 538400332 932520430 576412555 689661384 274608071 940551071 493389983 862075949 278106333 498036760 533750754 793021483 837529123 716005402 668908152 837238180 15397662 651317202 963084452 62412977 656854048 622724899 341015653 330208187 765264318 736065591 535145706 54653423 243215661 354326423 2453809 239435496 217991991 507182796 423442058 527999515 860255848 642598153 306349391 526557965 150591161 185517635 258896520 600658075 285554447 159891088 227134619 363810389 296396534 453075956 768994092 734611959 539021440 686365742 223620755 819122188 255457001 513007738 21903066 941434176 390330780 938064189 993483724 506282701 865750065 36217155 944569882 394634431 14266288 958562938 72611884 638525717 715919646 782278250 889014408 627512762 466955751 89511690 786862335 294411276 858188655 283240155 753666925 416339944 825817223 181069328 259628850 104909056 238424248 430875677 221633547 368801115 143047611 458580323 556826044 214993298 679039886 302393966 439563541 907400920 540559145 404553147 601428238 543377433 973066961 757719340 308919309 286302871 883624876 157667406 81577861 643020265 913751450 55379107 541574137 705200604 685309577 729964648 121740770 424107378 43905295 890793150 187371395 143358024 302022624 788644762 286278114 873471176 574018414 509268719 78682444 510571319 609999980 420669176 484393607 355767942 928509133 51842311 191769821 468716457 280216030 226966120 309393458 922433763 988570389 15383406 575413501 205236708 49076211 570752922 274770455 529680673 943200176 292313653 916132010 788072011 725257282 280931602 492489662 721897159 780440630 668470072 257977314 868481186 128298841 621280248 550630125 523466271 453719199 406180544 215590423 615293355 436827655 525698663 605237879 305973334 42306678 260469301 108535764 503238769 732449426 894998480 728656457 631462778 602283520 167420351 190960406 943037709 382480111 430539584 787902343 927377525 344331258 717951501 195857440 202126305 423803532 169320389 102440453 346423647 1597209 756325969 256918948 742914452 727745606 208502080 824820931 708034652 518509941 840058545 146211967 94299575 896039961 815686876 443964371 147379860 568247903 272728552 50644334 36083100 54673059 743163024 587740026 503904282 886264792 223932571 877606229 729774008 79355080 319753688 540134974 183919244 760372199 10009640 960196196 302762669 547586869 663795461 457612969 654883355 812319638 794684685 443584224 172805273 436513464 247150351 697171674 20960680 807315236 656558589 621663703 293300766 288080643 200123217 907141330 347196893 836335495 145656271 378747374 697868439 929813181 356672857 290615932 59515357 661108662 617624253 175292272 378379686 169061443 454160483 137116557 998382790 552692774 778426031 897646787 867251816 997616528 666539903 894037896 173468166 67846922 629630055 976374155 200629996 964984166 588776247 545264312 752530027 526625052 181687433 44114489 796097017 582596243 217195685 937957006 353851885 960018398 851532557 271449781 278801707 103981923 236902493 890270307 370024315 465152337 374909484 310434595 872708886 979879823 448103925 416921716 439000983 719960938 492316681 225763996 948137025 97390249 790366168 665806431 136799023 614679387 569706106 162637067 568954095 314778497 145716898 142299990 772899613 974200192 804687130 565419637 657701032 90038482 279866375 726089370 861230397 670600017 652913956 645861513 421597073 141054140 853097603 716883517 925728528 601284135 299830288 432514343 17475277 248079218 148829640 829732364 694035881 828875376 708963028 72742292 275256429 338868287 979598828 401534570 920178769 258818609 421217932 325439499 573839748 127960219 622102495 598458215 814433883 524567061 43871931 490134496 442291325 705064677 882022701 183006687 656031459 264808057 875026151 229556931 52457053 755837598 605630914 460853364 113001430 213778594 256132211 295015121 987860181 48349029 316980861 141536898 52865599 812739908 747835813 612321752 875009603 427197377 408328859 884279228 150682951 650676893 419702667 697865602 633134084 310888197 470486601 318218427 571669440 558887152 596848803 99371090 646941640 288253869 256948850 375987765 898742329 630296328 893431440 946418188 279585090 254285638 912553822 25295414 826913623 785010780 701239378 962837207 947826430 197038441 988361273 993353869 91163291 955457735 95383808 378150587 532181789 56241090 566999445 774553283 520011495 187134485 923558290 184826471 923142249 65411398 49146918 493270003 398371813 724079000 117982192 611888390 671012738 463846886 46736230 306556875 419288643 485805312 609829923 453831378 483368354 934083635 705225778 858877277 323444579 423112000 143303308 99913086 209748348 509309477 547466407 155746609 534453013 621768036 297483058 515069636 904618793 856302274 428646004 721897762 447826679 114465261 575560490 81506323 253201777 426169595 794362547 403077476 834181562 988872242 228948663 843754714 706536832 442565623 144696674 279520462 466099168 166563768 149412945 561103263 354026080 483094184 268408805 524692177 202464685 689995384 40689430 834818728 602315255 555326373 10805384 97217511 810149850 250390682 41183389 21991922 338595439 742076072 433195538 829939633 380986127 474961237 600582114 849024939 907491952 960421997 759493092 220088895 421411626 834269712 505691793 295279255 180597786 947330067 118649061 498001865 932643516 947116600 121064818 922405618 435594799 58567509 684347002 580722769 878046710 438513065 851310475 62509552 519727426 722066234 311945755 750565751 209486001 646555828 202865291 538346512 886252503 900754011 237915241 921457933 329607392 496130406 573284452 814194326 393741673 511142691 329863876 821238599 56227060 952468144 193360107 106020375 313149597 412788843 67763056 757865132 172838276 939502599 806759197 403861441 332856554 352868439 376114076 866923961 755636128 48940109 863711461 212286570 505543772 509478094 6196489 592192047 778575178 691691161 480097258 225934155 456803381 885602136 147114148 587973684 86435071 581354962 564505830 468249683 118860322 760008378 867976100 776856900 984021960 939728572 367656599 630993374 912853190 178250670 948020150 310067997 717354708 496208819 947073653 981716441 466497116 28728088 266948580 638290032 95669322 350929422 775531441 64125888 631287808 291367752 534130341 590798667 454709089 338159000 118243098 248049647 49193373 657686474 66679121 12648443 418052855 569419535 839861211 726220712 383871812 424124256 520236809 828485586 530481982 827199421 620881 322622337 256765678 561172418 978048806 273555364 287505142 258482484 407735273 871293419 933961379 519720055 113534021 492463341 499444813 375469288 753194658 205439806 338765150 311567063 653965595 751793404 431403732 116573789 989101059 393227948 393831142 119105881 535580111 323846561 627036921 720794834 427525601 184698389 544478281 299302677 189712286 181305281 753700954 238554603 727169117 114788620 205467954 100928639 963506631 462444729 440370409 589174231 875154601 455049649 481219413 176279350 626120048 500727598 46910189 893760712 317337518 704831602 188022243 750938042 236371792 372202889 770950281 633728527 554655237 31171087 465593934 332812470 978578718 425704340 865545914 84261489 673107766 280863334 130247358 685680956 365005466 342623924 280483728 768458318 714609787 997750088 233790396 836632519 926647591 928463453 899861836 872619348 872062738 22528772 78899305 198414171 816113301 692623602 991778846 157380532 841952251 541017182 127249378 62990281 980305836 841738707 830422062 271109944 17801185 814085564 948713545 623939384 655722788 368920966 884944920 39713707 151258136 223994869 741380153 485131363 287140709 513826734 793990293 746205335 560778424 395551172 47060827 848109426 332083086 396245062 371669964 102706908 584210355 934275813 129820531 953556520 651353062 781239984 373375877 131066930 69106054 458410560 816747574 14893555 679127196 462989410 387278544 319646949 823387364 702389763 997211127 448482517 486818694 573140796 733600638 194814335 474150089 780542818 883790414 297523614 686241551 227137839 587982054 957919419 238850783 385736866 723933747 313655263 947999102 780263181 157285030 529059908 787193652 126815387 727783248 895771279 476231956 114462300 189142673 741233996 840473593 434535718 621291842 844523505 614337651 310770387 979684965 368952601 215013282 274922087 545836373 121125495 362093152 87424636 746094413 379804050 227279951 805063195 760169026 806079768 742333938 254319819 277575979 349253261 774209008 676378196 867373955 252705286 503559293 366574496 289637171 103763338 189978854 31579558 32253116 993522295 476196480 253354447 265795042 566999621 898882157 320535431 578608761 447167598 692621644 29363173 152816988 401717063 792877148 330179841 324252007 150324957 581917612 585242567 975817993 144500970 325473307 244101890 758387234 495459962 545380538 418361632 799140341 974809073 405622821 883210686 64611586 714358716 263686866 878802211 93756987 304123116 127821844 895264414 560355125 605389163 79488200 739417007 451863703 787861916 738725795 430578699 453645925 688041121 216614375 978818869 185103578 615446217 898293065 911181164 318343270 836910141 125202372 359242801 194035660 4156967 657412796 362025817 81320183 37490858 811408145 906153961 528485125 171801304 660108607 270773986 505190753 903630078 416342796 416190915 372886612 570845564 251412768 784428939 559639402 515854445 121057623 545931894 813701912 151305531 775770112 872014316 662386438 863782450 354559523 38853121 648980596 824505652 689951337 808630450 515868607 929550365 194555515 784533411 545067352 991323856 619035116 3892511 916198591 548006920 631931780 685414464 84674030 550359645 388886611 151715371 738026662 668417283 135065980 592818080 70844065 12038861 6365662 350214281 637923074 339679137 849042671 393423103 647234147 791422656 421754075 384463456 60601158 923099177 23163716 659439708 62842551 292927047 10081550 963377792 543459522 339763242 352354205 636652063 218111195 931451805 638163597 373486828 438654385 278811989 478899933 218037268 172752262 596141974 250455803 513568352 996718535 273912324 9692496 282684429 543619268 542054035 630535187 458686407 35701101 536414961 939558570 199472036 10023681 740735511 266993834 138775752 261460534 877682550 476864975 377096516 806098024 684163400 203152153 219992658 506242378 987570165 787286390 721674333 150556596 134456265 985777250 631781030 447266565 776702639 116678751 872841288 30053521 649369503 564482841 948477890 548088972 367889585 25924514 967121030 546373780 352720493 347630219 532047752 509449463 274312544 85423561 750274033 39252222 461965112 898583640 525037711 337331688 522108054 937216900 150198425 469604668 166571654 778454108 566098276 48851252 40070987 719898222 481722356 773766719 541839463 396637613 100592487 575405099 576352891 936039725 36172420 434008616 769054246 64414357 708128920 741099480 678442980 909858727 261725905 315923409 298052385 441634219 299998125 988840750 641498694 601404924 103717362 732004757 329467683 719401838 116240346 990264581 986014320 414704697 658042404 162661986 656306813 186398928 21835369 961779683 266062102 402570936 178034441 327681678 679257463 191614492 979397978 940695434 198255407 847678912 242592848 758066354 189143477 573706008 365538641 813369037 401766022 244587180 843518032 457722285 630869745 312821876 698813444 446050464 499037879 362707116 888382773 343136858 70762955 349863929 310310739 993652829 20220961 808236191 927347825 395887888 572404116 4803229 601454801 299182639 525995166 736409994 900771324 97235205 445096148 318563744 306218566 230451398 833240121 371592412 876348678 734718580 966188869 605720740 869142708 622612050 203240773 899853546 705263073 97008892 11443630 906966597 908558753 485383266 347561953 769987950 552433443 298447606 195557092 424584136 463669731 584311761 484669752 683654522 312432933 192227847 923161066 279808832 386439345 59752990 60850290 465560118 973734811 587449726 895905682 576326390 642810179 448979326 630638727 111308663 882519818 691679831 133809311 324774690 580694032 190608563 368942513 708648241 178271607 767295831 975668879 281704177 752425472 606916797 174383870 370466616 348645920 937889261 979918089 577211351 652778501 462229591 241264159 910946510 482718074 103708373 744915766 686481682 14145380 254239432 107146534 321040684 674492754 998829162 79123196 381592593 1236744 842615609 14769878 435495515 313762722 632743946 453353469 799711508 154334973 363928368 945452021 64403656 290993960 715767342 120011874 554340045 268357956 452916743 269626708 470171705 781759995 649518657 839547459 912738715 95435982 365569733 419414428 818061209 99540225 52239252 906796950 975474208 405571469 271268392 360840922 239703538 560946646 965206786 183153942 20970371 499102656 792344726 486550188 121223630 926392510 667725634 431844442 216730886 474617756 709194971 39735407 108453769 357474860 997511891 678071872 250576459 25042995 520923720 656197364 737411305 193463591 871631096 205275540 518185503 650288866 840156581 374938842 960667515 552268355 110295821 964716747 766859090 15460831 105753731 384181374 165304710 815072682 932582307 474237886 790867034 16579073 252310956 82086338 224406230 460675685 352814300 199859087 733306078 584674220 331251124 791528253 770162830 498920405 789443518 995231163 150195845 598730386 539959227 735038227 749046100 763072154 587587489 644168256 181946477 525305998 576387443 747133684 457445801 543992100 382394856 654134709 549863783 391602458 142488581 790622580 668493003 429734291 48490705 328255687 979678643 995094705 226340883 659393385 285924514 641910543 291157411 945781675 381970218 85272741 401052370 808304536 933447145 718703040 516536696 506348296 762079577 591489678 267401730 678895250 102660390 442982694 550677474 128735113 731625780 239424098 511574197 686968727 233208903 63694962 101264381 807049847 769089280 762139907 701060734 514957532 368960481 767887739 172559414 548953362 275852093 923078615 413015750 748026594 35794649 308743497 279281825 153922987 687158902 592013769 232346936 996530884 643105970 74280933 540502410 200457088 181664135 638959148 166405256 549091873 985249142 651590280 193849606 689235665 777870549 853694060 370452415 312390013 354796253 488244436 88996503 599666768 263029611 872408818 7050190 283751907 948388853 358025648 420657056 749032129 350642352 616510338 920255150 946784619 783443482 646063982 338625511 875874330 700794830 636747395 539679260 310186019 116248316 109394731 513864487 940097366 924421435 827569995 717438254 531846363 151643496 146993817 845012568 958550034 333046894 766832382 172613696 694894902 607358771 643594938 380575013 839652097 784207695 639221387 185349559 654540573 364327729 301181577 418410221 587125564 564021816 855919210 9676717 347518872 46003658 477393805 761897847 703458631 34520746 991445955 521080254 968274284 861600597 337411162 512697654 552312586 147015209 239894576 204192636 908090795 651745052 274599475 803091 744800257 22124866 319551166 923021373 168144434 575912756 568952183 376374106 101772470 87071862 208993612 513663482 525479803 975068289 200918024 327915513 852867972 895609541 469400337 598884647 779461759 525439069 385733629 402335280 816661593 776377924 863853994 585265774 365980722 3998780 972565396 481761497 749545177 511566167 989034066 404492628 458431636 155476227 238505229 619075027 449416899 481582115 53188601 361406968 542198431 193412357 469313420 906584320 304446493 662502280 943808870 479433349 16060217 68457665 54945127 78863543 995526987 282994658 130990088 883771544 812336401 904112250 734915889 803833162 590933659 265675404 531588021 700547931 259295061 668819846 988012461 755117880 250572384 884094750 707171631 647058868 424595644 281613797 925959482 733416028 121710016 263434473 208593580 834469521 104310246 784757987 786173702 708062940 576975136 449823732 396856145 18456361 608162348 219965439 304766590 170927877 303075411 438500801 554384203 142696702 918661271 897709858 312280170 843062180 641157725 308201803 423643173 554948295 351510376 675540034 392709621 200223008 771037874 950339663 808786063 661622072 393777079 671053647 24595632 997288077 649347103 76710625 382774171 386141059 167925293 103780697 173702970 745286168 867012822 385939244 51694958 129313232 510435864 755664118 568713656 310570864 223526334 455485815 671059097 706233929 825934231 499938296 288520723 474632323 844981642 20225416 57681332 607958680 900090726 515728344 228927985 131947210 509964863 131995613 833255154 638144347 301782428 78618945 353026948 586269793 772251958 562863216 262376651 361478268 47460350 409762483 296529364 372397766 649532954 500207457 337625176 721550674 684509094 114554923 136350350 976048984 337318862 421554465 307835083 371695318 271161685 372835847 76112705 724559506 804112792 118106768 547825091 710564470 170519884 185866419 383669452 379926840 99397220 718571330 991504455 308447171 239313015 621086062 893231939 905772854 499946616 859290583 852682807 124190904 1125235 652183408 412318132 170192594 163266716 370826587 196351465 830255970 39022627 186511522 740476586 124880856 92794291 648966546 561772410 683382032 33319394 871941709 234156954 539743795 229972244 449298004 235505981 561635925 82239149 426501114 993743503 785479407 365109527 198206048 492518001 766751719 433803211 882473583 6781229 84335924 598366141 612269951 297727126 742659142 445187531 900684996 573088362 12206265 570305557 947212372 534237217 416764708 383203583 388914727 260331785 385990960 341845922 778382258 167375699 810271908 703688649 192555890 535727204 39779045 246852778 626306794 764660281 350935624 864547348 255536939 468701632 758178886 780863543 71355781 291950643 136491514 957510725 598616997 247081589 909619736 888715148 159940657 395443217 781035827 900302871 548917026 200353927 597409668 322204691 581027033 937418124 84304387 455298872 442175366 656479143 731029135 251259410 422055577 902148152 519987294 996035532 277728175 551988493 381763862 687132199 411836039 875485195 745989930 88648013 540071433 971158722 655489902 812459536 42632281 51414782 345838099 551803682 683104092 854188355 385930884 330155891 852189428 759012655 481494535 783285991 207443965 37882504 734842756 593078596 979395496 231518110 494821591 245216349 291529111 422248431 461709076 534060743 168528787 644822090 117205195 959770194 448651799 91462994 97028245 992132757 246765963 214664454 258253508 713536987 408706782 854493197 889897139 945672506 27717718 136549125 673336341 158679359 515596793 139996545 652851307 335305715 968252618 523699000 234790881 847290531 642794762 341356918 622034175 824264339 800943267 871850111 30585912 211439199 44312622 613337624 876541724 633250700 306198973 204586443 578249291 514779264 78231820 551242900 517973812 800302766 524534815 529795221 965573029 141854868 47506843 964859298 528381415 352993150 917387086 273127860 611130805 862071808 379707103 78992364 392078968 914647220 466324774 444972184 838350191 322349282 366878088 131613343 565537852 366942028 250810140 459495251 990781316 277592005 911636995 432509697 829711276 689910021 839800291 954773278 159163473 221801658 817584556 791951702 521955143 481446912 408038793 973850971 468206982 568985228 230756753 615253893 25342417 933451075 656814684 322646496 424058702 807980419 121367024 821550094 684368869 239308184 829774323 522333128 589556794 170834087 774029771 387176012 893225030 469198174 519988473 649419517 417836832 194347489 291769698 101887724 815825237 411309384 633627153 397957277 879847436 346948497 640805299 435176404 325603284 921060731 597263299 590859307 810660673 476912259 373698500 941834546 609284194 141318103 191308797 2563614 201354534 364005056 1636503 69770662 580076370 84698980 309948316 76638551 441323806 571733906 594216791 259404476 946893335 492594331 471821615 16134086 246787444 275472962 110219102 615969157 62130326 39795147 1378146 346342136 636813574 79573578 753841812 750613980 636116977 806774163 419086102 36138316 430341123 205243759 617922707 572652792 802053693 323131292 84716978 409640209 57841674 950672864 609688151 642318514 477300916 339980477 132687137 981831830 910578857 836221364 158633925 970094872 469785961 14798783 715236143 871357671 258305045 131252780 947257285 44929944 260588607 528268830 604864381 728696290 323021699 931839544 830704537 288599503 626410067 583169358 675665088 728168566 924927297 901828186 517223745 227100494 781755180 852505935 318094713 619199508 324853019 832009625 130014931 380976977 526608841 115664802 392301647 376376586 577123541 116949682 847611692 837077827 594158001 335223634 766211823 840268415 596676763 312715552 371028659 847199106 652536081 335018877 502556796 493140015 669250029 234016257 559573601 543205595 606673658 5940047 63251332 349572082 884582082 106146606 100310196 574129866 641509326 487665303 649264024 976500057 608498079 407854289 709632588 711692932 34987229 627510940 160637297 741418379 267236048 909352143 279303612 905655249 921919891 247242527 185300912 36069028 546283530 216195924 75497863 385013749 503878177 155173911 71051343 570644241 420073723 309179332 537728653 226103839 347224414 406991079 314542622 993060298 505674671 793733312 235065967 513250648 78206529 365386827 537460707 627531887 847281468 604639223 581166563 339163454 287200862 585345866 418984253 114848570 617383189 676850767 630758284 606296874 892172617 146703836 935568993 514453355 320288300 584056393 587148457 964442751 639113740 27503697 23982068 610012127 858838472 822662952 418906275 363249628 253225955 730574008 653187868 213628632 555562385 419768078 390662884 3257254 401594416 885558273 22177445 317992612 349268684 98011226 103127365 198649180 151489980 921137421 470078915 382638385 821472413 817408243 695229994 763740778 727252060 489881897 887552725 369806618 293355406 746809688 543887345 609954964 509973684 646853999 920786862 97547697 948613345 848448795 490066421 763423637 38966771 278454161 281278834 964854306 597717072 264628839 492296137 284404112 919795386 853466851 45377812 627616374 849478762 422581612 707203404 897963934 636380849 96130779 485686719 95042258 855864304 189444603 353093209 501101072 52556901 831178371 561533711 413156962 91869473 398174355 875386298 730231773 941440764 378182859 481606921 33896525 616889148 373983281 35050089 584141387 485679694 596975750 878003829 92495753 810801048 727574116 104625703 448865388 828909209 273017220 570831789 280222842 807121112 752502312 888407324 226245417 618597351 640229353 655365265 73643628 276411013 739552167 856477656 429360775 880861505 71592868 820804550 641926532 570923987 833637296 714912790 995280176 376322029 578781672 255229210 155963167 854202206 866391866 581983679 408951378 324625881 874088884 148064045 553624233 539270772 466146195 349226418 440513730 857741766 411850971 435984826 752324154 256957524 339942436 174247710 207918674 921658447 135043371 441107080 821456056 658174536 608733165 489808494 55065775 513129453 536483942 78390543 8449037 549172310 49913972 782722014 335875447 7651292 918213163 106846457 283254111 854035640 798640175 789540001 420980082 897948555 498412509 641702481 206781983 594868756 507607350 585601156 265041745 275247666 962028806 642790977 86428711 820191729 975984605 886801136 119265126 56652723 218713329 799726979 67160057 449465376 625711832 437520392 210702946 373728943 903557028 85143539 945294366 189384332 891883277 609053690 857958229 147487281 916293077 126059415 577979909 81837922 969858667 319725117 976511843 656912208 939893048 566952232 486471809 72331621 340215004 454427592 651096630 396975300 126244888 897441962 259530453 385179488 230384925 884235804 492442931 688253932 736824545 990229110 186583845 677451756 382872475 659636979 349938607 580971640 850009816 856871489 440576309 130372258 141789779 186502716 579788709 383538024 10798192 521593727 777784245 134184538 103333396 311256464 405540652 896816069 916225520 899505470 262275154 403047286 725047610 536507347 718146837 618727325 160250884 854773883 52308378 246555543 336542334 752037721 520329317 142081556 205072398 715429331 149607923 655529961 399461710 81307331 221974544 337233436 912834307 297845266 633924708 264776316 67954870 340757072 666296898 235818421 206508418 323771688 928336342 17827568 374672107 226512356 928987741 984698536 579543535 687083100 25305057 897321788 840897055 801863911 69265487 88438134 656579008 598939225 380744092 41489274 49149384 863795623 476403280 675082840 613439925 757612992 511162927 777307294 283761915 457494776 56405651 479787294 842750296 627971712 632454544 620362530 245458530 342252970 73645003 726548741 855736954 981127400 755360922 464310369 47483646 237166690 957491057 998438539 686276134 602248355 277434919 717089413 520475872 855087845 732810755 319571170 793593848 469843844 515279647 106381041 601524119 684741479 505321903 958098099 272343053 891710029 804034161 891100499 189606586 215733422 54936601 528833257 422280994 6935747 195693544 515770560 913302759 948053409 300490423 833553166 95219043 828353079 850939511 220296524 105049039 893737533 887419282 558259256 503012819 244353469 401851897 176989890 626465774 170480019 230831982 630258697 262089726 172697673 968121288 247853429 498204995 202563147 41289340 68712895 212878682 682898937 725316267 334483305 922562113 386330416 31389293 153872620 936626545 758713713 391960845 828827781 382385819 294242667 29469440 504578703 717359679 842350775 852498563 547339795 714647384 74339323 216554726 309663106 982635363 951551570 744278124 29144376 991333000 832690114 721862738 267271900 439977654 775351578 838484560 450834699 665781954 886493124 819479628 746349346 155138326 828175073 45617102 72848406 509795296 106797510 32394479 701062428 52337042 429177371 531371656 455151272 458931360 670664521 807742565 305601064 972930456 813236825 473960144 83895564 478200742 253373317 636951081 670370955 69022260 637540930 117272661 856264344 266467908 617015344 608329222 795542579 915412114 590350928 597376861 401102030 941661080 808213418 167767979 418387289 598244344 839640284 21183379 853309398 264390893 94476750 372584817 262006813 273733438 363626695 808291800 582042490 289131595 768541402 419047859 811396387 782832184 861156664 435244752 752039785 885166994 316453180 858815899 150520350 494621151 174955513 749474138 541667586 740068653 995858247 880796886 723437340 168204401 168196295 695404146 458118632 682102975 714935213 292162478 62090067 881744406 212735353 154642104 484261437 596783236 260754617 148173003 969075087 757340026 668804156 249473920 399351189 282451035 458092305 132669429 148137627 754439708 489241355 329676521 88749269 943700077 347479047 470069160 483023597 415638314 171227008 334471712 467130315 2529907 45472157 701985855 759164314 18421085 435212006 269754298 395909710 89525075 374913750 758385220 191143861 949800754 549833603 51801098 227165153 172076689 975764671 976636772 294297928 503872040 634476202 100254679 539106990 532689312 138798030 643701482 733698681 415603989 423747101 141323493 594135435 443757669 305636666 818788726 870145190 328417250 580587461 343830895 80337715 34623195 969793495 125259648 753375219 957001430 293705548 205450983 59931742 246633314 731493443 726633327 173621548 210354126 575563365 158017145 785088314 116869491 461395618 700237642 415926225 477420508 312597071 854372545 47859882 837651169 46305489 474013082 597006790 188510586 738966017 616505905 182256258 420296517 273638360 640805221 731379812 850379319 471170200 660747636 230963908 702319832 579743443 188759424 267957695 656769240 486976703 153843073 658725485 425690538 120274878 854868473 531550204 61548864 41002743 377925801 701401355 925956497 807778254 880672426 468175208 38747291 541291887 453690347 828649918 928318319 515301103 296097246 440392617 504962704 534129034 321453353 912579366 369924361 968599771 825956088 996078023 718576125 245455595 410087585 366241838 649359833 637888007 129719162 250231773 408767026 118151565 688816734 598469234 324410917 749030706 68887305 370761412 929625252 216499288 951565123 588808610 540731129 392346205 500808473 543180057 791596929 524345826 370319949 621222362 782861118 210275051 373629525 731019768 720850495 177796253 968420768 674328035 197085603 316556559 600745753 318337340 821835605 254810732 528173088 848439944 256430504 464438373 111254318 323210015 112397657 214788229 569680556 775801719 268745851 991529458 405233440 444824706 860794292 569529444 712467185 42464664 507159815 337870839 897483552 356616756 260652320 783634625 363562280 50323823 787946940 773747455 314372341 890430931 112114901 481133848 932138292 331376891 214654904 692108431 414018095 342267440 768480886 709838466 294923104 431993627 761506918 891438350 105971141 932616829 829513364 916499192 411670526 695344803 23144767 277328483 359101462 887170504 2266415 588637376 48980487 968709803 441965343 237267073 190984753 860398417 362972360 944647992 458139403 487927588 530509131 55696100 824796315 437268468 700871984 498714714 330995098 330334767 456803954 659441006 341442142 244751959 433454396 231248103 188764476 808589060 599195713 507125162 385481226 870599000 11782153 927205146 457905163 63837080 671197478 854070988 34159444 643074294 942126401 188040242 612834343 793343301 61607893 69599720 94505490 368125800 853789245 479575607 948636596 51225968 901084624 338424173 807389800 825693816 281371835 351965478 802349529 884507373 735265480 864658570 850837058 594576971 784431246 8334864 519739430 731575901 669438562 174914386 619433963 158560025 222608561 588774837 645403053 539324986 775511025 648851160 632654931 35522760 51872244 927031587 320881619 418745155 706661807 920162448 337000425 597242423 385335918 190598001 55803505 60355285 662406549 53086295 857428001 318138389 533019874 378189581 209421541 798008766 995822208 278012497 939514423 521147658 377306792 4681715 937824850 343179681 401855990 41526094 144444077 602332135 503648241 553070998 932947606 482652662 198861319 559417865 510254760 933488158 981296075 222970500 740699033 765539172 863428060 789636887 989031317 412514938 938928296 170320167 413175880 528909859 149763314 572035220 48562601 809649195 5779977 81444643 844718602 695255623 312542103 365562280 640904963 731914013 881610961 18221575 727612017 103949186 942164704 550605774 847007088 751940788 913529245 725903337 437243915 64031953 966550895 334909786 404501183 813514122 451671434 482452560 185203609 465634578 982363806 65162442 143932759 136920646 44733700 339438151 977615963 991693266 325705801 274971098 9707718 57438688 295348478 649991314 706964754 925486412 665646589 837037373 416024112 854538075 654737479 173792719 433708383 966918275 557286011 272168644 745829353 19439670 641041766 227335942 159915858 832750809 283331867 963135052 383519891 564560340 617870618 737483453 518526962 829779268 81650935 144577196 268046193 441587668 583076344 203477274 935010611 778056803 412100660 52365642 453442022 265986881 372729431 93336508 862787209 375655356 858361048 544761011 475298910 469227591 512900472 93857382 789845952 879271016 59021322 436860521 31334111 36640062 562620308 615711229 644011046 870105962 97265207 889514976 907980301 59620634 459415435 3714694 65693918 767294267 276764480 93018183 20414376 68900864 893342299 709303425 771168593 503212357 910641372 343010352 523408473 242606922 571696396 846472700 89550988 818408807 415465795 26960864 594076282 561436088 478546043 499708664 641075250 340132630 994420263 270626009 442228100 674802081 373257636 632452569 209801013 167666165 808254451 499264212 345483694 505207659 275219852 680573769 522199442 227102522 906120068 279306245 934962236 864956362 532734931 159826587 61488159 181950794 225405923 325945264 903515875 735104475 859161286 313364551 816364894 917007472 806615914 78716804 255555289 6111448 201769440 242124754 156243095 896272163 35916568 695931357 599314045 327521008 428894873 969943291 210963873 922463101 156261047 387098748 927434229 348590132 679585782 681744437 44325907 256356218 36776894 964446325 75936925 772259289 835090027 987928150 201838636 500810282 89243208 36131318 755148837 510934607 42784791 712154622 952667635 447788830 78054623 123871979 372479824 614250677 257227898 926841379 971023168 243223939 747979052 359017698 689755332 273331980 553389663 732886482 70708705 871719381 847333345 869935388 743977454 278666171 668633536 18911272 634588103 601527784 800186815 553741542 345707041 1450040 938002418 436203964 115162147 736528843 196106749 672257735 85181779 106425197 598578748 202507255 362250974 336873748 535298551 30115568 229594703 689606705 166709219 926616972 805191417 729720191 153068335 769802888 365152592 842689994 190431590 378450935 890124739 736137400 859766548 239614886 520725140 408005713 521286819 76980899 561805601 782625200 413424240 767674387 879706605 724815413 91480380 798212084 576982435 598981700 241051067 209322761 543618938 653245976 21119015 212295416 712456151 500553024 84010532 929060994 251249271 272867739 57414685 947994617 245739119 996035269 723869506 350965414 299413413 14457539 956726042 397197078 51774254 135654232 900310020 275360424 206443732 331141174 947577133 964388314 246619407 255708056 123126369 724428755 631815896 999836831 560749267 21475506 167024930 210808618 574644595 314012351 918116193 83201637 837597867 85384806 505604633 984424087 200243382 96054412 197842997 298970136 857866565 991875832 20071194 271542693 730268753 913112271 93531018 97282574 290768604 291203409 688468824 16528550 355371057 865583157 64350207 868182950 51992742 462843410 360087431 101814752 331232380 670731525 681767285 921601567 882085674 304725763 10970994 269218187 713678337 510379308 457037493 394455809 264227543 874867999 922839006 883961429 405975343 58016375 823644474 981310917 851809949 447373369 536305685 678855462 638113219 111640280 56020550 546642895 702863037 473515157 504935876 827632009 883329019 456428941 805923377 442186022 757868011 951875723 65431077 895310925 174852087 162533139 680830425 277179488 12406530 60535612 787297287 405526419 777009544 632137432 82516129 169772575 566068079 801283027 980059314 2995624 511229035 953458198 384021895 857445102 216354184 955267292 560847205 593189693 21347746 565324477 584763178 727796500 578819222 625041440 109309302 100828279 809788999 691515915 281858356 844790622 896543611 921607342 439823307 79894598 276092823 786341690 524418579 376202188 780374468 671986352 429152320 458780152 866252436 700089693 376619 651628931 774901493 966483116 719902274 641209082 383711132 970690230 600139369 761966598 805002819 478644533 693754672 418432191 845966179 211386837 622555566 973905356 942670269 848555239 948222828 682902630 592830497 181022436 816021289 475052535 470752297 837463658 34487145 574502261 624669833 421905158 174615337 131566135 435965399 62492847 902290723 426487211 642921835 702108852 263972471 506653794 309862690 567236447 122797112 753651995 118412056 793741225 428305196 723704355 550151703 517756907 609151616 586456579 676016063 780892873 76751829 657490448 19229678 931387854 507691009 959278317 469403247 688426610 748592082 229232392 130031865 916890782 499036152 961963833 667888521 185637989 830664772 227551175 221167696 798763324 904488672 873452011 201700808 735356594 752262206 665200071 364251753 923508904 127365184 111460153 926112318 793920187 815922104 960391470 815451023 972992950 680453188 162037866 415269086 540979709 328935174 671627172 319436495 390671237 309564589 161449267 168263868 712935031 474944907 142271250 428130429 558330356 313096503 372767966 304895822 784731836 986806640 291669568 15915713 662958377 82514135 369677492 110466847 999062916 962980759 60498147 903880205 13341990 934730154 676079380 892813508 199197856 787072680 180148372 433681808 519854674 431954628 971220554 937771161 335534150 477514072 434133851 785155830 464861040 661195501 225442983 837768171 681660760 799807996 402331592 195616294 740802088 37943262 683441030 331589941 766570637 868287635 456760878 893046368 859804660 630590074 219314356 755305801 452223990 978473238 368935290 407369202 109675009 506417842 536143260 653556529 705829592 550691435 856667073 845264666 540074986 554466750 218461143 154314416 546571131 959279522 62782426 64882942 798578081 667685123 159412020 169039870 1880146 704989 976734619 112973259 816017820 714408040 902126767 29196917 916600294 83094190 265542841 506887712 407897709 392638827 357264669 349715583 96821738 839823095 962453374 370494058 162859575 649769886 199641724 486675381 335982815 447424764 220360190 286313227 30392593 494730624 577069024 698580564 525918279 734089614 677596849 944436832 205670229 988979517 871925841 460921448 300688673 937424051 883560938 769435594 895224921 781041476 218346236 371174007 169627029 291634354 373299592 890253384 969645735 616301819 266181366 248793251 284876112 70095971 305306326 659037041 486636961 643701317 776259705 387274770 700898052 932875518 99765585 280419672 618083061 961973935 128895792 151287758 74926080 898079557 994069604 47500940 781669338 83072271 439898288 628522958 958702055 934350302 728034585 933466524 695880957 67886852 366624563 951192289 753539647 990966257 966748842 687651404 779673553 830127093 352517495 21727977 804392653 801839068 652738824 686668481 651740611 617898552 637128784 725093831 511975451 3865357 814357418 507742781 486110326 8658003 907662992 928229551 253270013 458421575 288742713 920170010 538054841 597384268 161213415 367750940 969217798 930192184 46974902 917054845 825700304 840921290 467865749 789335162 110787161 590882162 644355323 740667846 635929452 616464240 115462726 74242543 148205274 502586713 158409906 36847783 637816490 640170041 318089381 688003273 726891802 312746388 66171866 736443357 150666161 934576097 250633783 186575158 203016453 655824333 891648108 392668373 891305980 747013019 104756655 73979127 510423774 428576367 143486948 880131235 894583778 482973608 978157188 308170616 976829317 575667794 861685240 853638531 624573111 981857164 565359840 434146236 931015627 113150762 633338342 266664973 654559518 21825523 774089622 43340646 563032982 149682693 302735963 270968648 775032612 36926647 159190718 62326542 22695484 253120115 771160351 29310688 510042876 450195890 335465888 311243301 144274443 866817910 184929257 741905159 535251273 580561641 789576614 624697809 599761330 69591258 361497725 611314520 528061334 506836974 190572335 360209176 678640759 549124551 974251221 477093687 123167353 46353279 818754894 632036926 603463605 254456129 420786949 948899419 327586711 76364048 492175104 869715461 716064109 790470020 18322187 796292799 567218951 498467913 472178726 950262600 740855569 458578251 771668005 22714080 610608674 683534395 963451139 400685677 792391704 654284718 819916386 837254499 669339437 590881620 145418662 324551025 552402048 286665131 918597907 807780079 286823524 639110713 711085374 301968216 587706194 780787668 989775752 275554863 131895937 383889861 287064708 390108696 266399877 135633675 972670817 352996081 774859256 852122508 865452816 875429903 306758737 765955841 175494027 418236417 627466948 435631724 147608067 35557617 234836816 180696935 853058035 729673860 936867415 93410800 875165596 649773701 805925552 809847749 829681275 807766690 88623164 397566559 166524558 233278888 492407061 392762937 606725374 659416375 627407712 8261470 633528685 524192963 177105520 687483988 349799247 224593571 153929563 54886303 872411577 915221878 713359866 51718360 304333975 284753328 65243415 314774388 359013058 518069576 113048986 482973785 617633525 796994714 115893620 675025580 200672135 561550772 879559629 249961203 810317230 803588739 275302016 425507733 805610489 279154114 662429496 918937598 811905499 797462020 650314210 495339915 428786239 418868497 120767592 621907142 373567152 519105727 709201982 135794358 87145260 553304256 909273979 28171770 937603581 788788673 405278769 301997743 204629815 598104825 133983093 574402694 215012349 651837230 35666626 494647086 860608371 13372005 66068654 498764529 900848264 141867552 943170732 250880534 848794583 50385465 734855940 25883219 489680038 966268158 676155353 485832560 357316559 845348011 542692498 215658064 30881153 983817802 711604701 706882295 865808035 822200313 697914130 389944992 376747518 389665715 478398825 491773615 27511839 613200743 954491315 110797758 284192929 505014667 382152314 602871308 649636762 635414648 156040475 910831359 919791274 165685076 645393746 419749635 779406624 329771566 270275548 85245864 438530 862951505 401168273 31816485 497932577 986824429 905651147 304358505 402729391 813825136 572780911 76276750 474569183 799699358 572959554 193113157 746552775 975295054 137990573 347935855 484930649 142030331 642111030 383093129 188533448 484836669 607081703 282814786 478734788 834154576 278602643 411592360 589441013 648345513 668620544 416854478 668125045 759218424 148013540 138861206 253225352 331196894 687257230 488324915 586046432 529639329 138511983 326044140 766197258 149556241 793158196 576519878 434142765 378141526 303306574 546350805 139606530 395411804 907189010 781984804 18523612 437232790 488989448 614402726 811645490 635607073 90778650 312050162 422777878 362909834 549993596 637777281 6301607 53833474 141973050 475066362 699080430 981398772 893976195 336584889 470782058 844712484 722565849 524603115 605420114 126736124 811783043 742889054 821718988 720111676 168349973 3175339 137343754 358872409 774014028 583099274 738354418 474250804 268502845 405907781 467540332 848329990 54995105 905254657 55992854 562042029 124515242 727510250 64424683 639192970 437526818 27101296 158534979 17891102 581919951 678977641 637948943 66314917 955624242 231300602 334196656 994702737 796089641 834185071 463033776 66854265 810808666 56505625 508635170 716965442 637985926 363638117 70289562 476817730 574351954 813217931 674078503 611169352 834913105 521150695 222241504 900040443 858893758 858268297 985475109 599069304 745236704 223804715 302890394 204423163 298318234 773301244 516676443 659799221 51170095 693346814 707888919 335927920 413529636 513748377 344623495 211141759 129186191 844207266 739869445 400669777 571811308 2630015 810261466 257009668 872731753 66470272 674572356 653862160 379793925 895223321 555585231 791540969 599155404 985082108 811498091 267456689 383592471 458701049 119299630 164652947 86694689 119257865 722896118 155091974 785149115 447840719 387854734 16392361 500167750 306446972 309369483 917966403 157731731 132414027 738783524 655329838 969483790 935843102 993400493 619694964 781253562 60988663 5849662 584712848 452742536 455447805 665225092 320033452 707995744 279615203 634692138 981433756 99117034 200054931 986099927 168772054 803585904 195322376 355680459 964885381 800092192 980100659 133857226 90508034 534099298 781591381 289920261 761964617 603893304 768207420 966215425 943512088 586708948 273458170 662359211 276591918 110777637 779417980 663537202 989658003 102183877 823242297 871318850 511383031 268536531 380213065 404886393 912856749 655450412 664922231 24439118 303578634 734993852 256267013 982815187 378833092 234232225 655531015 444336331 387886808 780578389 43445784 58752060 230990894 167662906 67212665 737898949 104811245 693204836 207852875 630042569 226873920 863228995 71555969 47540356 950816166 916914490 669884363 255386879 296556072 931381292 6789164 197643281 738182940 299309592 514227818 111000338 599595332 433933905 128367737 420715893 165140051 210409827 94334816 249416291 686883055 210663400 660759365 208266404 940904545 802316586 583257768 585288147 399375327 950871830 742530897 707569856 240209487 839637834 548158415 515909722 271578927 21666355 523499601 842014151 239073310 816716421 624656112 309886219 657127576 23136766 550637129 781711028 458227541 572426693 3742060 288263386 149823733 455683304 820838695 972404401 894576793 173449769 583098644 458240771 943383102 203973528 205447447 469606097 497199336 666286534 88407500 446108313 45090075 981242958 205775213 433915216 472026183 290912804 641909087 714082280 628378438 309901349 452263815 907286247 496374768 940031959 643241573 186102592 317023104 863723412 502408032 27048600 405311677 756399492 785645404 602055445 334888172 515441115 431394456 407096701 604860751 751371324 691822030 846186855 992106704 449403513 399731899 52021950 380802705 305438933 486787805 508591756 739366711 786935272 110788717 667200987 673515795 912412712 829439677 760403198 515945841 804560366 815070149 656535418 646972201 707028455 33749180 739244615 722520651 543295963 354153478 848604188 383890437 23465893 988115813 385703681 429287176 990771634 688977519 139000205 523330313 978566986 676215552 395048498 471823822 861825174 967095252 502246979 493733726 822519691 623456735 560153215 713178591 120796561 157325131 634268713 183910286 431219236 637492151 318257392 282552479 41075693 996288803 791656451 742547556 844229367 28041670 151794262 251961020 109828694 991201675 894938440 583093964 972236797 343124756 253479178 696744572 67496322 485761170 482953629 387516238 564813919 663620856 658618249 972944834 258273841 304917150 281554600 551403649 793382439 285745781 986497732 119765866 13323971 384157953 220249845 50762361 214343829 492049373 164616692 992556552 83010213 362133572 904856818 174916213 100857240 269584583 198831460 565158109 651495412 686445393 569722632 507450199 569479702 218788371 26286000 323888625 930701825 113475361 163586725 673957933 322901371 23377363 781103695 699315813 147960342 369052918 60864280 15424653 220797935 936178779 793866327 611346902 409281727 529376500 700296453 142629606 829359865 531902335 176706791 884274329 910930855 336190207 317947504 343656629 563657277 531013262 737543528 324277182 500042433 644976774 2042527 747936768 389375550 226576752 153957455 918650961 337611846 775016398 997534890 320172243 501952538 501333613 913806964 133680974 454651357 557430082 549233799 376370710 246828319 78135671 487153870 138945330 271834878 163523989 5455248 742898236 653445690 165536942 317367835 931576539 591091902 779140486 896321461 556035486 868571005 660452986 760987630 952276423 877839111 986678724 22791771 108704303 31308096 75096162 78582569 783583234 984788689 177933587 543372959 641190195 792656541 739476365 332633216 507878148 709376107 594051505 961570830 238452173 20164689 754845467 244117639 573418895 964636587 434388480 481843992 931650864 93158866 688455979 778879465 619580247 877777343 471343918 557258782 37014799 271675075 503515056 743665094 105833577 655921089 760833494 207771648 242412839 710612019 542185941 574921914 564606280 518422120 619897994 317260174 21825052 355409321 883118014 621411490 219853613 735379943 501712534 791849067 22852706 674729840 367356745 937349491 395287384 140750081 195450996 613003961 800445061 845029029 823853782 798449582 287370963 254878561 296459901 977664095 309616525 644940368 427808412 575220320 426807394 737394199 819976955 150035413 429402678 632633535 91985841 799542567 104168066 973036672 509514950 742938647 926587766 557275303 613063840 61501413 579891782 764191779 66459733 935479854 284666034 382313348 975546564 938010120 618020987 628724258 478613457 534151705 231124514 882794292 124252178 723298333 632410822 980479862 18658811 814617959 146011751 534698229 216756300 91381786 535156938 130595571 684402732 157145503 63414989 211029811 211056586 307656893 314760502 25740685 361827112 842108086 748994240 101598892 586953320 60623515 971545578 310260332 708720981 22795009 928238396 558570455 346916374 699120116 770904955 701227469 914775575 707261643 141654275 30302390 12465860 782510112 19890515 815312693 275634110 93501434 605709802 595383386 761066246 849660781 339922257 348045589 323172791 318578467 641137583 306969176 21697914 19254057 770234114 84566932 644898744 747390800 662133329 251267102 206124543 369469700 21535141 64486240 777697427 662876873 832314597 665884221 120927219 46746971 187218276 490508841 74533385 729847995 231871623 555588082 856765504 663739038 649456699 562648294 307494 721568574 732554854 763475759 352356989 814559350 330950954 421597927 809362401 200867962 516980060 360835287 766390949 367761744 551933805 418958381 742971212 278383217 896095959 667992295 85447806 231759723 431969912 867807560 948480701 848418543 299923868 985492263 427773568 754755710 613208939 741824817 850937391 917504887 286578800 829401124 120307678 541464660 421373694 688341998 699232696 241065783 839287658 852058500 718415067 44357047 726171971 309335137 866514277 962198837 13635487 989386179 360148897 421946510 377999281 260295605 87458837 24750638 393034432 106696531 432340610 709056174 6537835 44242551 722098131 44191200 925482782 451264242 825182541 717484774 570443469 859112637 113861753 907634952 853137097 507637555 912585530 789395069 6356578 472670025 415012863 173106474 501913243 639181312 234966764 48550548 615917828 285744994 174478511 804731727 336181421 578351969 519913027 488699052 770390047 146552929 29747036 235073801 508010136 105075219 329172537 753202935 758436877 200309950 806094477 371091316 218276615 533049248 926749518 806437476 909355419 960723376 480927651 409890231 9251083 867956763 686318023 736325834 431395732 285986388 27531178 799518090 955464777 698415851 960804688 729358904 781373304 156621861 751516131 466363773 490025539 946790823 658829677 508044175 812331885 280588302 670817760 87665447 128712888 322611921 6427025 45090443 316825006 80626608 829337707 665530496 786789234 360291375 377293062 183126076 68910252 308199181 719846772 442096746 305199437 411819229 467694927 913519800 370613359 235199509 446193556 411762107 135069298 309150278 874519721 154102220 168948565 221231726 164225550 907059836 793244622 626691097 994346668 833262981 248023528 971796353 235938022 738527386 8118427 496880017 74781125 302439359 914893375 389528329 368695909 738564471 179834212 489378766 247363289 42447872 862842195 417974884 615896775 442063655 415869334 371322399 829450042 872115216 930409948 573148457 41611705 55403920 357091501 795547939 727180906 324934827 583700275 875397008 535701841 973487288 872035349 2011341 470265380 780031261 147839659 11119300 489689005 428477567 759455934 593652769 988204996 498537396 476360113 316546042 941987391 626283883 229384620 790857044 410443662 288971190 274306204 62618143 880883384 369683972 441538793 395962431 407943352 821611457 647924249 537599284 78024534 572565358 683441521 306593873 307702938 350451982 415201043 114445414 138400129 315146327 600862441 946535065 653590765 479969092 322252069 612499824 50936736 196876380 888815967 284280564 79346794 497028598 66598263 800658552 798074798 931222862 837957428 177191138 602560119 288686638 619353254 965852900 509040064 97217108 846757348 700161309 883235797 39843741 960125177 417313750 842590749 494992637 501959479 892024147 552162294 227781561 158969242 502804739 281478458 885120090 425326153 471443657 258085518 276895303 229754207 376491401 227827274 201095110 777432768 281561323 775477163 147177279 92833726 997850868 561191507 188039076 673031442 802816058 486260728 475512450 505564415 865945192 788986333 135051469 839191286 457585280 196530032 179771033 652126371 819741357 340981360 998339503 184510119 867717843 474064776 61216028 199562443 100963762 774865151 13283097 72312482 912572457 567042941 518351409 398364408 590984949 597900328 880906656 411448982 334557517 434762573 499964437 156407598 772232321 166724744 526483609 777282534 760232861 879132889 73032683 547583139 113132774 839645650 466714910 116340337 574846348 953030558 747688287 679367261 226248375 239580461 358327713 923914036 837126976 635124519 888025229 259192214 445328186 905421290 253206455 972173609 626309437 495160484 681654081 655078813 619189650 601393254 381405670 438607964 696787277 787008148 639870736 630522688 166543686 516904758 838749881 982424843 698277957 72029915 184168044 130802100 897727306 670604312 249954117 683138201 226603143 497670666 16218706 177718127 678645458 49741376 812288809 219412243 664050642 479966808 340807295 386073999 590844329 990495593 41171575 814273092 810930182 921355860 180913095 349259544 974184414 912549874 534213165 439253021 209201174 600904328 513006569 899331784 401970624 380084479 466047386 529957305 398785579 270481501 156105525 692900004 38992422 374805527 908621113 111886607 213774811 175839840 100786577 257758106 907830814 540132843 584902623 583715572 894630250 142363549 831515550 951871982 444189305 827304436 79255853 503903873 234150245 570106412 703978333 627456549 905201799 491375451 717772245 629282651 592108521 814597706 442444319 64568559 708824764 172565395 399776617 132784683 438695652 490481528 110032275 400226466 293293445 266787496 53914920 507561439 735034339 859281953 274625689 661601279 151213710 984844629 332063551 123885870 825933726 76640553 208246116 273027243 846445276 141419738 56599200 722261698 980317583 136026376 274523209 571952623 949851513 298080132 915546911 672451610 691444839 474700398 439905274 563790041 157541146 832574659 384868764 958507244 635987519 580479719 501562717 512740326 280811339 117985126 299653753 630878737 631280256 891854784 363078819 620662714 560904468 656085820 294929868 119446370 815098237 835892585 825132188 800409551 118750927 521640067 119879469 235500910 703383164 969270037 571419618 667713778 834520350 863493666 515345398 891871646 180774775 4410618 802597973 221760617 837733083 101656277 420865588 305582378 435441781 155384756 869706903 215688395 979912624 819511254 891019586 28048453 690492032 27291621 110492844 594259519 36164532 277593953 990725396 976437738 514832824 272098049 800276800 474457653 165662310 168681674 727511067 25037969 564803715 568404096 369705769 483019514 340852102 36257374 952858738 728767623 560972115 129604832 158049758 136166280 77551958 983080557 309089003 47037635 788714997 732916086 997985369 429148331 233113895 347777124 221645516 986149068 476414370 208413291 610245924 73980861 879712347 513172523 848629784 779684370 465353062 332571397 468287096 587284391 760038513 37065943 911282549 696930046 818149269 183930218 574702911 383468217 118608961 6736544 329644743 89149879 451762223 294469745 559171756 256530908 298836359 384888401 432625720 67800441 246790060 983526416 766967013 228838469 924797347 311083275 906171422 942044262 353629264 926478892 92275101 762240205 708096049 58037370 978608521 385207840 396724829 767443898 741045408 202644247 727425592 497645201 678423857 467911973 499610009 466235564 898134988 909947345 71191675 990200234 823672122 631255967 602013909 325822855 5995066 414993487 528072101 607736107 524136804 277685306 243877685 94584217 227601055 659928413 994572075 50984618 996150041 585806015 467626319 773332046 20560197 327852048 359883122 269906448 667024317 531009202 980475626 952251605 318104783 866525323 583126001 97065300 892021093 456204706 980065820 338781439 321373513 97801167 737443968 534917258 973091017 395173881 270506492 460997651 834231658 170864398 231742704 580774701 788811687 69885274 500287308 423855245 695123982 392718420 368008708 826807697 916507671 799476969 887145683 993799118 939123147 637600320 703764838 359083697 831051355 354937258 230907724 958817768 496683566 847959554 637689110 596052961 445180076 438448918 358349740 381556666 115845495 786278863 707042402 682233361 266616764 479439702 823305003 384868530 881890606 130510776 118420339 695844147 32145642 652015373 916803894 568971576 644608590 399263562 997858300 544115856 518801082 633017478 645419532 999528129 894716986 925757213 365494096 247249341 810840807 662756747 779223939 166284836 630726387 437500267 661144310 399560558 286886761 456649150 718367070 312507578 19186179 69727696 730378864 910292374 518280792 183635948 858244493 768710161 134882518 117059539 320174954 413186480 399305817 433823724 839231876 380491250 620451478 197446572 85959235 438523855 952235670 35011873 970598988 883990384 793301513 190071269 873772440 395210796 605627283 696116533 507200165 76265223 266284421 45345865 293115015 282237467 599915261 158980098 981149801 857271759 251670538 18344965 895491540 217576050 452318737 667847497 574067045 679183201 905683076 828160795 383719760 430927142 154176141 981073789 87766063 903823447 53108787 171816719 591643359 936985333 511955146 104375301 633754601 237330991 684913406 69113232 28540398 146843239 302291729 592137259 276568128 895684061 513535110 839150452 491476560 397965575 945549967 424304762 136433166 216236673 600507255 954765965 970935296 18165406 351285494 712894678 877005688 538830534 621578956 741848160 260447745 197960707 680047794 976717270 571091423 96832350 480704812 1081000 423255150 908638481 568902709 930755868 238919579 371294281 643484808 435744865 791207207 222360623 883629789 375524143 148905169 6919212 330800964 781262026 618710949 724993210 41850599 753016483 492260624 636708948 914063360 120971405 113498923 949303571 708137779 249447831 936782782 913286827 25207590 489350763 476715088 249362688 187710161 752149977 783257177 303566298 825618395 318992340 765630234 83328362 843883474 142738841 905127019 832556167 976420639 207053454 683284073 167328602 857980417 667139280 801892730 516486466 987122177 471619657 793503908 941111046 80051536 362413770 734174010 851769226 762151985 96764131 566936124 211436749 476946928 318780669 586919389 766774923 557171666 569618909 71700179 714820245 637476669 127432490 30482200 678819541 257350262 207045595 251598076 220806358 555541470 104069403 656601086 546178814 460740394 998526008 737280413 654950674 810822507 955959819 92753514 156850860 909208166 315258193 405477233 675769937 50232448 766679119 375768402 207218226 36666301 746737680 795564700 441394670 377980364 462296828 662843217 512317447 135197828 280409551 534483283 447117492 765832884 498957134 922843639 563221627 733224565 606894004 884790249 247501144 327469083 776475712 69125296 480093118 962350257 625841991 47744415 239851142 71971104 397523210 613349569 56500391 142312062 554483033 787803834 267456170 157366334 262814505 998538849 504840065 127361698 922286885 918463180 244072717 157609645 619559787 791420421 648301277 608386687 990360746 203943586 108255595 581268170 710661419 651406839 586263933 885973533 926432002 998614965 739790810 633395828 137930246 116202695 110289484 786360054 924046866 679742722 97902124 253309498 958773782 470194352 919342609 600263092 799499542 883797689 457190313 346799767 752898240 427705612 298814231 738212827 244083695 203162809 573390649 188289243 625576232 197792391 728047385 722080959 751477337 123959927 953762400 112426877 213171672 749606646 855611988 210047926 635722049 763071589 694591086 198377466 488766847 943756293 710139873 504907771 73435195 289122432 317755180 190627375 154536973 637014272 589224183 274128964 55213572 235979647 839999738 779991351 474877005 344104424 390883617 859020307 387040518 948508105 116677272 214061577 390984360 488299456 687427206 674969161 307840388 934843803 987256644 267837509 93316115 55309343 859758427 364186378 587685265 138289315 560769147 911568677 36431872 849774830 813432225 514068320 782393178 737399350 808852087 751912652 994210562 252752384 849584367 283558450 974659638 78853886 237070284 300447565 414027355 640336288 318195484 932052158 366843000 973334184 601596884 910471801 332929642 496854459 275435596 523142552 684288123 943864151 145865504 746065889 874303305 923540393 540470871 89635786 710697323 135474320 997606584 152158178 560600957 423455793 125005712 911633112 395594442 117308477 408598403 619006270 179800148 762301984 78407069 132788966 863181619 358139715 503950944 520121072 742980680 379286489 839625820 536023817 461752461 132470582 939366182 32245062 130038563 558180993 468776973 577383291 994307840 578990585 722153149 888436552 133393337 773875106 801204292 449295541 227657426 980380381 902426162 338370935 436414526 271026895 11234764 973464991 686537329 683455496 341340927 121846337 753162192 687924961 585260015 879115930 160907447 866304202 225990047 145091310 647275522 868995497 453864499 357728475 554955785 425016146 214617823 142283832 885703690 518142537 641221168 201903743 179808820 921987205 782031024 339942289 499456341 966855348 158381121 889268314 919323771 285815634 54029248 770844473 965391121 116013942 524426879 580292104 531577490 135023702 760771001 166992200 279769103 377473586 368447537 797378663 94408070 530770100 469461667 173128454 780489340 938455124 153611147 781252106 271413299 752752924 204756812 573119968 414254247 97253096 953231964 833057765 943314944 633075917 801939935 59208454 696204789 779242645 713070479 62381329 798128320 475601671 801331622 100244076 507663275 337309531 830739140 730622237 740301439 593735857 100677604 451811131 536293610 730748372 283988300 742069425 510243657 367422209 698554262 618632910 107432091 215914104 252750497 55827787 146660892 753325676 492865361 658164550 756223317 50737505 38056706 524417711 14763988 822131064 495092624 107536392 702629378 618903925 611980770 971442630 253923308 127708757 548581110 623214664 290115465 935747178 530305524 304955826 833726371 230904500 520213772 875120372 600598063 782254114 923362457 18133220 438722031 513773648 9334631 329481014 21560127 928343180 103404329 958340194 955043961 886222372 309583639 82405891 869838386 72115054 491992414 280664631 994422194 921094698 346831698 944490100 230988094 302956495 975291203 664339218 535637176 525529411 971915350 192403278 999308810 921589290 451532787 446761775 936291076 155774864 545319929 209530407 554295303 233525924 487813559 53078942 18672594 64496156 206051254 167432997 36530623 494821845 333372412 804505087 871650025 452406768 779587166 319213031 762942410 858899812 976683120 260612121 130542993 370568888 698994964 932029717 561752995 775334550 602828477 884807224 11159396 149293848 797826647 925619771 389445634 573705876 475831946 575389229 517923412 292724569 143789274 184911313 401502222 915064174 636686564 189136517 483818455 438102570 944798172 450923040 458787744 755474347 144993665 742079525 408941510 906386632 408809390 434318300 929122456 662419300 734108496 923440855 525090770 81511502 628451755 180121487 746628926 821978339 998824379 631981935 544918523 173592018 935599291 845929202 379688118 149275789 725009111 783748573 993450866 689636374 750083924 91639436 191477143 832307484 188581340 600962805 108028499 282607487 180302834 875127517 428600068 973363534 146567453 926686244 641662236 533318762 776547311 862721945 845815879 333527499 737667582 532161099 403507633 963350789 372086854 907906158 853134563 110794995 203657101 665175946 289122532 696802690 669673781 291745978 801330146 519771894 82073963 445818222 264495192 350549023 757902921 236760222 741206464 699539706 256560632 73897696 54478349 117959386 77251933 900884801 464641387 265384378 46032805 685565765 290365070 284178148 601589041 525616882 378601265 440176951 223607968 900159246 980788001 694843015 725497216 136970702 939897866 256947799 173886440 787929725 622395248 105354980 499898310 431165496 467028193 409607795 147154265 213311542 80221082 134224634 959869996 12023817 237718114 204745628 935082085 208971202 810139592 240527849 704891838 243181202 255262388 110890770 297698414 337015633 690662132 226253009 954937369 908145701 942626895 659743532 538908915 405563917 7483701 25712041 503886142 367713811 867687984 190440974 131413263 160882457 682750163 841800418 546386114 399402455 980903884 928830717 754339517 689224205 69255804 822754991 670723815 84281839 450667070 256593141 761764506 414556452 961386668 716139199 541076606 134678605 189352781 800316693 447911094 383628342 693756577 771374663 448869741 106881185 838910455 668473828 706009362 945057450 208597385 741563412 972657547 545954105 281889626 578426537 700672196 883518947 855941616 711291773 991200770 112331460 470780434 686374896 900362817 761720308 644604649 627458271 25711091 140908712 416229516 356066051 757752101 336352256 617301929 840262423 363812739 662479809 245268848 865415819 744195958 286738072 542066031 599999793 701804339 658789301 205403217 170158304 928748768 556699814 247986429 114002093 369985874 560472565 367286244 851873676 732605555 618864146 978748694 807872231 658944223 604967307 990240557 168544555 317918937 32351364 528313627 305405903 467037362 190502173 808801115 555917902 224539058 759950861 844862140 979402408 874732989 666331335 179302579 89844485 394984353 689215652 567543626 528783053 515001228 213571261 521100105 204506620 374157576 461229728 612776679 675488799 900836245 330072017 761935986 279977116 490025891 104559428 630583216 66316177 97319838 400805096 817453388 138241254 864835506 981251283 436585420 341659009 363280917 814926930 253549939 990472013 586367934 311753582 630117643 213982473 825344771 419876514 871517423 338294536 865881802 618440223 904382423 227362403 206268214 587797679 986036373 962343942 836048889 724117046 117374675 198589169 765654119 932728047 757585173 202403554 313214095 747061715 38542633 119735735 64978683 310823588 326780284 866832174 913563297 973658510 519675582 61798710 115558015 128377536 389115189 798840123 53506854 747455652 427679408 533814314 506833367 635993222 978159071 155213198 642938092 71157019 887221494 152028560 927672679 339174966 734562917 235829279 17202762 222958891 880930531 439780643 10861693 453053627 538199260 191275111 797194848 640413024 212283816 663468188 116448291 84377485 720251977 158179717 643426696 383020509 50604387 541050813 833782206 474251203 740795687 230099939 578723462 75628292 664789015 138453627 396074467 9961904 521447229 730928950 648487731 509724141 905351035 844886003 716766032 552536055 89837889 520750662 474734364 951060299 592267748 10573960 89536004 804521889 544978443 713517458 882782901 926710952 248120601 138019689 114212541 664010659 16796185 727061146 92107513 868054340 185249683 167842594 89778129 880284109 705782717 366060941 702272475 43981782 911937328 398721394 641369761 148321733 62423207 814527440 153344182 297771447 276434102 5325389 311130068 218454492 620114162 455550212 429157218 623888418 876280149 942267377 314242039 786234602 240558042 113781388 693076234 723380691 828133597 509639110 22641643 962166491 136938698 379059859 36978783 393314475 126782103 228515675 971455882 854319034 503263378 979536099 586519038 355793949 417050783 60627186 432936144 415068336 224299727 822615285 881639934 227736959 987905695 306503486 652379764 391365101 66363296 623399309 883801588 820288630 601677360 553300345 770363846 834806738 1852425 423574585 424827480 59659954 244772881 54551300 714097436 699035912 871713468 730715686 985299238 813329116 317620379 66684387 266269246 865714760 877958476 947939028 994284258 839371346 413891280 243450780 245172561 175649830 525060489 566894348 651324608 17307853 344255181 717760956 945203654 665195084 523744778 658653503 765487477 782831997 436980731 141409500 642637621 483573364 615113813 746855318 981600129 556230701 873788673 369709440 484721620 665392208 205535788 600581191 115692032 949873365 953330217 155815341 942666965 21542678 859365073 118139197 471967512 383483200 263653235 978656519 597870214 274742924 37523629 752966635 952530839 31701916 129324032 14797154 678976859 747013153 45743983 757109951 444287394 356145613 184458413 728600448 922969314 948721875 563747787 526937986 481340190 338427467 339369641 680247445 777958833 46244712 610784937 529822633 35882993 572279180 872151960 740248509 514439070 379642259 926317768 380990957 892399307 709926369 264536497 855635053 114751644 199942566 384151693 876516424 969759327 860137469 664486544 258968616 217731322 47173679 875091444 128108278 426843044 52635822 972217692 735178653 298500225 512794356 580132172 153322116 347627598 679474348 233693122 639085180 129051236 732320869 366080775 342393615 769411527 547981299 989139516 925808094 515969304 405485713 683159928 977547735 10437841 646888475 961188382 351277263 572490365 747135202 525061474 476145585 891332655 19174924 458474910 510175352 831087526 142323944 197420233 534713537 351441328 217464058 306891175 914632963 769720406 53527414 581666866 964239859 302954817 477767264 66898777 718428873 851628487 935809738 702641161 949239139 465223861 385557098 859576658 307244333 502727751 193492965 975088143 245522826 663496569 568514474 735754565 117554098 175043303 742028708 393066457 806330822 562947805 746067379 227874239 955981357 770597513 575600166 255335109 122472136 475991047 987021382 200029928 915465400 264120679 704386584 234628432 452968904 805608600 110476010 168203055 999934895 355061310 740587118 58341520 232741143 212402514 413600549 304194904 149449323 776316783 755124475 293158039 203085980 20387106 203533957 334246780 941660320 337105038 265099210 67791606 842949820 156576760 709845230 441839926 137576718 253917038 579541291 659402991 654567201 519302548 806661466 543366791 436292145 956845620 321640435 756827528 833058771 88229297 337008099 178209779 618126264 657159238 278205992 56511201 875986918 703503363 597550192 210882116 388846571 391793271 7523949 900949832 729556605 546793846 570941538 574047772 100875070 54979066 202150909 494577684 821762560 906395574 355495113 329669479 705027359 790025606 691490892 632253852 352536476 14841446 21086694 11696553 225109760 405559856 882215613 563578741 269104312 138620102 935313765 388178546 665783762 164795733 218616647 452008102 657533400 258740535 548595554 70594627 948022903 936399957 608659696 251928274 737140525 26518611 51819811 984008863 986345999 319285794 949671990 684503528 429489053 647232433 488300507 841208693 373265137 238145845 711322996 924685806 292206409 631812578 364156238 816466007 632348804 787265170 343202405 225779292 83259164 511008134 230079893 83198447 201413416 556793344 859704285 536313685 844755333 859618079 5965298 177622917 148440423 532019351 415081369 391725951 886115056 954516796 808457430 784921514 123037769 834661770 352311432 209798700 242204001 739520584 821382408 300028438 621403826 169533509 425107321 57085749 701090853 126257440 740521320 496631911 252487340 265522247 922662916 918351426 887631825 366548680 970754561 207403380 589119858 855081791 819818465 648786301 408438059 165595308 146939087 235214576 817920420 954531753 218264693 643604450 632205896 82689913 274740620 974064397 852442336 454148027 35150344 751533411 320386461 939794510 611297609 446397108 931332737 622055956 959750478 634937691 795876039 605811883 793335440 310373690 417823460 675788838 49013607 702826104 917770534 983611593 918473721 527261099 561364712 734476270 763147707 33318653 968933047 265032626 285464993 702816493 827120453 614899879 368491022 921730151 235627404 777407121 447941081 719411873 738268811 277039432 303329990 903241154 719653043 959630665 285622664 193834286 801116086 693596107 389964089 72272956 577019976 829307733 249147772 438796374 965622135 677410173 346630857 928530076 30405336 271535620 106162313 711077219 345738595 664687465 836601590 591357670 5795305 296564965 536002783 500025555 147717548 911282700 712284742 72215132 517728405 319317981 94248583 696212544 12051926 949171996 359871947 773431980 596251978 749835859 161282093 267186793 168173804 343289427 394857212 691783322 772709782 356123527 338105466 29869043 241568720 256571820 218592805 930876905 594418058 806367381 961130819 217095468 981164186 508245473 724166051 41271741 788627891 65321184 261792739 752423766 654736700 525610640 506251914 391514248 188052732 538139368 551066138 917778580 225423003 592960439 635129309 246491784 169172339 315500144 228268367 111241128 594544477 665360774 543623307 817981544 616450985 240594964 379785001 115947414 634873422 193677759 702246027 888710278 201462965 847495833 24611028 20458728 966367302 487254867 864543195 719229161 554780346 135896773 648458348 833138130 634753185 656071658 543617425 988172828 719462946 472807553 276390196 116733310 277224146 561184558 647527704 398927385 516881456 87719762 257720963 837894577 916617151 426788026 749316155 142539985 287494475 54764052 967438282 717311782 396755299 461786070 137255729 972096224 763418880 338477054 642394490 80519591 316392852 563125894 535877566 749732799 996699123 800524458 436637620 128198786 592149702 712544093 164121942 880486449 493183680 412593134 341850404 164543131 948933650 802020492 141734648 228086277 75447097 280853962 50175755 786490871 516550498 338422886 392709665 172593890 751022519 553834348 762793421 623742481 980878365 817336725 530877899 731717232 277963014 874155254 26235140 544324150 620883845 99064465 648025537 892287418 638005269 573856971 782836359 876877855 388836704 964261259 460595139 961239955 235908977 361086894 759847424 774107700 910224847 485190391 958015507 968489096 793120461 551007165 766541473 481121007 991868845 782946717 83244676 135427416 997021003 361248333 401579356 603831954 42822937 349215827 583527843 964591530 979730342 623092941 396059551 59119928 471549290 66662452 602610720 27441346 167176547 852443712 985624575 711231173 656107759 420020448 600375392 206311335 480364714 411728200 436020359 302511435 625620010 647003213 53021474 741639444 568365203 474220011 287181956 399803948 114164265 448150216 385006452 893733403 750315729 150753157 860078603 186331846 280278420 973648703 248982931 500900489 9605447 368045019 434754749 776644136 667363107 783897868 219025633 520223296 839392125 675166657 641747382 898082439 986830661 648860457 973716002 985036007 574538349 295522352 103245229 261484180 902568390 436059281 955459919 803799487 235512392 108340106 899137186 362556113 573729720 459157979 158136584 781822284 469251144 725473839 73061387 574124857 150759429 344856860 648484800 887462832 713552552 887382727 404655760 230911201 66085811 993912843 707969151 778321524 774529537 433851560 1766586 155160228 27144176 731681565 621524225 187010236 111740012 393023034 790974761 113635804 496531723 338518685 933806508 438200431 616220636 136705566 17332800 728729819 214732389 870514832 81661377 5633783 894545701 588188410 616665476 426598949 57712860 615123506 112092881 74180409 328772059 43399587 536125270 2694219 279135314 822164900 601612393 560036345 99858223 671288192 703250144 296556148 340237583 614809267 413093717 965570977 469496960 941902784 594541521 527467821 845137321 223490065 119810926 158639465 836859444 748330865 140882051 806167614 789165173 330178679 994922720 957658693 829228478 287573701 384574766 326966818 917830680 146909603 82584237 494706378 120202438 505994251 14033336 584413812 937649196 491913740 922045425 987811561 152287878 931242030 101726574 208478640 153362757 99597263 458372294 482969227 170827308 948126327 917344069 492479784 554087198 612631009 216925304 245436216 254022104 952754464 72492428 194770551 985516346 300946700 707731608 163807995 335508843 327051892 613667162 19070847 161160533 958448549 734706538 956436021 129753163 997094022 639966358 172743658 66256801 136477679 649164619 637081855 297712861 827080349 4488442 623322270 420880896 132559622 168175869 746153920 556253814 794955779 334398567 146193312 351961801 260326712 599400172 383379188 864649114 714069432 390154130 991121077 732661001 765613942 69103518 392903623 322461348 552665195 878099920 943078389 85613370 512706416 288877761 563787534 569825895 119335015 290871912 251123664 806181136 871108698 913424051 523117995 221668482 541105202 938780313 121800620 767291573 72612522 368015081 911800927 177051674 198280269 591716435 287347776 139803953 150812596 537223703 408579068 953886986 318732939 222289827 168188579 517471821 957327144 90068944 289812422 884796529 909563616 948204972 952077343 356637464 146340384 13198715 648070486 442654524 569274793 189463303 30543655 924933912 485485616 586644406 524320443 655440311 523798584 722916344 663717009 686844532 295928063 586021322 470209019 15469814 606632132 770599266 217090182 313285362 895735661 829005611 203694941 884419815 448237675 584729756 806489870 508018797 918783142 584860052 66764633 714700745 602694897 225840393 488571 762858298 568959058 316652455 670339149 931677253 497263765 989889275 425712268 974895919 75344686 149765881 378828399 612617339 903639987 576481681 395145848 147057768 383946880 701220964 331114779 964988072 165821259 244268761 192424208 847430000 568380777 190950577 6468732 280512948 207421521 915397162 77301550 245548156 675579561 835470885 464516983 165076466 30257083 729393132 807814196 858030736 351178701 209927995 307253451 27657854 516332063 449870892 74108889 887973262 964017324 933188848 839383578 391286483 598245640 759299428 609623909 186466652 907300247 640253184 413288496 996742575 54031244 798707920 410028657 487457372 267795743 480098692 566819442 765771776 402257268 34136620 618935548 648573085 273905900 479974963 532872954 666643675 255479590 36523639 491633956 50706926 262129401 210215567 29456226 789917905 107441259 280156321 73690437 981411243 864557034 570582612 801918632 190122322 691007667 569629194 50058307 259476615 716203607 213183099 827570291 31290565 493776500 714051577 346868452 548705764 954941127 48903113 548834152 73809226 779355311 987728271 619010757 828252979 509625183 236688398 955984608 193475042 386756460 579919160 771946268 365414139 864824541 486225739 395748932 39635817 574966734 371322397 281734510 427907725 945181480 765446460 583623234 734227347 829123420 553242683 68699605 151597670 919417228 523685911 316557113 425801005 604650369 423251045 792423481 970144020 560305050 801734499 419695172 813461723 533245375 228613343 106274082 605429123 275743896 367734702 648067454 719498237 600967983 678264253 121444387 673415414 812922697 447450589 452267688 247899130 811412298 504651258 290535327 923552915 282731028 251812310 580933256 311300144 185550343 887213866 139205230 225382280 421832012 690700752 641283196 917565655 80957957 580687225 120128042 472810827 87728234 114724814 392630135 229327816 113834975 437234874 493014564 704525339 546524558 138065133 131793651 728182902 45350538 378048326 792183992 771410602 914850439 22913972 425478984 274066506 408849952 600224848 147373520 447286107 334430643 281894963 629433522 353240306 502752422 394957445 218851097 102697677 767785100 863372280 642786745 919472147 528359751 126501564 661787857 921248762 133548032 598026868 196346377 20375499 760097768 252735777 843471080 136429925 249080483 736119690 849051854 798095568 326693327 177554984 401950763 441808550 190657275 645098583 383462718 941623303 679730468 646760698 203677522 992620233 632149692 869932875 587606769 697213033 280498642 281226112 479433428 716059162 767622035 220181565 120661900 387264545 234362768 885655989 514677075 834166101 515672008 327205117 411813617 945526871 123974243 220857928 988256565 541542081 76717348 716810888 86665049 837046594 538168914 970710505 919792548 766551137 718147968 284718903 941667502 629351454 334089671 533823003 672353771 115917568 773700814 362335774 745030295 980601748 418968392 446428653 544877016 859983759 651360496 926178649 455830895 193955139 787734806 601644866 835466554 557872063 856512531 240686346 349589999 688508261 932152180 300914386 286832947 284576408 810044725 652116162 278282511 139352707 310755571 271215498 66332488 249423607 690301113 501541910 3366680 698152304 589900316 293084445 375042773 497164467 618209062 972581334 751295251 346022623 391052556 263743743 449230096 725190427 671603104 516367819 118311768 911538019 49935395 896120344 972558706 14054312 456887235 728088875 904929927 436015231 322849433 808154979 49373766 656896544 717475608 156937119 348087544 243639633 957433501 786946661 135084583 986060427 232537541 565209852 448855381 228256568 540144418 153948136 944572809 453396999 898136875 86938539 59655944 82401493 585796626 115330 996746354 980464678 413346119 817084067 587482688 506619406 619072455 168802105 329317653 946169081 917469475 371662261 568873442 229808216 814361980 72182846 805751548 24591639 572894862 765590656 715319863 571919797 444252281 822997292 794973056 925429461 100428903 117216860 248603931 975482406 171088917 709915497 668907899 138242379 373484748 922758423 35873214 739617284 293926724 412694457 519743052 318139218 671295650 955205367 24317449 183825779 436135138 681014995 838192642 191282957 388414866 31259550 480108899 116523447 333168190 596445058 486822953 621775807 80211201 69726623 711829673 239910411 904277721 653130190 679857516 27139852 788273307 658125101 555447522 769990688 694725780 803343175 311392750 797930529 952833200 393805329 361344690 505287481 943914600 813234518 496195032 267887967 190972000 600245300 460969781 171478711 112341164 562298765 736844856 135687710 840143839 212903428 436555518 517676690 260743882 914750790 36050160 512022833 6529083 753647994 13630031 418897512 800472598 410309739 826420942 826410143 218463451 992656460 153403343 593254993 751027325 259777458 834099097 198016902 508091199 815992198 18674165 390919914 956138289 510753268 32238945 920203880 272276996 68584141 740440839 237996529 994966065 609452185 668300755 86867661 505347600 505754633 315082214 587855 606933033 426452667 545347195 121295274 353526575 208238751 530712517 348226046 977823929 31988030 254974351 252816736 308602624 439657883 522301556 428355655 675056033 788859146 945741921 274911523 515712627 793963658 42430302 460667816 794217147 91787384 813149214 361945113 706271378 178455921 481283571 707625227 848026773 353351720 863578886 505235428 241039694 152403342 89043369 934117066 184285054 979260065 533832781 468345067 469752993 678203785 66929286 421584866 804416210 399652581 97643578 124213621 119690992 730810908 362784177 967812595 801830072 651765639 739487393 698566101 230196243 112860861 238767892 387550179 282106609 211501487 104000705 217085085 32562680 786234737 623774732 969727117 840345796 226660942 862214367 335792984 332356731 799000870 534451978 455970015 855416082 351710136 78677294 243667490 957631105 295721122 946497339 86875702 655773218 697808782 313184377 985583743 159184083 774043671 834536708 220724438 287654413 846601522 970577246 142369677 720256310 899893092 37764195 788203097 373481938 550325593 72031862 873289495 764723666 609404839 488391994 308863643 589218666 702537331 398405807 881991986 580975449 119251709 563133284 626464608 244310674 370597655 926749760 407288153 926561553 269579996 358525341 489744501 82190765 20564117 904136726 613554366 766492233 579141582 869812484 147364651 44630055 494590216 242576185 287776957 122182193 675676607 109394588 561119352 268361371 88113574 517703305 63295932 350108550 525455120 564598291 483323663 540701995 141571168 958574854 866890190 60613192 494275223 83580530 555489286 690761125 52114136 291735300 710502772 93148236 970900042 634683480 38790329 897847220 689049515 535542608 892898252 685216432 106397901 709281239 263496009 743373067 831773365 751159010 600359368 628097523 6601506 132240136 236562573 114682073 288257076 946045909 615307200 35825176 472779306 923696366 550665350 739453768 278066517 633776483 289623692 153072029 368156927 866902847 716034338 890293069 720451421 459132263 947766303 517072664 850994705 156461634 117291553 572085185 93222052 551007778 714994479 869460298 380743100 936924723 833239708 328927054 522713835 774794917 375498790 644860204 808072558 469140701 112382589 538824234 766726548 376390329 400127622 330759832 603679571 296324448 887775270 404564075 36551486 211761993 299239900 597152500 602649937 225518293 308638790 334659027 684405131 452130866 162257362 705585417 737028932 135441368 683817999 32317613 387487726 443299415 521841110 359316676 900221912 86740381 952629848 422042326 976310682 265272668 47145233 364250127 150675379 827343732 371196990 416901590 118575884 357677038 523988210 81517827 64200232 636496925 50175641 769389931 795020604 461698959 809009011 602606623 816199328 103943667 863525953 577356020 894737835 795116680 794842490 695173671 556226212 782086200 273578044 324802614 720219500 712186578 180379932 459819988 203779570 469074839 528272904 3371576 769753276 412583898 170654241 935613089 235492674 742120753 507350519 668247215 174586580 185439162 244625088 631932913 764102073 107971791 391282577 287459588 44796847 776385332 685616263 696992547 371709329 688634874 488032221 691690792 523851799 732723968 409957385 83554722 13520287 779256552 774131744 860273413 691056004 686298274 81580268 795136430 384366792 972976227 625287711 328402966 158173717 742500775 368183280 191349134 551122363 580699811 985932009 483359171 880005278 633511574 31163820 308532692 412769209 727689817 68386748 554334024 82770689 206488413 762355153 598907567 157356065 652934849 104459551 616568759 776421220 899090016 930474459 732531577 317279649 653759374 295780954 539834289 369675229 534512256 479808279 628617293 165412824 655403442 681120360 394274890 889408084 642100333 162259374 306565063 952389713 479186282 110297901 256805985 389797843 295770881 127555515 864493321 221520692 427800162 648615060 445874222 370446527 443433699 503449140 161206232 24384041 964263004 22759658 873562372 933766578 698293994 961389797 956475687 234406418 720572458 706853769 850130065 7912865 818513842 648862788 125938182 366346667 13705910 536365165 805906250 787206253 264803844 678039193 70125418 944847764 997009446 699440613 597337047 111161773 214383424 15918085 493361597 914827228 778134576 36537383 704956632 252999776 161309835 757046905 580558950 748626474 695747886 299098496 755574572 134004646 439908830 152196035 842568982 292220001 292916341 338466750 885375651 382820321 989280047 594516359 557287274 148133244 776227639 123869282 686691479 291242652 329845429 56012032 732039400 49939457 708718783 6513334 917616778 625354630 23669245 494028098 203464059 608581013 201902794 437749237 559059530 165437289 603341754 228072891 205058583 863239670 572881127 867869115 148216500 877280035 978427463 364060602 955487609 865867872 696050385 905559999 783001841 399714352 167563690 248839106 230774332 946588384 449665243 126880737 81622727 977768660 679913475 412956629 341256772 868072175 348649301 815449244 528467401 893897560 236224959 528958687 563377577 760237943 812961607 649391410 672097240 650233751 813207301 240398238 365927394 766350299 794827939 599143950 710788459 341734518 110987087 79657060 288282880 954185802 468546966 651954703 158211813 478691156 995074794 102157302 705040648 952526723 564209509 987137026 791318878 520351074 994014416 599670624 719850755 822788401 794508026 430889849 848032767 666417629 503522877 631441651 880177690 467906613 95116310 697115973 880288360 287635821 998346290 691877307 82523068 12480275 58303911 393416514 20445903 662297119 766755431 429043628 484869474 532107888 710689450 942060993 501765764 817607786 454824503 409572471 656140407 394720243 112156920 382179668 82770838 228714087 106645184 99730753 906188409 985620723 125215144 146974930 525207540 94727197 655252733 773075048 626804967 801577904 105849794 997409980 204977805 430335204 110245106 935527885 826385241 268205271 158512870 113973398 284470307 688604957 663437153 173477386 673671253 726078975 58482547 355312934 32794691 940670865 667384614 948618302 674914440 339611555 341437780 877836283 809178143 243736807 426669159 537895728 579150503 102588444 560681040 821848816 107974885 949566054 619429539 510190442 276674072 550516174 447876135 765583968 375284744 708413592 595739365 593638559 911321210 722887262 786795515 632553391 66028956 537037023 849128575 359985420 722265636 624665072 333248901 442827491 221331668 156476078 982925826 423729926 594092786 218942536 186804932 486560368 547201660 503026655 637573207 487859929 761693453 501458276 57860525 806877221 442804296 674134481 901939553 604037031 30895415 846957085 476049857 359569379 593494219 340863532 717273100 193473481 978274276 790541154 848485233 951151919 541287651 45034538 990654526 311160107 595272493 917718892 100698622 279167625 719605237 870548154 138893182 543636336 515439215 206012319 543620407 30738494 591179534 166889052 847945409 571675359 842754802 233388936 170863476 918671125 934029001 373728225 451087307 656286758 66866983 534483637 876328699 847012870 940248315 643345968 930094470 332224279 688338437 635744148 894082328 345707585 117645652 594280606 501687514 918168518 865221901 999664443 636459029 166402273 193692479 132549725 311132453 456747439 403758553 404044872 243181810 250728140 140511516 565633833 838999791 480481956 753016792 624672636 561230624 33150616 717536551 559698836 326512415 339428645 490461935 766533112 996306038 127515969 629677800 131877004 107579531 442883304 346174006 985366696 365282231 589278697 391774090 676791346 999403093 437713209 152364697 911826263 751251416 912032192 268140086 76014584 722438817 718876530 509507046 584702910 171322453 54276070 316178233 547619023 40744764 835639602 365866063 858056791 820470495 575551642 271664745 461959961 696753660 881882633 636906906 922839716 753962602 749676619 750883823 435417668 622226435 199847200 430240982 361433175 904175551 392883368 905965248 494417102 184417339 196890071 233405384 246471129 293723822 522978193 932948824 260285469 448950894 346910300 819368171 238324622 455428525 41942195 317594613 73504552 365676693 693280447 283898563 923731700 213645965 778673748 982170825 807045632 336509199 490211850 38635089 808122030 863148456 450145832 716766506 944946611 7007632 87020627 572330722 746533945 25894696 700736058 696283425 917873234 980123104 441238351 308729329 909623121 570531745 470655130 256402575 510572070 497309239 512071111 93471945 139486875 842798767 32437909 587733336 882044972 767885966 5506591 462797129 551674603 550389790 190954078 906223940 364928448 210127165 762717147 839082628 27049744 455572149 334161534 251402791 208565907 109976845 596285208 115719536 289213177 383086705 639214854 706144937 521648773 13552537 621295565 235774012 376047660 447974691 467811294 228959651 162863069 774052261 574437387 693163308 553762637 285804839 993783930 460615986 299221131 606829943 214462566 855435194 302277382 992066773 876775139 114617430 625350816 64769563 154529452 165880019 960304292 191679488 19852464 452077282 327224122 836294537 376199147 832050095 881767214 980874232 96080526 589244144 545558738 175780666 72012191 845550495 544489162 346486307 627428920 732820510 966387175 90733284 585559923 340035947 541897013 959138154 984690549 741759432 315118441 501515368 773259172 236811766 65383162 274299287 807495095 539728590 440761265 956879492 5094627 899814693 213160506 671322812 500892273 367757097 598717941 787581203 611920217 43771865 724785683 565802299 123055514 199628457 970166722 369030813 859396430 18309528 342256442 451956580 321258386 35465935 933930419 513717846 329906593 704263498 973695134 493120926 447416345 242307941 968521093 461674788 927224062 926752090 849716158 580587201 830009495 959872755 641819372 588468129 316459612 551959513 284162225 818057897 206306045 855717995 214013996 499775540 797069054 359955129 820599974 208996278 932452660 583694049 755892524 879671858 97756674 141670104 984101343 126105002 919524488 419629752 258814647 709905009 728313973 600682484 27762495 769728446 670109358 329100381 664508989 550941622 580745838 714158466 978570961 741668326 435694959 646058001 22182271 532932670 883360628 841065180 644167644 140830878 695930328 40967860 594913088 654736627 523244289 471337855 790383962 682106491 477014214 688999146 115798042 281513141 418543379 275255912 349429267 802136637 847432785 700346288 216523626 29706957 736568306 343548004 122104558 210755968 113570812 22831593 732899639 104527208 892376649 860649362 379657675 973670741 671849680 433345893 139162011 247791799 368071865 797135563 699481050 615544088 240902921 769759 835138380 839196734 210618404 190436474 540372751 752318050 161140784 62487968 756635577 914642492 93961305 249631198 173745073 976202971 525010564 841379266 672969950 1552735 324038014 241409711 750019587 828269174 981526540 624084089 869623942 639925524 417344318 794124606 486506952 842536971 720479252 877886836 841635275 161039275 691193807 453347176 17300767 824823070 591730155 409725615 294530295 838047710 758535888 388818468 930957120 900005310 992622025 31651530 177284394 456734779 127384113 234659779 970759197 719379447 274345803 251843681 294576667 633089742 901955912 78459808 424450010 542407482 304732545 105264139 503385262 902810615 203832812 541928665 986746632 300605895 669575678 602419182 694629063 289878714 277808671 382477669 523388090 456344407 177182891 588672178 806253974 729327928 422167133 174831589 121808452 876595452 315786273 324331862 687620018 2730333 586269638 376351717 434945414 248374232 513059900 161005468 531763915 894897623 510602621 953677778 606816772 198846427 229758016 968237749 743266586 993147515 723826203 679105274 280959489 780409372 935475219 47087153 33883802 600912437 414527554 251649243 420307298 279202136 758558835 291179481 673423689 818741620 684805937 204598362 477193446 744428607 290385880 891978977 144846093 238478759 623437865 852372031 185316883 426068230 360398758 329935198 461147346 233956045 681554982 659970099 950649533 222788538 977767519 555293809 963172715 88877273 567865997 368514619 9747058 672684625 917350960 641735502 275298247 188540063 869429431 377697059 387043291 653035859 751538214 792120358 285269998 480386051 125018415 21603127 130178689 270400606 653032597 76744672 807998432 23737335 885497234 950584758 542612620 256002984 903306633 684918850 822805282 620330541 873174572 740187050 77512172 809656838 569842447 773195123 384842905 126266985 141853721 841589918 415878007 62393881 973163688 86896422 303157694 350811306 978766126 90067669 827177470 748110593 530237387 874933204 879170941 755464773 567146197 95007103 545413486 565979574 527203353 595311464 792921012 266404161 326994947 627149081 290551099 520542622 370312516 67365983 364599944 515896517 116060666 892411453 795339235 282561831 365284805 543521475 75999311 56926443 672993558 736987435 694127604 980874971 14463855 378661607 263360359 170832081 702289079 933950567 65683609 569376735 889821498 248376296 487051772 893096853 234266883 926793321 637408130 580320599 478610989 333272878 332667691 960654704 484047498 861357764 329811950 850363489 861081364 921695566 827862553 659668986 742255432 74632554 576013126 329097044 361980406 81719244 846593999 205625013 773655725 521215400 553743829 35461217 928252521 444804337 754778645 346399952 223839825 149759667 801947404 828869539 883654940 59985087 618158974 473590949 423433173 915906066 513266435 477524895 347019831 211582229 892359370 10463130 635702012 691443045 573859975 935561390 17316526 333206431 636686093 994005864 171419042 684612576 268101231 795538177 708194193 151173124 717509467 564662608 374954984 182646695 126808648 505918292 588934555 725460172 232500368 425771739 509768790 402683791 39840019 768759391 819790972 253677836 728721189 988070499 82660884 393415325 630393008 297853135 874329838 548827997 851659900 792319713 462943473 54337865 757320146 30388209 457106488 404490615 988488272 372142074 580831317 497351930 494745047 674446762 505713388 774209419 952137700 786953066 317694369 829803974 794008200 729547932 281303176 273559659 402739186 826553787 967665621 354111862 47592889 106827566 337436335 463322780 361757983 111013906 459183609 797741267 546285136 282632009 263425793 839508826 72816850 212950830 643594740 79140269 162716117 152635774 16688734 22941395 395287835 998298018 880943388 443719592 691409430 753302667 15631967 449187669 520990734 570920753 162025597 251822923 62340803 30114128 915716284 33598128 454499747 164470499 843916297 932676642 849249199 689497300 228443427 552010761 997605278 928888694 877369196 426564041 342208154 656876009 286763284 805948476 279017144 494611405 506638032 731062535 403463978 914357395 405062610 484391440 336288667 345439789 52077058 752918228 136714499 458490398 598335648 131981130 778877971 777850654 447113299 391353311 194951583 179717398 594267078 254590174 591285550 100877990 679526298 783335916 42286065 60353427 197415911 132348098 802274531 700332058 242501887 789763829 798704101 729097662 184364283 262695806 38583777 550397498 575230854 342164652 30901639 289159090 527525966 891351643 207506097 6836211 724164925 954547366 698305825 553686168 841172501 340611329 927725781 278310214 864923942 188262939 163272395 77924190 437168978 692510343 899001059 993533351 405944369 279466022 366209270 704148707 203200979 11404948 105579151 107806422 14137135 267305455 578326824 829708315 894559646 253319376 839309362 969849171 222525132 262337600 411585375 962308075 429901465 772526313 736306426 374050260 51651465 226531993 723069419 784151016 581313862 614336192 86984593 301128232 701012617 336095873 159742794 522512404 599911936 694879452 909554528 155518930 645863167 730934565 581644808 970270273 500137594 57381263 968888447 275909130 200375343 588214297 811740312 896124766 568268160 98929051 61790785 126664435 640406412 542296726 812498025 244489719 536179784 274440048 408465249 56877732 161395263 635760245 164489916 37807228 59586200 607402551 538632418 741464519 102688088 219965867 215196234 883840856 38480837 115447899 348513641 38313576 209490536 45195488 282113641 435987883 525697606 469601395 76370217 984189749 15763332 269695007 165235151 333126660 850672537 736422007 478344216 701439761 573943244 624117425 14181574 255329598 356807925 917825507 940822081 956486372 572705880 19471134 450870435 47057535 884635132 662811713 949726141 327373479 335666100 500532392 548652148 820480660 575351804 263080545 740880963 779679229 740586645 744475191 259823148 468881193 364656734 599125268 400326065 210446405 351425194 342194086 11726827 771990203 753415244 773479963 52559148 925875235 363088299 531441986 563913627 160257454 758486125 969595324 215145379 720251236 233554050 573706417 28345078 649752900 866811539 114881938 780990609 429223216 643642266 616961861 85178968 212912139 630141440 933507862 855266875 584521403 290720880 243233926 167269520 875474231 218952895 4909170 810318303 994493480 166452975 199761003 310033091 605052095 441026783 357025030 780486596 277938179 384659642 349687479 763698730 998121994 689578002 163783245 968324335 525432377 729656598 544736937 665623089 389869271 583909416 121154934 491379917 42872649 972632755 718131147 755392293 513196725 694780507 446261872 880784417 527114688 298533470 152186789 248221976 857324024 875530944 390130632 791182059 379557621 914448862 72419873 212751892 282741105 260572053 670121918 606861245 811398423 217114783 463037293 631529445 896884872 965776505 264397504 571214469 164206224 532777238 911358618 218446513 859848857 592189542 76363410 396350882 672248433 838877063 804341350 46279601 443566574 773196529 663857320 535660032 307769442 374256377 715622330 993912430 482900414 52938491 996839122 973820286 605902488 259649040 932055960 719690610 825280795 711176532 617398146 674775237 616026319 84057075 653146516 428939631 710197179 636992561 631754007 624610803 529087877 397937333 573310635 634820509 229175046 40300013 497922137 963554437 897172840 214965564 891028773 77816126 682101051 681855696 329218471 910100401 860877367 50553762 981567443 284452637 693453825 680062268 332282951 657272751 108713892 614151950 140341069 320093003 724863236 709569649 155520501 971961381 291278723 284449530 171227530 593798963 638672980 959164190 923238424 829333660 101419681 363120835 869524241 679754329 349548256 263550215 232805551 776167579 194412609 472722570 969358496 795221960 407099210 68661255 547248902 707069042 985808055 956729406 823911253 890441775 629285355 149227562 117570786 391375362 168043577 758393722 160653821 875594809 960761400 903085557 218123291 414596010 229638028 195275982 943108452 391886226 17677973 555665451 727423533 911506303 301465926 983891823 999902741 727487957 235799212 748411046 146934401 796083894 606149064 300431962 457460542 629135875 985587637 844270602 436526643 404688295 838312875 902883172 178431408 553814112 137437519 598479783 877541907 606117173 543130934 355990573 181151470 659315795 921694189 319563040 790830476 18953788 14148397 331042239 790719374 56807978 338456325 302759006 562972068 405221507 812006433 464237681 825798426 585781175 518798387 466029076 68662450 253388302 328092425 465748284 638641663 421287210 32788779 580935776 818221951 500144077 200485663 179325181 124505470 100551788 558854677 324015562 185980277 486957087 842439505 111946016 819722917 533051359 466105786 50852842 419417988 436029550 820627165 780395113 55172213 522487081 580893366 969879468 71649818 712381493 912507554 252875790 931964276 640137427 434305962 996006375 114418672 912795844 681674572 753009015 952888803 682901534 665796077 910027808 16235937 652453409 223767793 746923056 139658796 804447633 632331667 461684626 789711358 787719114 529801717 899541230 643928844 912277164 509588389 94630136 512750577 319125657 998593363 469613730 968585698 491662037 907208689 848119947 808743620 858979376 262353837 996317265 959404770 711006586 363416208 660908591 636531428 405186730 694222869 646523076 640335984 560699387 32362982 714865764 110014954 614799605 314792369 218155421 461724113 930816835 652099817 28882189 223052662 383694542 134149720 808702370 154396007 850381724 962170004 325667952 490571142 651727115 673654595 48944776 807281865 506478506 366088228 796156570 649586308 211345483 24717643 494091705 191526512 455079128 73019884 188263432 51621043 921527416 768979990 515660662 450469223 798109506 821621767 354906153 860655798 131600848 836211469 930611239 608458977 537661927 21120826 651096580 168056343 476392279 13646833 738722976 433719373 591298597 478255462 786299297 648526765 149918664 342894663 659777802 317647090 245083221 863306184 294331485 474920901 792762314 432386026 805827975 145888027 174667687 920633007 444101337 158299301 892493130 215242921 96436112 623118316 178037701 308997317 784868345 683846666 833669422 850654815 820568440 733005272 593433159 339643751 81877720 49891991 113419138 322303148 556633207 147007049 126203733 382989457 696588192 24800316 290867278 723535175 110875534 506541893 976482663 655719705 861890682 814075493 963751085 415875268 167457423 925094444 923667232 359902728 158221038 859718307 829347294 722790441 942631119 584657080 443809401 599915740 214849345 737908524 928255618 611894166 758771616 631125746 969075164 489888350 645006669 642314073 71872536 463685442 863777397 104543065 828401975 590956447 841870717 956506422 563117531 982254298 186393777 216105315 337331600 194365904 205806413 546642248 989036267 773096986 176729107 236372027 626304559 667044063 503800096 636676413 276375590 481200993 433778429 447647547 545502123 690357943 170438873 841328991 155856960 573562816 85868774 309043914 13045371 74569457 46945288 194587780 277556963 552734072 767758856 462749643 639223314 169987019 970760152 552629827 219399352 386543076 543653079 311621308 96659869 823483009 102858759 995977410 733162507 233822894 525010279 116299039 918633658 235523533 751575254 632161466 958362382 835127848 866588100 825497989 786597082 561631962 791473732 420903050 839002384 605259049 723484540 968257761 890480297 390359399 446936539 695669292 75442404 434705513 456265462 216389133 213544208 258261966 929682928 905380613 386179991 3095638 564478858 451301512 568607275 839530959 234612415 191692219 497598640 421767669 475764424 41470511 86138412 446118200 15765863 835278711 27077188 156169066 939687744 855214230 711487782 712674856 326353139 134925743 981722190 101346445 838820211 987823442 246263553 613538401 713148590 801615323 360853072 100209968 255044901 401582029 382740056 172029192 197870415 709005737 697227270 765288408 571208121 586681321 467687040 239608001 360945711 873252893 648572334 518017868 163066787 583127910 638927898 288891851 200468577 761595824 278003556 623372818 171763689 565556436 178768143 18961980 439522404 527542872 890071072 973967527 114227363 40515307 317046599 102168363 465911953 269138019 854049319 918476596 735813774 708394362 139244072 315363534 75409504 412870246 551274684 423676436 929004674 679363637 95402528 219391350 370365728 658796011 587585380 113199754 771685678 769451634 529068324 601636620 998415614 364581272 505447834 865648215 19888341 970949546 204585645 595414361 897609670 260930929 334719190 176157461 537487510 288655416 665988027 895528803 374145214 176754315 683141326 918174045 875062032 818377239 723624219 414888230 342167760 128522067 904557479 487917263 501334807 25023816 869570844 669342405 364576007 92263513 314641645 683140703 729050782 137916554 942362956 44296771 336367344 429346020 263295356 227681784 81023978 63229346 382319907 822443682 923104486 897842130 926481987 684960820 896428555 207402357 911078435 555382606 857081783 847232921 537524602 739063646 765098621 204035913 13835945 543416460 149025223 42387074 609638131 943277090 695131747 121574980 80400241 249770229 840683854 118850937 80641284 542834649 753016718 243434428 138932268 634285400 222203988 326006485 36993285 846715715 75658034 453341103 748638113 441261158 802731431 966076715 262031169 172761633 178066132 166065353 353717487 705976685 938780070 336702955 985706094 578366303 878538120 83590371 837521139 590724829 286167931 127458298 793733670 143935622 754684960 576680732 436469584 684211588 229752005 83960920 266388137 77249880 192658096 89597335 549703285 744735626 908709377 644600855 75847362 446812896 916887381 465593368 83890338 709424696 127635646 285173655 738672411 332225620 785731550 33967151 972668124 305533539 608751537 159461814 273182590 177502142 360300217 774890785 961382175 730772973 75109617 84281951 838739353 910173443 554166792 737664831 782001285 18183766 712246745 854925486 962892590 943754483 325802852 470488534 223518420 347333848 695691648 538882221 728993816 671164942 935901973 85446599 492017537 703728301 840038519 851020862 396976536 187605273 265281764 256744560 318762855 606529311 381042017 884695608 980934819 39848377 379420031 363974161 843688803 355063781 50817983 898913459 481967580 324305294 882030638 365985825 373742497 981755695 923581448 626201949 928313152 806699573 807936105 34821436 173546067 664001224 464195255 785976918 253126743 819661928 787486114 538503078 859580752 992881536 169521963 843005659 890429181 578418902 272246939 815823676 458223370 532460042 590997790 475946717 409919518 612437492 368603067 731432522 992390031 168050397 60404930 735629943 319950001 337181961 642763859 674102885 800804220 336419166 587118186 452182740 519139937 766344174 246623204 906505401 632598915 338526630 314282379 721160415 557781666 173185667 623514717 27789558 122884707 309472089 103547059 892405077 579525027 363501019 465420714 58122124 533972700 839700421 47818592 120724457 372908047 601631347 904802723 210275793 373285597 255706016 714879937 314022185 113535620 669586127 349024202 961104260 717551286 455396326 52833210 336447220 382241104 92749861 79859825 509052669 381351467 326890401 624960733 856584526 407449207 750902440 810461777 756356034 181988901 450228480 545029668 958478998 308178382 259088350 402740697 859624966 702708436 571656647 430989049 295856508 269863111 21549465 113047476 442613726 269404517 40803838 90926505 421828889 756281817 276524977 233816142 600109662 932232348 972500888 969262770 526195381 483430632 84765006 429800251 49866358 579477580 183103079 471812327 627754011 373224219 197442129 438997089 297587663 37199282 480003410 353869041 615292235 434309955 179756721 286119746 326089500 115488515 748022000 539104890 451757101 170770517 332544881 626009441 833405889 36282358 78906980 625678840 808182736 827003396 468052740 594990680 864969611 796046567 90652706 134247694 798832570 236225287 840779737 822922934 179698264 984161324 678911008 217354842 246718355 856916918 740470453 176699862 733843020 306041437 478012885 740705678 219776950 9727708 176704234 440237909 687130928 802054561 117849482 549321994 305577501 498103294 130077953 37891299 28982144 718701130 105050940 330918246 300993793 520172069 293080445 554767172 837498397 185580615 894051101 667215170 424678308 976379731 56945358 555348453 626494183 738860679 187095355 3699641 866348685 318147173 862304322 434297942 817465675 901958648 308918740 670023294 848259559 983866125 76392021 574922797 607073830 365983171 267321532 953586142 625770424 887842310 699814066 641439292 161082451 89956364 245214947 430403358 171962986 656963464 643987529 814494114 719321342 351410883 539884324 797296302 341730440 713783888 987854655 261496243 85121981 47601737 735415867 828764470 514929179 862095392 917575486 327652791 20994127 158506790 39523009 920931014 981526262 456037650 359750303 715982491 350199351 909932036 955148139 91601328 231200049 312913813 701588988 210168706 976935599 344597316 80212488 452466397 652027129 480840645 10285255 354058418 302080485 845137217 173978487 323952614 99259183 66422814 437976111 737192004 513102917 807158115 637690702 347018402 95570626 388953740 680757768 203308221 961942770 409865737 479021060 796787415 747034074 230998622 511326625 353426929 130793394 507215751 693083323 562735889 835400396 847636406 370042297 409384089 136027614 559524657 820316420 646377153 570985315 351601065 469683436 175995393 606017014 564817632 600177671 250083750 67239960 959306601 652686568 3005055 532803865 1318037 30833099 136576124 902262008 957810919 243054724 131162742 359378230 458380658 866953891 762356134 462814925 308554902 508102383 90243345 659949184 210687351 493804502 461924500 128971991 666792203 627820061 898563720 327231711 940191242 682215850 298976368 764373483 443090695 1186805 833716798 668406907 970157355 978882021 70668912 255764179 670353302 113140647 585250269 238371103 625007823 465544391 835254840 68581126 482686338 640587269 312150391 997945816 558144406 437480991 436718252 622619605 540823249 69800236 747783311 552811816 534187667 707375847 495010019 115609393 69800544 956415085 158516171 767130279 855214864 913237679 707754688 614843658 272673072 791793682 705586586 440705168 337397652 980672915 773350123 683028053 991670123 757199715 4071521 185068809 786166408 12157773 944128509 714552631 399812562 30008843 376096034 359005754 176363601 396621750 707995311 128089025 779762185 423963345 315136913 271380925 992540069 397324897 155815149 852124172 242856481 798301238 141376579 829982482 950732876 15261299 476003991 65907606 554267153 557045784 899137985 981407335 327775444 486794115 240110064 948101889 782712409 115497110 423099297 283474117 383995627 510697803 622473218 753032952 733187519 229517031 663057088 802809281 649433092 823759340 940847334 617131237 958268455 884420650 434533746 249047327 77940616 283226790 754190614 300771175 397299406 131026908 6553827 551642897 378080085 570624220 881303776 794647898 624414291 807075598 682207687 243406199 688169626 143275311 257956453 579237329 713980296 96501911 465862942 139042292 782106023 697463282 515729624 550640462 5745468 420859850 235690076 733141894 583311543 988301284 719112309 86320996 641221749 981289969 504673801 995404266 796184166 885734916 77750927 734919477 223095941 872821634 643974008 158868111 469308629 498618458 266304960 856187039 889928641 36702538 732647642 243191778 77716414 310598588 471641251 580529549 410146390 31727054 866820569 947997460 316084567 244916377 64374774 305602204 820212579 175682406 902708374 15787223 430771829 205688672 351309010 50839746 157575128 50932543 910452484 454221559 982616842 644996393 509699153 263960577 101312204 708811555 201249548 954849339 160274155 685871841 100490988 547086634 517919825 880139888 31269011 406054955 482976991 609838180 632136999 393230638 965141735 848641974 508579849 891700081 295588493 793983292 240656045 902721082 58569901 446170545 921266522 591971616 19441029 918458979 6963594 219408697 390473296 956053992 141782054 349470914 840268379 668952860 494436544 185239648 639816202 26750711 966961282 471388351 683977630 922900240 149168239 374006689 825278763 382866105 980207225 979695026 289172443 941915476 433559785 610188321 250051582 844230458 103407591 602347723 467881508 731545580 903696034 64726012 418819664 469826857 488300250 385583543 291576756 484272032 161708429 562637026 355655045 615337432 522702858 388414566 237669278 412394900 53934215 487590210 35341384 329699901 306199302 394901420 95987347 734746883 516944171 909080807 572079905 204627268 200233093 196611625 604110216 941363827 600933443 630335722 773045761 402811417 64256558 747211067 208703323 408554443 872685500 277554310 798163461 148866755 676887149 71006745 758723637 66784004 764862618 411269421 901406937 287962070 792570834 3378100 66839499 431713886 464102887 806553918 820974241 12493906 605097604 653174859 182529887 149426890 742103982 335287465 864642289 609781639 495438292 85362876 266881740 249325257 95132502 270059817 464258599 524036808 22292615 802361540 768673430 112649409 388387293 615909016 838333320 793983176 832958695 535942970 442696512 804518395 713847962 454688273 507804683 495079243 788147030 891259693 60852938 266854901 626944446 358513615 756958267 79549841 701715054 962496803 336087432 737274492 373424774 134583623 4823326 118592050 70933739 951811900 509572181 54638720 989464722 817221615 284329741 532260205 77023724 486786820 371230328 295144836 252614304 410598625 133673910 682017835 937586469 124248933 449166367 487942899 265250185 211426496 451680848 97107089 617189594 948921629 997843432 759526405 333396394 599075126 629151285 344930228 371799079 676796022 739035535 787338244 160432110 248039844 581904626 816420394 931148773 191040120 589435938 454586495 118796305 23364167 492065782 418498881 176238266 938875401 908344469 816494499 104635853 233159940 163835739 195057360 949969156 960021572 349543768 703601494 804326883 99843097 389628496 580321462 23748027 98273036 906347964 12280675 439851266 365357435 798803352 325820475 700728699 498562817 930244332 470128332 60060920 271625986 837625480 654029523 824575236 538113707 58579300 770718424 165780772 782159978 90760944 340730467 553537359 481169451 374394337 986127063 571188963 242895860 797785926 519097805 416402748 782110246 632421109 702334087 899653025 106676125 327006186 18495246 439032886 850853303 219036206 49541141 481086565 925709526 360675708 5594837 616342626 616417662 812863989 703282480 83068015 300402688 327219659 613898428 462979163 594707545 198553025 557136831 705067591 270930493 841601556 382293509 651192421 912368540 423697429 671187739 240533262 946512079 558769849 8852800 697276202 617937538 900438045 738243931 299863368 196195096 318810839 816532411 947347660 133570084 334702421 400451357 579969630 795635307 482519314 861376758 595654381 588109420 555496934 693553606 492215736 614087592 4058596 840535576 65045908 679851425 596025097 483743751 837779744 776254413 899329070 660873437 149470574 927693911 38227308 916766332 111361246 879821816 758381389 236168874 405562248 344735134 151056376 35398585 663275694 378707818 919392815 188883944 715698102 501960213 432627493 384335170 534084891 66856768 662428356 891986876 998125850 105219711 753217536 90164573 474019942 129380953 251893344 675569727 472752419 513006643 276329626 742260904 170695494 248603101 103938662 303102099 197662517 672168400 207400676 593233033 402396227 313649976 369596032 708580922 425629519 717899134 241692835 902515266 15611567 4763975 734518645 447273730 407612116 269828493 391154517 449430326 867689546 692826561 798657377 807044501 616379083 903544189 192210255 752960107 228339128 20239604 710477172 248090984 964682503 891051135 547866082 116367865 197607375 100714957 531200440 478822580 34441875 391542719 682107009 29476918 640548347 170158372 939476421 423329270 337639799 914945256 350945822 434975128 65304115 188119043 57971732 995912087 731096051 600605667 900294620 40044114 696262975 281556587 825693220 327423500 650539254 89546806 697316916 279549652 394578322 680649491 105542814 856583655 529413240 3214481 157508046 148429112 758344291 216013174 911065222 568728621 895374776 50832132 861195036 205060734 645392393 672635847 485911113 145254317 87713574 199356468 406916389 406192690 511023673 706585925 122670161 395875592 243774191 686611981 326483776 173892328 853261718 83274284 340677943 935222989 902063605 397650855 951137570 927650857 42473065 79418290 74061125 360347109 660265659 919904352 411849336 954145351 307895569 576451554 360372159 846509779 618859747 475933530 9798956 767833136 898210974 710546528 344490612 500905476 485851985 452608294 370939779 960964660 545192199 802546629 585500831 411460755 287872886 612615022 704167988 819138009 288485337 816394957 767291680 291611317 605783008 409219707 905453803 853588221 875606573 255100758 961274540 163446921 887259865 50277408 975321026 710509537 776368278 166772744 314121696 452095539 436979078 222025059 339673422 246649028 939138039 529049100 649433731 702814500 138290385 786406666 380444918 788287941 266388673 873132577 820590815 64052905 496934627 187859123 366399624 758943328 143134255 574358409 192602757 938776144 977352997 259359734 36329605 903002424 838646913 584085690 559888915 46904807 58056460 81714073 375230168 406221931 83142691 855058703 902908828 847265314 503866796 180195711 254010247 531545396 951946789 569000612 187554691 379962502 363103677 251415646 609538026 493977777 699404027 478627104 141852513 180142411 163954304 115484377 956471775 629368743 948950447 953355985 820808747 199870604 526172972 591095614 809854514 728460005 953253322 712383779 565409394 108807849 697103963 553311265 693018846 590856173 874075117 390362194 670957007 940666264 87958533 658984304 371984686 8308941 555615816 268003533 848348094 234581429 522188454 240504009 835715923 249101307 257385645 223373261 274733012 722765398 803385174 32737097 712040009 252106259 280981400 377842402 556312599 262290072 940155068 964497894 652016469 663391478 471034497 156012542 710157349 949099467 192317291 611430589 257469981 171243229 414565630 188771835 974507790 122374990 34349067 119437759 373246679 769960049 890140559 491200327 227408299 294630816 150943049 254252675 688081601 718101008 104837571 143113237 106852489 154809323 959217253 532146175 850385478 17299436 554640796 359169132 940694938 895362940 415552486 469936556 515061217 595748860 613646532 967031641 475288146 608636579 886094805 590143343 129588204 344135594 958990428 587401361 921620589 371090031 384871040 802849578 680702823 244086113 775449609 170941051 355624157 168694549 937749392 347975829 161824152 432334504 530767264 77094039 77859506 206784337 189231537 525055011 481702987 346723483 367755770 518692571 705047633 527932428 251568707 972528384 212617987 749764788 745392043 161921610 199722581 941851808 499587772 226112036 465462497 185188729 520788383 281412980 207521942 884868283 690320132 475853458 765825841 294264973 70633674 929696101 295413895 613859504 110427590 743698227 906762913 948782896 925504729 63736329 143611528 863726733 412191893 66999074 522830422 909583779 586901146 761946348 475674647 956252424 962292010 40530885 726489504 860029160 178886161 149771660 596474291 731579062 338438944 191643898 646763891 803775872 898555541 770959132 86708183 223607238 821645390 136752024 264058490 227128979 635025944 430708865 136317557 689532942 568161199 750946173 801224008 584559659 713131435 714470163 617685940 831032763 350104840 375985013 90322528 642059081 278348781 586910713 248128529 858062 282437939 39883073 109893237 537827908 630292503 604513280 386119309 210276693 139329127 522943537 244384649 970016229 882492076 123793183 511900131 255132933 337774213 527333551 373848032 844970424 954337229 676622753 421982885 861129866 966309253 189830557 457781155 106598682 183116267 718291896 790918103 696626053 716960315 357298150 865243452 632328061 910614183 58687008 749922139 451959764 978453214 33156959 307495659 245017176 447171177 711272368 436837474 973514747 91688069 217094491 575368084 76876298 759966435 898947835 193481940 174540709 66365927 270388720 447036604 438785348 241177770 156577118 11708430 780100701 898242207 195370971 962457774 750898429 438050781 323898959 828044344 712211710 93909989 566783101 388845958 829696700 852146330 82115651 795678288 23595456 371209529 547200762 317366969 404531168 841333859 78957778 97908626 331913952 974260131 636822452 229437723 699366457 213606331 106833537 13316989 465273063 27188144 445002431 739472864 927587677 538821222 908169203 386225312 204272945 10690744 71638020 417033055 858870713 381200402 647686028 219148057 838864008 347441997 83837148 466261834 64238205 243483854 626189666 828297544 444841766 359378506 236837686 563206222 13240267 616678459 790070966 280765644 444251188 499131518 747953826 394382468 483136347 694432149 789520402 302546256 121785002 207724505 547522278 640116295 397685706 826363095 774504739 812926021 419875410 639212039 463178881 580352424 182358764 931039565 158159732 227342640 673185021 214184419 406343459 278797258 866367483 569944672 923306719 133217068 250641863 692177566 163573972 795795748 83361721 724300377 635184494 262944601 392083686 677505222 326220760 210256782 36049865 251873754 564331327 591571376 829006536 896185920 77702528 125516548 851668859 220910923 953881518 452625684 303232116 23752893 480933554 736993583 155841432 106880526 724377162 49635523 888182555 100130463 883386710 145540414 570099993 18974154 478657981 796511506 313529144 364138965 12839853 769228864 979675102 326399065 656464379 543239781 676585935 896701634 131116543 64945832 597779390 77437524 262405038 611759410 185727953 445049282 797685043 703008807 635169803 46171446 208213881 25038655 347793281 88254400 387552054 481399322 888821457 3251799 415673493 58805872 67400985 598582290 132231132 504677853 247089661 415033570 154033608 74836666 823772687 691416477 392188025 452568772 628978161 690983128 823030434 122474961 847399491 216276621 831143055 924123415 604340109 661968506 852044751 422318093 890528071 434364263 599739564 855726410 707985405 284391414 492590810 34093953 510777732 589950938 32805277 469426769 772839199 604497006 605914819 694678731 447565135 470312513 609988234 469955916 476465506 421265586 399365533 497299193 984669941 339869693 919771703 85858345 446919473 67955571 574404422 51623000 5706425 857657677 163833539 214233122 588567455 29664576 520543287 883563009 720188828 368200032 516908800 668764081 315365971 873324003 200274417 234447134 218653296 976655652 393870417 444745299 994443061 81564853 682611327 781266667 179965358 496099940 416962010 460503690 473600290 592039192 438372801 197055663 311731964 502477863 761894276 912588227 253804593 714406633 790884021 162665563 467969692 759818472 465771612 591434343 247110638 571268372 109457789 346734395 996790763 582370555 231958367 438252878 191177089 345206826 340294190 803015699 517935883 152421029 823286871 159994619 266493405 381887366 750508968 72720005 693521946 311388442 163205251 489122120 495711282 225231615 845010312 503807541 878324302 841517214 323996492 596204072 366406820 372900681 518982102 201411127 839253811 372652625 846129913 167003027 303048708 742906406 827724561 444018528 57342606 377231316 969263106 249319884 89380362 682058863 831290035 964322562 551760355 306893266 267965069 235639543 237271862 945713721 780714366 224936088 685375835 851617261 717520604 286971986 166894678 12385141 494165866 473155018 938383520 575506328 380352292 760487250 613208439 278918397 854397892 150733038 416726969 178949783 599253186 784709041 925142896 885951336 448092957 56015724 226636466 374015709 159310499 411213138 986247304 844117283 139875108 202223746 581238417 752507900 473775383 470288789 668002590 323602409 878862793 406931495 462439687 446483633 783245391 777965984 447744879 192607901 284992179 132987957 402243236 864263938 64532904 43219383 571304982 778377865 745289371 846080364 500476905 281716508 976696770 164622582 661891407 334399835 923484981 259682853 663113894 974201469 498392494 642863145 653854666 918065854 960964647 785462798 816306699 707562906 265151166 714883440 501528954 722900641 323176926 398065742 611479756 244150089 167633346 205299342 463322330 708651958 732726850 259450689 490041883 179103002 176143830 194984747 699130660 317102250 735561607 928227016 298317207 392295723 463889759 557819478 146689050 671105294 436368979 53572805 733624067 374997043 573246157 630502609 288932996 252435361 219995617 611211748 356703365 826462915 199893017 843051218 355362442 147046922 981473414 395759845 911090955 70428312 572469034 319312956 594913730 511464460 157402019 647179934 490290848 694099260 569108124 671014135 150413308 788790870 909021942 813715787 317706714 82947922 925873424 324525164 317688358 566746007 444816329 983289505 927265871 994992511 862863219 498236246 848483367 148018531 381593472 161651031 431284555 135876882 898879739 872829236 603992154 671606612 10515386 928041433 102448155 456987925 143393669 50318852 854416666 995796074 450402263 51368631 431964109 102280596 789640720 801066334 555693818 681825457 90783387 918513500 301144962 572251885 320118564 58361874 472390962 931435398 976279026 181280232 605731344 959663859 499212605 815837651 540805868 900166671 694985488 732912519 126338443 887124822 226750585 886264577 335538494 821341588 454024680 68041107 509143048 494668718 20682443 98145178 28410253 923995218 108647137 528885416 768825687 918648925 923078601 907527687 876276534 949229339 380797398 421969358 190068105 8200211 398718559 637152 489899507 338452823 513228457 46078180 403227960 18581626 384922753 143738330 923031645 208396128 957812341 233933378 603702332 635131577 632907718 197013002 935333305 797094547 993232311 877629992 8985450 60247793 16496998 701903317 948730364 32554670 868602270 457398614 91025631 810591482 542479343 251672985 533136206 525407693 379653311 40480049 431313157 165508082 63398462 541097353 69837483 373570097 553716665 914245592 325383894 129838213 224800278 906037375 764619087 232964332 215201472 271966491 812928533 652169159 269900333 201869252 307156897 713929209 889406895 124773786 664890942 126148522 2320556 573995634 988864193 920952895 200490727 358154123 875376770 134908375 453219249 442981082 11591351 831731052 54395007 226313780 821412478 652603347 820128836 339110525 393476402 103653878 582977244 815809000 716499553 904414366 146352213 381368897 661228873 210493606 751367322 845205571 99201793 124099008 966493591 583362003 908559868 918306006 94064128 9737611 204114223 189075019 574040743 302388676 454969091 937948303 349225684 782407592 81776106 844821302 357405015 438440641 621812892 905795277 2398238 155357898 340002838 361809493 835349425 92424352 643576801 20269437 4203166 493519312 972584702 364226159 731059736 871466421 304753777 695577990 29052094 245226400 798156484 716216466 358058332 507253069 643384642 567815078 58207461 705840446 717565345 878751669 511020261 296432253 954876823 76443206 718886905 289813988 588841561 15085793 38138508 882842879 19357855 607259470 937037686 6894162 909183157 782749350 470755789 608340068 628360923 781645232 11648677 924376122 94585402 88674985 557828528 893023597 299773589 697662253 787257199 840476108 923497350 631516642 702401976 976207397 656261280 398889029 489340101 166053058 43729948 781589216 893898659 941745296 915479037 334779879 804024904 103469729 109484980 542404669 477586617 766630702 775225211 560899579 395803682 53955516 405307956 219732664 973146137 399001809 435483527 544751350 183946664 270056829 657634312 73072149 690082669 2142554 818368412 209608673 930229221 197773289 445471329 761773632 152056306 43857808 340294963 469977753 190970199 774878802 897094357 889473391 262527689 357707345 866343428 131956854 32953492 358689553 148446811 688464439 310463590 724438109 729027492 415673593 364821100 827573176 611352055 728955580 835439936 566247665 903840874 806742532 249311591 355472993 116993451 150254930 872171479 509611698 984409957 797920983 23011292 821095555 411714812 200416030 611877813 762196342 850435581 87160688 576403416 503697324 384718613 594645851 610689504 440572357 658574597 567639726 9104793 605848625 207153135 297157457 901464504 97835888 258161261 442201550 82154411 246236577 201374922 838101911 810725144 67272965 608919055 247537337 555162120 56972854 265444073 898835904 687011835 119251181 131625554 855625622 986826371 554148609 901950685 387623470 653666040 327232776 917247896 214914144 225040685 784763386 500532242 681493665 127096535 703945773 659192632 746166334 335320396 914898174 499167064 154543955 906447322 360861922 741092097 759287175 432183205 266195421 311375118 515965052 375457045 318078547 676045439 447845366 965142202 362767153 596226417 50922444 75073620 406556181 121294787 60330169 422637026 684016646 513271619 440253900 835235710 128361365 970343358 370670768 184647056 256132961 219545230 347985149 927533321 525327864 895091330 594813374 29289042 975802548 750680079 62032427 466079735 414153363 82003658 449598585 638505613 682028540 505647374 959855923 523176241 269020672 201060842 962069683 762510514 472535449 168986334 930508674 409195221 112792915 68127304 634526721 412289187 617500293 343297544 512218027 311349621 926149782 105030311 890061778 36902317 324326564 8477707 707414855 657934148 375050568 274040818 293856083 39586789 169707940 106180108 6077263 496222154 920311358 646889017 832889794 591494502 708801879 28736032 944575649 639652492 625932336 177082104 684253365 459811344 954418578 318940757 96590163 598636024 68495499 162306482 838067924 965364542 201480325 892545863 711927137 183386244 721730522 657657810 983848241 835542190 731195917 498053817 583408361 425074482 823213553 600063756 538823619 255269912 973914860 320911282 64279504 702546450 192987993 153068764 507711899 404602064 931574781 903252603 921143906 976228384 216697626 545970001 303322795 44720041 362820650 977418782 819692717 909948841 955371404 421404727 860971318 672741203 560131449 993523005 991697138 131910805 517858212 231179756 954260173 891345608 502478794 637143504 99238770 998141115 905950120 572175752 537655508 90216926 498395352 561673278 904337064 915335689 493456788 201441475 348471378 79304074 245018295 204381426 186025515 104760832 222548630 71066624 399425906 144765194 106259057 852311289 537020301 827538377 208208134 203991357 153154828 445549962 757639986 702444077 602508010 206592897 254086889 757867054 955734431 789996023 148326673 158057448 318869132 720132180 379395798 828990895 449799761 927155502 772573093 794621661 200084625 174249988 757760522 209682925 95262575 631488466 936606115 321150463 91590892 49635301 714793654 752776123 168286512 42647532 637940989 321533594 282942268 952443944 509119004 635113012 505568653 657614632 701811801 275973869 282899216 803865185 852688278 216419887 727478571 213918545 67945790 164038898 382311663 605910334 431043497 138491610 640028679 754733166 492962845 71224217 403292872 176506538 541667053 598658519 745466253 17313163 780341548 755307301 527281245 837383304 191272998 636637225 612924540 605575767 34938178 406558500 43964986 104925634 282627021 288900564 852643636 70305795 462250636 413389004 802426186 404360197 389239418 996057516 901228978 23314245 526456002 907355246 635976995 766818187 436143544 178211779 297236704 415079579 683786173 803372549 612231032 497356257 673259162 808381426 946338470 825661399 663810876 853079498 659673603 192659397 836181226 396956052 783977418 205478973 527867866 329667268 15918329 261547347 156855211 767353918 665300481 704110401 268524018 510005072 816882557 173478395 937175089 433936398 613333996 240104311 523881347 444248600 642544457 877404024 553012139 407615392 223378717 778279868 707222923 746391031 547981105 263252012 251174765 933722866 788528241 748597763 407926552 215746366 386480377 971996248 640039577 301808011 811620765 718537093 447447611 575247915 135662635 68135512 314264123 292321685 807803537 860395419 773241390 871140284 580276171 736766063 30255752 521572160 896329109 829257464 525630967 658991974 691718327 969810224 143133981 240308018 445976473 659450458 470722840 931103753 984334436 915594396 667565027 162299574 424295404 30359798 697452508 195857089 214524953 184224250 446698165 780199865 792305564 891646802 317762608 439942231 695930747 867395667 228494615 338867063 63215317 175927121 848165842 531265986 237758607 232453228 415651686 791049549 80428458 982597962 910154700 214524364 790994240 508500009 146160196 557327139 801232721 240797549 490930985 463530589 807888931 465573712 924027513 845709950 148220312 585588701 451480055 345999815 742839993 923506536 901098339 943539761 637573206 913773229 489967457 402043189 353952268 780254992 612637563 458660715 866420630 241482313 414275782 927240066 225332856 416430784 509959513 840732665 607959648 551684895 569583475 905946856 363223364 703886829 793322746 549440251 693866915 224381337 733879744 819763020 929655455 551037140 786397223 319148466 347510619 455866841 91789052 744137654 380504063 521620186 761069070 573618885 482086325 7363694 872872094 495491447 306495938 973602798 72817521 485968077 772355088 238485150 86796129 126907407 714780522 481511173 989033472 232668798 592034481 305238218 127537687 180913247 339221484 205410567 514430373 619753294 370003974 728337682 188186632 345436808 695423276 118933982 820220977 343795904 630925980 873787846 977165423 766869811 246776159 824435162 292588545 61094656 251954517 432024281 206184566 480828779 691806145 6505520 395096869 107467074 760913479 269631371 850463990 129703679 924788069 985650654 351263150 221350684 215040970 429845230 394960908 133177882 427451603 852295124 664121083 743922634 460203444 53870899 919479214 716086279 749668465 826472382 862075016 880338483 64045339 681317525 556863585 202575336 348135830 25899750 439555305 321228462 714688817 79010875 748026839 362960025 319042940 378194208 994018556 900235683 532290219 288164694 205529773 948892658 607660559 825117777 698257470 762063847 856335350 794543190 217652827 531573339 98447815 14677495 288138460 727272496 349289246 809659502 902892001 403035883 504825101 551890187 768659414 436166486 5403850 518621363 597485092 274480161 999039778 491570424 167115228 557753734 154911447 330807882 357770179 584903367 266958919 49886819 424326507 153101826 841104718 104845192 594098851 22265558 299538431 199205176 159931105 659962443 100965009 864234372 654662600 343602888 881890632 254156915 652093283 71321180 90796155 68243448 480908323 821654232 747448143 999953676 979591125 297402770 486850108 61851015 785482141 116309906 969190942 300317766 145650120 882860303 674658978 388950972 146815291 371968958 589876828 169650265 736423096 866542709 995918036 97856001 791372206 974246781 141266549 440953832 601436298 176726500 696421255 10401229 541624921 826205650 956064534 305788035 637578140 644496794 456570054 486402085 381867361 569117046 990849093 756417860 725244465 403133428 840028608 478688725 752557960 351185191 747547538 902105733 580260318 359641783 43379852 134722529 172932051 389226084 232789810 45154914 829372041 779421422 664773330 600203162 220011659 553284566 204161363 631763620 102494951 665093962 623377349 819214222 494240500 417107378 436706964 751975291 473163800 7423689 513291939 257703505 339646651 921777908 648109356 624434880 212140635 782257191 491580655 309496111 337753146 47428640 892502191 450636392 69294133 921066719 197728840 359192856 684250681 496445580 170375593 232811433 957246829 9923023 298420426 336961923 11692325 758487329 659324747 720173451 411045418 583245976 227301945 389612007 420385373 836342999 359336915 794513229 159933728 649515640 814594664 205791298 975798104 44023956 790186117 728826267 501243139 577512470 770099169 498815871 390491885 232737635 253701065 664142209 134626837 339437216 402156300 121039892 616069107 610719979 831034922 742434271 886983949 490094949 50896776 652375805 350090743 817368517 656754271 907371090 694576950 938882837 557227442 126096928 288139287 524537503 513223582 244300432 591344276 73731392 448602712 227386457 958115858 522757672 245448265 388825638 714106060 411293420 503844223 565146840 29228755 750352931 929368301 255964870 711010191 955196087 39899118 623174497 260276026 475488591 46670154 258064847 302527080 414732991 971412124 869948380 96386130 37095857 268171726 537897861 515847862 22353448 216232389 24099214 968653963 153090796 209873199 74699822 691020057 318616187 259610062 798213785 511325012 968368340 64304120 964638082 23306018 6119935 990963107 326303030 407211115 463053896 320796242 188135756 815497341 5977795 608561952 332069353 304799027 27653967 837005252 450833481 140097838 431936895 725880743 86560147 452302810 444129517 699059301 700810584 905281628 57883138 925855606 60485384 506483441 849180565 71783531 59919507 804895083 583824351 8375992 937011107 880626752 493165580 464466090 671352609 731881897 100547518 115160219 777054595 379277855 616770159 756918597 776743915 259929030 37383057 835902497 669112795 5785115 675880375 424075853 716650525 437665493 983511863 143800907 763074510 214637058 161819760 912832561 796973443 432977652 843783590 773368678 658251190 210766323 464730199 17542643 955198423 40797278 504206274 485441632 998866772 659697499 774089530 643179608 346889030 956015713 400886971 721707164 120136910 573870433 731823882 67115757 212851946 800588660 786529150 400160430 44261572 161935377 530690880 885528361 264905237 352467193 147858093 662984671 238304192 318302506 420864919 210595487 358298795 282843733 469593403 647130724 324026054 940321428 250408829 60269189 899099230 692236480 528443306 714198313 131100086 703897618 826948015 230367795 179028481 892334300 998918705 163297471 227430367 818672057 107551563 387225348 72646138 296250344 275415214 410896995 963385904 695431142 43757390 994956974 897301843 985742077 535551298 564847291 637728347 874400313 284396430 748545555 255848890 737593812 927591400 763556552 917206455 644162564 426694076 46244248 366009136 845278769 231158355 383425144 131327502 4446743 476829724 13359518 611076951 436259255 894837292 522008514 763278547 689888675 136401886 102774564 154782238 908772863 988533059 12473209 614676258 338917125 384524866 873961670 676880369 508909835 836403420 512349759 215279325 455393391 949368132 285839993 978033628 507418924 112035503 771079790 313987741 700011855 733491808 641454858 88966179 196207337 968602907 105945488 826385723 89731539 243321927 131095812 95297524 8386486 661066937 546688577 474254797 391972985 646441044 472954446 72510076 582263387 16498022 469919255 408334831 791577526 844562336 69390416 453986137 171453705 55694819 542640111 344384004 894040738 34133317 791341605 753229641 95859245 724832889 916192195 285724043 447613735 4179168 110352047 168084514 160563023 279323536 592130001 899261827 173300929 34177445 209461354 129942064 939461207 801242753 584029074 795810651 777545834 79974418 672399184 824220676 306531982 687151611 163437058 216848177 163634917 805106729 600880371 881003858 544730005 36774369 696347071 117694839 339693087 46979978 527472097 275594517 148251960 680693112 44918264 788259930 428360192 251470593 459297754 239937098 310753993 228769724 493575671 902720834 570496953 831371422 649250780 321520583 670376119 595475811 361513697 412944177 777392757 404387734 450978998 125643334 518300707 228480833 475422171 522646805 915396135 568905267 912229628 298093363 374700031 429750003 906567109 472031313 307642027 459404290 56559523 436013487 508517384 336096921 279952629 187206957 392141332 174882886 33478932 542118812 633315086 985351231 568458677 725695618 766215137 764683592 566647598 646954964 474726630 827408266 611396034 366400575 854831776 997427112 12147788 532193161 715904481 111245801 78750927 460259652 448541356 666494142 276701850 171906972 240721074 315270188 409195179 39635986 71328807 78553875 375094710 415428953 262914247 684489995 648240098 749740467 6850002 800779617 33757452 687140361 212057415 893236725 464874078 165888063 138123801 650018710 362507627 63813668 949339609 139047296 75660202 340261836 561069558 501657111 79838670 968016702 682495088 682047968 835905499 845180743 276048024 588572774 20118631 611667384 525526287 818613516 400619128 265387059 667756979 469670930 650677229 604451255 185972175 291701614 127060539 180726457 392264609 952070313 23968962 968356974 409615348 15507123 475816494 110688762 735400242 395575616 868273266 6144785 843248533 730156081 339077077 732066228 442004020 235775719 475128523 657385338 753892788 584738245 226921041 490856341 308054863 155448050 643957256 501115563 698174912 681436306 884727377 866930566 277773352 28948882 990069101 328348437 604018901 239801837 489628102 288289197 314698534 732866649 930555285 162852379 456884244 519225576 467869570 244932164 16838188 561207550 928895832 510940432 927401223 481568816 124915911 964489613 164200619 327430923 750149857 421111694 64478919 959979963 352006744 898775579 311882633 443873017 949568904 408659549 389274836 324863008 330717140 68702837 953996049 407288973 84589886 356619162 849999306 104340170 63481688 324362698 901853571 492258930 840832142 861945519 930390462 595004904 970614430 953735355 681164021 255844472 178533671 846646095 104278760 708304875 884534542 204421657 204056268 517605016 693386249 533823280 407113521 139146530 215679817 422577179 8463440 644430738 601323368 977107997 312001945 829735145 260261804 407043399 550527868 166226824 746235597 646723207 749284901 430869516 978951434 112914497 541125645 764015426 125731498 621234187 386649373 194803580 39675994 705745046 566777760 260110589 91328870 633637756 865751413 477278950 495991569 518238881 492939116 308587974 640386899 319499586 167800873 302949236 904448764 297941288 981828650 542796654 654519115 228013172 911608468 923532594 118492204 207439402 676151405 430375611 406119405 722220127 940569621 578374355 548559560 946857926 157089636 868219173 449231829 516636081 222174664 226530373 3179296 294091427 12964583 486123096 985639179 670926935 978892594 387430359 869360155 679527671 636814066 161239972 759268343 502408990 717887760 639158611 998841 937081441 971968644 835146038 232017350 457080000 728912842 52096265 902347055 631574467 664958624 258885535 71422611 157093243 656998347 58372605 82754261 67359475 433962889 765338258 128482231 950852914 76370964 185708159 658396857 962168831 752111735 801249861 332455248 75496687 941544550 704344777 666538802 162368250 281520975 11129495 415631560 665940511 267634152 537945482 946847784 905849768 948104048 206953757 739639030 574985147 530347027 851890411 1650953 884987687 822097711 616902805 880259897 648925170 879504297 755910834 85971894 652055304 704405081 430681808 273924927 407765890 66209159 383742744 601389759 877869486 233712988 711241218 985213671 959570554 983661620 784907065 124435273 757207818 264056532 45059718 962103796 940174757 933079762 91104016 124721367 222610201 923738955 218666650 685178591 782882560 966892199 627646162 722437215 778603764 936091031 960995933 771748490 334962429 708062205 895031984 46686638 323232825 798469065 603888091 21796731 588441433 503970030 293475443 431405764 251834789 698125770 100941905 483709881 853798190 530285334 526518100 270712344 694013563 31443454 684828168 794146361 60784767 237804979 712517120 919832653 236949027 338357656 231221541 60376413 312584636 698432910 519380902 562332886 644921477 678409987 304763909 511391018 888408516 359892268 827179161 346238866 615856840 146333901 587120033 51203044 550584455 223245454 27034032 878738955 214953029 55773617 902634267 954824808 426042616 678891214 261057486 824523106 817819526 861892916 358195742 871855060 828770082 425886293 683698849 127671000 260677240 881559652 555383022 94983344 732157785 885778902 22584930 298135931 808858641 85191065 57850436 396871790 645586120 215168345 848103500 802115381 886736082 589297323 507158226 606207542 456954974 262361351 496479306 442961009 329514947 756780813 37941739 976423685 1913695 16288745 322647325 402251154 156834023 632878217 859045451 650255079 403408794 359777919 976027485 722482274 13944918 317918125 69777312 714743305 75181437 953701538 295402593 595606242 832962830 618120497 202879041 360245481 185740239 221144088 894555554 566781955 727754945 426425188 641533852 922623297 12120603 168374646 768092486 453018237 360302725 124089022 741505567 276697756 748104749 338934434 164539666 427147751 591663037 216811498 808317128 159053422 727788361 446816790 822075141 864114404 562095397 204132201 171214944 234563487 530675977 777676707 107175344 639304524 311428740 564301740 539815497 731571782 122119464 764817582 372851657 342140256 171070418 220596073 757210756 976907702 964509517 695311114 805168081 867700678 894260252 976332184 187392946 242732268 583478409 234076314 444173335 929590062 420822929 223153772 653629863 698252391 453144337 64495912 631592999 354191912 818393706 384297331 813365931 869674034 250489536 815185665 323166246 844587247 457474962 223206847 347695628 49109868 987633998 301840879 728240620 62354409 804215189 424160841 761132711 706092645 372439480 835064111 845726555 472190599 223902728 121294417 336946391 70550130 373444277 293341876 689056831 473205855 272271202 129480321 94209735 478630952 436969176 75463281 486813138 996882265 552275502 67321079 480611160 100869947 664861651 683720724 341592924 137009707 770795761 754032737 158300883 342459786 769724561 168212222 840291867 458074702 19325913 496807797 380636678 872659746 571427860 152711281 563280139 192612291 407419417 674235599 64196766 241855807 618904858 348079231 618753881 563696682 416052871 552152892 938804665 75299953 701933188 663007094 932226288 894976826 342103582 166321641 357288657 723260616 44140849 156768632 613412976 593622061 302475754 271104542 530327607 606969997 471531522 88063559 68913814 473104321 555887114 779447708 207926744 512260388 205674087 396487114 843995745 344009544 674385101 953310754 585159103 861688852 832410163 576422936 468733150 242208229 941148841 264751702 977604058 653951242 227672461 581240787 635772611 22627061 750603983 78566054 814182235 555581482 747835358 68935243 107845845 852262646 930127657 516174548 792139087 200113952 946466622 71807088 733329741 182832344 238625421 530608914 359937396 709837698 953471628 631111504 733502991 603990790 704186199 339982124 510635796 312648667 186894047 262407398 998090562 959178070 722560067 101772919 928748431 646308776 734122082 620297213 951972134 481997971 544467459 352019108 209219684 925217923 718958638 653872214 981675192 925399440 902648464 766445582 4857412 920975753 886634699 315809580 350376262 219188552 259341634 37920815 506135580 510196135 867068440 988970697 278743904 627699494 412420449 759360461 468086076 428776968 981136669 552375560 743791179 11610086 395845238 266261607 5979261 746602468 687395064 38359507 835784020 456920274 47297179 938820032 244955878 437207187 457651514 469965510 893292349 807683841 469040824 995343851 355317038 681249069 30259583 286922750 394235403 111908477 215587826 30920237 397706110 209084610 584559327 444959837 232853480 465309558 800200642 416151278 986700660 292270625 369788252 323128554 226643189 128694167 700539019 328013935 726516158 981417958 601906008 867555986 155085474 188857256 589708243 999203874 689372361 264655749 93816877 143327387 777712092 293844623 124158132 281168272 807694056 946243489 231723580 317274336 63852643 257302668 619877355 796331585 698146469 569604710 917722079 192571778 801146572 456414409 851866095 205103787 33597527 161489174 883870596 773198774 260807728 922332489 932239378 664959604 926054012 751841628 49984776 691323816 97908870 242173048 983585280 470147243 664712741 695909476 950691632 578905907 62693810 261394249 464830801 593481078 907903759 56603457 611622261 312604518 106884563 191241192 930427928 138889671 161969761 765514418 646159595 756629866 449755916 44104343 901263492 77194386 311744557 709118682 672115545 471815082 20901568 635187643 36990550 847202469 511697705 216009625 143045290 467461530 379025538 525973052 799775788 381768830 543978325 219656244 592699719 753457627 590470616 865261480 465865960 107063228 881715491 260912455 168855500 582931997 79148506 290199198 943523380 472405512 532490639 212833557 141866177 852332489 136261809 177989651 875951899 380360929 3992106 699782257 822490634 974301181 41829371 310511293 632621867 496510336 810852506 16610408 984955313 502968920 530482484 747157838 85657492 58368213 496197316 426548539 305125897 514240636 502372073 248892194 658771282 879354293 98747737 760601489 412396083 197419060 87662863 930942927 374663609 594128784 998207678 891806750 113876821 447606996 383719527 157663232 735504610 28609809 550925483 256797720 721749056 201237335 923840463 380245077 691367712 255657686 673735754 877456515 658855053 393184089 419111690 869853018 158889819 241493442 25468258 81427938 127412017 844166866 807943441 847027922 997991249 574551596 218925694 816397154 153377835 584472988 125220338 435190687 182061593 410996937 431239612 652382949 669857429 47865162 716520873 559716635 816805876 314504135 114307024 22664721 798251620 193739995 47300274 791689960 589328459 603194093 546315675 6439011 446244289 501042248 43902485 194056921 895246783 109910034 693517623 159013670 27122021 731105101 414495999 595805498 12975672 306820967 893633205 898123305 812011917 259524333 464212445 237394106 68853142 186959092 270957916 92779204 504424360 615882769 47607382 59941981 156927702 363990650 31235270 627244084 737877185 486744990 662523712 571958644 839698564 110355250 613421211 652066959 262627293 224864035 430421330 858075395 252037029 754204587 516114005 918154702 442642690 898494738 376474879 404583081 334199871 728353995 508011109 449704019 886143994 49698261 83709318 688853984 114827942 596446061 577928399 557878462 801661083 955371876 701694792 501238698 596782751 13948603 381126030 33448044 995433060 497204168 228799658 589653036 754698845 124224721 396967239 2160769 797629956 910730546 577514621 166736103 894561505 324643586 22766199 265701308 503597955 36609586 914615487 441116992 916127688 879265888 180774276 384683661 506258224 879152740 143077795 433587250 539705323 538968672 620826163 844359216 452895018 515972890 338459653 181260105 463087517 33454181 394344141 307323509 65406216 228777504 265094513 796231824 559373416 331522183 592273080 197635379 305089106 332269281 552059321 997030449 495709257 350581313 60867565 511485968 134001002 786840861 708411885 889807092 471616160 311100986 203192191 668919432 975833705 655515175 447508353 638521642 90367960 952060294 146702473 260486510 74556325 92814174 490335457 522728254 449008309 677445416 537285495 841762372 241352895 626386827 963674479 230804077 161145388 681580353 248414475 941310342 946336577 211552700 660545646 802421439 329329312 219787175 598002668 806885910 87313208 492236989 768352968 565094102 10810019 177195634 530900702 306487358 895332173 829535368 793247468 817042856 537280499 531355819 206035692 657953925 378556218 513150313 263247801 50241015 921279435 83643023 473071278 26554912 790083989 564528460 339252128 454414587 272903064 390428348 709079001 308373698 15428664 186554889 41164739 47286111 413773347 451597616 767118540 207031038 443274181 831331144 820916893 754119494 717209714 483120536 585761129 58432300 778611143 59980826 640430761 645729662 658377580 977623754 346267999 255676004 82167138 980141319 921732168 781347409 904482089 595957557 58594838 197628330 481857512 84474999 899211606 319429313 321667184 114077424 398309518 236567032 904789662 883363882 45288806 42188024 839526021 750041832 666286714 736203392 102689586 238906593 797228914 517101949 134540916 134847509 93988931 449958260 430949992 834852079 174750895 361223670 378194769 585912419 817090524 709225666 616307423 600678443 861418700 362605908 319674242 462347005 117959475 894915754 475042631 350805733 50677480 867536847 306532220 972922492 461227791 284778768 328996840 900096396 823970273 56248840 740634766 37475741 90415632 471041197 24556795 254750925 442751138 111998778 830118860 167336167 119158450 672849140 995409985 94011158 92564155 368010710 902335369 44025468 26148357 975953475 724066050 263279875 480208964 928628536 988868913 240208398 172912125 626534465 413164506 812451514 854647231 179681563 534905351 238457958 156308354 777763146 465517273 390006813 669481868 872276308 882936361 821032670 981218307 601588650 559567838 311728147 330218379 643611305 696250434 16566999 319841826 534685008 236404174 1562823 570324375 784011011 332855101 827288609 162459674 390742431 59582684 89617396 906413293 460413656 437434468 566301761 863209222 701273433 437845693 718086816 945016596 68311673 157952682 682313540 817072543 575889531 842301609 162259040 467574433 792774322 413843919 911981037 58011884 755904161 437361019 319892763 851159888 605351185 317638397 641850673 427769108 404833346 298878496 245070889 37411900 753492628 126418832 393394355 761004082 916443639 90942778 558457345 598194612 328458696 282734195 535461763 990214772 732682 469399859 648139781 858520745 913875813 748867962 341239169 277375500 315762083 229642385 485718646 754630328 336190864 70385267 284332660 10654099 578070599 456769617 687883596 768623035 153800750 665470812 41100491 876641588 891392533 269831385 665967039 295336300 152411356 118482152 416265686 328024415 359389194 803288232 463101011 612858238 367268092 26156631 19054330 456176688 50305136 168110590 50056163 537107006 834434781 701676220 949877588 982070503 134375856 939474230 367756928 424168922 394023924 933558507 572825451 128777209 983658152 800810596 894012346 372995785 318993 694693644 783490247 827805722 827594826 772482105 840172291 240984142 708403013 826374607 310871026 819665013 439109811 408931302 53999738 202260638 172405897 792804981 836478898 175960915 204729775 993478123 419413196 412806559 232967120 451425794 561275077 781113143 557798681 254619724 512342239 481537928 433755428 978093426 275438050 363946138 33926176 695489577 832799219 37154848 7168090 982587361 141414717 635508484 86297150 28246908 362326720 339810260 318303347 39091270 415175342 36881209 365680717 822574451 938825117 486174989 812636255 618276224 801433831 410169992 531302917 985651341 323318327 380421731 505229329 379166024 474286247 200111558 741404464 520710429 160033434 494622577 124124119 528998607 246081502 967018348 900685212 658504133 912723272 892290580 902195463 539862968 164767728 264464166 422154839 391889909 440565859 187799775 381346999 168675721 577999961 312427970 493605449 42686446 20145388 281765994 493546555 264789264 779738357 72138051 554183210 78577663 264861816 736151229 499337250 676304693 634881462 494005085 850523345 692963232 61325108 72527639 796539885 628059097 285935956 994999635 665291362 234766036 822511771 197012612 113797769 76413755 286840325 545090730 415138651 610507844 790152391 232462717 140060717 927430233 551459085 804975827 657867839 812949848 461567933 882838824 291094982 576315158 564443244 79172737 569376086 714522636 646389903 235695961 176214614 877486339 855301170 71138432 414089409 830170170 178327691 997262427 108589076 81516004 959983547 330225630 275870111 664916966 630111909 673967875 619464693 262641302 408812368 236414961 674056270 426516167 998004079 286414407 457278759 732129983 51027189 310268792 794570164 46034424 155793527 88566094 371501797 963362668 948977760 253741853 927371730 792839517 202036176 350870431 740222303 735894030 280146667 598305815 619258177 702893628 49375987 405126665 766838120 37508319 748720100 476116291 854696188 422190830 862796517 682808269 917842068 152337317 387471381 281673861 648428673 138147311 394120528 298413753 795545380 799529671 822393041 967595173 197617780 648570604 394170590 278859025 572555831 619452392 875182848 904897239 524481963 652103327 220652992 432957338 10777985 999113043 537721433 317263041 707968530 346010712 896184383 894773055 704346235 604705713 231657540 294891846 396903269 180485438 744265105 835264514 669061367 408159089 305195940 878341853 832983919 555665169 657213430 702040324 596288246 39564556 94279659 686748441 603888024 381477768 118199507 446757121 410798220 84952683 289650617 940562438 160202497 510262268 377646035 791887188 44403540 857321069 377321273 784470792 873203157 500568804 983488760 757977983 898248683 281628669 377137322 145010226 540723784 177761559 627692705 86242132 878030193 87607187 791865731 962482162 97254225 743940579 563413464 681258768 167266211 426516984 694532883 712815176 120945493 431516742 818629408 558390150 505960249 221161025 33937520 168945965 931157157 461296320 605391408 715714362 160856509 710595420 182496901 572084997 239088657 497320223 526715727 224571233 725771927 345995798 656488544 614816933 794174846 526783215 198338524 146722203 201787117 561607002 148701667 639211553 54582448 361260670 791629745 831414756 48894776 5377348 187217916 403941478 575129468 248478453 185293667 82245642 671889361 485963537 134387523 937510580 691677593 896113676 632102577 844905220 993098854 41812033 56334184 246943158 916725725 83894366 302808984 720376273 120335266 358773925 44850213 664659015 614787719 754796714 190242024 103337523 935798737 662881813 434535988 909839205 396335706 513678003 543343346 645331139 409197798 817522337 936767057 876364218 848179099 360857844 716233925 137774461 332455648 303033923 738211390 505056160 33109432 952534335 355708287 577301894 42697276 614908266 218931642 205434231 526023109 624844076 418536638 164204793 961348548 374980116 695348674 847917527 562705952 813751412 598698168 286683989 565992113 652119179 703587776 705405979 939411682 553046720 600883092 898658908 70825525 881515097 715611035 799117125 111584789 469969042 830474557 842946026 884438080 32646904 868007542 232985522 236239741 195403804 363624186 268794945 204746470 540090794 90520841 827222247 313245310 566730167 270665263 911343663 933929490 820648007 742967170 187930426 956516636 420251822 738705367 265087081 850431306 665735523 77451518 71105554 35425891 969307563 396413869 303748296 554173103 580555520 180549674 987852638 162001767 946383701 18867123 239687102 65214044 683317134 325472950 531237029 183391802 508626016 935894518 981182974 982507811 725065667 842428360 503384152 210156842 952454579 535321804 321576416 294647511 189672205 36349439 104781469 523073728 889019592 58430588 921677484 567066708 172812388 916691172 507485730 242249003 141489772 305086862 71934122 123466507 186436138 984832357 498081273 786535121 576056681 940568817 996438996 533513392 159472610 301619036 137515897 752258578 959628278 782039650 545031872 809081764 27245774 509809877 362525297 865735152 520558218 730967609 332689157 899030858 374834886 564314949 991807194 148726907 808570698 928265660 363267675 984854714 452555083 925149989 101478402 632535667 670154122 408725518 771929886 373707220 188759975 985787716 754168484 183238382 685717829 117874938 767372073 391390504 769386116 977723968 199301552 377960347 460644177 807269365 345571195 329278445 49271938 927192137 509988615 723405008 171782949 848329621 101038679 347340001 558013519 96690537 947598069 141704402 126657805 939409627 480586764 802967610 688406498 57093756 307754146 249760833 973403882 814705540 800525118 94816863 697983568 620838509 12701586 126534502 792752182 609597843 383001275 618751835 46460425 305796193 787210108 574398726 965321265 914784105 318614464 349947994 876801703 73550918 826968541 740065740 269677952 831226800 321301910 64826886 523586125 906815843 342034511 952767030 872825962 144499271 419210610 564644037 266977792 570429143 134087830 362390236 133927 870216756 542770945 626810524 170868628 486383117 48715601 788717433 641792509 54808342 673163309 15324897 938254699 896680795 34718122 326161612 451414712 667615568 705518517 725664685 208987243 860886659 608981088 791502102 59341418 724825063 365294061 540232688 27917172 283911636 7642605 906983143 804416826 543584850 350098159 336427177 480810699 99503002 883930140 791874980 221766362 225709281 851238095 256719194 489490840 300239868 383924650 891022640 145081772 125384692 740899806 666210103 19813554 17445639 540363003 533306931 788471326 682810683 261763933 215036210 925140697 543233332 327073012 510564154 20800043 943730671 680828019 352767492 331312372 176337811 736973383 627329868 392904585 657895470 773499685 205381792 785955704 58932263 800244108 735722850 864552464 643506554 786274759 675462171 768583490 205396068 462340020 571435207 502312944 962969417 7382822 974558307 684933460 466832535 394965612 503645813 425334182 279678161 909091009 988230262 81657401 448549245 672070241 859228443 111019450 355455722 95248857 94127762 207114132 527223767 184238891 244732164 339793038 512960974 853508063 155164397 340022267 307521124 839543852 871163662 311943552 661352651 851597168 62370444 854318309 810145697 323451636 459199827 991997105 944323454 707888471 924020805 925311071 471230016 357386928 969475856 239280278 315296613 728532817 634235779 666269758 333559766 968771001 861211547 223225110 677541951 509269384 834630434 916963400 448143771 969338729 898503176 502979777 783122469 762426458 128143374 381532028 67663187 272333116 138634671 561007630 260782312 662030633 428155831 393775850 192622821 268664225 6312526 82712143 702277255 946539195 971150974 954155088 572435623 357291656 673506695 343516509 543757600 72559144 693300648 221957102 887273039 580408337 163416651 920517921 725585529 231916369 656331170 743331158 619842568 952638717 573043606 98736414 136653351 324425680 703829948 845077603 831624239 756098034 175977482 986839634 94706089 722201653 930322514 265077748 515586747 220972985 91436676 324874194 135089769 960705230 678205804 528216251 89701915 786946615 790419659 138887347 543446488 84790036 173679562 240277440 419611113 913975475 770483700 983834251 111153348 42212611 554053014 589444219 236677769 429241818 727474549 47031792 384183814 121724260 128245418 652302258 897527654 719066129 774767563 611465087 407198474 962294971 259966966 616394966 48880323 967765009 689671710 721067737 520143682 848079002 591955931 752613538 982692819 196212626 556702710 807257391 936955421 957892257 850624429 705452430 582604743 321830022 792750909 79299926 937387441 21342084 774342499 400403963 185601642 129241536 434287697 807970328 239056139 837166669 460281284 534684012 951657516 909181848 931226321 52900326 160843765 172734488 341205779 697391194 41642014 97904495 259526754 572688309 280776020 177415499 57029999 222022461 383111501 569009145 482517448 123413892 107066404 428914538 181107557 99565255 372058475 710086676 907586533 288487854 929518632 51981356 658306874 530438483 659270230 883939883 757008889 191865435 734772537 63737220 784839101 940428305 209030602 348491155 120278934 764692441 381116161 558206579 417063729 585608342 721019031 801115802 135763099 789402911 118249775 282311920 875181870 217377709 170656467 348292396 810770208 838404486 39840129 702526152 84757053 373589251 235638215 129315107 799993134 117824545 188167196 319866143 674388939 667136884 120947098 822301780 476569550 496075268 286216152 243101494 321721298 461904392 699488871 137743226 502719154 612225323 808751209 309136544 223703973 906787513 334738000 214191176 812779144 247886990 674374197 921301326 436535759 483591516 652379627 276770779 901526456 32827097 847234469 669867570 833698453 474887590 86032826 402682522 144012661 524497805 870028972 705186707 995377095 35382098 133492436 276525045 743116099 834335849 646634525 858372308 397041961 646291565 138948590 945737521 327673313 766198710 625801214 925623490 732100217 549221481 858199093 393603088 156804327 894376742 693615834 994572609 758068589 841130979 289693150 539158827 649057405 692412475 465126141 959691131 321485230 47334967 622643771 616769762 761480968 580164598 158423340 470319316 491854438 393509037 886933449 884882653 800509151 474640963 597328662 370611352 648672924 465611823 773330387 133603702 787184817 68429495 949253006 687799962 421749604 614727626 203345180 941970879 262177074 964744849 567388262 12990745 589658306 316570522 829646990 674215373 250822376 200746559 736607311 132055344 770959105 959707528 65654135 929299031 769515762 84323309 215438337 122762610 675380356 153297335 602008014 785579270 930943703 176357923 917655968 829199462 679162305 841880506 375194641 617513573 800810812 315160185 388033998 665401640 429323535 40555496 6065511 839072346 200571824 474240480 263927883 809013720 491802738 434856469 142904695 633383648 281931526 294231966 529710129 7984327 822087820 596493245 372830959 45024008 663679820 371449089 826300272 571909014 349404763 31758501 554472644 310906235 933245132 915201994 900373668 915962991 770365210 507635492 155754273 931301846 944950319 668299842 742172176 509205752 806272244 304555188 824687660 377097150 869087099 778336122 531743841 862002057 252417590 584615098 458871724 334512890 251287621 790793669 855931473 27266705 230450387 453752430 29326143 559958711 901884732 297101455 544597607 132263834 294051633 724760467 169893304 883833586 234281539 59972302 851900690 991673976 884303392 355868726 181220769 76228897 114212643 287994909 479171411 752988957 854866833 328960061 398535052 500867464 423483635 61592377 983937348 966586264 686755269 396303842 27647188 389372071 754657516 547400076 589416911 342675186 507615176 546712433 2571814 990270376 377535347 988007730 394209863 884895363 536376687 424364646 462602952 779021123 979049577 812461509 250363947 821267801 170924513 283576061 488767381 15645484 589140688 263719766 521614656 883314336 781843357 124706862 465406974 498700726 160007812 375360317 566282282 544954958 987111774 260701649 914367080 915873386 931176897 638015274 765311410 322863728 383893035 459580335 124518601 145141076 968146310 871384831 986517968 357629379 672505489 416397032 901010512 788597146 773122693 855519450 709305873 53402901 209290704 632720304 734774191 82605344 290707516 748932699 513112296 47104399 675836342 506781409 680203945 713530090 477081618 552583814 847454821 913396539 32006456 798699619 724202032 389152978 305535967 307103163 133593656 39230454 633733011 465793727 3419074 585202956 903265257 605900755 224023343 87493277 847414394 479596665 26466872 476527400 359765797 583596465 683583939 602606342 628533013 847854819 891376617 169407081 609180020 362815117 372792877 606166182 243669054 220448689 254573848 635216697 396673658 25211935 737779644 92755362 822001599 954297913 457872704 419801666 158199809 986733728 705015876 137092549 213532276 466048197 195095701 218850044 5694599 130025313 980717417 481599081 86688416 743747668 169765473 881071630 673264197 955562791 605044342 307513540 862209638 666997305 91907459 381988801 106293981 214932162 973717757 177831504 140077145 494536636 219623906 915169437 596382027 284418058 109034186 770633618 981579172 495756703 709136914 121471968 947062531 835375649 613070486 922727441 733236221 924039481 81368012 315768383 224579017 28254440 903031597 494542 73370523 895432266 938586781 45949967 327422259 144726241 71393547 10656974 510485208 618554698 771307445 718359394 34828637 738179313 2922095 518072864 576233979 582092799 440968303 229443843 734298669 223088810 864275970 166585060 505664344 14322402 577733160 962939319 775471306 770210761 45412125 860963011 805531457 179648236 237596927 528711302 546526348 767362804 650110206 312213734 67580313 670149222 792081223 292586986 481224970 712842055 126118442 341698074 895072672 273748079 384987683 196941872 356167855 762073333 209450305 20176987 710913955 768906879 850144948 212615984 47578805 483258711 439018443 102946685 746802495 679386723 941127586 212041719 841313234 144888492 651404831 578212717 862631621 404898864 821116326 158547507 743465519 745283421 890169280 535995319 337350089 582367526 117164749 583731574 831995974 399370763 14131065 107135522 19946286 300784490 581230132 918165545 63419001 897241217 501542769 831416797 616004765 333904946 323520010 850695002 69521563 64449909 856298060 332536364 698497140 542852549 312836525 862756343 22873867 131678478 824978527 109040112 238460337 869945414 261205207 874708744 380681070 66327182 42703950 218278020 637965149 651490458 500892133 356449179 827252408 102369476 459199112 462823693 879449298 168386501 819686031 789729676 138177376 611284729 498301097 18515551 324358860 426954933 957703670 26783389 675434807 989949491 209346143 10163671 660979168 341762610 205064792 98433118 134964902 186249627 760539830 965571411 270948178 309385594 626724905 29233975 424148652 230298322 176181428 910776948 931955702 609080005 378641493 497198368 676375810 321786994 78674890 477651995 884135253 357046373 166622073 881179425 205834044 897830198 654446283 390800671 948606669 198391683 658410011 780159988 142003820 763444679 436082346 964327083 459787605 22734438 705169359 842949706 377125997 891281823 214356704 862034162 613654987 264601844 424951118 436103998 623275318 464167463 100000704 259153630 584100471 367817467 895365069 461689060 389276249 546652945 495812104 191885152 801653191 455283767 162508481 21462697 901204775 381065297 888172876 927076158 794208154 810706509 26298839 528273862 384455191 636212180 987113832 701258791 103722461 196527563 298279280 262119694 684001404 744210435 414816308 637842094 116982462 869109992 874499611 861539507 340294189 329398077 407378076 487347621 971240719 626352135 31181190 621648852 785017438 280405109 688875184 405171247 528352313 977355708 978122835 713307022 661988829 90731932 759267441 78369003 550840514 269063632 734253499 989212160 654211411 729692542 469736190 860107296 852862551 529341525 342114280 888310817 625605557 347359310 155533871 742071342 895936821 577309722 875206623 771317517 749185703 650000856 488483584 838980152 281693555 415654104 162273149 495114532 137785807 945427216 812068475 246890079 549383370 859251363 154004589 947719882 981741067 433562182 280256261 344970050 595278213 42520698 308495381 544627543 458182983 897321836 974195196 150607271 287372226 556128559 592076181 889276118 835428453 789773721 151054139 709776337 628338438 926038106 727974492 103009887 262725547 825708163 33421405 438517344 744133921 859073110 11878476 695006605 192416377 765363466 160439691 167088056 433765034 337848509 771284445 474044316 994267363 45619868 927717879 695241809 352534493 882632797 891871130 304135876 90909161 871239516 456876273 98168125 667076309 967874267 932768592 310158309 756393173 982995490 605643497 36182461 382485632 23864492 987554217 624953129 403377715 965404635 767461997 668220568 443878912 637615697 972288825 351161498 750075459 396237026 803459125 52476995 577156138 56117282 431051096 787172397 759611547 362465603 231205693 151113825 747322400 604620849 508508587 252958566 840716338 646246783 753391661 311311956 135788243 863154085 677139555 946304645 451848042 671093135 281628885 560238823 555674579 484165525 111109207 732544980 341347540 338583577 95386813 293802401 144333363 633578413 561834700 238448511 998933929 54481140 232806407 131017851 557134322 421693393 906192571 496178274 885859836 846479970 5085641 614160431 405744647 762034297 821442184 946796135 418582572 841238777 539806919 658924881 748777576 151271785 955945675 472573635 707886516 561677420 308320177 7567348 405860302 960919700 139015168 692724483 712774088 116535936 602112735 874996416 11891773 995959020 11988029 619008345 850903352 881245489 434129438 320325522 354402029 723189131 902807879 126185777 588092405 861312062 772455299 506509789 445922756 553707027 67419681 786972180 151664317 416553797 305829735 809364806 438286364 865315781 365974564 41403565 964761320 843170027 224814150 531428585 291189085 658412845 201722687 176879474 610073934 293713373 642555270 36125675 884491898 419876822 190740376 49613905 20489467 82603180 727795254 615824611 522514831 148447696 810709729 219454235 651917836 638480354 562149064 42519282 768168837 978008345 643091761 886393045 454678435 795146329 448894322 452185017 101914369 843195200 258381826 518742825 874419384 116273674 856233900 731267317 89197108 404983277 810639869 659608518 229695285 591900472 310368703 230516947 90286065 935413432 92820445 338245591 172047692 825555432 328496504 153882215 749684912 834496024 592598475 399638733 39340026 463240998 451042217 319406193 976040207 505757193 444613863 326585484 700560384 68610375 254760454 738006840 657120696 380321339 297127936 112181662 976766602 726266105 915181759 909146066 541041985 60243090 591972961 226405505 322029387 346116212 125665519 370053745 75233327 264962686 311968989 140418973 555336057 837862065 121207591 45857555 356943150 988135497 191734963 73694454 488393825 294399709 861803535 343151963 882165258 533577006 837375176 127909799 575955309 940003690 993435632 159363687 9456240 180808735 233477301 281306558 614950059 664903396 132781104 388354978 549929243 988851476 352674255 447221294 255114841 855063970 553741661 29483437 642528806 664636261 143483541 731173617 998143187 359176822 618766448 742407431 261510223 84415422 552322863 40856051 277645734 388615798 845529984 162604636 913310552 320637932 955842273 562192481 600672652 356508828 20306783 633565551 644462502 602791739 368185597 297883672 713131034 279993688 280752477 231400204 345766938 62581451 400520243 376150765 47981676 27788499 369470295 646018272 950712876 218559617 312224228 329352668 767001398 767048970 701711357 797889416 757867322 761361218 481293411 95853535 518738928 623747082 439349322 345400229 530183733 413835004 692554229 161453594 347381094 585657204 215484236 672076351 66479756 900242106 470227368 387560412 400743622 244978497 265400675 842384150 555312582 14425140 943163961 533009350 746958965 583381304 163418985 993785873 416045198 842029055 764681427 567230486 861588858 745478668 911549239 569993345 165851675 264018422 719140646 956894529 857459729 778542783 997132073 871571883 628947832 396088402 197801324 381014706 719575607 217825496 960679105 846831220 952694640 556730107 896406593 567704132 48847991 864947539 436418721 248872785 367644222 225044800 860066113 365112881 957474263 668113200 42263767 808754916 201224980 815904579 11910725 25171192 375054902 126417108 363465801 4095009 456480433 975207691 353606665 682207797 816263463 565110505 630807840 506346033 810040246 829761803 395141255 87859227 735902788 176612052 32150153 386522423 448885665 880369049 210889200 170351383 640682732 348155973 425404466 466906953 958761577 884362603 995597103 210951716 863562974 876300781 490179792 10591367 118851760 946685963 443057989 669455299 649253902 164612760 784112671 113642638 551818086 101895347 541383267 519857478 831674133 642956295 733780279 238188312 581280489 196581986 965897007 274594841 975724910 852581631 596878416 559896683 26462432 660692787 732393251 91797780 954432189 614612997 959752902 226160799 255082819 438229869 902523496 613752012 806646617 958733013 341723830 133908926 820400088 280118188 120160375 813491172 783024773 542806763 579527050 244746380 875120802 834974873 615591389 443581768 841206508 224521491 415610092 25981554 351900651 204692651 575231208 523934796 173408425 380998919 162645801 181829439 715104568 234491939 373397797 850304325 213053264 986786619 766128397 251895342 427504239 52415684 503815910 749563222 221920038 826957727 469054707 486432837 733803340 554644635 179584685 69879412 160185039 113092784 350016062 808020767 386349934 951983581 916114450 79912072 48923809 23961180 385877695 707770381 758135399 173766150 276658543 88933125 297972613 590804973 169431724 83592884 288820621 869091592 780508160 921364494 848568199 503835043 966361916 6600836 543983203 484775183 985324261 96159055 925731765 969728786 839550775 237987696 221761967 570111075 627258993 611858268 123158030 515731988 499247070 252644309 476182863 677613821 408056390 224081062 744636610 818127929 341467122 314446949 813910893 600257442 667964916 732241445 522465671 999309775 871288255 760200872 460149999 303739765 315626581 209693030 216976097 885453742 813242233 796564622 193999930 74278864 729404325 116565383 228026996 972753287 586357697 801084604 832010961 255117525 537556835 551301435 878024004 688649387 860842364 53013109 419151666 675745872 453989354 463582713 562144900 12356115 323109378 212142512 186264163 866157254 764541404 147835019 176206095 463407335 577183858 817601582 713941419 564756663 360025362 474897410 340606799 323782817 914211799 55045517 384665838 399298908 913757937 83969017 272857265 331386277 786201947 393407408 178454158 718245864 330247899 22953557 138665595 427250702 599779703 629182148 558454389 423405481 383647329 986773196 964037882 572466237 522294654 854266333 209190925 100236595 432658977 418020606 328876693 813979147 556904731 532017091 372360257 24979636 736298587 541888599 979616581 324553794 921161626 924019038 772589551 328656243 192367512 860647086 452496029 493559972 347051875 808920167 73187803 849013499 761471293 436093771 256749444 825425722 403673369 309807083 506396276 323765291 117450330 871559229 997973644 276508862 299131044 662520570 849037624 795906076 540654851 582095651 278525728 622242008 999840394 506047045 170941297 424315502 24170828 374496866 436550803 441428669 212535402 400231083 318088238 500440638 625223912 948533696 858938661 63418144 367659686 22614241 675419507 856249697 321992896 169499784 631612260 942813916 54759345 179421237 251801153 724956117 207016901 564972686 154468380 164862512 418944931 301209385 362227958 814276447 72647986 364104146 844891277 890659249 840279422 247677978 989477450 758334665 101222540 71597912 217926741 80568283 871394071 760654946 987556418 246070398 299697324 614793892 159203182 306240487 826481636 221401412 368423168 498940619 980767493 302903184 134323098 630661207 437936377 67705105 776299934 221595116 548605948 803122517 209591799 879930525 272114466 280599325 798947936 959205048 593211428 798880825 373071082 32375295 120352108 632317256 978811323 846095360 408638702 419087701 159339345 872651613 291018493 740758994 893838815 5080000 277870942 916441439 545196203 355937163 688109403 410443844 568028333 558415665 437611735 25901022 691258744 244450318 551550884 428322484 276519206 381189959 557160515 895809908 814760886 558123340 747241520 707160050 954960465 440686280 590160309 332604177 457151468 668536878 11383763 113950470 997696526 305615305 161202437 627880515 88080988 418017034 875656326 72686738 87361511 965763984 42706254 479045838 40990453 841660378 278352620 200565227 565253097 282207631 433648533 196574271 779533264 859596704 845118950 915219645 513688231 551828698 684744187 948116401 535147082 312240326 67821358 561882166 625983948 598722597 833921836 385672802 872951539 733820416 626225589 966074085 643847695 641960941 330610217 849132430 625608416 446303527 350689690 509897174 812377445 250883511 237995419 461759590 768422521 177915242 524951378 309444939 78885912 523969964 387922442 581881799 778188196 769176985 203852880 971499534 312445687 331749156 955823969 965211870 461193298 460772231 74319272 475920220 87837343 122529606 349611654 546204137 507896413 765280370 294494720 482059271 55226039 260121533 713511278 577220369 390222316 552694328 546825250 272361704 109867085 864398521 958483321 306264871 546024818 780052659 133364479 34667357 765468225 380302604 980272609 902125068 867382624 194287408 622292632 983518000 730718988 299485830 42364861 401781167 978998989 26218926 106733544 859172037 873288607 587178009 270437247 288628982 563840375 466614983 604742179 941475925 963491659 107622422 687712748 310964422 878390211 395257055 625701442 342094451 29273464 507707894 989625410 812665334 20218169 769925998 490027562 529033358 153038778 796716830 440282302 243435189 867876416 32074147 40310367 124362683 692541505 883123034 214948366 430767169 187551762 220550493 743419772 255683971 925220056 143285993 268856401 194574017 260357728 198951012 21118070 209081833 129343990 993363503 233526151 61623024 291277152 433493640 644766646 306010803 408819963 674740956 13020813 766455471 880532955 818691924 883706467 209761111 562626253 869177056 997987165 488390731 832659477 114094419 547857023 296334558 911970250 860600623 976542601 379824939 414734586 305144301 523516563 142982276 334022172 697668996 74653001 716189417 796783206 890137687 228817176 637283845 484082982 904897086 81161731 249204546 987548107 169600314 934451495 151574749 146777210 29842243 455377934 273432298 187126349 133284895 340348850 221077925 190159947 753595254 348262083 78833014 482894192 299512602 716358533 878972044 762744041 605626192 453453107 993496148 687255679 633103199 516548388 985993465 143294972 59825486 646309596 955840014 851640806 965451406 764607664 183619821 835416057 3444267 174331 734275803 749430407 528581088 309729166 698528019 499260600 912664205 910374356 254616839 610757326 15752711 300282392 876779039 282655338 237952407 861895034 854188183 716631080 697486705 452006516 533365866 104043386 310895702 512712425 421768139 930853286 112131573 864361272 905431222 615982934 777908541 508146090 350451606 910922466 534181970 328684618 807222650 437727962 917422982 498980348 267296224 907238188 85022138 493707253 357695308 163154086 530134542 237429683 685537256 698965484 358011984 133606459 115609871 55141784 187811770 245891082 887462125 786462166 1800656 232025847 399151381 357972575 197376795 38790808 560844990 828571127 307522871 98832516 408696700 197413545 92851816 994015185 678279564 251068861 52996730 884201489 538883330 809018406 462917430 974557860 941951597 613459817 391147642 734739464 300385672 395375766 975862374 839371558 247130333 682751499 472077694 798715245 924708514 913042242 35518449 682618533 763965585 595736511 882209926 270779384 997121576 170371518 811880521 109645894 134831099 942864257 777089697 878397300 520293945 330744736 693117909 668592953 248293939 433209209 798515716 524062904 100202515 270641593 163967461 71590909 113513013 745745366 783766670 266442143 301377412 53282229 506092718 890771268 420227549 388269855 154560952 3255900 265878555 496311552 134142568 956305462 643698004 720012284 810672426 91173923 196676855 351129973 381824193 134158708 457334417 304750833 716748997 464577094 239804285 203791043 369613148 456449312 321715857 620971667 31239016 649290200 192304195 929232311 70213324 878034908 418810573 317185059 704948082 985576416 974415940 399782899 910395727 867541013 304195943 379995831 937461239 211597595 731314174 126336844 213937098 540134666 210446193 16404057 383874231 967790350 866033041 432633892 668518265 457648286 173156816 563332604 325441603 319982360 494798307 369509844 484105207 326150867 494952863 96777093 315869684 390758048 861302586 926484826 697906603 652927174 623629817 791743239 87781359 440570439 691395913 537065335 437858660 156240889 173149682 431941872 828201 899468912 231754849 272003311 832762717 581399262 580632425 707389061 966809858 576928326 291826134 4875889 467286313 659971599 498591792 891555193 669486369 126530380 700423535 402738526 318348086 978333089 170006596 412931952 814716644 279114822 325963177 49806738 917741546 793229094 988495094 521367611 643375837 865699635 2411637 3340722 76211356 860257681 957256039 803162436 144904377 553898751 863519709 488051801 794847561 63144662 509616932 382184207 371785978 743260983 871991475 241627372 620030468 291632194 654613005 346776520 192919643 535740156 571668865 28848552 411949669 172652066 664068678 711734058 233219656 801851579 206597862 337575492 304484577 745809359 31764404 435346525 312113669 990200408 220497026 378716255 112951256 225051919 460787243 697986651 548375053 236836614 873104295 324933121 582540905 200832455 137894440 821551282 31819723 264787122 209492936 138458095 422064840 696809105 753074925 13490454 638381981 463477017 828527491 93493389 196845585 778481735 243216321 256037605 756886317 97147374 93013858 914328751 88216203 271998540 555629773 644627641 331223693 766640593 648526349 556942958 920681934 988925100 528577922 136674722 202714358 73978891 36491568 400001459 954839494 293075135 739892532 91426226 567042341 401286929 444173576 280202580 77265337 701962971 227452644 352966441 314161671 527457595 723853960 631985522 106192776 156247165 819982466 613936183 939614283 403792833 854091807 639809037 792508655 353372168 571178695 729677115 936891467 666603355 766824389 146795597 568307364 973552232 458242129 957635832 205948875 627601322 162150350 949416558 322355444 360700264 755090648 826617768 167275900 992543254 824625621 440067473 482327463 595967138 653927598 312140573 698385232 97676373 42663670 793227141 369910512 333421558 353226051 786812736 681902047 238715635 926690012 519626665 421260806 588475015 918937312 934699166 750005365 928759429 554122420 783682226 945707673 391160564 338715144 196212972 155482255 287614445 5419105 383418268 380357361 434828140 688658554 545271048 456149654 146084203 347013600 138670690 191325814 375774634 614646830 919488683 204579158 392767801 188793849 507540052 330717378 937998258 230629575 816168734 981533137 433839581 570557241 20178935 412302174 949342024 760824032 976338749 98445657 675534452 44467964 13759714 86027175 83059708 740711677 621535961 734285114 957985945 584303400 346997643 187120199 705757917 647288641 320167036 256221764 857045169 795622196 696142699 765935901 514510622 870068987 496977451 862074004 998402034 719769161 722282510 972508588 873271634 182522429 859130473 541098147 783485574 122579647 436104535 2090960 409309452 744435136 710196441 577541501 135545765 806280683 359355052 909979118 544662524 250485487 437361940 813030843 153316466 276347325 743516813 700629867 660779913 963246484 29710198 24648995 385518968 82975983 977509827 266357856 186294998 914449336 774147634 302037599 111801788 710802159 750215143 944234441 284537108 787437809 698708651 986534214 700722364 387035303 643195485 76195827 233348303 260090603 953513456 573902363 521938369 135049937 608919900 209470167 697928916 977402235 681420334 813991876 712829411 110957996 275108040 452677393 461408164 804369964 27644728 716936727 211318105 667042638 173951738 763303127 700185866 747230797 727923359 282817094 343704812 27695825 325177705 798115514 364355364 241552739 222829162 879799744 230984114 74080899 475891115 156369230 201893449 25011760 681130809 686083054 112228234 552096979 920996469 641615281 349403729 310792091 3716916 263736335 385231801 535228049 761872705 501200394 929720163 450950017 44075339 267335363 81068674 313581590 716913972 40713303 310704833 543387323 207522390 20255886 452596044 845452463 593600910 998106931 87439730 826618524 841615004 553376796 117468457 256173013 155974241 848484666 460744493 489734092 65262672 142247264 295960614 764139666 671004261 110748149 438778819 240517502 840373433 738702914 467148718 471954850 754446372 158858303 273139005 395965015 875623891 470419556 417111156 152412135 850398371 679147481 138686087 384835530 792474766 146899351 362749785 197713684 815152732 874488796 23661553 618645760 112882854 557362336 542542831 884360550 83252662 429360933 422778764 694929501 854020997 421546229 354149098 175866940 520217383 651714603 757068340 515727042 200684443 423256902 259200721 30160056 611249127 837433050 996690607 672027124 868013939 688585773 701013934 228512286 25004230 180667783 345997111 520286512 442379380 168473324 547068072 667398864 809492638 594140193 167833613 240675158 186975372 730838168 690546086 298682416 821768126 656619070 912906210 965481217 626157043 606138479 78460341 415972709 331061412 736990372 909200542 547614739 329692363 297355091 169300601 5089474 316303647 486268871 439988292 219090103 561609901 185912873 434657557 791872899 793651165 847590383 56702199 561846475 804701156 730274727 426135145 419755964 202796821 503020153 257524198 26744564 492937935 583462958 104208712 527224837 979495421 629952751 418890891 995284053 795599312 377016761 675657453 899057758 879854801 404407094 565258611 999988152 959764058 772648892 744837134 61057925 662853476 886328661 624623094 249652555 503373211 343134621 868040652 628052141 825111722 176774898 170088323 391679515 600896875 986549926 668095923 858906316 739566464 836093171 457917185 118804478 822669906 493311168 367960462 729093081 427218915 963674249 35575862 824651176 932414803 486529798 543388926 489520808 492648470 722216723 698707362 33361367 872365694 818151916 759958927 592958172 756662729 493191244 353612873 394395830 857203593 866225335 990715987 885133789 830700482 866655229 469804930 629294812 153630035 750937424 963379212 542215024 215587040 946138083 70950425 255552497 622667599 928126745 237185612 903403537 724558052 831988788 963134735 636324291 731342721 137498990 512848340 430298156 444377222 100708728 440228110 950420750 896826594 287432688 873188953 421518536 1809888 363277541 712787733 668118108 956137956 105555650 964126512 547398809 322233066 278675106 67624123 509432011 17378917 696315900 692788552 796210409 156006116 567761153 992009653 680749312 693094634 391721656 138777738 520062820 603132017 186969591 759076451 3153033 873198063 673935496 339061106 728701385 627320570 224236837 452506861 94349888 818039067 409211234 885859044 451837248 76411148 768233642 226027842 142745231 720580285 878490233 866854805 235428586 623346365 354330541 799367236 989001463 935024512 572149010 616408353 382680924 516520742 402064470 78912904 859452802 868352139 734606724 72852743 859524014 741812204 108515678 639319882 161705092 782190807 794695351 427419440 479865882 100730597 452674623 316107404 267148964 51296314 270242806 769819747 4056134 462594409 813634035 391729733 278731343 768515657 573582573 107040340 2998187 959697827 753645243 911272665 553309287 814427377 726725685 986968424 667829264 531927987 415161701 827505991 140195361 720285009 129066799 23070692 568246206 25842511 973788649 318470372 258253475 408681811 570506094 311431960 472882765 109771485 479928637 609973223 397516561 766677986 494706406 602816945 864747927 429170277 549943148 645546255 973319990 273111913 70808183 981183974 734386211 823880538 970169456 518409312 940716325 780622739 392557217 364353506 585066077 676847462 256590916 362804661 229681468 624723337 368703121 833947510 585426774 747660945 398797819 553651719 51208693 238194279 230863403 6830119 193314999 893233440 52281941 576422017 498866842 562759345 285849817 422960098 548830735 76390549 437493641 105400878 109883487 654379820 565413340 885278212 399530153 446357675 317827951 265916509 225468574 116376296 302409807 458097051 454735545 325064084 252393917 37617030 655342718 488834678 463334699 246282294 794768826 818604879 199993268 384475693 640655444 589220913 847558763 779806561 314406040 578826692 307041954 277943331 202196599 320033230 994275839 776571528 152526691 893242321 746743440 21564141 507238317 490440332 112346740 199214715 711105565 646496493 326379947 424076684 492743008 183909272 817091327 237840962 568427686 931758308 377331390 869276131 855572215 345155512 322302649 106127058 283687103 529012549 623861729 656895124 921312281 384924609 693624277 915923106 249340453 356661736 653746643 73354849 29705210 905248691 776853402 998093957 401266786 492733995 346593369 196813946 381747455 747253373 192241804 535164247 323200186 266389349 712598071 267195779 715792795 480754597 442946390 810726453 990358280 861424713 454477060 433818262 130550150 960347444 883314284 972484034 698051654 714161506 851118794 171185240 374912724 931466725 574802153 448269819 745482212 935698206 152117247 617917113 229563518 384200724 388982880 482110130 689168411 433827882 879503628 355617187 319646711 645911673 179121317 191829663 884223147 501207955 373185295 362607855 550648341 413446278 553677507 653103021 367628377 379027932 519522533 663262458 30139140 29348186 407716953 843278500 56504158 341809578 12164313 426056775 685672856 615389607 56474229 883711063 135325453 803413254 197206738 429679501 26726503 922385825 384908471 997821361 757676142 387079087 169407554 635809545 636896380 400728581 705375464 163225806 577723074 405232059 865048659 71442935 728650422 519090284 355821917 119521545 372001623 121826169 528119977 662410450 903149235 789256271 681205405 304552263 992256488 38430235 913613529 111896673 330541069 191324327 89056350 14068 939565833 734862756 221851456 605962507 235172782 659297428 853498098 115926044 744894180 683221123 965287287 722552816 77109988 192509218 589479326 293860413 877699879 201947704 57417164 198799246 719971459 694628025 48752306 677185364 977234357 657633387 941776687 833404463 932182825 561456564 937184707 56930762 801767221 485780214 428716362 285521882 263006953 275703876 858418074 115150048 905875912 187606079 138880217 838694422 759191857 830602348 327254192 713195068 36350664 181102203 411329703 85497571 43083360 924566431 336421558 925734737 384525851 548917708 767987698 109715342 977229539 588173574 227356791 48376803 167594204 581875641 145263748 21806520 554467137 537622290 488993989 648002199 924149034 122812425 669062369 780460536 767796355 605740665 152818250 10932863 626004830 157027281 573745896 526920987 745057750 383294438 596209163 384945143 593334028 175370979 812987558 887256392 926528576 560480940 217966024 978524780 211001373 158726342 916586122 357612622 552498670 243804060 714574500 323070455 644586611 683140380 840681592 186510519 933745393 449467995 669182782 705752936 171495950 381117931 737355642 593952805 190835405 678092943 923206808 908263518 719514123 449427611 691065841 35841797 819542960 827709181 353294 32290767 430564120 120067950 58880578 748819312 303053947 398880953 86640674 392429079 74923600 181041056 708317274 404412077 541887977 776873652 565902530 278714377 43575796 597824697 104928683 889700069 350504737 940935829 550620181 145793864 530928316 502937921 358951673 859972587 452622300 435113120 379149457 742224662 154737471 816617588 311277876 323924247 452613389 41285446 26910323 594039102 401214833 378486839 574566073 2692338 361877028 189006870 499923410 570514963 537104444 205445000 114772822 462214023 568838165 800899981 231390031 347020703 858245158 737077497 552742508 645719333 632348421 700864422 530115017 845432040 98554985 152028584 731886383 200347893 866902151 12994407 190728566 85284626 374134996 796600968 797694007 223516179 987788813 430003797 751961442 527470888 989961405 691867869 901727248 813008481 10318888 437915993 644845780 122919538 849359476 276089333 995745812 386745150 840389404 820636816 284133748 158194422 82145295 290908782 493518091 139195453 520172828 238284593 9321661 772447037 298547214 473641521 22245434 85540382 187648626 708614908 674918075 164895021 419306977 953317570 775625535 719725881 626571737 348891144 790358863 575150371 521025087 52434045 130730179 577210682 605214303 473007845 958373294 385371743 640924135 786798180 261449437 393739014 79884747 661119923 227736925 928799692 488969497 720111514 317626588 975612980 686930983 125430049 428238562 658753493 737651055 230413496 971381250 600790258 630736818 114066168 964189200 468212489 240736177 27387701 747896140 338062955 370914528 835872124 50681893 393488469 560365672 79683544 127036017 857650633 911384962 366719096 416744693 946641682 494085035 835340250 697906284 439579029 69078117 681206711 666177343 691344295 271363046 90588367 56515864 621246109 649395044 496844390 222426717 835793843 826592694 745560120 652182950 892190441 425742842 63036315 351443878 763798560 653118582 665713809 297462427 832037765 268223844 987593826 853933999 894192633 177071193 262342279 453743357 292928577 345777851 190523894 631407580 422519407 307606379 713802790 925839489 776905816 534758637 73920219 278550922 137761102 535386452 766885657 672980817 976942237 686645046 170395386 568709026 840201674 515323774 637367572 262062888 216828610 476955666 409932654 225568999 621421308 823368395 109370852 846173876 214443635 391387864 992157404 314271226 504732104 996242718 399612242 966168515 379365696 102296275 327769821 439911328 543251671 428964881 363255849 98292155 520643397 213249 96835451 453323802 16418801 476572846 648793272 447369241 39382675 638194145 277231148 634067358 760368697 556650422 966700139 744006108 577936757 190253332 811190838 753408835 632184355 311291755 560055708 998549207 543706113 499570883 75714401 804953139 780586025 690209247 360803806 797482448 620717978 124245730 394114334 492903528 875845650 582169386 378328951 181555537 58930531 847729666 646821128 683646720 110917153 129096863 28890525 58416373 270696735 151532044 134964713 296031392 578183738 393246747 260218133 357889151 930520646 284447204 593380725 459737406 957548982 939471101 851425211 1957942 349389163 682000573 323963680 234109474 51291488 380650057 118434997 758106228 42094658 652635750 878705935 973494472 180533345 171951400 620282754 875907069 882182779 401953863 402418580 924008703 255355491 166926767 724203964 281416342 861308974 918582567 269410368 218408439 389644036 255620194 437108303 617778884 343752006 586434301 352652498 432108305 823677697 702735703 789980202 654157616 266655389 256827491 775766808 786663700 87105042 814760695 532214992 717386180 24494885 192481188 236218169 147904574 703092742 381015876 753789800 130786403 277473391 712278084 135954044 510991503 624472814 511559807 192622948 564412076 715341266 3112892 945209474 527425500 347221785 289269405 612244921 904270980 243828202 868119865 209261113 416260756 64649197 902291013 614990619 523890689 27633320 450438489 565491990 495594210 586076261 163803955 36614929 264085865 90070913 190803576 901348776 959432873 226342980 503901857 393065919 92952780 184105158 211199415 594295271 205423991 605742096 562419744 890823934 145714311 89306022 294796889 364711491 264737077 954189667 226947023 388604722 56473193 440119680 881258833 126564645 335520954 589408900 364894082 627841984 979847376 300328906 87046016 641020104 174315661 536763746 564746555 635880731 516927077 525889007 947633040 833204267 474596930 856378152 559702236 54362094 741207377 310365777 911841853 4030835 780403155 176257104 67344110 586888046 910837536 525059427 887808064 971060019 799029857 533454705 608520379 283232412 249215304 94457132 481652947 603586195 789415555 264279537 9240252 910619672 580539115 242280567 561724576 608079513 607456080 928894864 528177876 615134214 810837369 268559315 830044619 212767953 739678594 729534603 998984619 483855209 428027203 960303360 166570458 570025702 785632381 241526658 131006416 392640 321176099 425047006 334694595 6647151 870406923 622023569 219081494 703444071 864266873 403019187 164469022 580774917 591814911 686925063 875762766 556384066 31191352 434700534 548737972 479901906 449245708 534635494 827673753 607201573 972390690 39886588 623635249 425800737 115999387 835198546 942770140 395905578 809954310 631474002 122410748 218552715 490392321 550828238 588640190 892990830 571450847 672586049 794181442 860050633 79399530 761301686 338166608 857502245 863645180 404630500 301840446 915808267 675103380 921979640 259907904 685161398 432145998 212733470 369815921 63731023 641350073 548297078 885109396 903737742 517473198 105544112 137419189 4591407 469673577 454651248 468599062 360160811 802337067 603212924 226923391 162294891 570255455 420450569 226095629 147023774 153175646 908959968 374709555 92460024 70611253 471518690 823272081 841318476 591423708 719426432 336902166 830529724 23181659 136629396 989333237 467588831 617745204 724270276 360213552 58534911 351399089 848599368 448724189 887045488 541186504 322587013 665740886 407041826 267794886 943704424 704319833 67472589 284393439 694917029 825774684 210313654 400298979 260935741 199062402 462377518 133121072 281844689 455865059 473302908 723783716 868299534 780380791 205957349 822499560 559080584 118772290 295664877 808620595 350756257 806383852 918741137 984928634 988746318 217256262 273191160 775616908 516262875 340163315 80478532 206231097 813601894 188384656 644521892 860882647 451458377 581336029 967833042 228857858 156622365 452134722 198540584 49916943 809182685 156330503 423956544 234348849 317914325 240472630 299650492 857022850 770605381 410277962 654627446 681093004 838020026 682635754 705551189 201681518 633640505 819402597 709695974 192867809 617677846 629948857 352421944 606630757 453124952 353202777 130259229 274252944 18234722 67422566 705932055 687325418 406216539 547143177 381026363 719154623 933513035 286848588 499454891 977338298 827325050 110266103 456105140 983181279 26492735 154275996 537013143 199429985 709963607 493850418 16404018 773866958 875829092 999073576 892457695 952122348 423444484 57610196 261461055 635001920 248193215 164485681 7250793 728775304 255433589 985500527 987783057 730192354 780464829 750193682 716062485 878632695 91095143 449757379 487598056 391929586 490963794 151357619 784869137 293512686 240542500 382197844 451637918 96275062 717151703 629599584 917651970 961059754 491552215 456573341 699712905 576945256 754320547 271089113 214956758 509657241 975016436 53292199 244216180 829623941 402091435 912419768 484174931 667866833 488758503 541557453 119628901 395615602 980841428 402828296 843908082 159205435 303023003 346588702 423720911 356666185 213214526 267556446 644491923 156669776 617064332 731233030 918525028 339169375 414742383 701758386 481732505 810204201 833844859 638647612 978843852 915251088 806568006 108569779 189863605 102574753 120593404 371875590 895858545 736734673 707702025 592816582 946400771 509896190 313510706 400805984 721350060 387740295 20454786 930477434 547843936 645097644 471287263 326367322 279299644 564693074 593811424 667035221 357513450 546847953 599994819 983863975 466422144 594451941 683740904 523118801 337963656 223187122 560041137 874599184 78591625 977748144 910962110 331776460 43109368 71025860 989192556 69920910 144502453 145146795 542580320 252731537 806299069 922607344 123621592 664166467 499555580 563120440 156575023 276081046 334484170 662321221 857535611 706549045 709632251 22629549 534428886 144911098 494902818 236315715 171951681 60857254 660721223 547551925 6465601 602949244 922708731 701279955 550973197 237859597 45332881 812857072 246686954 303489487 349342436 393682892 417076150 755798183 101782435 866159617 373869024 417772416 510913336 363348185 361092108 241938328 425465306 293942761 426126118 529131803 532432933 44717613 468137967 572121391 125310684 404108131 278623556 978328453 921646047 390671369 167488915 805481395 109811772 903450054 782059646 429702946 530628389 390160078 136559412 945467122 712058891 506915518 363921837 345083187 222975324 776753936 991769294 519531519 458471173 664349230 713327871 855535200 802793922 796569517 131617200 103071139 79402568 567451708 245147508 136229772 976249287 994948177 826682502 293143714 879525530 340325325 624487087 612001294 822294041 554110241 724490612 34409316 98561550 253711145 225193819 688630770 475648187 622907528 675611702 483287117 939670852 692180466 62977145 564776990 892147609 644348747 88039184 953945270 466086239 601930705 771290595 64671040 297632667 510477023 399111396 811294970 160063541 230952773 132949120 837540859 615559703 477174819 42866432 575891034 325160177 843624695 607419156 510224134 159346824 447457704 309334399 110242015 148449874 133462162 386264675 808521520 695293528 822511280 590644099 636039204 385703101 968653627 846663806 923284368 110136725 214371281 243955695 909377279 978254982 772645515 707141864 566017968 545199019 669705772 477380828 103714615 739433248 521771242 372371911 116113735 307910866 986583627 295933630 349471856 651564265 338136082 550006218 143893025 467455333 343644725 822098534 196007949 3028521 728611953 22770795 595870756 928124090 638760002 389412747 941397309 737468855 602502913 293496643 902447902 439387543 710542486 276013626 547844873 452921745 293534880 214363810 434524506 535932999 613942412 703734524 967991684 504281358 383224596 513592908 364759632 728063695 216922813 174439930 141547676 619752163 87005875 885096999 9211708 436905600 767580181 362751054 354039211 850020309 393582282 179712073 304440475 490940323 885352313 876869888 13651436 154834663 135784885 683905648 565537771 870480977 931852122 463169702 807540133 80356773 779295319 285025002 312257206 528092185 828197229 762894781 604783958 591283609 479487400 111662819 756044492 330296929 615562548 967946296 622838931 25338092 577764165 814620032 53053841 318072963 930237866 157590247 953908869 441724705 283786929 480043803 743256508 919637244 185889237 71946960 454215425 216716921 457618734 864262849 583497660 29324657 141272761 845180590 352630112 842957836 780594541 851926443 813638637 104821680 290953769 718415404 612075557 49008197 100167816 431726252 235315644 343493001 952391160 527162524 892179078 786384527 39519541 412573155 752618313 47620421 607975745 537766476 39508462 52582998 802160452 927761229 642992915 276696287 57910180 617702628 400168684 445434131 272705188 377700794 736904285 917256035 749344326 231212948 694143248 645014195 35251394 325266525 909410942 43323841 514936629 455664488 328465670 584716415 226331184 849336074 529340820 838614399 669793861 301512263 296889224 358578521 772869450 86205647 804274217 319523514 86420688 960239215 722895456 673032706 966926400 18737013 683709427 696714874 137279476 901240794 551904438 78118234 979969848 314623707 506877169 989602096 292633032 733833657 833594850 385458183 81685248 160510928 258892709 490225997 787840733 780343314 68705414 727120546 257213745 615696040 964759781 725761606 233525648 887983298 846889646 178064080 296735189 96653866 117124169 953902539 306274871 410924120 511743668 967849053 709117116 351900176 713472564 845635985 118097411 563787042 464245342 815947518 309513710 883844116 660248996 765443510 341637134 844154469 176829725 564859841 548463765 552638155 261064676 156733959 607560568 397867308 853932665 895880759 744887981 714299844 329602634 611597484 776703063 876504440 99693205 44470779 212944268 383194824 462173711 946602677 549767900 344861387 627968600 243753887 488537471 417544286 707294435 107912468 389558002 671334929 671154056 543403373 780766723 684726279 540369560 659014278 715437538 260559364 882342687 715285894 453691885 344333503 620498099 409964176 650027510 150611746 972644568 563919701 566649513 740225239 683220171 942620399 230601013 270721096 890253859 996966336 877506133 74476911 3736314 338175059 176033654 802932656 506636338 351843617 919720273 831295285 483590711 39733132 672618663 768469952 986376023 541939340 5241799 699016236 477111055 454175216 722650187 523185487 751709242 434424702 277617999 782830920 289594338 336474252 565565529 437448946 610388756 334037948 131436927 33550318 21067763 807452472 950146784 423284476 640263005 735644010 294468849 572054430 957081307 540626327 513908377 791032855 243285898 78141777 612298436 618235925 49175993 757745249 957663171 843633634 257428814 980486828 211928669 808077129 901182561 97704288 126190986 597426646 983014762 174217567 412448344 491551045 238273371 204278700 690880037 433078369 471108894 326484259 881895620 501135992 123403707 357737721 153415704 211251318 421918910 374744433 784479914 681731907 547122031 987445250 877355493 742038799 211298057 72984284 331192170 186993354 275454882 452396087 849057096 511586252 546077193 477455138 901336334 597571029 262316881 833377045 26613415 253971223 928351464 727073458 995523167 812920576 337258725 398463350 347790944 952573871 681325529 743573643 13106921 750767889 803392655 835132644 113031642 672864179 147355514 359967980 716614526 746503725 520972641 23527906 808572950 913326220 14589720 812799972 902454094 128027176 52930008 628565992 408548509 933107466 688915856 274612096 303539152 835499973 88867661 624796130 764611384 199926972 669648537 808182983 556552261 349126491 56195625 546402326 178287281 823735516 5659676 178118199 310749021 185356742 789196619 769694997 688355636 576860477 494925613 809601677 783453613 468888367 967125054 559411471 33215423 409165328 915881204 32563802 972415920 388395152 584137175 785831237 442036161 578010053 89684054 572904414 741439057 298215962 731181426 624375725 690174897 440255224 605989063 381273938 672819469 778119743 175250401 683143035 640717313 40401792 310817902 906371862 794732495 313357999 271238234 201580475 906937892 774290445 179873345 180738943 982631436 490455300 24926661 399345815 360393291 142275705 168765883 937032882 960623215 761566962 917307163 674178667 952029423 358711255 76733890 764199555 9435840 132115587 911794316 170872256 896316238 384092876 855066825 723962622 244646524 301541728 355451754 779711364 134177149 353356839 543219672 299549642 245517523 581583375 908106555 177733322 508216967 189358323 663316252 301193329 924293171 917615188 163782035 719857409 466390966 999293911 391338462 919744583 83496841 387054268 273754698 463468654 73792523 883302644 82409953 214985301 524940797 71781193 907632783 618706686 63368798 449473209 827690602 220508878 759081222 446916404 239735921 542320011 549666096 528531331 364258969 140183855 670834116 926000224 253190573 464501301 253814424 469856040 769315917 889427077 4503387 297015650 512139235 588581424 603769547 741114701 812576460 330812749 736349466 300925310 227130620 904859717 632934148 598439861 33854303 951228365 829529278 855407062 968106594 133949799 393174473 45664818 211787651 354244297 794440152 478813671 429136868 91820862 486085856 113582962 996763208 793630990 566399399 681391747 729329257 247511211 482731972 291001193 655022877 893125683 449460287 251527605 156643499 695319083 426145926 80142258 289358925 876230786 329263750 784765395 950239103 174987799 86824668 966965415 406689473 707480257 397441974 415276638 245127950 22869774 802293988 201870968 51619165 241057827 888699761 642293535 412696861 681908156 413940487 22485179 395080832 617183761 524548664 538461490 279649119 606233651 29295497 689094627 208776597 646457321 424381240 206673572 929145834 616010193 571715990 720549786 882897297 9779690 933970725 286886551 497882372 950056515 173123225 354016774 477414173 101481537 154795590 421581965 111404968 539061619 562615731 7956060 471984852 466509605 740461610 338661345 617266710 534514998 951544822 169326170 569178617 68628471 864137111 75329399 147099902 920955163 172177024 187889372 261802285 943267493 588584714 506929485 966741066 640116641 215790504 401011163 320237163 389608524 965676965 97411599 748029609 441364605 750788610 120345253 321725908 550247662 375098164 920526726 316340495 626858164 889821287 784335793 102933729 773987280 563950242 270962054 648592325 279297942 97002280 300245708 649126720 882720235 199395451 931675322 796559900 788424058 318719661 847672155 411129726 946761270 904701014 986679718 844450863 856841876 455167276 774898243 500032572 371953252 547206875 72537438 157491028 639011809 522208553 42572421 465457726 180617573 137087300 343664768 679758918 432601770 749192343 758412748 218365108 945996719 11789775 979681177 802676756 271686465 414885553 4787446 921593663 666066478 489618078 791311265 15031667 491466915 644442375 56377749 163165394 929801782 881522450 788853009 990079094 686040657 208745174 910332545 503633658 420545983 719109987 209506108 596067478 98856258 242842596 582408514 811676930 455937461 112452164 293722268 456769488 721945066 394986778 340974595 308441509 652692051 824473432 234367149 751259800 750703990 631759067 401477625 369149755 275255462 298933695 959174319 181153523 780581816 233820678 561240842 848571144 624445555 708352362 924562637 737770172 789663383 662318292 163963778 874251622 522540506 126426738 850235481 715069338 703223923 463570727 19731434 948566135 333148184 710146427 661229168 68046828 957733256 718440495 477848797 871652058 464274335 937664260 826210734 112765594 683694956 446150263 89822535 915909230 964413468 906169113 847512925 216502467 793531794 575524417 378608724 416742198 343446443 609328281 284304627 164856470 287511683 284137878 519561863 340404894 60421400 891744756 481318032 211679605 658472099 288036612 609472236 339249638 670416706 790909059 972065256 494683039 69797011 194255419 930081624 967508227 923464934 244019653 863398392 470659671 731445431 705503285 273398700 264613676 962929771 259728077 47553688 609489181 543407777 735032192 277146353 942731990 239059432 509708453 691005812 998264198 161194094 269393020 390450049 410643465 149714900 389467974 315672939 636832854 782823094 954290703 809236230 58041090 666993109 15512604 837994642 579850495 461230669 328813317 934864261 997498099 476416409 303964577 538435322 297878557 610399970 962617905 302729749 923638434 242933659 791175874 69295216 174907814 429497295 100212165 785734050 352357544 451439208 59134589 631817030 810165370 994088210 136256264 113546157 591729140 996557426 182503155 692842250 128538946 41588327 470059087 584888219 627917865 918752661 597215484 435102165 642905606 974348964 168887553 997514712 301543693 811600487 269648693 403480714 740038594 699391788 848131991 611107663 950895675 62892840 411544063 991167752 742691463 998534936 649426546 780092649 211699994 915100737 658827579 18722141 235792444 472577643 715258712 115779086 636051053 242471121 140046996 998571023 999498628 256302798 697402448 40766459 290074243 36447995 150748331 2636255 156466574 268940005 642105303 89369964 243448988 55288669 737859992 723095445 413818374 519833119 936042897 732239995 977645487 747386605 148580449 711990425 196686795 398102533 194303788 215191830 766858000 343968091 326408461 167937819 231992043 302009652 523502051 901159817 61292868 85417929 136280466 401303432 529335277 106738784 945782737 88175467 119020457 619057083 790354369 718882456 793746510 519557768 470525836 792987949 653989782 566842749 970153545 523329692 97323114 959704523 777556758 932464047 645877750 664633704 168989305 482945046 901885790 263323110 679609506 34254726 873923537 367388133 30046919 999760273 475068359 715224644 577821017 159158297 337267369 430689582 793316479 511142274 47730223 183748513 228659639 170209509 899633426 236092792 198590107 484983622 398622364 265290062 748218517 143399343 661246891 133400764 981147526 371892675 270513105 40926628 884212111 118089455 181088571 758580448 187974297 430253604 605182758 402270508 405267588 828911073 888015749 114118070 98372676 930801716 549200634 906965590 35415579 451127430 156959750 392379661 532066216 137671638 553772772 272464100 154207161 725395504 26550778 120606013 333595590 824716386 124123034 858864815 498767043 839411232 221276975 658385255 653985823 2369854 936658081 244645494 806259311 351917519 101928321 360277249 564118696 684685339 665395185 738651411 111784412 598725348 909543823 271326827 556360708 772497101 834656995 644309402 150444006 382115698 722867564 751480751 573784343 278938134 146433653 912453401 733763936 485384687 411085619 915089161 864100493 70221527 587668864 520691063 934912204 885289271 41340088 463040508 99499064 987602174 384177262 37900616 866597704 728476673 998271199 640895540 690336446 214804831 938992410 437626696 755425589 568439055 201521872 223233646 907877957 861787837 930844742 42457046 130996075 441292972 855031485 955898980 254572931 238179675 117401404 687559912 891568823 775319586 320585799 981190101 546966743 643133334 537260214 918916967 16864579 239797452 39319031 332150938 380769533 978201950 850518029 386747086 630318060 857748663 434913952 4920942 231252415 617448696 774363755 772297136 768023345 604648367 657135397 988477628 577874734 167169927 183395839 217177217 280179042 661542085 849354920 212112680 897126506 598836213 203587615 956488008 865003171 494076930 492690153 392322783 206789678 165059922 808730377 357602791 783765435 442212474 714699845 106739251 298244055 741525475 718019897 649164724 175148217 662975588 439632871 186004764 99629754 342720954 953465595 347472676 512113758 892654066 20917606 204321802 506197413 883904076 579413127 542620183 20474310 795956015 679942749 535676709 8826269 816379613 591443332 829449775 626565570 491659004 26502971 968467664 272842256 777681243 42621117 974656070 67292075 273866818 856120468 46269039 187915785 145914707 144399205 552115079 123775093 576027073 212747713 855391833 594145861 805143777 548672421 938791265 716037686 898584638 974397856 36013362 550103187 11983104 607180482 988114790 842208399 316886939 41149499 541502426 941392994 78882920 496194912 503919721 116933858 521548440 369356373 495633845 175587070 718660702 850058115 543153300 387338845 178529034 897700041 670633703 405098489 315798504 668656556 897968672 81955832 946118147 44866201 534938331 574084985 745033150 749088943 191891301 56061808 433138843 89478818 553766841 912958889 780709397 333285995 547151515 509696187 505777415 485586046 852391864 952391927 850955145 288583649 656591369 437727870 340120007 704975433 375269428 685212301 632258508 791790372 204486433 535599586 977959204 180439192 344177628 106040019 245572340 680137129 187660629 811974003 760185320 174159884 651754952 504278228 792978470 388102458 357363953 365391478 753666026 53417010 806000339 565214619 354098106 895606406 278331809 679682462 794182557 273362383 338705985 144536896 422605468 308050178 396550457 49422381 273663244 113036245 683539075 960112634 801116751 816682047 462659354 579803313 618925410 944917372 694008264 755438330 358298895 605803267 860584010 979420596 65354447 118666188 760911845 861648127 928499867 777254822 845027554 358881359 672750524 897455186 862165025 515434126 851234002 705987465 616719089 840386082 660279178 678255817 334287939 460540698 735055054 523147586 811027150 221395669 749004957 849355793 446440453 456684258 959967553 419450483 784396706 520792221 648563293 27275907 760517010 670115638 448771217 84519129 666796778 725347811 654146184 934638843 418048410 941059801 56009336 712743811 735112096 280239980 140898478 678996042 927942128 922300218 822790225 57097184 316238150 408719048 928991781 919577797 76576157 479966362 296684235 305622438 527475514 869676704 329208787 131469290 708886468 478269941 980532838 356410361 383413586 759981977 836776529 268005042 876886481 295370549 305754623 918985124 523198353 576066717 528077855 293691027 498937051 813147259 685669302 826033785 756561128 494712943 128265724 65896006 733232646 669754108 611489966 870294997 647062010 583058812 340399152 109063877 231432834 531849101 888867619 130569748 443770787 766789379 520526629 803744911 185036167 181791964 546009771 509949433 797757397 992620356 975215491 304580885 316979080 158488894 495597103 335639611 637567175 440139593 96443010 713752194 46288262 3054489 272385763 457903956 404244216 433624922 163189707 617257806 922021079 52658309 419875604 156561134 986524921 48280800 374400164 950253318 564225996 236427120 737239672 890563719 352198828 440748559 613619189 410937575 998192782 96479185 710569405 454743314 131661604 210101995 880723888 676641947 201882803 492489139 203513846 988357351 44855395 76197039 23292664 306703172 217384219 973405097 148711064 197622378 80079778 345227987 870996036 840918386 694973424 126711823 112870725 162289288 469796531 819340634 614233907 402226250 595219270 58160456 792024552 815845729 624352042 782211229 43513201 176134364 616180756 935432891 956845961 420103619 532643828 55712818 547526071 547564034 923938950 366316060 328666347 993421045 651710657 356232432 904803676 916523520 734040737 488808371 286060325 155192358 944933956 771925736 913285428 639045169 537276557 662249262 401982658 762918154 4861654 586539570 551252844 456044589 689850330 778854154 338068115 43783000 124818022 115909278 864065037 445814581 783363797 141761944 64901772 895606791 717221950 59164729 280624468 446056211 542430126 122723301 528224541 144850347 104671889 46251172 951543398 516869300 671039883 43375167 799997619 359029432 698652913 198215728 857828674 400319513 288547886 683581634 803618747 644175979 447993625 1978466 724894558 452880255 196217023 264678967 173009265 495288588 891835128 913297372 199246939 263421616 845973523 554090439 595976144 169332582 430299106 707355041 893854632 913111271 938941131 344265646 170564389 16235834 413647197 458592034 218071346 966611505 689258082 385884461 73657110 139962251 556651823 88867937 449315594 718575585 305653710 185170902 943212058 31719922 79347536 880771627 386214969 6345252 814061186 917179951 956749096 782017036 884760245 441323601 697286426 582769483 557954529 411368016 316438773 812392005 334187657 857486253 561390791 627755596 476601627 23190204 454889815 577381680 188392111 993318636 393396013 154044285 965120302 820738313 167511729 500366113 144195801 829493775 681425687 950295809 203974741 94929701 945672716 464798166 14147422 543646462 247280097 401247551 438751770 403930739 14695287 885230165 69597950 762868862 396737263 69074301 944498464 297390130 431548693 494468380 935382038 810500224 573277856 129596954 929076327 262566434 446888850 944646725 492068459 66995153 239742081 926250293 280296246 269395457 4317578 900705587 281202109 651698836 113852565 291663635 231527272 805730169 786775495 599208721 646809351 512023554 542329569 79778508 209650157 397196920 497994204 758122319 158985156 35583589 58868412 951714930 637366029 17507710 58772868 842561563 909127862 78414438 954354184 154992134 415016885 155883690 943302164 176414606 932504678 97993972 213734182 841344031 797469323 805040742 72209547 321221187 775139442 423396542 453024632 456673708 324907873 659197193 770833781 683077519 847420668 961699840 743290768 792198721 823615754 632763871 621906064 431007466 411304321 766509520 626469128 177587065 249584175 368288202 404231258 492664357 593198444 12704975 549405748 93469474 39380014 948414349 558007325 194703138 760189383 1953463 217583669 939359372 60557833 607614760 971113541 581656833 397438766 389158014 569431569 203387341 687460868 165440935 468207462 713546229 39208698 311439801 267387114 923629517 792772978 14260145 155297339 788367120 556179898 286524064 279747715 4383589 633397058 771068182 421156826 778302799 809389118 148743932 869536717 255785132 531241787 840072462 677491625 685692002 619089656 264145070 986136459 386875463 880734998 378120809 623995806 655865498 991729060 755793155 210150427 261229907 220936828 480451246 152028486 480881223 915628365 594613407 673848175 460193281 895112037 896248220 102835660 621164820 935468489 690135313 104729620 117385051 405147249 528946632 625778593 742518527 652783553 537134854 291779447 47615109 710769562 610884420 272766694 543360131 977123135 62475671 919830208 829412212 309489747 706788452 250429638 652857438 202516178 274537347 624913407 185804777 596935936 17370600 818324171 379137185 560367065 942007350 246105581 638464486 195325150 850679670 415210891 956949612 791514402 103162422 60119893 508264756 974255775 129026776 720671501 4030258 293124853 900496465 809365061 739255651 471650048 717058020 950225754 659380867 618001383 773816508 816149155 585154108 980573486 742885890 26185236 976915725 290066922 795873999 396408683 777126758 521757624 354458742 879241147 156392562 877910252 383318547 507821552 616791491 416922280 469831578 37339102 636579751 86302891 233464568 856709494 242302568 746637043 157249492 419000021 433322561 820263593 949762790 697106268 746102562 879455666 222219869 19618595 847268501 613943610 845963186 195231518 67643424 244731428 91329850 673440801 928923575 868080960 330872476 921575320 233507383 141300424 641442132 874652145 428891509 103269978 986256965 178966316 852750921 731916987 348703456 551252473 184886606 295445048 525192463 598300387 263447419 4581993 711463670 949842034 77813137 315446897 949347814 21334931 530622798 880600142 664246087 593892878 280919431 650389078 368260799 976872029 437004861 829787388 1354544 703862054 301474438 582922019 586508946 932281282 126684871 49714790 91553652 400654082 392538850 717852230 100971099 995343489 652687519 868480504 164676319 616616406 53185054 863470559 928508122 607521563 989047715 4477204 354731957 161630846 732105966 636401676 181883141 182294007 316908902 74838624 35855217 944916883 128936520 999216807 744717264 95995640 378871808 876333137 985485222 110676483 83035345 643468877 50942138 922330078 859673232 720354367 53309834 509346233 740962195 703347709 905535445 725613842 490902275 516012359 70947520 857086917 133054243 753949488 999867009 367682426 231195248 830568695 266484952 961100101 278996800 594113993 574195556 525546768 931806924 761631998 745000812 595732545 837228441 564780074 784129668 572657984 61221973 375952712 349755919 807662548 104812739 275147732 618535551 625569897 24878896 182949286 437228898 67306112 510305504 219512476 293790501 460793382 394536520 355039864 181327541 59715335 485748859 572356190 119243711 392058392 778849237 310378635 692091618 145267451 115496298 609949449 291516042 712678984 514234557 62842548 742934822 890409588 892745698 641350507 129591513 868607764 247544680 459332917 484593270 853562558 27742979 700424389 193763119 549364875 626909706 860422156 218710568 335881420 724060661 423412033 236810422 503585793 509286009 918188953 88102165 576007681 84637240 575040303 406681133 718612700 690584802 96945018 165707442 121579362 83342194 547999803 908255750 366473169 80566616 188016018 567009655 316495941 172315864 677568725 974669550 158827860 903840188 870850588 364433024 216314052 477559723 951021174 399172645 831454030 396051296 342464996 585739256 147684837 204909346 505289676 984994850 856998619 223891256 794422280 231687839 400377949 327567256 929552567 542203922 322454853 242750498 541040168 5690727 45179845 935787532 93065521 719697852 492738629 758885924 923896214 403401031 526234608 332463397 92314657 163851037 576062430 439211460 77338946 261973670 176928012 730505401 212863674 718936099 579119591 292485900 834453734 2653629 21693896 90713232 613027026 87180742 38181086 829875142 882944984 1782274 623968612 314410039 455015739 650749679 37415825 580478298 794460336 696309407 352104870 989395124 27149788 782332254 979185067 54489312 808410110 565290259 623979185 859617488 21132940 652322010 748663705 653759036 403929981 376397744 502262084 87984473 138769092 118657871 47581452 727257148 297360095 916143080 174073505 36983039 340218279 925220335 593865677 859624734 516384154 492021513 24589446 577131701 601607391 78051668 930979053 595913165 609849808 405567938 288585792 554210174 696214332 871620391 500009097 70081564 204081173 587649593 206019540 459233973 844168152 816720310 207271593 522202169 983863668 36761456 23663670 787249746 849560188 952150107 423420298 843231826 29972311 266642857 206938625 192321390 990516342 962826857 736090065 336418744 739455886 66532096 257280956 340626452 29579786 328342022 485362666 719829937 467148527 423130796 172969797 55169831 365190049 451740771 92754315 618714495 339994266 688548647 596795113 42479697 333058534 455218171 951232659 491601665 850747033 352753319 870008817 145851812 613735663 882893191 171462860 342873753 254462935 654413166 563808222 559267955 137844792 966693709 223938670 84077319 389333727 906656523 364393725 279612373 115105957 88565784 496976916 501811745 716273392 479942962 449298840 491874218 952389818 550129789 542071452 237142477 555881703 913007901 454257009 73792392 306437041 240621187 110521700 177033586 620446553 281410196 897136787 860953592 896665686 333407090 2765038 916447848 123805286 69588915 521868790 959329052 152309222 830499551 655268846 370915400 578328363 371846357 766942580 359934737 876943961 978687032 795160057 265328146 567509389 631958896 937777591 52297829 996009591 908758892 167318177 774739911 881632500 890269237 431677749 356869651 115752625 490432167 256821788 262987715 901554689 851209826 335560741 386441619 820920798 803969216 673792431 552238436 21184367 29991738 613024687 499109013 969172310 339699967 310700955 530230316 519284393 285272264 67332591 283952048 817024498 763337319 82918141 662349361 154441649 92620586 888977453 145734772 91309495 503309743 832760212 949046834 767010809 743109183 14624481 596561379 818844232 230221407 404703528 54965764 828189702 746632588 503693284 914827479 562634328 236907087 254615456 372046884 536467477 946208919 433503425 591377487 907676279 737630321 541741755 585547902 65695700 498158267 373376216 277823234 756011063 952776051 703435841 991301753 954312506 305717093 168838280 942301035 838682178 686318929 276568342 117701842 656244201 477043143 21457804 225874891 976660311 703616320 940695690 941893471 88939452 66112715 602317435 328482531 416980957 364666052 419783716 374602622 794992574 474251281 149520611 38145473 879375347 404067829 895871345 512865680 449467076 410918208 847414789 613907528 84020632 798425993 16785539 304511369 249349768 908010460 661646413 292321204 202699649 387675830 476222059 511489443 400378684 702221906 161427954 990847658 224345851 808037695 642850214 670976199 886256669 478178983 595468382 893621173 723921621 543200151 339383462 637807156 287075336 321664070 517681962 250133957 708110455 65716319 174283831 726687480 77153292 682989129 867119240 644361076 514912186 111526320 564873652 939376978 733817902 761218295 553934745 435352449 640469640 452239474 573266558 870234043 882192303 371369150 880166580 270308454 613461361 686595744 437771909 881949521 683495527 67211405 891728179 89829098 812352044 846054543 874258584 695177220 532784009 408077968 645129942 886714093 708555048 2284430 169956790 840097085 358376257 630406544 571153776 772412118 922527412 845115046 158232070 795892849 435875962 8197990 390136293 953834236 478797649 149032880 377818502 289823582 735181997 36970924 686936339 705769489 482239332 648151131 152607348 136296453 383164577 703769124 692825899 114247513 29232026 375180251 422195890 651398917 711001425 68421549 102147511 934352795 690615071 554497776 666596094 654557953 510159440 173512353 657168362 422133012 733411460 556799708 556713335 361547019 794407135 67315439 138564116 124014485 852259443 585142631 626179414 78644087 198610343 867974460 288612403 859737937 253024481 387081896 892252206 255702708 41620820 520948961 783586744 676309025 394073505 327752852 995716853 372872520 243599077 740423964 993881574 399631410 677485432 341236747 600589876 390263292 788022231 483645491 207640357 120272480 43942527 278879187 939282520 464886588 36177866 851241331 158335277 456923052 379540937 979630432 827022063 792370270 816035222 939170251 645751741 923795863 268053588 665021257 605854605 5265648 112897049 772013426 458672106 262837328 224524827 989579130 992464824 537815287 833919848 795140580 513724350 495950798 85013732 722662171 173555339 239568833 709296601 216411555 906031171 861915674 870629590 369570210 195299150 119768 128842592 514567164 260050163 772339817 141480131 226699505 973621595 623974877 217275888 766885080 630918341 768415704 402829582 288924716 802802920 979765373 1456269 848825059 210781795 810867760 278573790 301195032 650464432 854771357 314466639 115823302 120753101 471705774 408549427 102903019 993545116 290832294 484536571 743747675 548909203 102136809 756753480 242966659 450149659 31786457 319417510 396959434 387843167 442364493 253548856 940114350 916528665 773429335 539739544 791904777 408681840 7049744 229728764 270626145 139814333 376159391 371966041 19862530 580332647 684618760 309949312 236458668 816625718 215270392 85912107 894691985 386469482 933821946 281948140 426418659 970230780 272871088 268788916 59251934 677689605 91703810 367891419 752702162 488436150 737507576 584140851 353562008 565536947 935805411 857733845 13508116 532792665 120564583 255986146 378178787 296337850 245696060 231001611 438528373 508808937 939971985 344620451 596149295 737552142 949348403 927215744 49361048 167925364 485421274 151474464 512426261 942253690 853372201 744053711 202699634 507166751 951976000 401016840 55107227 98371336 350848804 340291655 414052197 352911641 124412197 995551700 219429622 577000539 254212195 836733713 201821119 468219286 864816290 500328481 909947852 138391763 70168227 523084728 751581273 834198041 213049460 642459965 308318903 3146926 165419618 335742759 79330933 270536890 156581664 690930680 663889483 126598752 916475232 358602758 470942491 314507715 296516825 415936820 865868954 49528957 779787202 537975584 881969142 984678172 118977359 520247331 278290279 351959877 279123243 581249356 995545648 73069758 421107287 748181945 531293307 722164330 77996578 882184591 272895631 522808480 530482999 559190738 5555543 294475036 566803292 547836789 800149106 987704127 112873092 322205668 788489865 916077582 275731960 169852509 496469872 952780478 45080466 643490962 456083768 205107195 986291735 426968937 413498119 91047202 406620322 40224333 374512795 13018420 231964967 511195184 704805421 669209782 42430262 472403750 969673608 678245657 324257550 697451126 668857357 623867116 634393107 753444320 684397133 161608605 637314368 787824558 158519143 648461718 142546607 79503002 681829382 748789073 628239191 516628116 763665063 426149980 563265902 469869505 255691755 162551074 743190392 199261442 576681285 870226081 769900194 805235758 458553730 268900698 783999538 95542324 327756836 358427621 85736163 212155997 560224887 251166649 623732358 174675171 789162797 489634083 67148937 543729548 923087804 2271618 372422941 776479692 436939607 711030699 99078204 586017719 946546571 159401470 282843765 2595589 57444287 931441477 446487149 888312145 120254221 894605275 69262441 706491688 325043125 886040764 351893138 281144249 775083554 611395225 119315065 273465897 224917465 741834281 443069507 813883700 596038226 482402632 755693134 393339860 61946822 796778332 619679960 964380508 810794953 87196784 581808014 755699053 377359968 246738081 202355441 180371915 110283955 969729309 673838622 401688649 337051285 13602259 676795307 843528816 859805773 491415570 210099740 694644839 990251375 588926477 316486024 686592445 102624508 755411399 496257901 419431748 386154606 883628517 238201467 250825162 406905056 352864100 797225659 667578394 330907655 916843371 179247019 173214017 845126865 607876798 939711877 232614865 27890445 813038532 732366818 83086475 188700072 786759188 174113293 243037094 554567206 490757773 632191319 823215963 238932605 807917227 907620901 305900018 88862493 512314476 814118810 608507576 402722674 654724268 858366985 865973179 303291304 20913093 861564990 58932032 857240485 256609016 673413639 983488037 320987902 154928036 815348174 549941067 933885277 122901553 83369415 552273203 806980272 227001308 367157489 565588626 78389288 82925181 496215437 430334872 672195007 645945257 143491886 124803105 611700739 761461311 66681081 94740792 721056515 127695200 667915808 1595459 898678537 225925800 480802638 644934491 417160411 648027428 525220599 245167555 849077102 278351982 255162017 861599993 949505596 43810901 993112729 114570476 835373338 767066981 30399747 461836357 367248843 146617354 468040948 290620966 448844069 601901225 63905740 858548666 652843869 217212820 671216257 166587617 267456472 145224158 35220095 687682941 581546077 657876695 938522777 470186589 930845055 64753780 975060064 520395499 374581324 659095218 139782106 377496912 698341964 514776924 517404533 903234625 622628689 692632722 672399854 501553393 474521510 120542461 927739937 312422550 60653617 774210488 430583250 536320410 290619919 130049738 579530209 857550642 127654902 251173832 994095852 175815339 561194335 691090269 364696598 600574340 858599047 621177273 806306876 910048445 48337412 140157654 564641887 413641794 821342167 372534243 135803555 535750541 541262215 705988758 912038942 809759913 471638708 209422704 75145717 446120307 714208175 579236763 870695895 275428153 455485823 592116332 280592597 117256372 950713574 431491810 539111013 716367980 733826656 606771223 799446992 540565649 41176277 628150016 99373936 187537929 481099798 926765282 262604016 468606450 193863043 102742250 133860183 206850831 662334592 313578197 148614743 19901430 893316476 707009962 565738794 268678761 852670089 608454638 467348367 701683861 830406548 760216123 232823896 114591981 283554243 503752582 604785512 773518486 657590491 711574425 775810944 190185594 85138270 252616668 28769993 688321204 731177735 899403767 992216080 506585937 742623836 895353352 327164406 479018713 467546542 832286111 35618219 296567845 267482697 843751465 326557815 860802162 355562735 766814860 895728527 468573818 547969988 676773293 533866133 717083337 649885299 426482553 910417185 668768917 605142517 213855314 35375014 340334866 749264124 888672016 503118455 833452680 676356666 362739339 515745233 842664982 743434953 555858629 832091906 377105281 250427445 338377044 857403727 879567408 881905434 637327336 171907575 181154749 923728110 643531328 31847459 423379661 871716486 599166256 844718329 352300714 142918077 737832769 199727364 228221477 724999556 654957974 630651289 832376963 64506319 341106583 157326444 63452315 69379784 929656111 464141540 768730669 476896588 879595539 145384887 956896302 819865622 558200080 129423735 531795415 947401006 464729584 62385785 981691678 749712886 138511325 102416700 619734862 642315940 526200609 820587584 715911367 704518106 534275972 110759505 940634505 137435816 57666270 363066354 890003757 101003515 116695898 303225794 332990570 236706850 414249398 783460412 322018829 17362046 521833121 965873028 451244215 425360422 303432770 276001162 573775714 928651946 690489139 976371779 579802171 713885458 817673348 764184541 57579741 488271426 583518615 658525980 493525288 984044773 44554354 723906111 606707252 625106328 730321149 230849633 774256043 432388367 426376368 800885651 577675104 389465100 297553648 894207177 451657577 756325169 882521602 474538415 106526696 883233085 745173083 714777061 410608868 13396948 862310657 859692587 132010744 106902799 945700082 953855761 670608324 255564254 801201644 377670569 557994621 698661093 769225968 936455671 365245447 729465290 215692939 309985052 239137878 244322318 645456323 955690301 7731817 613227757 668430469 6489465 312035180 596942941 794627440 871853591 883007921 270672347 68301513 911004626 970845108 307350012 758844433 695646914 883981359 368735186 302732649 923572154 572377851 802119829 146192723 375854094 219680988 79647806 732354645 268101955 685923262 193455874 388329013 250007435 569515663 943890488 795134689 909815804 451767705 674480370 430797756 663547260 152378094 113584825 454434874 571526588 587087272 90408113 496651632 283634770 652166891 683783990 426176544 31397357 962779639 161481592 373451837 94184924 99524349 209214202 265264522 352921658 321811152 906656044 966170070 714330350 226235081 264693361 434942354 963023776 281032552 372358694 443223655 691263795 15553372 646726379 820119269 314917640 760292463 116199291 383175089 6473320 814356365 432028777 323279691 182039569 636737229 101047659 90645432 49248703 843654654 456189137 250004733 159313293 812146019 354228351 145547290 917169264 564676352 2530961 793628830 403972389 557708540 94775629 884089981 565037996 140952639 527671450 817123680 214243309 196177413 123628244 269086593 454301190 606897982 2365407 785672522 489560966 487179199 883717502 552286195 931313441 376844133 309481071 579214228 208593574 569592335 568225291 557204233 916701501 280135384 682094628 839762632 699896121 483318831 430256218 734315193 274319833 330720358 86246593 874219821 166241508 909786819 147249823 35014515 850555246 203634087 104190797 887675219 949023494 459952029 941318145 23965941 446959442 818735727 306007420 130695911 12308605 45593074 909561449 997426624 519763642 671069928 829552338 330656160 590076036 848830591 629809712 795092594 637962746 227932183 789059966 988192453 471451753 949500280 96655607 752970962 360764670 426559632 191905462 428219105 816488458 560572273 181060833 780930335 424322156 521995575 236456114 378318773 909360904 285054462 289168972 135058782 656360838 826529805 4918296 48581345 250055955 343091660 37666659 687919841 546723231 876633001 139619456 667222593 488721730 800614693 278961260 781028319 205454963 650858920 467258258 615488792 970533922 657488763 662645320 67622774 180127066 870556420 800200836 739039826 934186031 498624977 907415043 99249066 503207541 553362702 589210890 270422530 621502371 689348701 121295907 184366590 844201649 417187990 323931934 207748974 811851186 76118935 784577595 892799569 130155368 805019585 52125489 958739291 252282442 801377506 985254278 963274476 366413080 933802637 336813606 502859996 319312503 207864284 805849986 141318107 887294260 5724052 489060818 617973650 987747290 975671116 113658235 921195338 219771883 803494916 4020265 651733950 783416890 911646432 816138418 905255019 439090219 245280422 190816201 787992680 346382974 509679905 34702935 545034347 374982046 766243904 359489454 263288292 971252485 200931539 313974681 569367443 490253578 207452086 622419846 326950715 132633501 889016642 288447546 963873006 798952256 104895396 732446639 190377617 918389850 516483939 390754088 958970999 863834190 634825166 691091862 320089779 841315112 739790757 16412753 376404297 866168640 214584408 398217626 892324556 787986737 885286399 386138621 73877814 763442681 980148277 861036621 104984410 456816604 618657265 417766399 131951560 194505507 585140805 448161306 771707262 359536645 94301008 615068154 578306978 255344185 854060624 929897939 997102326 796766571 174596835 332824473 935602257 497462259 840458322 251935895 252343176 418333782 377862691 763518674 553150546 831090089 798011671 811463293 687251706 236714915 181569507 345574183 146876668 510220831 667743724 777481309 598648323 836659034 272173644 566743988 916956786 781296431 733800304 664435404 152067839 693051714 147889056 337372167 832599368 833866766 436481387 754285443 578425713 970974991 641782339 831190025 575145597 443950401 266513205 889968685 712203718 730353971 84416599 200483015 481971308 96848047 741708699 326654055 403612168 827637967 807330915 851675668 716087807 35637720 766753273 597001730 995531719 471797143 34064651 695391035 683469455 321712614 311152286 901184286 394026718 123448593 866163155 979567720 988892476 671218434 222652173 78500889 763387851 740974203 191574927 692876846 48116690 211012236 245585254 632414761 731620026 617279524 395124062 487406600 974664676 209209377 500016155 807946598 709435067 339560323 516521515 101840789 373979988 789351539 351428884 565267125 10887692 55166190 303829771 867485210 679638883 740439377 476467560 383083722 224955617 536987386 477267208 489995154 319441501 890998470 278501003 10031119 958876644 643204178 693409650 87295780 480976250 343123981 968313012 787445883 42840590 300235064 676915183 234266672 954825052 228379089 81294282 429890029 91454574 390808043 2556921 354796541 553013378 303805073 149150104 559013466 164080375 949753704 7407841 473917831 837576596 110961279 916914378 611403585 337368661 887828711 644336293 459026686 116434038 422358444 758866247 698360277 868255758 948470694 161979189 69457250 344873423 527786673 554075637 619893230 563012795 691193232 317073461 817839256 666477171 2540999 943638238 371807774 259872104 874993992 315890441 984103528 163259849 545933311 325322905 874619023 550222148 121277701 645562160 373223607 101543866 937534186 110607135 243759059 480357040 745733198 19284367 236966916 60471611 570546066 482043057 596802589 555529809 712936172 762720506 739978433 979672946 316066427 493922946 698528571 470089322 138590719 132093905 846468353 621214565 919179438 500268215 248376138 838828805 259364377 861273619 661857729 712266379 315309641 103284985 592620237 437560290 264313140 884885319 458309422 132071412 954826811 548623637 206638975 148653673 183346983 151390096 900712212 685349684 565776286 690125171 191831303 346088973 357401097 403007193 649202482 354130702 165100446 463904185 310020992 296216445 592248316 502528010 296451236 892654950 711926407 256109082 149840146 623860375 753480960 555950176 712154463 429026399 98653381 860319395 861992057 164479787 488485868 162738618 451028927 674855770 501359498 261975777 926388185 971440213 730198006 817022415 602867807 766000044 617118800 781964762 728466605 649119534 254947856 432052574 353425585 624343735 86957825 885502539 371297385 98852302 218390732 128121701 427204637 943581804 485114200 754947324 479852158 397130916 318092636 862051125 850729457 581228168 818960851 763734280 476680878 130827283 920961267 512381586 352748943 412852732 973219018 848091997 982990292 74899526 889051681 31176258 375135181 275119637 894610646 197815823 608183299 839401994 468950381 766613983 53176196 849355958 247816274 153175385 237496077 830251357 766548666 463522556 61418484 549852413 402672790 529239824 1761620 365068259 34368376 433543110 379900510 442515748 864364469 787333937 490210869 427749560 549950335 964292174 335721184 754393298 193364873 38498950 313844666 508449529 37193573 177355400 920647407 500690682 554610931 488913269 198506485 668442663 385131409 818064891 604921368 857717276 354433272 75280265 688511630 516495249 187942283 714420097 848397312 321298268 601679890 459019 549521035 133135138 978991845 907536717 538594965 520560458 49902151 908669296 182194151 908021130 441471184 907934577 397112736 945749431 145576149 531108540 120980818 703306944 407898839 25555171 617489687 702800873 118176101 400180651 830959145 866429463 132196465 742160357 843819282 114784813 561515079 485976971 441593633 472386333 372522009 735081474 986735745 918543858 249713526 432582598 259111222 335237907 618517549 64742301 671534285 214416657 737150651 321303709 482558858 246271579 589747953 55766663 524198624 102230259 770738495 507043909 493956890 378492911 241555455 216279209 201136388 578946697 57690798 289573308 312943704 439433777 92238380 885769428 242282165 492527803 208247218 170800245 402803152 903791342 506449424 685260189 535866706 672904926 401936866 833723387 42057977 645778760 145734076 348589766 961867324 266240237 46252201 645016788 833276420 864040793 162647075 893160845 205115359 794225255 877384034 841834611 878542658 595065835 494354713 264868741 974511640 720810715 319303076 539543483 687654121 570096698 195932919 582736942 725631066 665208130 152286221 717064907 854929299 978480674 796532261 164555462 833200696 334760052 920384126 786708770 295836948 163108989 755642717 808532701 268962379 777948781 965356382 750983267 51974776 7524242 730952014 868873322 12794639 722843625 131275017 480114992 363104980 352003136 398931297 366938168 978563369 343547555 31445434 875091964 967803164 743100135 945586636 155254385 985410042 12655319 843551018 511633134 784527861 938445455 436513678 492236079 528694958 817644822 923202347 53376702 741861993 169858399 281904917 742410261 796030159 188840582 328453293 818083713 325124730 317970885 833954917 152563659 13245422 447063091 450862294 829172952 241356052 29108768 845022228 39063911 285369723 487144442 361983443 155182294 91542841 859479216 442325262 881405760 853374114 276302908 75735055 420696744 283877746 376819406 987043414 489026978 622878345 361772448 598646856 501095101 895717857 400205404 463631602 106291727 618694448 163809380 251292559 323535417 742932868 513044348 189427099 315808375 607266728 673490316 119178673 395679783 936669561 735601630 926924885 830979771 624739320 508442826 950865 859018621 720458952 139759468 321765514 576852872 246577244 541696480 859857772 378592762 353452953 265193657 994409399 973199519 296269809 355557953 463128959 117967481 137846063 18137552 186642168 760154547 414728280 940409533 532725067 629071656 338523051 428751634 847374912 92872398 636202173 838478441 904790979 647140498 786774415 534786341 438317613 14200309 375527737 746341577 815841232 665029224 607944507 170087876 68572366 576528204 118824065 500435406 312498788 759490535 585450352 315081382 942152871 435297120 730009649 287433938 88991149 871191285 116357677 624720240 200287931 588211145 611746683 45463449 604413794 658929158 312034202 492212254 995208131 296823086 599285621 947579221 991872227 670800035 159016487 494110208 749132392 631323453 421586886 890516477 559905292 682892985 609876813 503870726 967033813 993733694 777621939 768295975 925184587 61003241 30527148 480632708 733432130 29659071 739103199 161156036 124720326 571054997 755716194 699450199 416380041 395496008 991347988 959695415 885053775 275332951 787445790 104839125 533241805 3469749 249887233 42743217 360614810 85676837 996603005 590434195 168212340 601137204 142807508 40836546 727007618 807197754 425237394 554900488 107314982 158311996 948467245 461788349 49671818 922485652 636364163 240293508 256760289 814151468 296686935 584457408 189486132 754169986 902599138 690283887 782204392 33001688 188774644 207905075 391979038 447711756 15181920 841457620 453487821 678973498 159007537 536695445 706916618 720860815 102577582 488696292 124629133 944685402 936375765 508400792 745748586 592669937 123903915 726439885 800690130 347169974 602965470 262260723 80482262 531292592 638931049 936853929 117534708 793663892 8662573 806655209 166128349 371264854 623145120 273913251 769027765 534563028 62409450 842322971 150020115 699982565 204221147 507202281 987309999 947779279 427670606 158380406 740636582 910125052 409994567 782461744 941004954 917751518 575169042 329287127 792888204 715457357 744187687 805962589 355184738 148119518 457294084 423772595 219982775 470918702 611222698 443140652 710018533 898517294 152664798 983834688 413859063 936889477 416897418 184096009 962312471 475715840 764982016 364224386 389313640 506822103 208371950 788849661 81299998 499728059 327767727 847520095 533898228 863834207 103151030 746449347 22201058 991531089 545367124 274408708 727350285 486683177 228351373 21349782 963090931 147038195 531754455 698073736 661377789 507521268 109426441 16130605 874821087 723327286 796844822 821342569 269630868 960261607 78337581 649529556 183429620 535683981 912800289 257985327 714775273 68343497 139555602 679833152 287149523 97953115 958975428 219379851 124299860 263445221 336854533 213421557 226897658 320158646 199355272 350302172 973133089 216498753 397718956 713172395 357177154 300482998 66066441 519337118 196671822 782051884 868292568 979273113 27723858 72960880 598379986 191504546 639459800 310547944 244493042 718679501 573290256 725819229 26041154 602894734 239642864 580185117 991437285 582816834 654798076 636093319 749059318 62198506 230608480 396907134 294480648 443027503 273973391 709442180 514262417 335651274 906339077 412166368 181227964 309553961 465447005 451309074 491127867 472071631 181283397 908621835 869510508 965134240 397410665 960062627 134375729 236829888 595141384 12962676 917255409 653866824 693891330 168434662 402926860 505377953 968434606 558552277 287187857 480093427 329340749 484962536 826375723 157269475 265213860 391009242 45890744 960418770 649750273 786668092 64410322 549734744 162561691 453223400 558860230 438536524 153086831 846382732 678135423 417089375 819941157 956392306 491909302 256087159 634397492 614618041 348207441 170351921 514584628 217344703 638057177 835401570 126789499 442197626 682996684 338717781 565884580 47700318 669076323 301730854 810456206 404761554 533794375 508316677 684811069 558763166 441070092 45223491 286920391 445273400 562646746 320146508 506228972 624929118 375177256 538956467 556859901 879727899 731128738 398570442 610142786 129811423 100820724 312359328 961602812 460273310 897939499 425472966 971262907 118118270 899734553 549576725 817795596 460272756 892846203 98303055 166944604 29745957 872124943 641439775 555034831 412710832 333954720 200273953 965498065 30800486 299593024 287592466 852030650 895619634 918374976 620629024 9809196 767203597 264932881 19352560 135243626 83077893 727416173 118354999 645108277 946660858 109841016 857381479 130091242 208715112 615580594 321470220 530103785 463773692 347140185 651493046 840137403 991999426 962846870 548751035 127297522 780267991 911875515 302972220 28858715 167218826 395023954 330456145 272114633 708031032 203046043 346006308 436164712 777938104 820179666 787032589 503677610 864081220 423557266 365636872 597943741 156370513 763384328 763746568 728250685 577354422 239592930 190179087 331667097 377148466 375780807 118100067 980858300 742613399 974504767 643624003 943902476 678953116 732185316 367613649 411628103 707536720 245364330 124393267 508706173 95835225 441007678 102562035 835683942 167009745 262300991 465819409 91429192 812569142 819721054 6639521 618177281 766595882 426443178 119483650 970313339 432429337 714937278 517045915 229671115 371631758 929177193 199883916 958774214 627454584 493681144 104339074 14944531 874678577 808363281 543644088 343732448 664525380 604607586 524737364 497466788 306139328 509735053 543382779 552864724 55811845 449884192 340538550 730593701 738418664 928970672 659451913 127565208 455965184 532141881 634296315 445583855 860839300 821279040 946786733 814699084 242373711 617131807 676478737 494142597 364344124 8522149 754698099 111054362 519201985 795011767 651414650 961979049 218206067 768837831 451877939 103186319 865276725 404587390 819689309 193406686 799173107 683892478 717693801 699994519 86260896 40795105 85560568 589371732 273160718 790492434 167782374 465859586 110430384 158738730 256148150 582391504 780226985 147553045 922861461 423752449 111765055 17525093 36714426 782028717 709123214 410042426 740789719 66790081 671935386 443328199 777789710 255706844 530425233 148278764 414882435 796848548 516699841 712650389 681632677 878330817 960401545 631103741 302802817 220629487 88660136 76092674 689065956 959471345 338345448 814432869 771466000 437735881 98316922 619226182 579690749 814908601 862867330 801561816 163867702 549873483 338370508 169504687 257357891 284782064 520108011 110174802 936491246 271818621 660893329 332108213 218485820 718095770 249249306 775346128 216314918 164761545 124399709 315930543 108112117 233664125 157156514 820354488 687110640 265550180 923559888 719818770 467250434 54007553 610897125 384353729 339186204 806903141 916085763 523258342 652404598 839663025 927156762 312303033 86416023 647672281 970142155 868194396 236186826 193124437 671631580 546902101 713854346 428564552 253849912 995754131 692137607 818711073 282822524 981439395 331928574 917754995 464727471 874640251 21946708 155859905 357556389 79047691 709609880 967326342 989603378 672329143 445736707 504904609 97443423 736133902 254519842 180387392 796173263 946382253 134523142 280303031 721073268 574130027 229684564 311158360 706717212 516362906 357746945 766943386 39708841 622908022 976794554 20958111 792919698 842757687 962830464 814445716 652049692 969316383 996889462 923318169 459210745 13494285 62733542 590794581 547430700 524956825 319942437 995451209 394597935 79064163 613084059 809052592 57341104 72808106 388888267 495379566 802577031 924700172 358713843 965740012 364990466 712509039 925778407 275736108 41096092 612433979 985028217 260560989 315488203 614191009 896889405 313866387 817065475 121523326 506434361 560231118 81414509 713106543 199060953 424770468 156441013 913632058 722955667 263233220 545564208 263228034 938806598 961460864 234585117 254623740 387582041 287948516 765391472 755621508 727545783 569403065 441097970 560988905 588935486 903921329 159984138 123340989 489422872 918631974 265693330 525379983 967211832 213250213 649879067 637539326 642706482 73595646 519893178 864656393 574021364 933027486 538282686 120726849 158775571 860931017 423653080 115283740 215104836 567708052 119801343 745213180 879182461 546016706 760167895 92066636 511496536 735838572 526904774 799510942 962754658 552584353 774677780 47824353 140799526 281782079 92361146 705061354 770133936 826002302 290930155 810856218 195652197 171021174 576960166 798383441 306028792 563089241 902646927 691059336 292448122 319982648 931548026 997893162 49380558 726364936 229696820 338655229 221117467 265094939 748478591 48078884 13220383 299864453 678708592 805284614 408668349 687400018 809315164 774196345 107903371 175636271 428500412 470081019 485723006 174033435 683245552 283932224 349295527 861175838 875533644 457561326 502649479 237538218 391378673 835092412 759045383 652276336 520362744 992485775 219956541 872536254 923570296 171960863 111934235 630336634 584373579 689578125 85562413 30102903 817053725 225953681 166651981 333854246 367622904 571796883 837037397 591096825 744095853 352856950 445025736 232775465 674227686 604920739 183131193 968569607 551824687 462486421 101385902 997702445 242597358 121063690 342780347 191780902 66578019 944646632 740339796 163630254 868184378 184661202 77948566 796085437 868832686 411979589 661928281 975302881 569364372 932307960 464349988 516549183 818717150 438624801 703849298 327219269 594131174 7798765 257857035 348235875 450572720 717085627 961582190 653140380 126607584 885867696 837509940 516668741 307798458 704498467 378664345 452878643 79021203 781922468 925968518 244850495 691787135 865065975 961066254 949989506 304219951 315351013 86565577 806793482 757875632 733537714 496997589 158241009 246201183 43812937 614781124 788541800 331717653 924687895 975732131 72612163 375822217 76909620 89082016 575916492 760949041 855632294 369841408 236682346 952538261 417876361 104156366 826325878 696709656 359513263 147598234 840648545 992072662 340874055 84802636 708572619 313620725 100821139 360440918 347037675 814525082 676503813 619618117 691328160 171850878 36634385 988336768 518010244 226593687 268133439 958821159 469906517 606661827 62368507 577358159 784283228 601758488 633759801 760303364 411026207 623164952 25539274 673802948 411945074 588044479 886282025 698281722 447954830 208743432 287928867 983083283 391308916 289495604 145565319 383126059 48053902 375794922 960740159 858145720 505161870 672323031 469345948 801907949 349338545 237079254 545698647 393433494 649645583 71437995 547118899 569481599 41101015 986345464 34100927 211282217 139348787 712445432 250868029 326235798 242040452 286385649 462016487 612728383 764993314 912872014 98610535 897102797 200162238 312389928 263807807 559012042 968892927 95465722 299577052 459622017 216673627 179038895 10254629 775065004 97731303 635254027 172905141 258214659 926578353 938232479 278850024 497524297 828018573 815679814 602343244 216580277 462633416 956374686 18887390 440268846 99168659 18652214 713442087 490725658 314337511 511014945 508807238 990525123 682209630 189424421 583542796 300933349 27948405 238517827 834961690 566837267 542553599 74002990 171568689 315124368 639220963 108365398 893377297 451850233 137809343 87207506 571402567 682389878 599421555 233623018 536323676 824198788 743185849 692995382 102886099 59109183 432591398 589644496 974380451 362779977 437602959 850818694 439636601 667918912 403602601 38685370 865423240 373096515 120251098 495130759 146863864 254718401 671501178 288436242 175249898 837740406 129353435 764899412 417378911 420584790 221158746 411248622 791020196 483897157 769295829 402051817 989242700 998469438 997674283 971480542 996390145 465505837 369162821 382012087 369132100 69585413 578724984 393713640 592333421 699652009 569038607 153239867 235009036 436914585 926950141 857107847 275189634 41407784 214538574 778212216 135766799 173236403 118190670 598914705 491804043 722162619 252772024 799582148 537732378 459484015 507477738 17139962 757293462 108896410 59413578 137053605 653936480 183053701 650662126 307811984 374878242 761534266 927966271 39544175 135130372 782353702 229554068 128421277 725277974 733744481 339623459 917962158 604140814 641721920 71578077 420274077 628504467 959430759 855335130 631247877 824043185 21845397 595646886 956499349 899965787 711261932 44911705 329487077 367531022 349240597 387770654 11697455 47952334 404258570 446183501 170575989 24033751 796326007 829683280 313154610 118586015 25400181 473472005 231038962 55353365 268341764 59088612 185762078 216158297 79034728 512439755 896379154 526846299 90760886 134133369 553123129 670576977 701756689 526339959 701591026 663319725 220335195 28248564 707343228 846389636 748066191 95856579 498700828 578943012 809487941 177576100 136738315 341066599 403334586 819304936 458710638 428366740 779963342 956185364 920477067 272957577 758505261 426610593 377295647 644871678 930016556 543377272 606667228 113741148 690013833 463474722 700296809 244001174 893614745 930085809 926131545 599059058 810149010 997366753 712035014 810651689 378368092 180364790 141081684 162384215 817608208 765684807 927995347 742920706 479675050 763018362 82254150 530654220 470717236 776431951 801662300 692134094 441457392 422934620 338065615 653482057 977388021 109014650 954729468 118593822 34598569 902921574 653859992 434680996 606920597 690313774 273168331 900399893 589658691 147045262 430977657 300473712 460547329 134968145 821499199 763202857 118219330 872957864 510933939 869600497 842273307 248823245 29317021 512347880 184894706 926937909 111475739 7952288 751979329 181274982 439375967 7163823 585985371 743907801 123193018 138290118 266399052 415745995 264342125 45027335 675982060 788101702 464540019 607371287 387896234 678241065 779710557 333976732 302987420 720744088 258494802 390596631 686778474 973987366 81582466 840447654 887666998 940492812 842037042 120046321 618394975 204240283 68860952 56000540 609596986 483571202 319762074 490087987 62511207 680341294 925181504 221293491 366308171 935456680 732468682 518502671 859820661 361677564 212897555 130817921 578848305 249173605 677027436 156345419 54449292 902450767 876426122 731824212 579818820 586865153 159296347 547272774 723646905 905692542 541320650 936052105 819524944 527493166 57038844 25056517 590742043 946637169 912979632 202925188 615167430 155130639 2751712 5012046 813601680 141039113 38149015 189481827 730590253 124526491 867095118 320523603 282884484 314190275 120088909 384350880 514734142 392371116 928551045 878916971 434737857 774077877 845028944 158079514 1033880 854369550 331093153 484787804 160183976 409242027 532109046 131028789 457274128 233000725 27293584 998552231 457801927 427913351 776561426 454016770 58175452 435940387 657658373 335839051 568985896 258839727 796845215 798490818 834555888 933854940 724241694 969226041 278194616 750544653 367902747 928648325 697307474 528847930 352017810 128513489 991406377 421368845 539199067 904260944 399132128 229921729 924664180 34236810 249421005 138023681 143429996 199356972 771319810 517288986 851586795 85511590 185183952 872848485 924467644 744823189 363811815 937475014 81287066 866715090 191793387 813955920 776489292 368985040 399098869 271016993 252662772 207412751 148114036 991573231 358157141 277498068 224724624 802423892 17964298 23716634 940417621 899697077 613222322 540565816 107792399 239182752 779103522 532580770 464902689 220846472 943499309 817273156 790215333 189495976 686496491 871463806 301443036 445019726 767661977 517296780 951207750 249933254 851002212 455972426 752834717 485811503 178464665 799060077 313894486 428007738 284925679 893453838 771036673 656507567 855386157 595523563 800843727 578882880 700723746 127547034 622038754 506014267 728101140 288861864 547632997 922969725 557590204 622538637 830680030 309216289 646327779 835112407 221952440 381321808 725380353 995568038 3506658 884629696 108399018 642384374 403481540 505292226 711678755 902683589 151170971 744045693 570762392 287270110 578253558 706686372 102461026 961686627 760231912 804149486 242576560 740782110 729333057 963449240 271817018 320239236 239751908 337478209 775129759 419853083 469564793 229213143 112695399 175728798 201286089 211213674 940064801 108319591 970388182 794864350 344253884 571443233 856751050 349353728 333400736 326109995 467980046 505088610 439762685 945094270 267433910 4115045 103141952 573110630 812298197 217305156 275960155 46172310 390485432 247708605 845813859 49631718 118276534 914379192 625494581 524020199 834688629 292098125 864946359 919279424 79596916 89166089 927523290 201912565 697428238 19930755 392879641 667672462 896947970 840700635 48802644 748406702 81104043 911872583 332351419 81165930 249459172 595079392 75518446 858957366 440403581 293073753 3382301 793348224 461317092 203520288 657988969 96934190 299616263 86753096 18889258 294233160 254842911 761203539 763947582 658158849 754849849 619541979 97175949 644917673 673674255 638544979 356540179 161592211 967121987 444799897 421935810 382812243 957044203 61926532 515200297 393255610 421992359 2142217 112314669 93794468 600850593 821211721 466228314 541323822 967896147 679847216 65609644 400088751 508936695 400239456 845338988 816070087 927439816 632680383 340554495 270325766 188851560 864376174 794980487 353333029 899948763 676203497 317453923 344603852 658098922 970179036 176669881 409337867 911947347 415559482 787316578 123910462 503532407 336022208 485597805 710700017 926594036 704396385 853672480 278782485 62405413 509459149 370005122 968104583 750477683 385066930 539257905 675492099 259273137 55199556 553960990 949459510 884048446 293131462 150445718 212480519 392308317 942882968 509044934 63932128 97002539 162225091 584698874 177201357 475410464 474993077 156347064 398785384 863878686 345158241 407768420 795116128 721138895 550104744 409226520 888548605 116390972 300389562 790713998 251101593 521542378 169388990 448566835 521453833 422993720 347803522 351720014 518482282 234874415 358189945 332073333 634794541 121177584 821974905 355576533 47437418 58532764 640709206 201833826 6784684 897407597 776174881 874048600 103637004 687070154 698521819 710503811 785230765 932329114 691025628 148972472 521599258 343346187 42698412 694435140 321269074 116374719 786185826 480822481 489863389 967650438 418942422 930055756 19498863 767261902 580774730 184516850 602626102 444537582 447626278 9457611 750405332 861310271 322048381 197097419 187203083 643447682 615524089 766588199 979989036 62399757 719301904 978273537 600308032 956777922 461755482 961457266 398511427 367690158 849015953 425673249 798176636 581011135 708146007 737816165 788167573 635571847 448749199 858578429 821681873 8517693 633951634 637799287 156810534 969301990 736347669 683415615 984572919 371896565 594263872 718434209 499797468 689426930 444433164 83919248 649301881 12848491 457235205 84490377 461744892 194939276 749528315 149484381 461755356 386680828 260938073 46161376 366610443 6451115 31381420 483249669 228755003 307716738 793163681 990466092 658981363 775309554 720277573 369428080 793995867 956543765 190148663 38984449 941480160 3379158 991084470 802615363 941355150 676956272 408567899 238827792 726744210 121121518 42612579 916606426 672012255 239598048 215591136 435843727 645228133 109859497 517494761 705709106 329478484 762369793 825531646 709827089 193683417 984590577 830403933 958159997 356822223 696321277 698165492 524918114 417087325 882485506 768623491 146722442 848936363 908479678 247084860 586729002 990944116 84028527 230104032 232116256 60526961 10747586 276532506 184790630 950531699 635372895 946162420 464414540 500341629 517388453 324075724 331516350 382013055 950456423 332684485 959995405 939651374 703618753 476495413 667630923 561222408 535409449 691177904 119660259 718708481 48303710 33047657 367066932 306697618 161777148 79626301 485893071 781863094 608063959 65841723 59183809 592403872 215309164 533792834 762989195 135807456 426421620 250418081 468581327 977071871 470655561 728247393 790219926 826199004 137001482 534275272 952341112 473382987 275901358 511952149 146169699 530456183 487509414 883766296 706238869 114842286 556315807 33576422 399252210 683781683 365955397 651687199 510085692 166997838 912903375 977420997 322206150 590380296 127295621 487130885 648202324 706122916 351430028 967995278 162210588 44941805 425649882 802358900 730397277 259032600 955992698 941254835 605400720 891627103 458379731 408479476 281928172 810036108 248791794 421724875 59032063 682519678 622539929 566968497 664825070 730338130 357245589 947390299 381781436 326971200 590026414 966537092 21012163 294714039 635952815 760074825 636133271 545514663 114066366 241813424 316886813 910180593 89308811 235884311 301534054 210710031 375565920 539251985 881536253 848262388 742474130 595063046 796040192 685752561 244275358 76581131 267316960 484598684 647558874 357870790 507918592 33590814 130484477 767152504 74317966 129777464 740951210 202527482 55987318 760215598 6482020 756366028 340579835 365169632 893672082 184984761 468448107 624093401 514291658 898625205 118998924 65885043 295413222 795319953 937472544 448879074 943548779 208758048 418719239 468297184 72329527 540109280 379946584 529906033 829267157 745463366 980127418 898438419 260545337 989990712 544844978 566345406 755159324 319379401 193999947 172791630 302869469 366853894 660500259 271050324 474642333 606346612 197017426 990531552 693276365 433361876 292630646 836684213 707943475 454876532 400270725 509123693 970419126 532838340 389743316 36772209 162941149 966516479 44844640 345476414 287445151 499524099 780012170 293894753 498791295 913382424 27815877 771091328 198275482 963579154 36109212 436715312 437324448 790137503 778923196 905918788 210138014 245365136 30775131 683413096 862453051 581234262 118194182 167584162 482628478 35035357 109358203 888080451 117279436 627623404 25311070 421489953 854419610 797703942 255178232 467960881 983475043 356814168 521203779 258801264 975143825 523255929 783843603 647960479 333371928 399064718 231324766 465382449 135628561 822145581 902204108 729630944 152383268 296543288 90030855 885079185 946183953 434918548 417773388 115986770 935088138 829215739 15795880 561772032 182720278 794226642 715255011 245001959 631199728 277058877 414615265 868784903 736147285 743529448 852798039 739992974 875396009 699035301 777924484 56809895 440543405 52884364 919436512 923772884 608689937 787967141 827864752 474218043 496640428 400141256 199047181 609854339 624030264 791016069 916228851 890995721 583529763 15587893 64228643 870014237 270792547 349957754 491272234 358597009 438859187 597519364 561946592 543095740 420383682 161210127 352155748 269521682 906799612 839984347 246471440 342061494 727937780 536897889 570382544 571943783 555704568 905321005 827958379 659727678 560033703 291106564 504535533 145823127 520853044 236768906 292408561 918211084 204040529 762639013 508293193 488081918 913898547 387332779 617678777 969054274 511050889 25331271 996013533 724603814 775921736 808250988 950968435 856264659 197839285 630718509 484116574 112849229 344849013 566670639 697199194 16238821 386395163 919436640 743254818 137820822 878610625 884107765 915606245 774460689 944456487 901471314 764422907 234881960 898716045 367396906 768418222 742492433 88308319 901489451 282152395 810489993 724149288 970917119 81396178 319411068 676208650 872706085 480487396 785857378 38917844 607826638 392733617 426892342 362778827 866580073 702170395 598500443 927169156 912623897 826968848 783484701 496239368 107552912 253673913 152831694 173784821 152011727 105590759 61252504 525156313 800095589 510270350 61748182 819308152 654995646 859027139 611801063 141687554 8449959 108597813 32968611 767842767 428406890 237657123 148579342 828080504 914397187 840792640 915113815 520576899 703522283 690929870 57586752 724805978 858765709 510028610 515159807 306273731 34919673 645041859 207237593 846781409 63192279 810391693 999445987 377191528 833333759 804414754 275575735 183030350 330841869 247055744 37987365 980871881 902497269 661885546 820412790 939599476 979553308 423151616 493169333 714956539 742869595 177799672 503985287 745794161 778757260 827106712 58356179 837278614 829557723 811812408 80189014 586483560 470240696 323907301 653136961 806627100 844519368 523864998 830482009 231943986 284822869 677371884 347638798 239244218 277450390 426557951 427493449 682024915 829619891 982317586 467569486 463005724 55359637 606564718 400737457 404257311 478167839 60335104 444268299 257992751 564022882 297755352 155759653 938073470 282035204 473204599 340851481 778543795 54644643 123526490 304268631 325660720 41088788 865856072 720472420 494073992 500486668 795677241 828878232 425713817 555788779 762531579 113690761 696085493 677156699 88808229 965876635 888568506 527972919 860655133 83562411 799233294 782511161 802113342 256585683 82271661 199757501 537909740 326642741 184039774 991255061 982386181 633013121 937987244 368442216 883601185 477551251 897211595 591614478 759646661 252576566 875557983 873022658 14378438 454724983 561018719 394120368 539712253 60800686 567587541 137753262 25400695 365370366 678542984 586546505 496621586 956559764 917949835 669638164 950874997 233177778 454208431 540693616 590179040 728205157 504668526 277785946 518719470 585849303 938502796 713311428 140493587 446033035 120374854 76971447 519924166 398052623 329340559 734171309 290490891 368289955 440684746 453529727 358189383 255832012 707638832 116736693 211265455 308536185 306720456 243628781 290042948 254576945 312047258 332884501 702891803 133911372 956251479 911300371 29499480 24496974 565956070 221497840 301367258 406081378 487990456 242476255 622875626 300820401 892370842 168296587 568407383 880864979 74571800 712610412 529409487 696390144 317552303 172043647 985722253 287163083 896718260 884066464 494362100 409687206 408099147 198199816 166417115 324397308 567628175 259409633 984591374 917125741 27022871 822838729 545128539 597979162 423685980 756456867 543648524 601374927 229531003 889681166 637286026 409184993 404430585 197743093 265893555 504505587 812370622 482976001 963296865 292301090 334691564 311553097 143923877 867631166 270626421 800979686 874845842 555172955 248438733 338611546 213427434 337079844 580565494 531669225 799980150 821805971 104376821 29387520 188901309 597836385 237707844 303485397 255609338 810425259 479726052 209990870 762527315 306918126 240984159 244114607 120895970 633091767 707450963 517552522 671195060 66918894 382366453 410352858 789203486 239290430 892136083 831641160 958925865 981611700 929963877 83278058 142628354 84723837 337743922 530979399 479323860 693796676 823441928 477659264 238765729 215006029 392721119 151314875 863003214 992552319 867302742 30930179 141342737 302239074 142105168 334138037 211801697 912006052 648939680 205189318 968475958 902537680 171929186 765380796 406227895 350649102 301583623 80230471 938138603 951496893 658539726 869480323 803216731 340349965 194369196 974275526 576942985 83644575 992966408 387150295 753836593 659056652 333426793 319172390 951314709 335228307 145060065 474004175 152187468 186620899 516799182 664119906 649434863 245365254 115026970 509511250 77735413 202150630 974485584 577147890 729432628 934358405 873988472 55908379 190540523 797390346 400168471 676359478 428464565 306465240 594112664 836676425 729990023 81395023 858368633 119161229 314244617 337967741 785770173 235384639 853051079 439598933 254300452 345610805 411501636 46182325 909596214 200559438 415376133 834289636 927750671 466604448 918813207 437101049 160916992 574229463 165132983 684006257 530913140 967549666 448084037 872929716 895380818 107862416 641863842 429060002 890450114 46359026 366177721 778470237 517023030 688432132 231866574 49716215 122092296 860423994 46993205 874873955 874597022 541363063 370593923 893044954 811489806 88710966 250827018 73749423 462487063 701289828 82971373 661765480 800525269 650929521 924184373 607410052 198305665 58565792 409467341 398633980 793092401 217926087 76705213 363489473 376046017 592943380 374671525 689848261 538206068 934150851 340429456 393492686 501719317 225934303 372403402 655776558 38745333 263509169 39188063 801056454 237883813 103767271 644342427 702053299 305162651 480674366 444656035 169887946 862437208 728478951 971919618 936016822 571559477 66311059 975458090 79176865 794972273 632881845 94722037 274127687 412411196 219326586 157915301 73935919 905956921 463546972 565563879 745696320 775300093 234262482 214590051 270788852 295771726 560387689 109628033 750286739 709445299 597320162 36394786 300172269 494533534 689564441 197417273 481772673 298816235 997411048 37123710 774241498 301424672 332909457 995822388 294929267 237872481 666389360 575773729 953758498 783291159 805159761 297222162 482708389 554928593 614756607 864362202 247376167 994559024 157242389 435462997 313548753 149823351 368234866 479462281 664893571 743075688 139832531 318009247 491392537 96743306 854646203 479841459 54058830 460663075 603857093 276920747 700192518 284436586 208647623 930965210 495754646 600326926 481860613 464755258 251729107 385956872 985914313 4651354 889675201 236172308 750112080 772022416 597225903 36805153 251166848 866189968 189785260 591437309 346736648 910677541 595132281 442390909 980340542 169229494 172446975 518363232 962993305 964318979 781299211 224622769 789805581 860950806 523420543 950582855 549663066 631500432 537174736 247575196 54204710 468028154 61418208 580701127 373557027 607016985 23238158 476223298 847502062 608978706 583807217 145939935 954503899 989976802 596403295 154945002 597467434 452213818 14519116 274847788 899726513 322839184 946578550 589235029 206179487 363084006 219294135 171098261 707893296 810340148 322303426 632500562 206402282 770059674 387918934 146600659 244207213 590026911 193995215 105794733 81455031 75825579 49687701 508797218 29070266 424850845 594593575 952796527 867068644 682976742 54499953 882776563 54551342 668396708 786966416 118781920 690619251 100616721 804481874 599076822 809252154 872390101 301495908 118426460 792648137 916583877 396520203 936664752 775689347 597126935 422888354 209173400 271517405 766855572 178684439 671584148 529289421 76914053 268709488 783496276 330697020 232121474 843911739 775006727 991334063 100352482 173516762 949898437 82027964 299360799 389968439 566963991 672826062 678350884 263644163 375719586 883147004 21902997 897864564 139678288 65614377 2459728 540025146 406261700 962997678 690117708 968735299 634992515 714674492 19693846 417689628 125498558 276984898 969029766 418454617 151053066 968375249 187431518 156739720 126341842 770423533 828727509 446225155 427570372 225534306 638978960 563055122 840480339 240753017 994856128 318376279 520945993 199723565 824162421 113475799 793795652 747186554 974345475 777914599 972799314 452169672 570185726 116194454 701190563 818614677 534398188 537138314 604259674 924810457 662548952 359096910 267313674 550016311 811224343 900484170 417301711 595241928 978694271 480511392 615572410 779777717 245265482 223327189 63597232 823714221 997644541 681465609 171251017 33905930 828143521 494276359 827293704 581619343 182993586 569738574 740843269 185726783 778442299 292325455 248219301 765949013 14472772 201693802 632644765 139149484 101237818 936316840 920706710 228755779 47035671 404167661 700913446 978456881 55603706 959934200 435821330 2071531 601637708 337296376 159338459 737962390 115364112 937274099 825998828 678174665 60158961 727183449 920711934 46940635 118360099 121340997 513998737 717075977 186636864 276056398 474568369 111281155 225057826 424453627 73135468 436270868 119788336 931004992 136561889 124391848 398892338 684035248 237901017 896765656 794819954 319115737 263606221 414006012 94178763 372468467 219769523 450919973 274305547 514660709 220630785 657127210 174178719 582293104 246774142 503611594 897065321 946495955 666895655 145007680 776965786 192918045 773958405 684546813 596066970 284484257 892386224 228987871 441124812 870537353 884384383 62478414 487160525 303899633 921928603 769235982 355481409 105529530 887165819 561506555 653586759 221183458 303055079 116913918 451044533 776253432 929930289 782523866 55652921 60378593 248622974 483360905 259201472 189141267 93961088 465102136 340507644 473602571 972164836 157395837 194829177 743497470 504475983 593879986 716166701 405706801 846322859 303032500 941212741 972915189 592461399 277746584 622913139 581366910 194789197 216153812 287611835 996847586 49333250 798706469 522213302 46959941 265918453 240194634 755709649 877531041 131005732 188417457 744602887 536559056 226376044 91869740 301192293 909991081 470956311 510317655 749439921 808181366 295887691 916666066 228220794 182593982 243774286 381170754 742549572 322695983 945941553 711411317 836304907 951794399 626976206 72526428 301871060 665917673 315890449 210212278 721685901 222351401 560077131 646919581 878075784 920090429 200847192 967342736 856683990 237397717 809258938 428873602 916522915 769983538 302092243 226893978 67045080 860779197 107395529 152609594 702285064 118911327 629256485 329902133 518496860 686863917 599636101 569725503 630596585 330255876 377759780 434785053 515810815 33155683 724960706 696049309 452275725 848002514 402838 443860461 833572509 96141610 829463762 818729325 545792693 239161613 346059181 571799545 558773385 928207088 357180242 705304857 152274938 910590195 836659535 852277612 462640668 678073479 4747512 225223861 679786019 238295204 846803459 575953783 644823465 479996060 613345503 807276977 503681985 234287811 729630275 740543225 110806624 571926417 757258234 130004408 51199035 680531707 399083825 643100336 297362656 685680586 141223600 334918456 993211797 432160341 649887672 537139430 685197757 370658539 366845252 33263074 67246738 294833397 403452743 183728176 974164134 417488942 128750095 674039674 82962962 710232133 805407512 438248046 122369010 877928801 235273881 631313989 957843245 98861054 636162026 828184063 521671031 468280634 384503623 314480142 13270967 736468346 244343315 620337303 630077639 518188971 353211802 315570696 746970147 518497355 108338504 759050426 607914478 31836057 379637151 621860672 591930143 311380229 422166902 105662814 631337042 803957167 265253129 137029001 524759632 978843969 842820451 593228721 816877826 616882689 219120410 988991936 997098812 101803610 259684393 856524401 962187228 247637969 183366504 609826646 740419583 584768587 793357998 482757710 867670385 391296692 899404426 492765808 774116469 427452942 547254691 741684614 199940053 521571958 254551930 993694054 433275771 26727747 824461442 869359839 285273098 428787118 601121452 854461811 842589221 473181413 895811763 587216923 404974729 174418317 717333279 288433604 804072166 624730545 36916981 159052689 520846638 255212698 691644546 987022264 592333229 581858521 631086735 155620152 523247751 866420611 968093116 240167155 219144188 427061829 427805605 727268450 873804135 992299464 7674518 46674507 673415733 988839948 699031787 102783388 285483358 491955056 442601245 537906840 843205508 769599222 14461893 124359956 892691656 675297140 622236489 111544865 801712230 655474386 21475359 171082039 47208066 474824054 835671335 236275754 733758930 870604480 724431338 319682310 681334458 79616693 667688482 279928398 966835120 567258267 538853605 581539798 659115149 76504533 120322118 502614566 267592538 683448962 400202655 441641156 66865650 158188411 832103836 534482049 983888810 479103188 346203321 686082151 74403278 318911446 970882705 21426893 463377330 341077124 84278110 396509459 368073587 589930010 651229056 269115653 642333295 233444040 633137658 348837868 31590564 682841519 793883785 283851994 637160839 152310817 66809861 487885626 369240903 656304995 538969616 326254490 137829719 133093293 20724424 431643474 868321990 728023891 787418604 558022866 942566788 835793198 252673208 903595014 48516263 408391407 458825446 520641331 115503327 574463884 781758457 894969567 736992746 595104947 716475408 199368756 900868878 168643724 375930790 450599172 682826193 205270728 778739648 472294909 636322772 238077361 672234127 306940450 407695015 988992835 864823349 46581813 886057538 992687218 926989869 936211910 64594518 565318077 660620910 67183969 125854566 500533358 970100933 854555959 942382960 118025440 863729578 688494131 703663027 55034791 305793980 345447154 422478329 752512205 560068719 277192476 123346902 209979296 82106792 342375828 338631913 421404911 35988316 780935793 941368671 935158982 161175885 277761444 946998076 386939966 156306888 299408785 990340677 617770912 159377078 477777440 414289690 328593832 849867810 913692748 966758770 563311095 930540889 259218283 786760216 525176978 109284924 447215273 508681522 210101606 206753299 357017673 606205218 437407085 115213876 602406049 727073508 94283341 26008334 91120944 436515947 394426220 635329895 903503812 230013464 885593109 553573566 892788663 219542085 874709124 84643134 702843786 292581976 131275882 173353541 338454386 889766464 377244920 216421819 924961455 350807940 556033811 322177381 899091478 41504833 555242085 608925148 997729184 969185814 313875028 300114650 627714143 214816572 422922062 327188033 130861315 794309744 687423886 580139313 789689617 755257845 997654524 267210106 232572674 285732880 803667936 497228347 840958461 349482170 959779701 446629790 379481755 582189621 659474264 243755746 378906383 251215069 259160961 347627433 347986316 473587730 165681789 940011434 357658380 868263749 154665355 634828136 545678696 662127258 539472162 510460218 222765804 677867172 56754998 372108249 882001895 367508787 746618841 570629047 160444011 404440064 436091195 863868977 43341223 151747377 385195243 25290644 918150804 248913087 425781835 669625253 656215081 625262491 557580101 551234515 894563597 696965332 529087411 526015304 385476454 437849092 34862372 869279432 156437495 557590209 233197601 738078649 742170258 345179910 965055574 386642129 784625791 864793587 129815803 237467800 542389430 635715838 818105400 297305630 511552865 618501708 165941686 386618464 473091974 486258993 744263777 238443546 754534208 708723841 152824769 825061996 703547210 446760474 762029600 713486182 923837630 29535992 289145352 599367590 430974837 552949345 702507471 902409716 725159234 396723196 230515666 581013524 774012102 36106187 963805866 770671804 246610111 492943958 499057307 257928272 65407241 566002728 682446727 652246491 525794434 918617641 331991420 805135807 185000127 870152651 513103378 851429740 512073097 417814750 978943268 124759532 538012366 964719760 20940705 70684392 810779348 7133283 639797988 48710660 555775559 928423936 535618186 498166322 563054448 405362977 695403867 904699210 194816376 184697366 631271676 347950070 647855072 896270772 287832576 438397667 548682196 803241155 238708341 547968883 498936438 471314353 44007438 260551236 812019787 530300782 692081722 570332681 992338760 267776928 993741484 786103691 984575603 771565028 849038519 8081726 877127200 37446526 407851139 362542356 568551410 256520693 589195833 3879484 492374040 340919629 299801612 875972013 418827535 10357422 660492272 262566709 224172469 735457346 880294905 729282781 129193776 259786186 330274596 730318778 544886801 887079181 575252837 561471358 280059934 804765568 256440896 150150083 94889137 416297293 293383129 76475731 764106448 271287475 535592060 34552429 868883018 7771190 929454439 482417112 459164846 784495141 62087509 10520554 141080433 445489558 391119216 130481487 189044406 935931517 630883097 71201791 158575130 334510500 545635252 128874757 858825782 224125595 960026156 275292765 587919752 484671674 73231796 546474114 721782482 519031853 641842684 471828741 590973416 930096613 606802915 579108665 217434918 95940084 265517041 459048984 202392728 935099277 65351110 145111629 154847840 844857085 593796364 775994880 788462072 768477637 330935427 681300327 226844315 102110195 223365087 400065970 390190217 9130551 185172321 799460031 342556908 811412211 707266340 615109188 171251409 517715507 69885284 819654738 303787588 885912394 471040170 592965908 721465729 768929730 528279069 646585665 444711945 582125465 388337604 848314440 49952263 337868340 51036802 330276151 366633664 315747701 708405550 885526818 761123334 69078129 39930364 419965669 976740209 75888688 106031389 867342660 556152597 740998334 57785640 122276196 395235779 302970729 461466352 496308254 514969484 844384716 40905135 664650529 241755109 824285551 463483997 471751852 726475816 94117761 565314088 624896343 484463537 164593061 640601569 240088261 814592616 827729522 248152465 946649159 904065769 530301757 297484349 786523352 271443436 419644318 794775660 370845597 84390029 633017891 539334452 91758168 284123574 434634738 824917345 653879834 75791105 53657588 201943028 89484714 903197871 811042067 99799910 926130771 572310852 774034689 443912277 649065030 738788993 478965450 939545898 886212805 582161179 898475147 920934241 944925583 275055802 524928096 149481924 83702204 218629405 773134709 273245689 131078451 582600347 647918010 714455136 54003983 560279861 245571818 709188155 462441928 153071297 557652595 682952950 113750152 342689663 949238942 127277370 309362587 553143461 843786577 268639428 19711594 542004466 632837299 336536360 629611911 857625286 241061772 150163880 138963688 566389108 521341929 480814970 315917438 104612988 232323570 309427310 78842832 740053987 37673478 416628940 977714818 862498780 982234546 448311383 77946929 63873546 289598839 515213859 146724248 138746602 392808930 14401664 945409326 500567732 229991955 232020862 195008999 932422439 794021048 916901945 290260932 833512535 743754543 881347170 39398313 12791482 943753088 841839440 590020296 494568244 709722555 595930419 659401243 451848172 754435624 146994824 681618754 394350123 672869819 754531973 586583190 956661533 403462350 335590511 37768255 126883207 627608213 830998834 733450403 785747973 697788069 435211281 345338259 51967560 304629650 733167424 383023861 891701282 715351295 685316773 974901188 818276393 247291045 526734893 226920428 465290107 367848642 850256890 454356802 749530358 684225802 16854380 106439061 214729014 166047111 238066076 380754519 14427212 593524973 931125593 891251968 493476134 727540852 8177592 99581292 94413669 421671238 316878396 703411203 434429740 390228578 826351148 318656081 87353469 941080631 875082376 534303386 940076076 52103089 847841628 539230934 173951897 562596697 522230245 273849630 699334190 689144228 773592387 853213211 176125099 942355033 454391814 52013354 152999397 803159143 874084577 121641009 982009072 404790376 979439191 571113569 911779046 960453105 921011682 327658822 404929310 327685517 919262285 608253751 817374568 482530060 226083199 145098923 539300531 647863928 257025090 381114810 840794367 580642298 391037448 327040184 36515706 326990482 659094672 343293279 32449112 894614236 478662003 995848862 918141489 54937233 32306268 809676706 129432383 185880690 395808701 763390723 553625235 960569965 222376546 269608409 672943317 576417355 682320076 980792002 509304059 385027232 507435850 32006275 483606711 591976783 59142616 731603341 341307734 832814555 576442045 801929815 344647212 943325014 253323199 848892278 251265226 656666087 6162260 598044902 797428370 107681215 233917406 451125890 350366524 180008629 164822740 857665242 368318022 803906992 210313241 821254631 365000051 424178556 739342390 826467241 246541158 423879065 595782177 283654229 466263337 22444334 428807675 602028187 341944115 568162380 191966102 309669568 801334580 951643541 198617039 492206879 106313103 605754501 299633863 124876428 604397130 223952790 789032637 810779586 422386290 332534943 455997286 96904759 904041822 76445827 705818269 318657515 323843560 744268298 250395107 637846674 48976033 222352869 573917492 939299781 669093917 756183135 455480857 843673041 733253293 765987950 985193682 596567203 890483645 151703586 254501400 433030808 401651 758514014 679610050 934190565 923900619 319367872 164464146 697651952 896294601 241111823 398704363 579986973 70847676 954828405 340421127 384033144 664382147 838116146 970270458 262791141 669147253 229293291 841822502 329206742 145195468 1670297 66522642 135958054 778530078 721398314 396494992 980607807 844157606 695931357 89424151 634637752 202237695 731751720 677251518 115204363 7269172 133137418 829270938 875963827 436687138 915528839 910070849 703827468 353210361 346192562 980812299 85824674 895593862 614686655 897202965 336925038 173697744 545833558 484636795 526515676 300460933 49838510 943860231 893905701 149472309 806386478 355968402 789903718 588469932 156189119 142501026 394001148 841821897 916259681 759773059 225513222 984187739 64699465 480520239 357468425 251431979 307579480 535301091 109983733 822420603 764379742 908384526 40416894 902801581 871344404 486813326 413181699 503490907 216807500 235338694 275262731 925653660 681159685 666706975 135564633 273789954 946715641 421339797 773979820 207288621 110943093 26280495 399346745 40655208 97004145 453221224 457718590 35979923 987310053 788845955 877809782 714812273 598463876 189330533 536167891 432332267 798172274 60510069 496555292 32107531 100716951 883075223 962848898 301664944 139307421 107709845 120811332 792219852 751814081 761106496 30837848 89702319 723227895 174967599 284164150 409207436 496323711 741889162 959894799 282096288 249991886 961409801 421564743 117762369 638627276 582163429 823572350 693064691 369788329 388001892 774887115 113391905 475830798 367819213 273108440 531153667 924645284 376532711 439368345 332526895 222304923 328146071 658837742 319205270 318775764 80109026 501138108 689254678 355609254 468379778 270250676 379477433 954840280 196983718 800677920 773563482 679444196 48071896 428745080 839853154 948659667 937391457 522777227 833688270 891710943 660668742 889689916 51480506 339291050 502217257 202257965 634260324 267022624 455944731 167939842 94769795 935761051 316358364 16374116 451388074 295766020 106298009 863301568 892954391 593965279 253230821 568981796 102443699 702853548 563043386 690016533 694317264 425564635 454546560 999909394 263244618 896058853 867575686 350621432 239868498 603335842 297171899 707926319 355069878 638884832 542163292 424745480 797272618 400052200 836504075 295976794 279882997 471187670 914421533 398433201 76324638 835168433 159832046 869369572 400299122 599645897 726789939 421825053 4701902 96425884 58194527 882806764 506163875 36290331 446651786 790463013 562890209 49417292 475942315 338927883 228806164 596337068 806259020 446959814 115858098 279291598 743394544 827948431 220248756 212486490 406117255 907017963 977174522 328522677 170800617 125673158 223893367 304673951 957651614 348152113 733440558 217749869 147470771 669435865 310794169 886129002 939801171 586046507 672365670 170678894 812529743 184659632 296427768 572185676 546168467 596498901 448584178 343085161 756116381 768009545 962651510 204416921 949694294 279715615 985532916 384744833 71169577 529114722 965284828 139361126 105228183 903327363 557832967 10170115 347051151 758030039 254603663 134004945 20334844 623814618 934561176 484952462 389503749 253326312 487462647 667739492 679926264 770811110 79952275 593530519 568934004 910976557 357792383 786333871 802452244 137361129 815743539 333219899 772649947 702707439 745801682 273544247 102301266 535874956 916164885 440660286 306789464 952716042 910974965 845178455 207776694 23706286 52637688 973855137 953847550 743283438 907968264 147572601 552286915 234616975 359661866 151957371 839637706 94134137 583895309 926354541 256834518 878190281 675964888 178052038 19927003 868760728 226122874 330406954 68889357 297516065 408847696 731330417 642089458 875555256 596427273 213484867 698683869 929357964 210681605 700912658 541470943 647140078 341222701 18790238 20524171 493963482 686788970 229206852 168761738 285935198 98575527 529358676 732296719 982415458 216270546 256690914 13665962 507898921 123153773 675255964 548492637 198831134 389461860 586913368 95143718 284602819 919782766 76235083 197881272 625571239 666836839 518677422 54135501 286286095 533798733 992037754 473459399 799605801 207960658 773512039 762984034 75167979 987517514 217589265 769807598 288878074 273401938 80257569 593538129 165350204 231635711 232916330 793423778 822147605 587654842 334629565 215444079 878456671 969764773 574552445 172243900 373285918 268943596 849143704 890649455 333437160 510533999 34079672 213536742 880584948 795441514 930504790 369064662 146213037 939223940 348544750 543764333 63837459 116924960 477199414 776703158 429499584 597686688 581664004 343833734 661505254 449749397 868297986 578584092 943669174 251468359 542822240 867459373 161375022 275208368 522372393 265457361 820925980 585738506 962813803 377868829 632089606 433943091 116341974 970289137 314589153 17011692 409695457 998762074 83724774 24261777 388382433 86864858 942236457 718673702 517836508 462690279 190363091 622790718 99552562 425730559 725826335 808045751 943332785 108962529 105648562 905700348 735148454 326916697 466950403 284561735 876663604 760735313 674377429 586694703 25654019 83720398 209576374 184856823 925404512 778477317 966509001 921285799 814879557 26530287 296333319 762404163 435280935 843892436 336710652 538611928 499879462 490982339 283762231 911521516 275677746 778274996 799126900 629621386 463314161 899846754 318875560 16860944 411265671 170840708 904639125 25985163 723340073 317094752 497025191 351125098 422885515 416549811 313227426 942018848 123241141 335800677 794570934 483595613 284276307 147672646 289801932 955525771 815685023 908420390 139497068 257250156 290120395 316187530 551684670 11451351 433921006 259820015 276715971 536166266 303593184 619758144 64545956 893585648 613767767 648979085 33597162 403859834 274372081 79994290 543829735 526128969 641613741 569507547 99311874 940143307 30563549 919126176 720582631 11433240 481162210 244230389 816418572 456501859 504160764 598499946 505554530 491074646 366847236 402039358 629633851 532436936 291828481 458675274 329454566 987764401 261718743 983330566 234243957 604599815 509327201 777653624 85506769 436935554 406436447 444376457 280357203 146795024 221460799 535141142 115331288 533304339 382618053 702610154 442159721 587435882 978320078 708707019 521527763 687626114 625308839 499590573 100266803 47090590 615320965 266653768 414432370 455506492 919039670 376616271 41819071 834428660 911185072 868063571 49498085 64041281 817931500 621596813 454236674 804453468 183079319 544857683 236001243 865332974 723717255 488326711 612041580 862103146 33407162 97706715 907216316 614569912 341934976 604814604 366582871 234321735 809538512 991215324 217143269 444414433 560720295 672009445 273555873 460507710 325061445 270577888 53961067 552538200 679449793 175137366 418704811 346780599 416452342 506111474 833611202 414223683 980621269 224504426 755380978 786093794 801968526 258064996 513413809 240063169 259435089 285531078 163427376 953132326 549241923 142232791 175550371 997247537 466457348 122953810 403961519 519137558 555533533 383249361 62491061 679530135 443089257 687445373 247117631 1043662 324810318 550262998 523700314 905893478 900122353 434897861 930508772 814281647 215190302 521687754 448349803 381448436 30943465 459538045 681109314 338247877 349255074 149840691 155517743 994579733 22100843 410257746 42503715 53378503 179137352 436267296 390872526 896804331 555663827 764928735 379009514 501043379 90317905 691322076 747811945 796944833 665152704 505156771 494419559 70088433 291628724 704825064 11959282 124634525 212647631 552772541 830142390 805914134 565129424 263430543 364243349 999331226 737212167 423768154 481109606 511656669 473301973 467684697 813355220 406639205 779057893 133756334 941372487 77105865 735604440 670579874 582590513 997565156 314216080 561028502 212271828 162764033 449716203 153471178 508856588 783522713 412272227 549720174 791999335 727061928 807208055 179385789 319572679 580125953 486325428 234167914 135930299 977215182 402781152 345465359 247928687 843501745 315984525 768096258 271762690 572305665 4582204 604414220 858668716 665720745 715694059 303202166 326411024 760565611 74640124 425481560 264645653 470384475 830172723 387725607 797927135 821398268 574546965 475234620 610655467 76274241 856233500 565295377 720836366 58180374 822829422 165951860 149759012 896366039 265937914 759130867 652021355 166777556 443304211 13779985 859043885 911633409 254969113 210728442 865605922 139511180 191143219 678788661 605524155 791541055 50320368 169484443 716058896 38490356 11281877 441992141 409806980 788684416 900820609 898806197 135985084 629588770 519468056 58129848 15266325 467883284 271663462 753137963 631568874 660147413 182549446 347659135 491651309 104511819 414502699 104300256 584163229 544452867 666665386 242837545 269184672 497815962 105732432 590239303 255999560 176692075 731769613 974162031 196162594 972321567 638062373 952223603 270362548 503608085 655068987 318450532 653527553 143318173 608912072 800091310 141422456 23923746 982241992 106678621 840373996 122901336 298347900 199302539 894673176 285227686 590184504 438368107 801234509 492695856 453927342 651831472 704225990 574778152 424770054 307190457 681054130 966185158 124181218 438269843 665663924 175668684 161435749 163095142 761130070 147843257 948458472 611493896 645170883 73686341 885244074 316511522 860198465 20193603 424380112 401275234 662650873 808196380 537178743 984373288 818663769 630306594 156206726 223147474 588780121 31240178 453581268 838535596 497560874 353334273 812697510 393055169 563659661 675344455 685528010 681619355 367712671 213045915 935630154 185143515 473102734 85208318 274673780 107087542 985558354 906348324 386967324 144632039 900229964 333732889 797609234 269591982 910103831 998859011 796867293 982637723 230729767 354331735 701307973 54116036 573942403 464629988 894282883 569905554 499691620 492225862 499914225 336189167 632793521 999712508 89125269 348314473 343711486 969853887 341752749 611565875 405672169 84914023 625189937 588013488 411650790 27288199 248166652 20612941 535907789 852334201 537010009 385905503 923753656 740000967 826493721 874776792 244499497 933845910 419557932 400513534 891280577 83897181 569394634 421279762 868070250 778195401 378458271 195534371 785709157 349766901 735966226 746581656 912254579 97119521 184070055 275771718 632349528 251668789 658872505 196063957 420945818 747526302 861675489 768438436 706849527 121890875 79741535 206300545 360604266 355150788 805045381 43522981 558227563 978061716 643555609 86618240 304528934 651306406 368498331 897135427 294257280 717693600 410456481 63696018 505411575 881860980 17891962 832873956 806202307 516987115 812187206 118110891 164875269 3488151 315374599 775494894 1917423 366005902 862764883 372288064 235983666 764515095 709154847 888509063 681468163 115954330 396870518 623106662 927099345 421595904 863381872 872505366 834710719 15033608 868024439 581806291 848233943 265514020 535700117 129673644 164697540 660639728 445750509 306703045 418451693 556450389 233937995 641657696 736859250 177624860 924105038 364170159 949059756 404304792 928954230 406641194 321041187 235257657 663826281 158472934 661022080 962914265 143696035 154090119 176707659 353406408 948215669 289408394 373027145 646196261 786499157 293360164 858567195 335359876 282540332 801345636 731900629 227618646 70623052 271864532 118602776 295309414 301784917 392247074 880147151 744775763 14516285 977292858 803388668 978752408 658351009 564072070 36455805 543030809 42105415 998334561 656246736 527680929 247769815 591320845 954385509 273606039 580849448 162440405 890565916 478276646 943638341 877571286 824403303 399269465 173150805 401254818 646556847 592697770 132093666 19891274 602018952 151697915 943437445 26787523 420474049 307310235 726422529 837717454 610703082 387461949 127350740 798257968 58978473 450442593 412596259 604459500 284791103 579508582 20574102 918348486 683860055 968070817 26628676 194238627 971294119 107903823 384902324 342272723 655708852 247469339 402795351 958971938 757251287 392273825 434592601 990088237 437612186 643442575 79723156 261804429 454487196 899875418 744000416 825870837 419129689 733924950 527219457 125964773 595007942 962987055 693623068 662823976 881924018 276770249 232799178 2538968 477745557 290723438 721941129 511959706 695740571 977957416 617626837 561235898 652757196 887768271 634131962 270799213 824746026 451731859 895685172 904996096 420318894 581531844 419307365 754729744 221792999 910543295 778126329 646094932 446919028 214240950 793168647 214597466 699149648 559046791 856253039 859737223 959874672 850536216 338382156 822865454 475057462 709942064 375928085 225782872 980793297 441042064 606295138 825660296 278898532 131065850 540336058 704042855 479168909 939616995 493921261 871024860 105779427 478442605 26103677 471348984 738119562 971393751 4501953 809760041 801487880 205196740 214206268 591514172 183239382 839175415 275378089 371949455 827608877 336349873 807868359 884439521 92736706 786312491 56382094 727479942 966264538 919210786 609055617 266098041 658586896 81048725 959860239 814721811 215817373 188959261 952993810 439422588 409596912 497388285 782414121 427915470 37761148 539519592 730302525 503454126 656799280 738667943 33253628 942179629 117244712 321663306 206064653 115555160 356327274 263979620 784095025 386581573 17375412 12483405 115955222 985360762 200523754 715653277 231575640 530321412 451911207 158007628 132721086 399495320 178180638 596844479 122034017 625232220 737743509 989015546 888233331 200927707 386527499 293278374 660821559 190820742 708195374 265662296 116313512 315565973 205178185 288512013 904576798 885721756 184599801 49228950 80128733 264629070 434650185 232337568 345200602 360663563 422203560 216812859 679190362 57925941 182976100 538008864 717391344 179081510 465839071 345934182 483541680 977814203 836494911 275163843 174365342 642585613 347355667 306813794 463113396 99306316 925545585 168904419 1185071 119099200 997189399 32079943 363121207 818820141 796399283 748756906 823140158 869618786 5852513 346442174 502996027 653931975 914910318 941541041 436077630 322156988 500400796 90273532 912813594 977577998 791711304 690703343 268456914 378437400 122725391 96154296 436957198 111897756 632016025 269261733 397041537 439518114 766726189 402029024 456017701 40881248 827387434 698692277 198892746 499087076 287917112 555967077 778818837 14607654 691900489 397743577 396906256 389374341 535785236 190945791 933657698 597121560 606703391 396479963 631095613 614650961 416160213 827254200 91658536 95687023 990257056 382582767 204491637 781130892 877457357 2064174 207414957 811223907 60719777 108459535 584286597 833870129 789247084 280505705 797994824 958699488 771981759 770741968 355844608 924093194 385598206 784232341 387340292 872719484 903057352 727770089 717832157 343573473 484078548 450043054 104876797 66536558 245936904 356310736 928650061 691370694 386669224 127314571 326027807 357476770 171330680 253770894 257175916 722014973 675392090 981185825 87052406 721288015 373986041 767709161 448557239 330610570 735360321 400558363 409605539 303534820 122536285 754876316 873326812 946378584 470280281 631666514 358777968 23404392 337852448 511547 657188404 446924254 624867346 488913074 436259849 423043805 972604710 857623113 122977650 50614059 216599014 636459106 941577618 170497800 790063186 797688336 349444014 105462944 209746591 696306832 412760962 751168178 755831447 400755789 678493618 444943071 5307646 870154405 923223243 315527342 904336020 261972235 431989263 998250939 548293525 864631452 138941276 960039264 363340913 105990998 310436760 742215906 228124795 122729381 833968335 293623988 246516285 435185497 13666387 118368682 207974891 497271030 175738100 560986741 965387175 358831295 739692645 481272274 462581892 698779448 582387845 955256647 365767828 15545247 751759933 64135285 796914402 205985328 537310436 178778624 712495868 694965228 434872943 574909846 175750002 816266520 558217981 905326101 320695872 266147547 972647799 20222157 384238566 548598508 315897952 561170239 746007208 818841323 626668178 480916101 33686703 767129289 206502118 796512945 265519941 671881016 610617358 133029506 505292411 33775298 329863980 352746583 849596141 757617772 334618811 624132447 327812421 417093547 17530964 433359480 741037405 709376217 699134103 12696027 50249907 784779237 49636778 422479931 945460059 682603880 503111827 707663314 738814346 836830218 612694068 464869249 459790014 58728504 909429362 859656779 326005611 149400969 632032640 393067376 272395105 663917858 954109876 872206150 679423398 391656907 588839309 802621132 21681203 806031675 95155160 950918872 557209976 778010636 58189336 424741051 121702647 945198725 726099018 287195227 835530671 21204367 556493357 280956438 306310643 229203807 48059831 851560089 700095767 218131739 852633646 566564170 654804295 749430629 882729975 491210811 468234453 915958257 580275786 835183907 122225673 382488828 930147116 102815096 479856668 576882655 469406873 557767847 502190904 667761722 614329869 489308418 571650462 711259956 557064003 301721939 933983104 858657125 174536363 78907312 626435253 835523706 75349855 452123073 69648179 208819145 714373199 979968571 301880143 779426832 269011241 902003205 100458125 844944095 666259577 595583381 141653131 179665293 118719440 900511327 554293790 334323508 700528039 545484486 956657705 109154475 202242414 598367315 558688173 915364673 12494920 570349517 709547202 46367982 237880126 367203081 572276914 82846057 930135904 692719937 978296501 319093578 727510712 42672730 437483784 566647201 17315152 320202390 429326765 562163318 528672286 305747662 781301516 942506156 483016750 200935327 794676428 205017567 754928936 729619746 304852292 563384422 885805011 881923030 317163449 7014948 694794646 603961997 710472474 325168129 490459474 743241696 430964746 982804618 305351893 418930010 588408602 782735002 397008512 132509398 801710335 662881331 682839772 765253360 561410177 419776841 638378825 588075563 419917921 239234409 148189574 801035373 334414416 629925441 323846754 226773431 905857018 799845019 80128994 11527401 379571397 944172395 330501023 414568347 502530158 97404322 181833942 27863588 456890912 395224445 955387967 712811857 730598506 87602953 761598437 230211107 388827871 848875220 85973007 419080492 244650396 824574275 13753840 213433164 528195451 218527503 456314873 954544879 849373362 934941593 164375940 287766955 470021908 526187339 187599521 98917829 495125046 42291017 211118586 769500589 920976190 916004194 912817984 769019917 953270880 580577032 785745353 853821404 21820207 822625035 939536552 42111180 685174518 84891757 619091364 617127535 668599064 830733264 210100758 950706544 531820451 173100559 287710146 39687295 555701336 819312024 476964850 219631849 881747960 786891563 198692179 809670891 286905539 550091819 793657563 683382985 106347574 814570753 83451800 329789349 84352198 670443077 460559868 849229890 677465611 181976159 895994938 251493224 202247246 834072104 30116470 442764090 917381587 440467529 588153949 887467606 690343627 432632966 500116016 241129761 692282668 483753742 781939042 250305716 632825716 667560645 155536108 958812237 979735895 730130926 701889790 717720015 173175564 655675732 953582684 265979707 922594997 391314375 463575240 526317101 957624407 194126047 25354887 503492036 533970989 772393159 235011539 512383381 185560037 236167106 337642933 468373954 531697745 742139095 302138971 291572726 432419364 608236604 581768060 969421310 361516348 69829968 313029826 874388589 321101587 578191312 808473568 929777621 956673132 22397063 346191470 67811472 238123862 180571900 311017281 570812994 534844018 103329678 557561826 480611154 857829224 639774084 146507686 573365288 120285751 810299593 921561152 179519351 750657178 342487961 268020580 630994077 968071734 585763679 505874081 330933087 500045427 232232059 606598950 674048625 563400373 787373769 969793054 33948321 112437038 670881502 671297708 909968196 591582909 614453110 579534696 393061968 215720812 572562216 96120343 106623288 307001414 983127264 811384526 481098211 758532939 740246007 379889785 214866603 390699540 223674883 679770257 885920499 182501711 101707593 870414846 99393728 807370693 591281373 122145685 267482137 770574090 517367736 108618136 735712035 302873978 377558876 730099358 329613892 649022857 603436311 995392434 426470863 243668370 722548776 113340284 778212597 845721782 527559354 436886474 682296157 963218349 389837010 193583038 364169428 79158903 823823739 487936921 714130756 613676944 61893401 338679593 458682855 378366872 792814099 563864102 525034503 42414416 950912897 251364127 965058374 71115823 287941670 178329347 794653106 21382710 959505566 210763078 568408218 51194034 614614839 237261612 903543878 638629402 504126864 200657850 143602557 803732728 600317259 98178650 452078791 958482121 519732447 463482212 263320588 764392591 382664670 749453879 54986504 721068951 364395376 186798750 66848260 370621493 203997 354822016 731685981 249574883 469903914 989251135 853674679 104037391 736054615 37738062 807368182 749721668 638013441 901388073 567814262 236312397 252535273 587354753 655027411 698932366 343078248 418896721 504483708 89774989 479456627 256922215 191623070 24852595 721575584 125970218 976907926 25708370 584177207 843365709 664870050 147170105 692628365 831078065 963932373 929994904 568932974 856172005 186077379 916660597 596146249 246536184 134563780 288714939 607682294 314949559 526092438 641964806 803119709 337670998 653952292 209686671 854814877 791713388 176843131 135050141 896788794 34775970 564250985 833233861 525608275 612543999 361971229 117448938 982389493 123462198 775290412 412049800 279896102 89861831 289133221 518345420 782058561 905021040 411964547 155114529 188216883 154078243 294637350 198489890 312330915 125694250 829191894 761806161 205788942 305104887 154918813 959712001 825817898 80003893 155628149 100172530 231831407 70775338 712452902 208574223 268943635 929077182 207210072 204262384 46245044 643911531 844310544 679350653 815254361 647494885 623714773 425790866 846118475 386109335 27090490 633508344 300918223 403410370 290852573 623129885 858409563 411317052 699688997 497679586 433396283 696026695 946420243 798986066 266748069 961492678 197966597 517071734 854227362 222719643 185793658 14353676 720726581 426236440 439599079 656403002 665809440 600731829 157734369 955605165 413911511 188760507 758706246 742880608 625808421 227636028 482929081 196116678 497424450 693634050 700062102 362715185 204501196 166936794 668559534 780132891 944091112 150421605 566482319 504852958 188986706 104548795 737924624 843076675 1299292 765857135 763469452 866506627 841507138 462067793 410930855 355064994 391031252 181272819 702728939 817925263 490457415 198777115 692358950 525908528 210874337 887982731 481085012 216017749 460373045 223395563 612417874 774269335 641018971 435072729 595936985 260798785 452056579 155008645 801906083 377529381 264114439 757579639 876571020 549875575 244844398 126676782 703718517 880913058 230032842 530505096 850894302 405975902 684793766 222822353 501565449 992344808 264965460 266757925 632277676 349031557 891795994 233522713 240836829 481410222 621021062 761051972 560763302 392773092 980764526 218456262 925709814 731336541 627742369 197971261 532497419 418534239 471194260 31591072 910137806 738185935 53918896 154085037 457325036 396560723 928201463 693964545 698554761 904032888 526009263 95615411 577184805 814061712 847422312 449760412 91177394 209558848 354706150 1505121 797126308 792635754 200474757 412599589 682416041 264019067 699318732 461945760 93225659 968191255 684531767 14080992 159157587 727435852 374300542 58140511 47904311 635965631 42570508 670453344 388377518 557229818 30602711 282207243 100621793 667502166 788098799 112474571 272737417 986431676 28260222 762485685 476053810 934234035 786401002 82553062 889514566 60717841 301000563 322546346 815854779 68492861 339642230 758677250 766051306 125290834 389431748 244759870 372372993 720320037 555921680 616765264 723724553 967430971 626934643 473218047 613220220 235063138 944997529 150186432 430290680 541324148 776529776 375970787 670660472 61121127 61536131 395679269 179916985 594369654 363852795 269938473 799091012 822618585 721986928 959004074 211305383 67498480 455751855 807400955 479481218 85762331 967875739 374894321 753141433 524080574 458549799 174675926 468313375 592584456 259131863 31778589 159411847 801735418 599125591 770093679 546904224 302737779 861520284 775970511 355274159 473225505 353176528 392021326 468185341 196351417 572660224 66364977 430524606 308187752 45716239 280636680 931440329 991421325 778366108 143215563 98308914 50963917 61913644 533074520 726708092 639420422 511080415 912877570 962507688 452148974 179510510 456581255 780912074 739636691 950096382 967547620 599286977 990948237 430576425 273739700 472640774 703109891 256879691 62018995 687880526 17598327 107955671 79277005 707633756 392699660 242045430 295099923 145897343 175546139 501251925 644982334 31132196 242604301 917750852 528751021 914115802 618075698 682243926 122498778 524652018 727381959 618794850 226207210 148270247 831210432 243331842 95850530 264195440 723653213 987990455 830746796 930560559 370579426 1384382 763293546 635172185 293997759 208462345 780516181 862390807 242032516 542063294 561382566 349324502 780213275 649365119 5658215 959304332 619405393 295939245 992490947 922523580 624637378 649796327 522451665 822013487 53096239 576074495 311238858 119847126 435431366 44828017 841662597 382136015 572230965 130889123 744521485 800086805 699883884 371445658 310402676 427885877 365017134 915473166 897277335 122570451 856748038 29805634 57850804 631626448 557418679 297605666 470979712 697125857 778814712 777145003 173155956 817853243 504524164 901887947 812748492 395926268 405807517 487256287 791927983 58251736 456176938 168739057 637605904 709069938 1615043 797400987 688549940 516251521 860175476 586226847 12049142 390201037 108278516 817656186 920882138 941154279 517728453 549504413 340440117 207645186 106472482 789575308 118536453 182010307 909190389 626508691 589693984 110561362 125283263 271829940 326230171 431661634 817825771 601196141 177064225 931820559 963319640 279148519 824850404 401617523 527251121 521463741 383705607 553600330 599891553 936247200 119410050 895483884 845593888 892381435 206103309 871625841 715937238 479551827 406574023 875268869 469805997 438680823 426136234 951151033 377276547 849409061 191099447 742732477 741413149 226579777 667890335 478339473 72817038 69914363 741442477 732265525 893986649 791213692 967104798 335837044 237562239 488062431 922055870 524308883 831634305 547006548 715633120 843639713 540589101 457944499 329327685 200378942 426417634 999362451 869440570 618835962 498133937 301105834 386202617 27426281 1324438 198519442 549346836 580939557 278262622 631172604 77454054 281897002 580079237 948187952 627558327 276195416 843579197 541339468 402270513 667891404 656424492 345673839 741304953 441663326 43863404 801641044 218978604 602380166 310476551 739286425 223078812 765473087 447396641 597479741 391353084 550978851 34317530 340569156 988927018 273655425 686385389 81011699 544527547 911360868 506870223 651979144 840412224 341905502 308168165 97409861 784466667 211684782 161718409 426802076 795672347 868558227 353054781 652353981 216143917 157363135 151119758 47932360 980125088 311051452 879901465 733909397 795207329 780721171 719770977 977682476 527273299 307211712 492454337 175042956 332441307 718560578 324116616 353130268 304922718 940756109 269864813 991956308 959698788 618481246 359291871 295653838 212343494 264237896 157951071 472974540 298774618 491553859 204236402 851441595 186948461 316567579 934526906 842156165 490333998 422224529 564039181 842176377 242113567 193249694 618353042 668504154 671817732 496768227 190942884 904634952 880608045 945590353 556878417 964610546 975444933 822693763 32533709 202403440 211740431 703021844 221936347 402242186 390947565 506809719 122625191 955669261 969384875 241124939 141498385 394893061 392794936 522439219 688633399 761097663 178047640 482510700 384295251 642543581 60324657 288565450 365649693 1502969 201889330 995042807 297571218 28945019 617620358 220015797 499879054 707899164 882973380 912778669 766792208 498924567 479039464 878783134 591684963 322939763 86110491 679665317 115536373 277611244 371615258 249833385 563493248 509645450 121110510 959859723 437666599 180369295 175534106 669901974 751354592 544397344 840106089 118556535 729842897 250657816 362920384 101440456 865155860 271831590 353525045 42571908 41073170 252182431 460085505 744813497 312287462 895542337 298203536 947798784 87325509 571733656 562249953 371461998 646823646 279010311 278927707 132358989 402745936 189446554 916759084 358343137 892501443 375984904 516785422 844580297 703319413 441651848 119390599 134815346 235290857 732650540 920036813 612375086 305652460 398043382 475782104 389657270 522779676 40360166 950414894 943697235 190353334 102756243 696837274 366171332 820928083 598436066 79952286 111843699 971933939 166497092 605140990 309562540 13755506 649625869 39288223 462128049 354715469 777310481 630990279 464384770 755259328 495651530 533622379 815271886 61281229 62127333 10481076 189453882 688205361 736065977 183666671 457007901 321916124 455461359 950615131 706358229 311543032 695779848 293840790 257214067 628729212 257891581 723433073 620027498 821660309 487957860 295738966 254056176 978659853 625768408 698760017 328218883 623750087 921753423 372250494 746920274 59419315 47624825 267857469 737912288 497807290 893808526 630905058 414256092 909742430 718842244 704282132 249530549 999477999 124098905 910736317 501101101 57450421 573796446 807302541 698690140 678284794 701738761 889914773 244093740 216372771 49205020 366042539 227928818 512947130 540746420 74037786 734451789 276654333 958748165 884565116 857331641 95556224 722670533 861728104 291008663 398789050 987338861 340670910 796963658 899361188 899237316 5507578 368889978 786925313 198621319 640787825 966981200 777364940 952157631 600913095 834637037 272887268 502132919 975933555 642631664 598182537 319321047 610786070 469311039 991576034 101052177 480910469 760443287 338640402 724798807 38285683 606705745 346055227 826536316 775614852 182437013 466742545 914433458 536920670 842049429 666191746 760611351 617001585 599466787 297775649 511928903 459143203 729254222 649558277 217798344 135225639 214160578 336528672 907169167 205609921 435430994 340382549 563215088 862944900 250264775 900474814 309105176 492591445 30792185 979523544 532736732 513871095 653226952 477996797 176267666 767963867 222821378 583848951 184187610 388140391 581438319 14060216 823265548 203334089 739474278 931543802 894917020 51005048 667141053 101884430 862165337 492612414 933428020 282872526 443578130 901122140 879522886 217588162 73991865 508899467 922187043 409976821 314731774 873904601 872475389 779914701 370249457 748115534 126640761 124108751 129814309 316864823 819241143 376400950 495328199 926534376 617465518 159726963 472930783 308506369 859268167 39635086 205932463 247299599 93962339 194273718 676095021 469451803 654708667 253421177 749956160 81006983 277614558 5336508 593604927 467031132 186136437 295499993 298206006 488104974 506283845 603969964 862249073 580531475 230049617 272759660 587146406 43654967 611722620 389382589 288721371 193992423 431764361 277314697 63091073 523099633 700427023 931937160 370563871 479766941 552557791 770127412 120593532 226793443 416682935 132119962 718554590 631650793 414961617 463191453 566070791 379534038 492661551 233321389 378164750 845051569 263367953 181089071 498689853 953721272 631728817 744309679 554320464 944965181 915061459 698693015 500584752 959841439 299080096 208837788 71326087 607274535 400207655 974777878 373788218 882956409 549837298 217951997 207024726 446697901 668237798 579832172 482718333 388955062 62953913 126823871 487258926 626902996 272310114 180490075 447087814 671429873 926622532 158930173 914559928 878471913 567732715 541505209 840940979 642336198 168460207 913021612 94606991 739264467 216274330 613282267 942875449 128786401 420348962 265637860 282255368 774184829 653736983 635882294 18370283 107644128 957323460 246875230 74314544 483907242 653652141 976247336 350037410 713361041 96520398 577418919 519250760 715777985 910175835 161910310 304118040 75370007 556000037 23802128 332199611 170424433 722824736 847249356 692917763 123528340 440800182 178651746 506015745 210765722 680032842 443299897 149076211 739665952 523173027 288279375 539811986 700560385 37366753 740163970 463542949 302920552 391196456 958974158 416784009 205465324 553819611 161532144 11252797 747576088 183857704 448527706 343622856 849908960 137246158 608874647 664457939 758475888 38095620 830505167 986762709 689199930 543831020 954440640 692976023 886475422 401360264 716379514 815282047 336337086 304782697 207065988 844726937 81846046 616572994 619872009 749095707 7870346 898984030 475525832 205659058 990223900 589042888 358991734 557525089 281771740 538523553 438942796 294881674 989860924 187829084 178398200 883540427 992801146 811788782 844330012 373996220 26804427 938469772 640352255 113387101 720411351 688545998 492942498 221191629 711720373 457081756 984938113 883974147 571513430 787834488 86008328 698797493 548193250 890493366 622083653 61535203 503308084 991690062 848645876 874537737 246560743 235973524 967292061 857181591 132982871 849282858 84564851 936041637 611545866 699912825 575415262 469523209 110634456 661442237 254023246 873111686 579888111 555619649 826041704 688838006 639372373 346066711 566447648 580863956 5552504 124968794 250086829 15894388 721087386 319331852 963496830 765251700 789328920 331960744 361633621 320790634 595085134 146112223 608727471 86266274 704284849 900378230 761334298 554761515 596908844 422147086 612240834 574156657 623114424 481139290 849991442 168056715 901486171 638001908 640625392 237546499 915762952 858649403 562957063 767487496 62947100 627785456 833332310 616552948 271586013 325762705 837875170 48495126 572899143 947521937 932129870 285222182 847319763 891873631 867161161 51184413 745541078 770032726 308561467 785151862 68984416 556067266 670556005 45729154 927582935 24330680 290167859 961973010 597931558 237984812 730187758 560028677 394960162 132411388 955986860 156293587 439745020 934252014 397631649 685463012 880443906 452046742 495760607 999491004 634817987 116055536 849742136 50750845 26082539 833625376 555107653 261882848 881320265 568081527 265461292 509470703 289588053 112678414 366535520 184995123 146931215 212233946 274712756 780227532 768242159 91377368 640856198 119914751 791830261 157418893 805146187 784777566 793044129 4602045 374315033 730699473 721437144 322285664 335832053 17313776 555382667 233647871 515811182 16076295 895388512 428402579 89144508 718067101 424147405 970906940 624832713 275076165 559836881 778191897 385950153 332842294 492013786 378372044 779524602 28955354 790869497 166294294 679515760 940934875 664157952 591232254 864984085 566946936 590742828 690911113 638683516 67981504 152522557 487191077 454488726 951294441 913456694 243316199 484502555 623918022 251802254 221211389 200925338 229054316 475850019 328733346 793360039 899723585 158298158 703424790 600188420 520290434 397933948 419895270 97251035 356388466 969887119 570724022 111147129 813869423 235759091 980709076 466625983 487186609 655675586 586391598 625177419 923000893 79914055 807556467 265000637 95942733 113952015 996164702 488363190 536561627 955403816 670504239 841908947 456349722 884740842 988347742 758642820 652197465 534981282 862751747 604715992 914009611 184782514 205712965 904506808 719481597 244954359 117095462 50345726 726264474 385354806 962569930 764945885 223238912 481778750 52726332 322117397 112396523 759225128 192003325 577572509 507925712 718024147 857958654 823758864 102060741 151205187 882505817 195182787 858513503 279364707 791412621 319338028 878513857 749623340 191358690 239076446 67880334 13247572 702759326 608364620 852539147 718955536 77637224 767725002 73723858 904659817 579538004 363841831 129913631 43560522 367403991 138329465 62809556 117823894 330360751 290826110 614535932 397044134 437700982 770265448 464591820 561790797 90385900 166462848 255885243 687580467 246295218 105684469 695245179 916986640 149985849 877476083 417959547 736306729 59267950 626004299 223652606 240554614 163144150 22336787 336925318 791494786 133758478 823049048 266639634 89686717 864878939 900537433 897755859 819803824 652477692 475107630 695991233 58291352 171538782 821561966 467606997 158241786 578705043 777124373 294751594 685291535 174795260 378105473 549410920 175824149 926502934 818329355 621872749 692313790 831478807 486410760 494556396 332165010 187539795 742103358 660817482 884308842 148637742 838942771 53974438 111796758 113207540 852051715 707560432 148694022 8031745 285943395 101382834 757831031 786412883 194646692 920267459 867928579 746919927 180941201 239284693 868729925 562781460 572368122 980199475 125085742 314678792 580470491 682950190 231609471 797309197 659818722 511578575 688667595 377392923 372083368 67020555 517440025 473703665 916071276 153739063 174496543 495270666 272109975 806293426 943555509 651595835 504851641 326822638 720244833 261436850 326638914 436673177 416825464 439883866 611617427 404282066 597489770 863318347 433253209 682975801 69004347 976358483 770855199 471644178 709864916 646982320 490749755 469054279 614133378 633871334 758879481 34161 422641891 698868254 589660287 407168802 756768285 12798716 577428296 858643880 6168246 702260230 23500571 275402649 78992663 939380596 801981579 328391659 964576444 771815897 126211409 893149154 998790565 617215472 780786645 871282061 558673808 126518274 846791831 420115641 61973476 160553994 976052676 483101268 721766286 653947354 82976925 414424331 702283926 304137163 299403847 72183962 267044838 812433728 108296107 191904897 513726039 43901303 645568069 264017498 312840431 212938828 731784073 954846908 450818582 420571079 257144081 334431598 374985658 765313621 524325261 839411779 916887163 646689137 39248787 506410969 648783906 200802765 370953401 470780867 327144121 106445419 579717104 91166939 287741101 300503185 318686462 2205008 233563044 280462397 510851085 965701459 311116944 655738412 758454833 988638544 853631363 694116053 245328391 495726950 730998041 709054881 353778885 217255157 529048663 296615970 848061768 600695787 761507902 336859946 617445003 628579515 139166675 130901209 872808327 192504363 810731337 618071282 467112877 695082786 341796421 729335592 722136722 734615744 610914499 217454625 610764631 791598421 984869442 90385706 1759984 26995749 744213036 548718221 80097877 746730415 826917267 919241785 817500706 55536442 27354928 599613591 155485883 287230906 846225668 76127770 984336214 29472438 696204025 197145366 569381052 364767456 796193412 836343783 216996762 771924221 866734605 569229009 605230045 431044297 298494408 339911512 403366334 645007117 563007715 624310092 664797520 446758488 377583395 587604912 651712159 402348141 8661024 652367413 667521875 617699706 717146999 903000390 973568980 597176962 349647343 858926777 554408541 942099131 922661449 841440195 79255081 346306410 726704908 940308512 187008984 348872139 227983437 826820479 954855786 401659459 488818776 558617999 527182605 62607396 225098956 581173801 968195455 344689360 969279447 305273691 705465358 425211071 496753661 751698698 318421265 14269774 302180827 615836995 418002708 38673339 167691530 19837111 881838268 828102961 240235000 483860838 418088075 224554399 919318610 151827330 270464659 400685596 716847556 758343022 730209061 480094931 71440428 535964966 242519837 506956843 976258048 255434120 417033970 51583395 353233708 625663752 18793192 145937470 698042513 488142052 326512340 800658682 516600061 802340063 325578800 459780309 805364113 182440720 430176684 753823960 100804101 256409736 454901500 844512998 618197139 425563727 695209611 605919630 471828960 813635384 930285005 248380006 728676149 244572913 582955846 275127154 194763426 383570582 586600176 333551143 218594519 720863906 303303535 391672361 220760075 267882048 436257601 587741663 916880601 642784259 80310440 127588417 119722022 143713516 929637093 606322113 999508648 715747209 846998143 700070287 575019951 383027604 567203544 442038912 447907001 857131258 980553790 911358046 222149310 647312459 631450645 164439100 413521744 209461983 902277286 13963465 808038046 206548726 192967395 686434266 379509570 313516186 953454682 360750069 954116269 422524871 922642711 994909488 915152418 477557646 554955863 852666885 688065468 352108256 892709860 900935272 508547964 835990023 211292781 438342241 679887682 915395534 266927165 229533365 884670495 702998686 411544072 783430645 590253232 691710924 504719198 728156712 638844750 427486952 829076203 346130232 306746073 743990195 860080962 224785419 905329338 462803267 68834919 845952025 460535740 886016196 972545218 216767150 845156863 298945842 555361122 912153499 369710286 893008722 97005419 496839104 265964713 956205854 594379976 161122026 655346869 217678229 918571384 855531387 565399644 496747690 193572441 512355934 715491569 154569149 436141450 323513232 887608670 844425163 22275880 113069286 594329336 689482028 577790618 360428338 629187334 339414104 946196084 165688418 896010146 673293437 810645481 397432616 902476899 532292060 645152585 157780778 777834480 603882068 996503153 957292485 281989190 91365137 687142419 402340590 169520337 816040631 474429830 922595036 300590326 314849194 672563593 483211957 174957465 479270176 665707714 260850549 192261588 883024480 18628010 406929958 608500692 306110536 805235306 368062052 936618311 236228781 723338423 657844426 872063737 43943271 267618131 199115632 72403437 354660763 281078846 639843932 936325357 883216344 786960743 169211793 675302867 239240021 580683986 40847405 471276269 558385813 248570642 255739327 853025014 817274537 423995375 947011568 465608673 156571536 676435880 874717338 906082219 727534052 195397151 737393055 589909358 589471207 793542464 134973665 822256405 512967780 347386030 212517216 30755337 159818958 209925580 219222170 417176584 572679198 699228493 44048574 130078037 272539209 485166573 771206879 330272858 390343957 245086217 576919064 35058892 751639672 491640917 896235275 523343864 317753013 460132781 415483159 435454905 533252310 672887544 924257728 447247919 602141509 13746553 932947415 85122190 195494159 437534054 243408407 212535096 985822680 640415790 46671826 476016986 928201795 635458753 595105212 547380300 757953278 95335171 754938791 752225550 981004024 966277219 101822444 314990239 928993697 462726108 207424869 210545911 502896743 819805939 46103051 264548068 889496301 832106365 216553619 688793536 800156116 295088827 55869562 914098888 227333182 234039487 606799006 609257486 398829738 622984794 664865814 810402954 87669752 714018074 820058028 841514992 768128017 335611251 748057848 558991131 587352418 617521366 200279224 348132110 766344900 885411492 601599195 686985285 820979538 763464564 759429575 725111467 525839502 882684049 691876196 303496764 213794374 673217891 604867309 79698371 204098738 557055359 772796685 858936020 889882250 700674972 579887558 766314647 797129699 583076562 736734319 19076706 906418876 264148482 464620204 896542161 965729407 396547274 547564308 635729621 604711349 239969557 654219510 624266196 566435027 184123186 82347055 16188599 584030402 865527546 159498549 187093641 999782473 821507826 734664762 409349096 973548995 948804363 468638104 698352412 85419301 837421543 188449805 777217909 96709258 703802244 54237523 824129096 160094169 398798736 109131403 293800277 821546504 372542512 243895687 343935576 146746461 398451991 820917660 942476190 204278560 662543966 422611190 971082211 436536886 139833207 539777087 871134103 262715861 289806391 827670365 358907308 636455757 528983437 998727946 453866568 621910218 666972574 38160956 975666376 129391579 341532663 116028797 561523940 659410821 675389065 279327934 337862128 735853142 70634139 237736573 656253389 757506309 399983835 504451427 504150608 434339151 544484474 704479524 313815929 960560412 427757727 889375343 652432081 723009029 334957765 483982313 989289576 90014156 437156228 332628479 103177391 297359943 942961486 724074682 728973428 713160461 685047925 843914710 984451828 417949120 129440118 241643252 800393368 676614013 210891081 627887128 345478588 330017004 876479003 683638187 475241339 599339024 460465803 938235736 230365126 191058310 935559242 387393794 407040412 102362235 210191678 451439148 297299569 527320681 496579682 601180496 365585762 311679524 625588664 484007317 811597196 631170663 732778233 922289161 260921546 472400008 481718984 398510019 70158210 580395279 137531199 459390693 215867509 475797493 642729834 89006407 880504421 691271042 776296000 686605164 248641474 253773154 235105097 551545008 257486865 183873280 37983968 889899339 816794221 497993038 534711853 957845909 421370064 445309496 505426333 430267690 277790495 864970425 971982156 551658150 462828678 586146409 304090236 274300529 750629362 392884493 744097214 604865882 759953641 252474438 567924178 54241305 795836890 268081558 962372541 681380208 384458798 623144680 948771673 697191077 811093371 111378894 107945047 822290807 170140985 856488349 568309145 417942453 639943182 294687473 853314337 109026794 126918733 90341174 466932779 528126241 423891467 549927693 880545536 434626693 861102015 159399421 269932586 166574089 562773819 466976409 123728086 522507417 418784235 869373420 579843625 977545214 363478440 286182922 335598102 972473195 584787089 619350568 682989079 842645853 6639631 126840348 335372296 131006208 296031817 389739684 314735949 409803827 820473388 460207244 695604496 564485961 89854360 215529249 253648014 406303698 673927293 306703412 710466463 27709354 822906449 518906115 383348736 672920724 526748260 855944629 299099475 44765448 481152547 108149711 443327020 141785227 53158513 421899580 233095270 806978082 762579652 413753882 378784875 263104877 117718978 377673964 28391944 905593157 970467436 410027638 224054337 430257893 672494155 840300784 519927342 503091432 408538916 559254222 242041265 795491717 467023142 204252856 830118723 447975816 745342191 685512999 309695873 33647420 172785951 535361376 595918174 651308626 354579469 726010322 689527369 521611060 237518586 278983075 386035568 588609158 425824123 157760684 811462157 348882617 569243818 691919182 390639356 352124209 731829495 156447424 68191817 997043137 347277901 448710077 466574821 31952519 177344668 582970063 931619891 184452243 898176884 372139853 168805102 528723385 352049758 290116898 217049760 341443830 827622423 621534639 324325469 818252370 709857998 348803337 210021994 20034119 749095464 946276398 249387183 165290029 334008851 81185056 926193511 300639842 971632258 453723035 702968603 650722445 42802931 52356881 144837689 734724067 457173770 402580208 763153893 999230621 291330765 670180986 656136308 460883667 204802751 69162001 197143265 967992088 797618373 769238722 972891208 137006378 116282929 26426409 83378094 623336869 78266290 208785854 813557556 745565466 397015448 883444540 723102261 643964691 299354615 371894704 570053908 446482480 325567382 853020550 591643557 377619525 607523892 62576500 863172298 76700480 413388875 301448272 431094255 104207738 839380711 579698275 485198194 751379472 860101547 499058976 835369472 700674696 279710119 431845848 213326905 541640246 523948532 858347262 701311536 290820890 522877910 396187112 809358663 395634376 325291616 896242777 96678054 955406762 366677395 304374248 885616121 167994701 499039854 630634411 856554387 817252116 825552904 451109651 672241043 724195168 733182225 795081625 137587923 397657772 627635041 569038971 444420000 85041197 756665790 851028335 187289078 784931114 876608898 421839149 117825087 344406159 882176601 224885875 465934486 885003368 444343477 405219049 299056082 265375932 670200266 67346277 291691104 949614478 709754503 579764075 441476460 799385303 498689384 949585883 630265387 716629532 591441335 709223560 166696490 463333729 695392272 981921972 943887416 407515680 191027967 323630241 971615212 517470625 36040195 882730179 40455591 177907034 243040879 679699939 954761350 980056345 755038458 689106810 351608070 878332518 525103627 139070029 529222418 406040087 993503689 211868153 775739162 204182620 740860362 798422082 689398819 144856698 837416446 921635183 102634415 818212721 218347371 982460232 701365194 940022774 612788156 772945523 407447957 747268116 42416331 510974177 496105114 672664831 354632531 845418818 27908975 587427952 168846831 644888328 516759794 357190397 564024617 236922332 350617325 359776049 302036450 162318962 954251477 335024677 548327363 659924168 510828271 605448114 295201663 864128120 715531618 203815149 578617874 678277135 526546963 993316248 425061007 438807309 242493179 352426283 362120916 616879469 915416437 410739230 644903314 587635175 438405149 470971097 199502702 92492826 57966330 104827050 924144988 542953153 466515878 675591059 976561269 452761847 348703734 287963575 448422175 319136409 412307170 502832106 152492051 344326777 874851160 343067348 601384787 765183515 784230250 933654702 697517899 554486051 337346631 225493696 154656052 379353297 622450669 83971306 79520670 405507893 825361202 766698497 926015056 103412442 130316 977884410 309271987 807285596 969687360 332037430 717174286 717806228 190143819 278135739 515444291 660310524 352869020 579834444 201057840 333392446 643510265 310393446 591140979 105383824 40881184 114712314 277079932 51569062 315167176 121527115 757170417 518264100 926419887 433713667 956821225 247077821 517671652 824327630 183970204 870347707 342565007 391785722 418928146 817233679 864764983 487312231 477698126 226845478 844501800 356017918 785161592 785508265 42031483 857608138 757697543 357089617 204290312 786244776 465778083 247551294 256783617 582967948 787066854 507770144 409523366 880399654 284814074 415065831 202935267 48925160 301040447 576172136 298816916 193805618 536875742 888590962 328775250 307509717 877092844 694880787 347347125 975010461 878850458 259175692 85532689 388343459 962917367 520014808 540304055 969418027 782021254 186602714 302225737 199984164 751167673 218832639 544893151 412256107 219659166 446599844 489781223 567821138 804832688 576652762 892149605 26539324 539113213 564978123 448570696 388185516 271964752 127396552 162051959 1698507 138734593 470516513 773490206 566241654 104788514 789864906 222679533 127826079 467496431 989621652 712975459 63613699 296432271 657385339 924653898 701120928 657264172 255550199 460340651 213459213 321405828 777532055 514531480 967484655 644202236 968395650 24419271 566739813 358798239 308147472 445153998 520295039 897873759 177806992 466877847 86008149 697788673 981459418 407085313 403470967 341789408 966510575 373559868 396862161 406322410 779649828 535297319 207541836 900592390 807289380 693164522 117510224 553733318 929491801 713975960 347361314 836234672 458319608 631049143 145394527 37861353 53774220 366106385 845033555 220057609 440642131 401656151 235487860 339837911 735951483 940204669 908937306 627230493 39190805 433697375 740561377 68118047 41250427 83381186 910997704 100656691 130096639 409995134 447239882 849045176 85012558 833061230 406895901 131204975 65866898 674682488 629883958 277256648 921057001 670467391 332737685 867339074 586851274 898290131 641792198 980189431 482020682 930650856 568026777 492119658 112851549 685539274 706207743 884236753 94745524 907104270 539460234 515515486 708111415 279686513 966680298 712006492 149815808 456603947 647240162 993766039 191270085 840123658 338154751 610966884 199924839 302674874 119834056 496038947 230975223 480408813 164029134 759031952 33915860 417932553 929927611 901319656 842412062 623164505 414859229 831224165 377809076 279615228 173072307 94074717 230938344 723908447 494285694 847163874 242476249 939821598 713433446 95084547 185645105 665598254 505479082 839139220 156790457 586603867 600675113 371401017 941429645 184053633 914125188 571812842 893136259 921865970 658664913 45517151 19212560 949785257 232942773 737981412 818389451 162058263 243100684 631767615 941669341 179945595 958036329 985337312 801382860 507856906 33723602 49069005 118845483 795673586 702141479 836332349 174962568 633455440 152906783 267945298 212537503 338369110 838265300 596506205 311480013 605450519 539385415 885910406 986078598 864554481 690959638 119409550 793626843 328336370 961451718 491219371 115481915 756585873 834264186 783687381 96105057 695957228 518055037 568452554 514464184 30816290 366497829 936431175 536556811 597692675 871939105 765654891 559896732 214124929 674531188 659321934 298931918 232391927 888379213 283927107 65176744 635601790 712895663 230538327 147667092 441521062 665422024 229205499 150812321 805362725 1404179 290633438 563626338 945609447 474356233 763346276 742949865 693720082 937060069 175511052 233497012 951471177 788415178 669872096 379699621 500196579 875204251 880241558 823105057 354590411 919667267 401037214 181717755 157963202 816196820 51235654 957384081 656213722 115760742 964841575 646034346 49631543 136791067 667539389 403826965 143636007 549123779 34044536 222773931 821915994 374656389 291451249 340758412 728010151 258746112 436308874 614133332 442874251 529530651 156810614 160373324 163954651 65855612 214665220 882676077 569408903 865743480 724133054 150628086 189530543 412798667 3057471 12736251 447331271 302787504 680309080 392489264 86241852 865989515 946260235 497250388 462785718 622888099 92489484 615304142 764626152 856331845 593791487 160481793 350388758 575651185 987347498 373554031 608740418 807965338 182087745 546640621 645040865 248433085 498261677 57054068 228565749 115225358 399417430 602807824 227319582 441460870 16979178 297737455 458697663 317807965 914878467 14913958 316078429 65082693 129264255 780594546 489021225 868819045 38897747 453753944 752532989 731597166 709863015 981547439 350880022 429275526 497899005 81651488 470361663 253093142 650586284 411526354 777546026 29899816 724217174 588197568 218695273 397006823 274514624 628679990 303716053 441199940 706971996 476016616 38614118 662939679 216883327 841996803 750468050 666217033 137979043 301994814 387453709 11801454 67257052 747019331 555145159 382760418 501087949 867526235 989962030 433581304 487954956 99981375 627682583 496617656 72830084 960655772 133141923 732365163 554294043 194244409 797454836 430243251 924332552 177156778 272702292 996785061 296411962 279409122 6260810 971622675 477643912 932792207 289700772 125526586 448922883 823827938 7251062 671787290 889026354 379890962 693886453 803097802 228640232 921425975 808121603 513161580 783653273 564509701 22289331 71307181 362647902 632232717 543091799 564142158 184138392 217529650 59372340 967794304 507859606 642107870 371721489 158806380 339181218 487354426 627968304 671886758 938353178 687070985 313165966 810995459 946131514 212816175 280800431 985692389 186459183 803435457 260343608 966638119 54925096 751261629 249433085 540459451 192399791 910636958 26805552 340981702 753504373 716734440 882718812 428257189 80214092 470805110 839625595 209154 454731601 650362724 193452048 969579806 686657049 712259086 284874498 432716037 145130407 28961529 368952381 937821549 911480651 413832049 492641436 371720165 981295443 923113005 891315166 288513567 693608502 930479719 921927616 166319744 220534708 477698100 447428083 756086469 819337129 532657082 58357592 831683202 986130864 66713343 120713887 577871390 805261638 482596237 184627196 928176614 980623501 911436297 189123538 1527944 197530385 24865195 526215955 194174069 276522647 455736085 117567245 535232504 773564269 532411796 26486717 641264400 62239703 537119181 124465096 186066750 939950741 992189565 673202943 37818325 932214884 855939818 230103016 608006001 161145334 280552054 652138285 902090117 294696794 155109264 408958005 133528767 981258751 547200230 433153245 458108434 903734881 113672721 674196676 446047422 303328786 67660629 382240937 511178500 832643464 913684735 990754488 937092711 248403984 935537904 765654963 588657679 515730965 544458569 713847094 248079584 382622110 917792750 841752048 573913741 304810821 809824333 691086345 203780129 773024914 189102075 362996260 64441331 119188387 636022269 650844848 190031094 249597723 171292045 24914976 948238586 357656113 617697784 781299871 704861059 822257611 186603571 310621000 510490108 58653749 845788820 325695681 270111696 517036961 119255509 369360857 493475599 706887059 165206532 120949059 927220651 48628430 308497741 25447567 451951130 636361981 482816815 207183154 75161791 996690631 398359643 18944148 450752203 92902628 690479225 327897129 278631427 653013346 233635728 575526583 457394513 866502693 716152727 211081007 591152307 138052488 758521164 984938045 275826355 622721255 343790209 338294264 579565902 111880490 240818598 118673211 528255801 843823794 748161071 168340135 715639718 541983319 613436092 552064181 839235172 385455668 694022954 381369709 184445870 814568065 818146715 530494594 574669770 282640133 298830412 956767967 652367374 368623541 503914787 854003004 350590516 546437795 378946268 306836819 535488287 86563336 261604132 156521930 274862214 205886642 166209186 61043241 579494449 646067057 182456137 640801411 997850968 941819527 110934806 805010920 315999336 971679985 979330648 301669357 576399418 100467791 847821672 410166704 741014197 593868349 710173339 182592053 728409921 889389019 303761882 245428255 245948068 844435506 797467751 742612396 849132323 398561130 48719635 248619148 728841903 855484025 934402732 757027813 743399083 324162044 946018430 829827343 717971229 415376099 378164446 265796924 807143037 816739087 222583923 412510752 995379660 172683176 775781527 8945332 255340741 689347303 574387094 39842826 847596512 854642406 783885594 926082003 31687448 505157417 289294093 865187948 741712994 97461309 918978394 374702841 474946096 227533283 803583273 179207757 902463239 933094995 876885332 483554356 216103506 884367912 742551998 925296005 361762330 43978378 817929784 394744031 908397418 440348594 457392407 553178195 315811096 784592888 720129134 907483534 533686356 528364900 881592650 290416129 388866471 955257823 553912110 833161757 12335777 157931382 234260630 595538075 844315709 401121914 483184335 327303821 630997036 39937269 631664427 354485533 921978881 442964962 56415874 506138360 724863211 644262813 459688815 37861139 715761476 824557312 869273698 307627709 905260973 956888783 126991082 158069102 391262309 901751714 671255469 723463651 832243583 698823055 309573339 980670341 961909732 922242238 593684203 968217638 218940447 62995029 283850158 791264009 1561737 884378384 779454963 378199779 863586068 902183481 911509670 877177782 562630385 410991015 302025117 870563897 260569823 454854401 940515995 761408178 604028402 996089465 815441119 278010774 832690860 752336004 546298595 617351340 406830759 889075323 347717292 249890380 891537326 14519309 829591719 61458107 384760958 386944451 636512475 691537954 447312829 854938104 763622846 736387065 588882086 874812342 696711272 510865725 803758210 309566260 197798065 542209463 944689644 609887829 590114408 705373669 183102533 424529997 110909461 669652057 20575611 165880453 700945215 58710049 492019816 962448540 499340019 148274271 90889808 876105837 739029560 303679040 689972259 323843855 22569190 996890658 264763962 532421665 875354801 124995618 288848040 612468253 885433778 895755671 644427440 59925170 493886068 318385047 444039494 823338162 573533222 64277939 686282486 895930038 555668308 412001138 359129575 723576319 694404416 175033763 186470062 493860499 966008468 694360271 860169252 992404245 73054283 561228033 730128533 161499349 290127445 132000447 31873361 774102435 230214996 463560551 602333849 59439508 322903933 920814155 782264243 499510509 865458902 168291728 643826110 740462473 772086537 764040055 200046910 825270422 75654135 835519827 508120465 647878892 69898319 425439721 93282017 577256849 160704955 479453874 44657903 373462342 205719816 235070139 952455612 297989826 309596737 426430100 965584787 405789646 97797190 580823520 937594406 36722904 12058264 723255313 965859984 945085534 551451360 71806700 490689854 635422654 225438550 717211539 646880945 389749433 361364599 289422167 401539057 27035464 861587012 599392487 210345049 620050261 299976482 244566568 22408141 344042585 447121945 422839068 393133903 549760342 513870102 299301790 844620399 297938084 288592054 289622233 180816414 876359532 979370713 377418694 832959601 476292156 83926594 181779369 148736069 776548749 819143702 326426985 448834113 876473973 661048103 732914557 157570155 594425285 252475034 213539270 179780025 82417876 59057823 519511558 336559822 667531674 979677313 198057396 716627532 545765790 201012357 943829358 889777007 617489149 320061080 182088458 3782679 146744342 263806278 868366793 292309636 260856621 542600052 526791978 735936066 86320289 572929309 107556848 784866004 54559647 537024512 356605841 560454724 907282205 468183047 32882899 890082969 475519987 311547287 263053291 293370848 126838019 122076101 967909561 630281034 742625888 302235271 365337299 981846916 232816638 277406980 436052648 846695110 84963761 67853374 402367122 100777862 170019575 427699361 765622498 831681244 902519392 627325189 397891927 91139976 307566949 699724408 171280480 668234256 547137527 941787124 540618134 140559706 817301515 166626403 346370617 539098 391505957 792258666 727722083 498699923 343957041 33693027 329151070 318309860 109313238 277455998 837338219 743164063 588198320 560742688 121163237 103606611 453281066 434608016 791863929 191173908 476931259 612708606 656210297 323131318 664861372 941915343 177584760 873511270 434703789 42610208 264748570 662873612 931132001 881099269 595372248 642155810 5854616 719974184 58207854 261881831 391819012 352172073 845139640 290944624 44362932 507084039 68251701 748281376 864042702 170162844 434717190 746942462 519460684 909498268 103656446 410852349 800153383 35770269 579582429 277385431 357485494 234352591 865155024 351277450 695935565 807242437 760969742 909227789 512128372 503628816 163401973 451367411 898788700 197556179 719247255 785749740 16630303 986065944 756655022 212044362 883191391 55693240 768231490 177579883 222473275 137969087 747117719 831165945 544107451 182095779 448050950 533812006 942538857 947866616 693297434 314533926 133618283 242882949 622892743 997955599 530126591 322852930 343397268 723374684 920140254 732079777 612604223 638673233 798050414 754504889 866283981 133694095 464073520 187186660 124890670 364137974 516504135 372865307 86166493 691195955 858540307 55751148 272738004 696142569 965163965 958917274 21434714 660485263 241947083 746300283 883417813 571945427 281591185 950806913 556530417 982178486 905633244 74493204 360428171 127799997 558922374 139307780 689282947 206710116 578214469 608375768 543557253 125464175 910509941 976878936 444851840 598098045 511972307 908441650 333942646 770113733 869307911 35891107 287797930 350009598 115709454 513673242 161454792 758453345 963996096 10153818 304506989 584418402 688086770 521844885 798815288 55459285 597325937 586190091 625853740 864054094 790576268 707866055 214905629 985028034 382752263 954065191 834083181 166125702 91576474 262301614 313027574 46395681 686542969 632752644 619471393 304087051 917588514 182973329 859806747 685590058 813538658 118511697 818786377 363999827 350503104 22420616 882406718 436352142 322133990 836178390 459388839 662364604 296352127 900708858 561858323 338095468 257779310 542326021 985402567 167980040 942937313 498024095 156638780 407927740 329719659 307220565 502564037 70603063 472544122 765490011 894603550 250364093 247891196 652902486 457317194 601819568 796970437 743929747 60827016 565551735 75424327 109150025 217309961 135830781 219666556 968466809 19052179 778261892 783119554 203244735 357865781 542310370 749152547 786947019 171977118 973162227 210418414 419672412 992880189 922183663 916519403 624452468 869732240 230077208 844821794 594586349 852593856 593100016 436329529 578135203 274404716 623154694 44947534 93849012 782394636 676342732 287704492 678439360 328817184 733578939 164460817 15341075 158141502 494385113 341521179 986153623 626449291 187249881 990143010 528903244 56730899 213228063 513471645 412683112 391603233 869495417 771285760 545581624 822153892 565209744 81815874 723878672 30063517 746248402 108876552 658870906 115846644 679109362 19807648 816063080 251829670 364146257 283808564 235419975 951991956 883602235 895937835 343110031 122220565 28676276 470909202 194125669 728486219 735326649 524417775 211539651 364178182 112548603 400939845 18845642 230996106 758973845 52008275 215012869 548886766 266595255 651057094 99461096 352183697 311890021 113849821 995444810 519094474 465963473 847920185 46026256 991972313 157749636 859762119 993677418 382232865 4813461 115271436 712952276 838394681 31959174 896185844 102489533 390124382 323615859 77252132 465999243 668675539 725564618 730086867 27605846 181315880 749402337 56427489 230791267 815994589 734942507 396807367 709814755 582341141 716353589 708749907 523269443 4705227 596508725 370117624 565861323 333225402 415749518 238359382 77280271 354760095 667567061 32822737 319303348 691188555 949239182 907266319 514465000 277355118 841567790 947675188 640743478 267582983 193654146 734756214 883738395 166261441 375625691 770694986 481987500 314962900 523135653 478593540 110147039 29346072 205700899 38397199 578192780 977802185 648123279 254010394 484441387 842356144 297832569 378630590 231270360 928542073 553271518 762280339 953481203 17924633 136117978 26784503 810430776 748039338 765506058 270408855 974671889 722482427 522702030 118375175 571376057 497999152 242486764 706286415 982370249 874404695 747941257 86686719 639412096 567526091 596376769 51654674 312552918 612003349 97681146 258497429 939132507 191860689 110434956 797452423 907246728 127303301 495175149 691484607 95057352 17283109 103446087 951724797 501174984 196368766 919948455 225305338 223402754 633819351 472079150 97500544 541916849 701057944 739984169 608864398 566007115 201267704 68629012 715264078 580369934 489274305 92400276 655785768 492327285 263318287 76317563 31276588 616359790 320844833 12738071 654398082 869290231 587393958 481136604 851416578 965492901 219049900 39561342 908052959 618167600 71619733 68890708 27850863 723306092 3601595 287391002 460090861 903398718 193641150 349778942 892963229 610847541 281881677 595313152 613204524 893819509 708779859 883631568 724310936 909577408 640240984 815072451 549068161 135518970 556505534 176073232 320562297 379786571 916595776 810886167 846932898 54986444 5611231 793465845 479411912 98456049 225431930 377539497 869770566 115904240 886143390 565554612 685458842 808803006 661669012 890229627 908977056 864942291 553710938 454452877 514360607 99156660 680157762 340056783 644892301 419117406 189742770 439876482 38155443 294595918 958832255 303477348 762598223 718389399 257325822 797239193 71676442 94633617 289721747 556146909 605690886 411093177 265262391 765331992 905055305 255837427 478566787 889244214 163785549 492218393 753615344 551599608 700388584 481746586 20826475 11904089 583443042 700367632 951584590 993087158 895687995 108451815 764823560 724955870 611524296 979183575 549313342 987493836 358004984 426093220 69626207 712606045 488280839 133124595 277004591 578147951 605100779 398697641 213529528 332347933 47951320 976737957 606279133 944324475 588314854 707515538 727530872 177190364 135688080 719793424 283245176 736007280 883100509 310939295 975256807 624040468 821071056 99800047 762735936 715020080 14574247 124204625 10546428 665355943 670192711 826085652 202459554 372168403 217927993 494765694 497944960 383348673 596433636 313326316 92679533 376156025 623430140 329891710 752729952 79553903 102011145 662151580 764739463 21536651 756109856 186974382 18053957 931572867 564423161 247940013 963229211 350357435 680366831 768913834 253259124 757314321 409714631 152221003 204092653 224820942 159101623 863929652 526342172 956747083 797034344 867009708 12371181 214130276 409731088 677546149 603490138 108059992 885061671 206800101 737411176 679260192 681327974 55259560 561769688 277064049 826466651 629084994 563956978 982503168 268400832 692620231 89409055 6853360 383613518 261531397 842592762 448469592 128374532 101100738 953267749 901563962 123349985 467169525 669677946 777764820 883700269 49041277 755615878 92429691 388028465 113344330 271906692 371876485 830658318 345511072 861691468 437826835 66925156 530958238 583266710 913478272 947461056 591224940 798947040 146356865 435676904 437907479 236231381 777194458 819354251 886467579 387521299 131997826 305944151 378163629 251512253 970547318 427909128 987405120 134568124 84811014 787042244 888685447 732442061 384050556 719588531 738628087 212142353 149200689 984994526 467568450 327906389 52030583 47648397 193741022 938690831 103978230 570550235 264855027 743544940 314495153 776778734 468148299 350199443 834806820 920604186 640894693 621183247 637108484 912130625 6896677 92273848 381794721 909234128 40003970 88029235 734647232 939735258 86057607 26293675 231997892 550882368 600949379 397806909 801623923 639521789 753897391 264532777 802807062 942954504 482140807 536381579 688412685 398772595 748411715 759359530 325443241 337354542 620424076 925973594 620870101 722136044 165638141 901213581 603623500 60529126 863596459 188855745 973900788 881304823 945341121 51970677 375933813 68457480 253483384 210409762 186886834 770163299 980579782 575314017 71019294 619117691 455797987 763624193 558287900 169611120 476898327 116028943 367003181 2061405 93829317 640166529 783936201 746151125 487901436 478343709 52597465 739692738 507208686 965361111 3321225 733315527 851630839 994076072 157977513 685669691 942098623 919592247 480992977 550760870 892320438 765324028 74515750 496791574 231206146 173106368 15655868 555725822 683611343 278577586 43610038 617819891 333966232 162548491 723747938 940245347 387836754 932889956 376210640 286353322 243785209 525458410 674994382 657200865 681133253 967852644 913241998 80371777 248720745 431023928 62295333 926625523 350728690 496230312 695390273 551576672 665574199 869578789 8850443 136230819 4552537 425243294 787984311 226710108 282020902 73722531 713049330 509718837 598534282 871106297 324371605 476164714 70951717 257801465 21995819 910291529 26308040 791148365 445239927 840641599 573540336 571123106 265387850 858034413 62443862 946630825 871144752 660719325 138375211 215126782 773837422 59661436 600644149 152353724 848435315 855011250 14009110 456467329 46244897 249247895 888180391 908084050 533504506 210434920 952274548 114640650 267420079 354888318 937168857 925192220 393328593 607687821 503222685 76708733 678266023 269632032 842016807 387536925 226470127 843927697 647805722 856899400 324183531 245608797 668805661 738956455 968673677 289167089 987983148 729990972 63058809 294734647 71621835 502127909 292261401 862844583 441580153 589972826 975593700 611359987 573971481 989717066 913867385 430164896 877232319 353188153 718839119 394419272 523134269 686645563 943231926 848513336 122580966 782173414 682443639 422520347 900344278 789034685 535919572 285005633 95471869 652108135 947283096 276647806 346262364 203509022 734735728 840402913 634281650 567436642 423824272 697779557 473933527 755779955 568466952 501554393 417810311 527984115 330860944 990323207 517255447 301165173 979906899 154509828 637016138 84797595 413810434 208588862 435455720 310128025 377408172 953421091 631990613 814830275 115544986 37819197 328738609 770779489 695680368 901856049 194707755 299615358 488486354 579273102 350894226 914773886 639194899 392331922 445736354 327127376 881692097 565771898 379455007 658600810 668033257 796702800 484319350 710501792 554534096 18694091 808392938 22850851 300740407 595688089 149591883 576483056 191401811 377774023 869106156 412855139 793657327 436696074 875953859 138779948 458746684 462424897 838597843 530733589 263273486 924064552 442752151 691285287 488295817 242058076 319883208 392661254 353716407 312864644 473001676 768679565 779748204 67817279 527102481 565326624 141419226 239246319 124274847 752969396 546666702 133059072 300414984 258496356 52795658 139696776 831273907 426020867 95051528 32951420 248578128 288629303 765613966 226668407 487535052 715500659 266176364 630800942 142629444 547501667 547995433 699762839 756849669 985189867 488388311 185785593 334358233 721185445 558417265 377656742 658737893 519052476 697569687 789075756 463432949 371083287 442326237 550408419 81732443 171154492 205284199 625237357 104956427 138081040 793145649 99903968 882746742 365498051 682592857 362957973 467945783 540464749 50803102 445101130 350271292 295267306 658373272 373259162 802155363 118653692 97530149 984093243 509891373 804063237 982297875 155502623 883041348 851395637 680670276 198128219 937040701 17658398 298165793 47798818 322043215 608212738 755760494 698922992 775854213 126076553 789927440 724434532 855626618 671321924 489539182 236513896 136898973 337432063 106417908 37959831 258771796 50540959 681102239 729774913 256104455 958586920 694120164 141248772 560748434 544430150 868642930 753995561 673925410 604674644 31813218 180010693 441490456 545357267 800813987 507061904 934074483 687720666 531499512 151376311 114283819 573687660 336076780 655157893 902541872 572593352 194116017 514183974 146345052 114523390 488988076 106019829 416860495 150314318 218896624 706088009 692590989 94758206 347534091 712178629 431770773 668912167 306831398 547121239 917440319 943350242 370681167 41949168 638752490 771152552 306829243 56129479 905760966 5516027 665610882 640229207 553004503 735882108 591391397 955436400 833309681 767320324 218090622 227525446 473475584 759243722 791200877 67985529 703846205 864196834 205927337 900160722 471150168 291292658 141001422 914570007 990152756 301910470 770410964 680338133 200316884 351577159 964069168 24900215 651297516 955410435 910517567 56948108 521836064 303105701 170371473 365188925 241133433 12882746 433326721 608206752 633713564 489703313 284085994 639296674 459753367 447270765 199787195 840019565 909427052 293034916 286174152 927168996 956443158 712346301 276524317 296127352 695878783 52084072 672335124 203253691 93642139 483277158 754874425 571836142 928089995 342450415 115010113 954235431 584670135 265883228 734490350 341701270 532397455 84845699 368872987 566823824 696582692 679734691 686798646 979344472 335115817 645037693 407384973 181071565 64777628 960050784 607384882 547105788 919091768 313350445 115573222 786275521 160815685 580942401 994950142 503561346 998000462 525163403 834987597 210709600 915780693 732082759 630394974 840258134 192085983 53065262 921065383 965772797 264952171 437197699 296176679 771982099 613381735 234873515 704666766 650188721 520762568 413984720 562035674 893235655 49016822 322273044 746253042 367648805 2445263 840610356 592292022 956282741 299403813 971104541 741964950 916242298 140232880 582409727 223386026 116555122 526023661 375145974 320729527 758071498 613427881 874426851 257047990 573934046 807706031 142940526 89326725 344284391 109408117 579196767 597129568 668181448 856015351 209081334 694472886 510145374 227492351 453808005 938987339 558966900 883567071 793794557 871762105 928691225 478589559 180412047 490979546 642657714 904112303 711743919 729833867 949910659 325510713 368569146 342219518 358373840 205008922 151635657 743821538 439948357 485806102 537795073 797137228 578072202 919981812 268876421 774436133 999325289 667170829 495852522 470800358 267813056 451537239 732938769 192713855 784521291 982871227 347966282 567966167 590001279 377219463 468730521 622243715 253474951 996984993 790471649 85301335 514257077 870180851 33128026 717609702 991841560 208674436 181380237 226720431 250701109 609836037 349423472 902528269 432811731 895328961 565418879 422226528 255171298 755206462 270384515 655588435 273429900 725756486 762695189 196039609 56786679 765183369 262636866 257541626 106858677 859699045 952488083 698686943 402218688 805570279 203433734 217971401 392687519 109248910 947201903 484391342 368534040 736626249 7040470 802127048 303170292 405328330 116974475 437136828 317575146 737444225 774105441 156084342 747460370 12900307 126256473 419615144 76286778 269725567 657475914 364189936 460576382 569670881 595141718 177727343 348865766 638111243 935697543 298791417 373652639 761777479 169912449 402521034 195549620 611191412 244447227 996340892 608413942 604402236 773835625 679762417 730304475 881500061 666680554 854680539 407277002 776039438 287682624 420651784 563613749 563188440 331453314 435922308 602165167 668808671 587842880 756316927 357022012 35610532 743746865 700736017 30951876 630874353 595324142 178440695 342544768 411637481 189310058 647429868 452917189 188761083 538627037 307150048 50027857 126520646 758301154 969296769 380063819 780193271 260820779 992782954 726498238 435505681 167667791 143280178 850391147 949676518 676635643 4882971 943410603 177185523 146176328 293169901 839740963 134214530 199085928 267292138 419269414 926568978 617227686 913678503 890659559 966980090 716924322 880501264 582963750 452198230 998764448 747568055 756730022 435839502 70517837 942376673 237371527 592325817 150803771 674161598 834596319 541892676 229415089 575159954 594079844 691600834 709774677 560541013 989721103 280187188 623075802 183885268 200778579 246530635 677989081 71985917 767827089 285024481 573296199 783255660 489727238 422457916 349781254 909545065 11025695 517785356 270969843 61905922 31468635 745543057 560005304 368382751 838772509 957442277 962704034 8536858 55801425 393166021 158667657 685974640 950034131 829456874 334786367 992242050 658366430 415543709 121817587 48826689 457809995 299403006 334107286 764572970 457764569 280738984 171304825 28318042 340220039 110919144 895293117 300364785 445413499 81163815 785866104 229873400 74556998 580739110 93875688 999572499 105878140 449264672 253504108 479003806 78833406 506385410 471460441 915024460 884804629 321980714 72904456 990653255 129714230 631545459 926259695 330423820 550018124 973258147 194947656 862204781 730041234 955306785 358332258 989525069 156183270 395768247 105728585 831472133 211896715 300567997 722282958 47743127 233422301 605564250 576189031 236551087 828612066 939923169 199415594 120104905 490431019 734374910 517008791 487325491 235791669 76501341 270141186 363712534 31081571 736025511 575565346 461955675 300716118 696899342 529510158 678548995 75902657 621087139 529984372 679840557 261892632 782300699 57630749 239317462 531680970 162287516 145676269 334884378 690516340 160075454 361637492 19221784 138901859 818846649 165046792 606199476 694677955 148757760 238016773 754105179 398423810 390480122 630332416 677790660 818774492 86709202 414873018 508804605 999481120 552860307 332923661 542622549 574921387 301160036 712399899 969271808 515975937 889095219 642794194 852023697 835060644 323942299 819463419 118285572 4905361 365674742 64697688 547431791 182602927 238737834 400558476 76591576 194421716 951598332 588947450 667415250 758029227 704882554 297684648 956459457 395550223 148807359 93176972 617930830 345789269 572579918 738739272 858766094 688956877 5692384 919111162 567301898 824095300 514122018 570861355 567676008 767747352 113348342 412839176 959392336 274350284 169712280 44394913 996054979 119872461 928816599 169196727 543651734 912510561 543799137 608546848 188833840 26338815 348250917 370082786 755352400 862048870 23244911 535153290 786756852 280280468 646705870 663880672 363326844 744442916 451275505 87491308 834622959 547922787 814042065 470475779 496256740 618326682 63409447 696860946 174816810 111317012 552864818 407297316 980631792 422050847 169554932 842119947 763465554 103161815 178485672 282494045 31581148 220407223 445272034 871899730 407061639 665074084 593189793 579717753 294959528 960143091 476226399 125668744 446524970 640342469 576422668 32156178 796645738 890402346 392213473 64639625 881195364 880080939 549436293 99836562 638146864 77238572 994175667 254255061 75815652 82061196 909767283 458275394 67833601 14580308 5167517 505273192 680783537 867783602 983152521 883610533 731361809 835831237 322763816 205045018 85444566 660797916 651017108 281178671 614921165 83257591 128586510 272146975 439284565 167268578 114727251 630760549 103745247 534099663 972129345 534318743 631796142 956060110 732134176 215018693 228372059 466283543 932391639 428655435 922785943 360663895 199661896 445414710 593543741 569632952 210380073 242963061 647126723 509247012 512100952 44381819 570019039 80248966 962344306 789714208 446310148 280865477 8077833 157149177 806081522 250065395 53900833 185614 724237535 759917964 784164670 152187279 267008917 228521169 233417487 457566338 173033154 65117244 400299496 456363212 283457473 286174176 254294466 326227732 326926517 586713447 139414743 516705086 971725689 854049881 845796497 542093878 847924942 403781550 701965090 942884388 40657934 552976791 324704232 255865267 195832035 764946984 903675621 637132330 727933784 395394751 797819835 38813464 870387597 70258070 718764498 136084668 902877115 120261124 665236319 888861417 857131976 310795296 961164478 279768408 364451342 953450820 953125657 501832663 810852072 519529441 536741479 810041524 360753387 851918160 47916706 689126875 517018929 228414682 844356216 894633276 591346183 193336717 697304967 664775748 345344416 834430445 100389709 481588560 433885243 201630595 822868891 200654634 917090608 886451041 82766018 329460277 696569546 956096604 914201888 730527939 123912830 216915935 705905720 272909415 471790468 515311539 996858841 438766236 512892001 24185770 91020055 758702061 264169752 381998386 782223715 959275680 747068029 993721730 363037343 809821136 590387995 105301005 361681001 524376809 408178425 594062825 146358534 468994087 122568458 452032143 151253580 462746756 727878467 112432419 517241570 580311760 321992722 124087100 145887955 346141982 231729428 752343134 183519670 340843067 194342258 406125673 473157818 263462982 769942485 953582040 752376917 567557211 529142132 62636901 945717322 130689381 994438349 624517647 916866925 812971017 7335597 174963758 907027384 200353544 983345457 743785248 295477391 875104296 745575251 624136153 249606025 450471224 360145529 941151275 556141189 590032443 59625428 493072181 680643906 940691106 703607417 509506060 165548229 966970319 190713988 74878895 852138964 557499008 627809032 101460936 681557332 889289870 810199250 360157791 110491624 233163987 420344728 358936546 162526381 497575743 249109700 642209715 551530720 137788644 311315427 5254127 668167182 461051690 70659987 147493811 910881508 861760613 162528040 658143745 536030766 434237447 430458812 283495586 997438301 518315458 643465492 481707672 168805654 876343484 739403369 343370656 913400210 477990278 558142826 117221942 441843167 612225008 903518026 586234318 401938499 33197740 416688864 480548348 994251207 463892879 543054541 550085698 94221048 283407737 572931083 339368280 126445451 866309758 830233186 185262504 68972913 580370725 581305910 466312377 948581572 30709942 579985916 919264785 21719834 187092994 217657008 786894688 755470270 239986140 934620509 551748759 225454385 784292604 411582897 647790032 928266043 71444568 773479545 185716158 864355407 227123017 704670377 868350112 335817788 980766370 924863854 385258541 82420545 730545177 395601688 17509583 970358959 816429095 521823832 548715447 246800613 647799726 96070177 692732666 196940858 885799688 388747961 811570794 822757128 250239011 939298097 184287801 9307032 987212443 665470548 323145535 459211989 917849735 704488365 138684950 606232626 192773371 781425330 475305945 661587120 536774044 913613125 795689704 897209085 768617514 154766631 542332003 959900099 732907980 264623378 533701024 539194889 673307988 62687109 728443489 684351625 367996981 470946047 913563337 872168665 713196553 796618994 805005111 129906422 436623009 673770587 880937940 803225500 137132902 105463854 383012890 902238434 72796982 455466744 282004472 778146352 532680101 312708634 294653928 964957197 995524995 746263673 546937576 569307237 593736431 878674202 580403568 250438340 94649228 278583757 116780137 611694218 454984636 880338248 59826394 62503105 662687107 768038050 264346134 660359835 994192686 57689460 572627049 95686123 326197603 85660101 685194546 513514292 466531583 522263861 709982773 26465750 783393529 86250818 277752610 349274441 938995813 365355782 261879445 367793934 710217659 906293262 487613827 516219595 488121497 716654724 410175457 924184762 170472762 719835681 822554451 345001186 459683783 406210271 941111338 45423499 449781488 283164784 738320915 735497907 206496428 989688788 891457104 38212698 1337447 874740154 527299402 964238615 237039278 246773756 266375225 65715789 663172654 782335998 533444269 810288461 210598661 68659337 949252368 604907614 874351390 616548397 683381715 796575077 644615574 817807025 737433664 343181342 655656555 910745176 461561173 474541444 269593367 148239495 979030681 657598318 731278622 869827772 639141471 361037102 40657086 699802731 185588705 798651322 686783556 368137912 847270520 748938226 418136417 158867063 266388324 818800640 873548235 593511799 829132006 432403278 486278834 224473109 613251988 706295672 916795036 393266554 117194261 414221851 241903531 422074970 610159483 952039351 125287359 190472970 978293528 322157395 785888094 148255009 544667549 975881258 829090161 33080748 123655269 326853762 269603981 630288029 433719846 301576706 386103363 615480131 135362420 96342184 323190060 899517677 370423749 348922623 104749890 578065377 860438599 626450903 16988509 397537472 564209037 58001586 898231231 629626147 686618559 990971901 213725269 546949792 800513560 586703757 81097039 374349989 389283711 397272986 256844762 536426411 570992888 142994669 562428590 126507708 648941605 382394071 541781486 164120084 424612523 796136094 297583349 247291251 633193287 419711922 492359121 811348540 725135280 912247186 253065782 325792138 6243950 8727336 658328390 401156655 809947533 309029102 162608805 666500987 72416433 888382827 351556310 433897598 758283014 549867471 530874097 79210293 98619303 931414613 591917680 507624537 596668027 266280112 370042792 392930017 369374838 846470515 484048375 985306684 129037438 459661639 540367431 68839724 979729409 349817987 858519018 949082586 567763862 622153302 485904517 918082196 320581070 182406602 625231823 576996938 656141996 603675688 426129730 196514407 343956605 395695063 26348442 527526224 31107602 523160004 346067122 829817216 35685633 562824564 303226815 842874016 135621532 792063913 844879109 210743467 488283976 330678087 327141367 715242943 392137193 657543437 872854818 356850072 531044510 421346997 50552456 570180418 449880438 775295379 297435886 707193783 900859514 108183203 761306716 458744397 769701357 399379436 672289871 832042496 676781691 385332603 460925719 289891173 489300616 581767043 804120114 203866602 545514968 282436333 973670660 164047991 141979672 89152208 702011129 950964741 453160178 288538333 557844997 222972683 577420396 169562541 16714763 492825648 24758626 52225574 68660358 680920792 783218501 159208973 493384258 66610072 223258643 117400306 582002065 117524677 424774092 613451302 290414797 8899752 592945448 96416888 657467576 500008676 215045953 282990461 677073742 931050755 998373956 928066967 482407228 248848031 61905218 886080306 892794777 256367713 840196156 838073695 932276916 575148898 20205215 851365506 113806385 623991969 488141480 568484911 464492630 151556987 232847045 738075278 585841186 712247074 828214058 32269527 906726145 997843185 869741841 785886258 185975460 947403634 872673241 117820321 495118997 645252602 557674333 401033981 295914071 200896760 83388289 985247765 53608239 204301604 333024499 254578555 586248835 432149396 992391361 580997137 348343109 127047280 172278862 660502982 906515737 665013436 569649141 77585161 252686473 330904428 440693757 969698321 911677377 372291947 814890067 291128410 815076639 614079962 377690595 766142842 525407713 54914473 684111779 27470907 640118535 85107904 785486026 207595718 704188976 60815697 782449356 833461239 695808670 631407436 626964348 993843226 994128446 326029879 975724624 509564110 642168587 877667946 933439953 490296494 276052862 438348757 904501947 463669822 714170304 961705735 512436998 270398454 364049544 480328805 672553480 458386482 116114954 353646216 295330928 895882152 411277601 409922523 494117648 843227178 282374982 679040100 819404536 83368112 787504060 788111283 560030356 878598590 268256233 136945820 542195538 47072414 356119803 176004352 568693164 606704560 927928676 268076275 623848639 920067315 319333830 589690303 455980242 452023424 24111034 515483608 297454861 556445537 278863105 773429975 848860550 998764430 687783721 148422367 914105175 196397552 123097773 373962314 433093132 762053987 575366005 658383569 642302216 179935300 328437887 538459704 423092206 380268471 695684532 646287855 310180727 131574469 291963269 742270143 750747741 589464256 194160417 365916938 129361391 242642339 299704085 422066581 685853544 111739993 909244766 917016913 434236704 738276023 915535734 538153723 699857489 185978800 898784251 117069183 581124385 612941164 12926669 405337329 476432198 741305883 384826588 598574078 929787113 434695258 973356239 679286051 146429371 848341667 335222541 235155048 285703330 704683683 703177511 684420981 435055497 556861112 235115941 374203492 115356858 406192041 132803024 93354271 957626701 664868876 443232227 157084116 50873782 993088127 699703784 653201313 210974724 876727521 218554185 185664619 343083842 260673367 205050003 262127504 891248622 302895185 869792855 919799722 25870717 980951120 618772398 462698080 74160040 848264078 757199029 233525464 367397268 787407947 133916829 700141744 255153572 778023141 932267393 577742072 668673555 505815997 490955109 589070770 576513598 694685867 397319977 241348529 666405281 873538249 716217527 61429438 294754693 661971842 402838244 16318894 152702793 350431406 412792211 800923306 327262738 785998468 274586641 721491454 541788586 35991082 850943562 994991820 690818121 183873896 813384290 802079046 873175472 195732514 986561778 88096661 816101835 798677131 768963918 30004715 376109300 303578735 159489405 641484000 713129175 920134434 659165183 168821114 441185656 118736761 283932163 255107774 305097695 170588735 138620423 154374681 356198687 301251172 489169831 212633075 272040266 357465085 101106527 47011761 967964444 442059729 26080170 663261237 850593879 173744283 840660517 434208446 735055463 222332802 940317709 338893459 771010626 340546236 927403858 706399114 445503095 251951439 2672856 182810969 4093286 926549152 928078494 847210048 217905752 581235067 673787631 501851970 497010345 782141496 827134409 170277491 492289050 941308504 58572318 915229782 345842709 787295857 79915260 844307634 867539958 787808784 328368963 267531583 638034178 517991861 226287697 356997628 663594951 900677786 18360702 838872526 546927207 378194031 667481718 833109329 957495705 472351705 236868370 961852448 926749009 300123009 990635438 851128936 667543475 294230802 730959855 395424180 263065438 256361129 468246803 974969564 935430829 97182870 868376871 814668464 203830000 103068542 4183459 995032884 209519179 840999535 767324256 745592045 523224082 343115566 271603746 260669377 592199928 295280661 255493677 197938249 308763292 350016207 233365638 405568688 462835413 551326308 625419238 626905054 291155738 714873030 742486640 292264918 964030458 507327257 451922567 219342102 503237424 668442645 354275753 205322553 683277025 69954327 251135212 621066020 25303096 525045091 649960861 699966100 116690253 567664009 201808299 646405902 118207462 831605870 301832284 339471154 13256116 930935434 859634586 153751505 830359462 864003763 517711291 416266959 370096967 130900554 777198199 395623591 4103939 505361107 567284685 486757498 218039372 816342340 269820860 492202760 507397573 650681908 745808432 539331089 877370169 230979638 362537675 651232401 249176293 138103760 727814461 430002766 679841257 97105560 157478635 389591921 905977759 979589893 133762907 389074180 607420768 880394277 222958618 905039267 521555580 269555099 28770899 992585331 820434726 902390948 537051214 253773539 518006258 529321944 240973931 257666711 188676416 90820843 118269707 663166352 294465125 847343387 3393903 768618942 411274121 491734450 251409480 913130191 652392854 919964649 169250687 795916908 746496082 400591113 274681968 671829608 935040362 960013415 905787095 499388937 784227778 783658978 849502220 814746988 900185831 400538328 410793166 109866076 32699867 410001013 688096429 681153760 65755370 745088653 272632422 654811717 165935798 547946000 494190499 14120731 622340699 206885785 377773246 351073156 355008255 233971535 284553290 574626738 270260977 768751706 833090666 173465059 534260491 903847895 983286210 677927472 395492403 774678811 662488415 28752695 663480066 559739730 11154994 263111875 950786967 671768583 472625821 278920963 64493941 204896304 199031801 86069406 168571065 201229862 614834610 607474286 10381902 317894426 908850121 346121218 280520713 790656220 332635240 726657961 457375922 842101500 218124981 247793065 144170420 827482061 912410782 691237958 616154389 199751136 776338208 604091144 197598576 519054407 811607819 708183235 481318042 180728929 14264383 96821160 642090874 917733441 687670541 68672954 558329287 278564379 58420815 265797570 15476900 717471707 565280855 464304219 251402378 333974970 489199320 417471794 240908005 344814066 665093263 936707304 288917765 596339562 868497502 802375732 664605686 139242392 23474570 497737479 16990378 158170946 921718403 620713924 545221873 74552655 578855999 328418403 46258806 13138923 414524682 875728213 760254544 722479001 794246402 912927945 426103499 267102507 944817503 524720002 866928994 330267025 773544594 406970650 803003156 513037119 852404975 788867242 808235414 818714565 628713356 65678258 888706625 846525905 244727363 367060297 182794384 375963369 385554803 947350230 892056787 515589095 373210254 391315132 613810901 77831369 732473193 578733136 462731859 754243638 549200864 211205157 278426371 698314455 731374027 498576771 764363126 550907184 24867579 700905897 767191248 146605579 806457862 823532350 960015740 983362785 684469704 454790464 955621523 826625920 338382692 308923676 9533171 864351696 113755307 772938116 14461410 838701631 243043777 593731999 69232123 110255488 742000120 92978754 372297474 134526435 442484170 500757215 718698697 29022919 506469739 472122928 287711908 659397570 613399102 631969891 4012476 820582728 50747897 553881334 528789359 747021457 310171152 187369540 810730715 501936929 701416887 351536081 883370458 953945631 172850553 659220359 80104828 129755885 847305085 782361900 278075099 508805353 990070206 336026388 303619060 884409851 765544834 292440139 328273895 217020542 123377059 420937615 112007795 314891164 701829433 579023885 589487086 473454299 633213973 856347313 242589750 739851275 716903641 385727429 382232988 490598651 309426968 858619272 836780934 420586444 210838611 537966746 971729712 766721864 873454689 789706393 567486063 135933929 134905848 569012228 307477675 34918648 448004317 307574792 266713427 661851128 663818182 235303475 107316474 207249464 147348363 972548616 623114613 627922987 167950604 246559216 339603121 851899270 560233182 99255701 578462781 772893380 168558126 582880158 666936660 127539084 617523275 164033958 503554307 541359333 8759271 896161899 693474793 175840045 290619081 678107446 884948635 600669480 693427334 488963667 771207541 104308603 94137308 250717588 994658119 827821172 981926756 856426532 381612786 794971543 20321765 183329036 778350822 666919514 899482592 200920222 621053475 181702763 778637152 673713184 988157115 506089077 684028068 739106002 580597518 720860178 85802605 723147780 952263799 975251318 997192384 763260473 115319255 29375768 654499335 265515290 174959013 766510053 228524365 16145963 933046026 585966216 690699710 919526508 375617302 676414465 628504387 627682043 416928540 649646734 771508566 46164003 151152733 931984467 209528828 925260771 256193576 152505728 112267704 551449101 253131648 948453105 822523534 638688737 69037565 327030444 274909329 730908248 312792734 8581765 47182264 217156075 282860246 793818583 72820573 521778311 208309848 931041690 270950992 234681089 777169941 379633482 865956802 836618646 861878047 394059591 928217148 725715613 634451280 669979065 688076015 249918484 213311657 548042394 621835615 173902033 775800508 224354288 988225525 482929500 159387265 4429909 163224315 587154098 871348940 104964482 981333065 941962359 176763496 261249322 275402971 373670422 92553794 461188130 212590401 933927355 287437846 153829236 161880327 163441093 836808181 669778391 948657475 310498530 91403752 442948067 863007588 87557150 325340099 637959489 621375998 683216809 314737884 176003273 134777452 927309970 533526905 725097454 997376576 406735116 492720923 848034305 156963452 621540273 668467508 270870471 23208638 553810266 628850625 55866871 670317978 510906275 220910081 451495731 8843659 781079830 912268993 568993748 649364295 749990869 660520948 245036418 608718841 495418616 742090690 338227450 184198135 269693206 79655071 679961840 16494751 57988404 615665986 131123067 799315248 253259005 726795854 376901725 546429018 615800105 710703441 265391364 390167128 75222104 903456215 411670225 135920654 191720411 194062814 781854643 183940647 122790132 911090557 730342141 650013113 935976365 589239290 425079016 830826783 62087967 521387879 144439706 846165541 662895390 923294562 126513113 149129465 499545855 747597277 991297520 787417571 399692914 27670980 288043780 843327947 483248703 598721453 799281072 376079393 78915219 364507474 771745159 141749541 53877395 561098010 390071987 905259179 94362411 464747628 235619623 297942856 179707574 63591162 527062165 528284916 493565544 86353071 804258105 767705399 270856862 742923635 534178462 799731322 927598064 143560526 805417302 312307514 883371045 334247673 778188083 779837807 415224366 960748367 376079683 433665082 722785278 981643345 847792308 652651449 535859511 884460086 413950168 766335465 968921157 302943049 720270541 95100034 983311453 158665871 705394693 65689282 75639998 594320317 799626226 407617741 546646108 60356510 242273867 476161882 866222017 211036051 973441438 977038338 489733835 591130517 777091869 93157272 723001022 225820999 191433403 784921675 204849097 221318928 225716319 650819698 106128047 601180225 555437426 776080303 846047626 588934399 812445409 158450178 970209766 14701738 367907822 364522417 49149399 60168372 470145524 600511054 777305611 873109560 301452646 597483071 474470034 668405153 760049650 535837669 162609968 958593158 226033874 479979726 72894943 175769092 239302686 292690941 279990351 320711070 581204204 117060526 620317804 83026311 192939615 67754312 882739723 310224226 507855432 232536887 313871478 329925658 457534878 499018772 967714178 149159936 913400670 28506914 130154137 539441156 349062287 720481855 734748319 787994966 449693895 660118058 102534269 73447979 665971655 751242790 882553101 119257472 530683587 269430202 370582703 551886324 460619581 470066620 962998177 340158829 573637902 515852920 77680294 910879231 602399901 971311076 881701142 933941584 805928668 755899633 381012722 535208897 362430899 822910388 156455572 462363263 465466040 361953273 855281027 635737079 435384441 336048524 144251038 502901337 45834094 754693378 574583307 685727010 523925424 448392953 759958193 472779215 7427766 905448875 4402596 320876115 866927366 831844612 555647926 893482413 399249704 871769565 309292451 670851841 200108626 492259208 806067041 410570615 203198266 198504944 871921179 68749554 548332897 678684526 441295346 45582549 573649852 888090863 61516020 53029123 624474028 995204220 685901140 699241470 361670506 667766018 466441645 701490735 337847058 117220566 82090780 710372420 852806138 328643002 968602435 654558888 389674299 250681359 675538857 283529974 767997723 888991107 401114984 821995613 48576839 501801504 694902010 647663591 40928230 356935534 201416060 272820644 28137700 289074514 360713645 593154371 287881995 924094884 128569446 695713379 271660264 806586297 590007674 762035410 234431201 444027381 617245160 837601280 945356274 477557917 662771405 818943240 137119783 718102825 427666385 233125811 878507453 971061289 482663443 454479589 217709340 108782637 926412444 323692542 973019813 262695865 980006723 372786194 638417720 729179036 910997077 498216970 721785911 78514379 384533430 782257033 541845202 421806173 636841093 588741190 659971609 280401407 812575013 291468674 273281020 671299901 161938930 19693363 5846744 675769787 383460427 176236441 685100134 333494019 883992391 162704540 331093195 406491686 1939706 141937563 600547763 733516263 702304289 885067547 682346672 216492602 485958669 145413906 831528830 847153288 277775766 589364662 599724823 623392979 224589862 282329660 598332930 314274574 718578182 396167493 132634106 733311381 955388562 787800207 779227298 123602250 522337222 432860842 423843923 940130806 325341938 27220302 594469387 735860470 685058059 958960055 954713929 409894478 372613676 761908172 942521562 914466298 585841037 898690663 670501675 17475939 962487520 228956997 723572515 258624464 102752101 471258849 134713148 748457296 182508673 350758113 1209136 625566138 923394278 849806519 504040565 112642102 863950377 94682721 855754943 546913179 12317543 173688490 28733777 860219985 568199525 539087205 94291095 12346901 572227904 19726971 383479638 543784792 84240274 755092734 496378923 776947934 843771184 625030068 727936224 442751404 250539067 906112438 557090494 356908608 600847184 242486312 410396585 378240169 176709143 548907094 433610950 40045659 111266062 691266449 580904224 753011495 319289071 302924071 87375336 844607583 462302558 499316212 243385024 311943832 274248444 116141704 235776895 177996410 165811334 273779565 276632739 216874958 742447335 630765528 812323645 744588613 427092543 376854399 184380144 915713035 572262442 93687687 123921186 43046736 865136614 332484032 240079778 341506520 194923 279748754 467553263 125182818 558224304 689179501 656658309 564310031 885615181 453506238 638955289 47029124 445112537 946144519 635552079 123044943 311606210 187277089 102545438 818211234 330096141 101266695 920288760 127672083 66924028 574683460 161482564 977106070 763450893 643684584 39159841 539794728 270648034 781082846 304527345 717545716 30647273 380129019 549015782 648601596 337844457 311738410 360350701 341154843 122617351 489762169 611314371 579546288 624869566 479791627 564776268 122438219 471818683 95976725 812876194 919854872 993765290 863774442 524782870 898269128 616826113 988311518 390765141 783694159 651101520 853567994 925200552 823434176 669273746 744569786 708557144 161240664 453334188 604599468 895968441 329564528 83109131 325715307 559885345 648340669 608394388 544453822 981488517 621537731 83319801 782585491 459758810 584281544 961335640 76008116 768295099 265831903 236364678 437147942 190086578 472507900 698227855 999806544 783162568 495946763 384956902 551263960 481523042 883728291 518032013 228546051 601834470 152834176 731816503 804615044 403299777 484789545 390014192 970446819 991955851 704971543 563930222 691015879 772846812 502481313 513174053 347144314 882326919 611994497 257900935 472509479 856539629 840006507 185689507 882058307 83265245 696136813 98656007 388292560 57107870 615788502 869896589 561429785 865575911 863341472 966856334 542654065 683046160 387023058 118022318 710399509 417653799 935053731 334729482 178461356 630714749 322824790 505216260 730663407 612359773 113880697 640669588 485485637 614953199 326890748 161567068 596590561 644151158 515229400 740992107 662077584 826897684 243639455 108112139 300665725 259450293 833675383 185249833 223661900 966869936 306593753 133137495 397344240 43699337 789248260 812679203 159816796 972658108 151312620 676017587 761393315 310287801 162130845 517191657 828346672 832073522 233808114 961444919 449057927 861105876 904422296 955335300 14514402 94968269 167605192 184943952 331523423 358487007 973707907 252101725 945538891 887850990 77692052 508682804 473542689 78938446 844153365 862911653 337270329 918529121 951049298 413578503 930155732 647797994 557401341 156713062 488522272 617266322 330752195 303367574 483006509 658967550 895751344 17291237 136332320 95093694 330117187 962792326 117644220 690018500 966012641 923776844 343655837 805705552 720601927 990009544 236189015 607378579 533344002 910208685 361148562 560663390 162877724 677727116 493128502 893466261 320732238 423132678 337028345 993989169 338744649 622693068 632286739 941865064 523619990 748242915 275694176 98666788 659995754 335237007 958064423 380659173 754733098 127405061 961177623 742414177 435757270 655093344 434964581 836136134 963977021 489594946 771275136 190007205 127471356 970245723 594771940 368320280 58289787 24380973 788020642 871799748 333174966 96619246 890078113 459478016 953225384 443308860 879000002 993687120 759198777 353566953 12030756 850925134 545390957 236037750 257932606 387004182 266049368 327501859 299032414 852665361 805798714 712030601 967984348 873427301 398023853 289557916 961423698 622296368 814500663 619679016 402506887 60508202 849542410 532806194 511956868 413722243 14899632 398316509 874971405 690131882 698217918 150877246 527230088 902673052 399349988 925341806 886490848 150764019 270641201 343180630 909014986 633571287 593434623 820670889 81470496 288330401 930132942 572492508 893324786 851256366 507928415 956688701 145575240 988589794 484429919 968355887 742685215 817238806 859578682 183613270 8530404 274042971 950196146 334659745 494905109 774188342 114811247 284225610 799984072 499721833 158006886 583859464 19509905 40815364 370893231 628883802 817251520 386587500 934232854 410583060 992103713 613869911 106877163 37016858 432850558 9712859 717540938 479979187 615016075 745879599 520198579 311810015 461035548 137395499 592681271 653611606 398861582 473980228 9230680 793457049 535891395 417536484 374077583 215084519 625659935 444861972 793144801 198894240 808565256 419524288 596006754 230481089 369471507 728452981 991593449 446917700 656177577 525080806 786322295 251868430 288552397 870558181 180590389 164721937 341080485 82726424 626742103 804076111 907048390 857433060 190153893 515044922 971805519 874100716 381642376 305380741 142717844 286927269 589928625 981106511 890958985 475917472 917627234 760248024 270118694 306725291 122130428 863241721 551638005 691649061 489165956 788049315 154873124 120172453 498385398 89384391 989169959 387312922 809876216 106419366 329951504 803329404 668271837 674397222 34212301 641247396 969521784 888380527 249897877 868240719 727814488 7257185 464542458 999106376 313724669 149890422 789366060 349561494 799632593 18697184 721358461 964364672 89803428 653657614 150265177 786094075 534929304 254662916 714181207 366835807 842517460 401085050 279771627 987786323 619486825 21484767 292974712 414281158 609862533 730300232 768254781 544226719 836541347 840134569 8896782 801597774 592247237 656160202 774280617 783496985 40610913 960013111 35381236 311321298 542744979 375129329 62298791 445757838 838699300 142999127 601732699 28726039 149404894 145784122 641883569 290695964 944675688 715905902 131634567 578517761 939491885 890096612 255604178 188936295 903761238 196484972 976058556 737195269 325739686 92112693 476028268 716936374 915203688 413126376 585418865 818572156 865547037 498711898 85010193 170026355 328933565 178147261 71166120 390620548 79896927 102490207 175287993 876872618 13713865 648904186 961530331 122003658 264341296 869238938 272921495 292721839 234471180 333389046 625670884 452206574 243070859 687572677 648856022 307971801 879517708 37831894 481767430 289513439 876797859 590179018 302878749 703893712 117508403 139482736 808063137 763608608 314228283 503556390 836909609 145758348 324016002 558915874 477290129 110221417 10735573 761824764 161932399 97304694 956634681 508795737 659651717 321309145 446652854 822890643 333777457 897784873 555569196 980482490 43412659 264159673 903769649 818522916 355347718 296557869 854178968 358496119 620207339 336316904 186726394 105795684 522536278 216545073 455587747 802678038 456503190 810819723 178519838 773645964 778219422 802600874 930167285 291353000 728352068 900584753 727486585 317236364 823006706 68139898 722932919 468711985 476426015 381126925 737559657 994012501 899003239 734093379 659805995 16396736 857381334 23687644 201742211 98782076 349774706 699003589 985513240 626692076 62025659 646820002 511591969 935432409 42061650 480561294 641057866 983729307 219936352 144313559 273409520 484130586 207531354 824868618 215784585 546821562 406017233 424894273 554753473 16478574 812743885 7206241 870474173 370472479 123263182 732945912 231397823 951460347 453439765 814403943 392180028 305978922 931783072 732775740 2616464 916009547 183861574 795481022 313392780 951162961 700218563 958685115 800820493 266477195 594029902 109589069 455329335 517093389 582570454 279361981 607941240 716904934 251956015 360908685 220680306 479526877 316772656 531086349 405308073 273454347 287763236 552392217 674237004 764156590 210582514 849330855 783676160 446706455 504519504 277524920 513716739 673710969 10260571 923694704 543143361 538785033 73620862 297681605 679329821 742808851 342049408 610635582 717179658 877479129 612658466 74300379 19604216 316032592 378798582 259014602 509912985 511666756 194612404 830530356 546882424 645239089 29091689 531142034 843652538 276698448 245107488 452420344 897718679 233913397 617131531 65128573 288893758 970497331 896987962 951347873 559143722 608772446 810050701 613906983 648547294 113737007 239771460 310367581 160606147 776555744 405904840 844965696 218589291 554056205 789352842 685921762 211223116 346761153 536089729 395161976 974772436 205694846 862404725 349729105 480755743 162103420 975594279 362569182 999751220 557118580 82928174 26173613 898071651 496728115 530258476 26054206 414435496 944929115 9523587 454479194 824379219 303346832 41558159 989850847 614111772 130363241 5247328 897841909 385257483 77262647 647916519 980367999 471520976 221674147 582932210 172139743 401275579 992510976 185932480 105735415 402780379 168465696 676825342 240611186 523567399 195054887 320100308 818577854 402214366 751615391 603610549 484291971 720020961 820240965 361949010 21502481 806019610 129506212 94783544 258776943 934830473 337281285 20456323 929872050 704599005 403264029 368492949 972410789 360044863 489056973 170183110 472657921 847163291 108873448 270890238 382134875 611792312 745465813 257487889 586818661 547133841 93845810 241146922 587074688 333636273 368775464 391905352 695461129 134064155 624634929 781910174 185894655 829094153 640616712 770499095 526235844 128485075 597478253 985401333 761906025 374886467 66152861 762853900 503649748 489642412 412688578 207816874 780030339 332696397 926855810 917406074 695908411 726501440 346939097 442538159 941894889 437222105 996885855 549258412 644353763 57552761 625365921 843549927 419690137 57579591 237712600 455245024 952994217 638993082 344469212 356401501 157997156 365729423 788270209 45853608 302576430 443649881 628541698 449922275 276408789 230152089 945137784 470210212 746090583 465224492 132797755 14082832 786184024 765098715 812409510 841637100 660321034 466298263 764806087 690123736 463637226 613247813 304625030 679208534 176854665 569095418 726232569 164747031 889055613 722251194 31626270 492483051 556611126 999678335 780915270 133936788 635484533 383475448 526552783 219253517 943632439 758174730 917460559 674253952 799166426 492520539 802586568 341118673 468894232 425430261 576675226 728583880 557399860 782432823 101486799 598927121 913155577 471142319 171237413 345963890 732852408 433563081 182041929 755142861 312422953 786902101 499893253 971645792 902507344 717981802 671058001 172864260 269112058 635704707 610745714 205213613 783683604 432246760 561010326 137499955 673481617 110388748 871138547 35711479 801064138 541394762 293979289 832501697 489754205 811996128 667339202 533012204 513659884 266828310 635254405 834649421 729883393 576589496 930477799 671414989 851316024 391066635 80476953 448260378 962809313 434031906 779770307 670129499 670431895 540476775 820981701 526144691 479736216 780082532 828276654 376628801 751085711 381323522 295586198 702231996 899108660 603247277 220236136 269424592 121583926 458780237 944100293 525816784 893657373 933366961 846430036 771961872 309146923 199432563 976879510 390829783 149792731 102762965 810794325 978503028 54653102 830485500 780196231 649675770 400142029 766818700 895842784 432005623 678277992 483774013 620474670 289049637 102183865 404627051 631494715 820297972 616087929 684690498 707899023 523170714 475230894 749679441 716393124 345539749 635139656 805155513 806452202 831233729 588620884 145715684 303448124 753678673 42410181 696185730 782300183 505453962 752232196 541166760 553000492 115779245 612425288 652634171 61254788 477912750 604926794 706352693 506462470 288391704 486859978 703705211 584624949 528820394 603918825 366423207 692315722 981930261 688644276 761355599 375818423 188585116 943854674 784929406 268607139 922764901 911332894 936777190 357953713 918218392 247729462 832328881 991653060 796457686 172735564 163559382 973474607 273375438 408170760 144943409 785312240 443717793 129535824 987902694 524235162 861508056 346734022 745151967 384704371 688173227 192676280 79236033 751461203 191260586 770306513 692527664 358387878 857790845 68184377 604283340 226118957 833818343 634624218 101138768 433984430 230134814 737269877 530427904 18528222 686246560 955888147 333908619 701484991 691518267 909073327 743561408 957809463 54069642 787486315 176006856 583873155 701328027 260519340 342222577 540888463 722257542 386166149 185625271 451883604 608435733 852579527 177655071 707792927 775990242 801320295 663488381 219235594 517270429 843092986 883755548 94050301 419346010 345735730 449683016 197534418 667649129 64721772 542747107 941764991 135097920 552018543 226962660 870544486 593455430 541086695 126410457 772710811 219772462 354163700 926917261 916867137 360858118 423040137 412609369 215382773 888705697 33383407 95517239 987050259 13647946 338451975 915277044 195061975 754557707 142008592 100662672 887603786 106795046 653356042 155574446 315773281 499799897 271968889 117808153 193321845 699558006 756475039 518498341 425402941 261581607 276500764 68769987 246460682 514141980 534154253 606207004 788575253 218481245 245480211 952104234 590999531 772085648 704089775 120180638 68352891 434324207 806067493 47904026 437129908 200654168 17372127 704793418 433705752 291849332 435294086 312778091 202636208 239874063 598378515 561432655 386679846 116223446 847636029 654962028 904634988 251947151 313693247 980871673 441741943 736084511 412194032 798094164 505206487 487702194 632968951 275966358 932630247 589408709 675613716 187244172 241366785 814950060 955796824 421807987 886262780 856727818 158767048 719564223 946717008 439215330 748158045 134718819 115954757 89560092 791043686 714583 830885020 999266936 176069104 330285502 659526034 377025441 26802881 338155358 771779355 419565458 846536392 917394099 155856486 219549190 829405276 787803823 30493154 881233316 730140029 439162509 149687372 793779320 6781070 45684574 40757081 997549636 752358648 666504945 116810021 952265708 306124589 609713155 923816220 284156692 981282935 946838858 821045782 348406788 449122299 356989355 678543334 32416797 141658391 202658013 476635434 693517825 984900358 295201684 844944018 747745955 352591993 838547373 835826497 218574126 200792043 561210805 43028728 286369375 571975199 544452662 783750624 849210057 230357291 88004002 926257197 774835958 127928601 125289 530341451 276952072 145041786 714479473 715028276 295705740 444760685 251530763 952417907 377396924 243516124 390750610 441168083 629116531 28279406 35524322 378144138 748631821 152721809 80754137 504063065 364382791 511204346 623281962 284915115 931631192 274803279 445713717 499713174 435546169 812217945 939910442 569805110 748291128 532705739 641536992 304672404 898165853 211434782 763867114 425068383 63845588 27714801 982679166 700849790 953665594 920821066 843720772 262069079 348711407 492591814 993200985 844065028 717719737 770365688 34106378 666672740 113908045 411208654 320474749 968172166 423515235 731916167 870029313 174808461 177676936 454423025 688987174 811925921 802480865 285582541 493376289 561200092 340660405 416521338 140630178 595449875 95103729 92762934 55654726 133858351 508144742 8183112 356724359 762574806 948222201 421129347 101053262 22788856 487534775 36454091 905299997 492916083 796330799 214205795 1928047 247089625 184568581 765719641 386770651 758901482 346947946 472025118 677587814 266980828 129081217 809082583 223352956 570452588 929292098 838339413 749533793 483026219 382666797 340362499 30203676 796918052 112489668 260029763 541502062 341125910 559205644 63096221 532703598 889118653 746581101 688539335 663503428 78311589 565552339 22350444 189131732 487756416 813735014 58830880 659513262 476129752 170302902 248551258 949268238 795665777 488052341 981429926 874272946 51985846 468679999 25042599 932200502 411578891 526285140 963727471 353973483 28326832 27269278 302055329 387921042 353120763 161736917 703621734 231750627 851695032 170624355 888721156 970028280 633708575 498533009 544137313 728788895 89316867 760828419 490127696 172502070 731619930 5026066 813614758 763287630 811256267 581656112 242953483 841446954 355079823 994207128 617479936 242323179 980094387 837478546 793586770 543648618 787647059 76146960 76389354 490043826 396095981 472856089 208651665 846898817 470731432 426760764 809333086 401787104 300911203 150243101 306056237 112887093 943554648 685583529 308465918 90352968 263078185 311690676 782338261 860100678 190763725 412505599 171308176 200556261 389275157 672087941 790468939 580095802 336844984 942515074 55589981 130551084 279692195 916255315 42304777 969608681 41085746 640702431 458036510 983399053 974910410 852990025 823928017 156984249 231584565 127634686 40635098 395453882 53733429 365046192 121355657 82296691 685803858 335878553 576150410 955048239 987001922 579873832 499778312 932232813 671861528 519908908 62735820 342788756 73560919 601474458 160818896 475583116 461386675 885642899 417057389 330466223 672647914 508510816 843895024 696947515 617262612 796412490 769338061 226669824 858818041 150265393 713167940 91659571 931558264 536573322 810553708 617132847 884696273 829549885 241944380 51182685 966695847 232304927 110431289 498528454 935553918 635896660 862660630 288381808 296085063 817460863 660761813 394343702 644957506 851574751 924674481 406178845 50178752 929256388 753109114 239332096 94535152 917620137 990586101 306800285 606554054 973241459 69707527 937970688 430247356 267248327 888451542 670768964 493535059 319428770 575749711 906398987 969977380 364348316 646595126 725857451 696507287 266355341 916194137 425494279 901336120 101695019 922057690 988965177 478413975 509910238 537360647 109966673 218967401 634171518 581822817 195588332 56163389 393589740 109098494 876381987 824418152 599553937 927273944 295878440 823681848 177089800 260942611 986546996 393868857 386487568 764122916 17625273 93179 387583182 864911279 289282020 555307403 960834642 587290626 899330730 768254262 558747386 722586722 577274753 257233343 841093044 884589665 758531004 999606333 800015646 568794894 718223269 522470351 809840640 303604991 661650370 428733003 650089940 542199414 315475834 385683947 825202869 628483075 501089991 951947861 576479252 151223888 739965987 578681189 76135589 839354871 740188164 460346355 448494637 873387460 794115927 985772968 719956408 356898888 885324460 998575780 456384544 952762078 670413799 246805503 289429136 57215335 547913711 2003121 480794253 361575760 756178786 380042546 979482140 835764737 475803910 734646065 963427661 799120063 974360748 929377838 835234587 411634294 98824136 121636095 976006901 287568915 837042388 685231075 783944351 406455778 525999199 258597179 345160263 903757504 702509361 77425162 213473369 985693405 489764597 686636431 303085990 810725384 993956242 534294697 1694775 409592147 861870945 445001497 630937934 184679720 74824482 283553155 720970308 784893272 404568971 535406341 419447764 413361797 277130692 560723709 721007879 537355341 254351765 350931265 847867635 583903290 212570942 209917981 381498639 456596496 923112825 237311290 526816346 835055318 47157367 28309260 587767351 546634628 498230588 155621371 656406170 246748885 344517192 554068430 973117165 882941933 106697626 333527655 221775948 441263670 979875704 516117677 42514522 163570676 864803842 428341409 891029163 652177727 735962158 701850478 141568388 896370700 74801755 674854914 226710417 233221008 627930006 46883550 495745581 930011528 156939898 8793888 817405661 671916230 843449647 963956734 721933380 927058371 516528454 864547849 495828496 356643105 898927417 126662774 209117805 752081124 78212047 887358574 724546345 852379641 609758698 317871298 77165136 587058679 644510441 818538786 830054988 942143916 358477727 344684873 732932958 592272004 718328537 648731308 792299408 162880567 82613560 544833275 906332982 70709755 951928406 152961201 301620682 89324875 759050879 204637516 814115632 761595430 12305249 744519296 457134356 480376171 384528732 76231662 501637735 705382897 112436859 240485573 761321031 503860795 161170743 957360559 168051936 788850346 481415937 990769507 227478881 503479426 858607304 732583431 115383757 409202792 187590239 818956726 660952862 379846591 299535012 822495778 556335318 644700107 746371140 274234985 873325033 457585499 285458548 512630381 541463361 316336632 983588986 287114974 641213998 268183571 507927606 690001690 479939818 264527487 894194050 495732829 160467195 776685497 869821620 157889572 887744829 502889262 179571858 3957525 605439467 926374780 143262703 971604381 632645232 655286481 442427050 509892350 974909701 982206052 812071738 175261258 328907579 699842751 235603872 273505638 37959997 896049780 884273796 985886143 891378642 324209370 712177767 226193000 111628388 283515132 255224726 62359706 721650513 877215010 550998650 912141862 782596158 397792242 257417812 87536844 372522458 918848018 428732262 300827473 817573700 857219606 878359216 628339502 195932756 19744827 660779937 815771295 166137344 956904849 458983653 110166713 788225287 171499939 264409980 611485994 114626484 252120561 105523927 809308433 900742831 752807593 770843860 356140333 354467402 437804774 138965748 785635770 636018380 809666919 931029285 166081004 201234524 860840955 214418693 307928127 620725373 448810016 730996532 524841961 188823440 230866292 913962262 410723155 536250421 600187710 357156683 830962011 373789654 854793388 109272340 885650408 780009527 569672218 358518939 343918745 903323692 262803928 519899548 379410780 448563917 784402774 450978845 516166431 743510721 651047886 878487845 319093695 471344264 826345131 824490446 77786492 292988366 683293659 882353104 448696541 901387303 875332231 90134354 875926854 302346003 606452542 445716783 68296477 193190096 209485598 646272132 776177582 123762262 590137986 541418022 207727074 989625968 200546319 5021733 78122903 157219610 619776454 661394288 12232497 159955481 528266382 811397440 848701498 498489130 89571478 481470067 284496510 338549915 754375181 5574478 628127620 373716201 769691305 800440982 705416140 737869057 277485590 272313222 764739606 778732102 453180563 283908553 426820000 561264804 729371193 216995988 353049591 619990596 203284681 706870427 746366098 957174941 778608232 26907536 385574370 770056942 265369257 661536173 649891105 303120492 169027030 141887060 647876108 959097848 937836738 394261723 551599132 631187154 952049444 996339133 801722388 315079100 861205380 926182885 223062 431647953 855869517 207590467 274912044 164115499 485345193 132010480 388808281 489955421 723611961 547992967 533069780 814785009 696853690 18015093 950709725 335146931 836128409 174213481 545549086 397619427 308530622 692360526 578872653 117221896 959363143 980709134 923915992 513821273 924292867 365124404 493413684 857961216 688115195 302009240 510308112 122748496 285759709 791789117 312607626 746511365 563607904 412745030 125367317 440546662 794478258 776748803 511521117 37566443 595163603 334894966 237417852 492704913 123370466 400826092 909116045 32249017 5259681 468605501 738885899 578518115 49450788 854593843 432620583 215474633 638027438 659429031 823301110 564835128 242971712 196409439 573749414 104050816 888530717 768014593 839158077 471850603 958028126 685603779 320159115 825878066 615796242 967761663 606109499 554604490 196894221 301558016 383941190 63355653 883308098 571173107 979517938 423268231 984345437 720581701 472924698 637993022 974850408 19770162 582635229 724940640 593567081 344795896 736853524 765004255 184056595 438510044 109022471 773330759 958972344 371539059 899617261 733662306 578486567 542693960 869313852 554484553 116684851 162396891 181141822 283337676 811781892 996783448 774034015 414715545 666291252 38620936 427360730 79769914 521051172 274580325 913452305 463068639 337883087 352456580 561479556 583314153 288452744 217182330 579810554 477019612 338857857 156573576 592677344 253858319 146890059 339383125 130234000 985421632 785894826 836099383 86228574 927984004 763326643 425611870 500160923 51937882 809507397 582174099 43368749 256289125 276241665 133852196 815409103 19299160 117859726 590194885 894581822 100672727 501867174 689152643 851951027 227882460 635370454 88639873 133443795 592775024 363993488 337471382 806817330 161267245 730573818 829938525 485234049 970794963 291061903 561229007 977370206 824364521 568990043 632257941 786866469 337330506 501464953 293432361 529629145 958485061 922368492 767023913 193956318 703584737 629843145 236750435 299592393 23063452 742228025 333055962 464070562 450277405 853307711 2967521 3370904 536360766 955048674 488084984 5601645 893092221 804768280 544564139 690898598 912216502 580763574 342055999 373146518 500639542 761558543 397019502 117082060 465796948 421980165 309256980 91593671 264439298 620548602 477526737 411155852 510954059 72681488 235778404 495105073 791957290 247760666 681359609 153402724 444956033 845498933 914756152 780795395 249475261 168883690 480928417 845269993 275910056 289050114 54218054 351165466 444642608 199107115 418565813 316405424 893832053 760304288 481675787 557827703 550660989 240910730 719647643 463563762 339534176 339054649 720501844 371137810 275446204 756860539 281245220 233750830 294184236 630370092 18150203 949880841 704980895 470440025 479486131 92835963 439244951 155366727 754255722 418570576 401680303 982182498 903833615 491324957 909041282 360358053 957554416 670848528 649763263 195068456 716609745 526345739 32413086 51239923 880693410 251487083 726217609 60670664 709513546 899392872 733102824 78918835 543232214 185645178 191340672 930257499 555476186 597860488 814126972 609419154 876273414 581899027 914066897 6961221 918000871 58046618 353411352 310547288 620949835 178024025 187687166 725051847 779184924 517800470 587323932 634873514 52124353 289335381 471008996 302538165 837196858 804231566 39019518 38239734 991467617 137266395 139903725 122170759 801388761 795229656 508811420 123118471 762791284 251212880 912442655 131698635 670870973 545373016 987956287 611672398 170181216 18803271 283016780 593121879 811503179 80821567 480282834 390572014 443768550 77558262 989508149 393127000 914472963 780958929 11979547 317886080 302437153 219035329 994967198 201009185 242447873 882521897 582984035 510106524 609027482 614984422 943563136 28595036 445581937 221789318 239642264 743996026 822376443 494929532 612364428 606155586 636279611 144633574 813622438 989126588 215747856 236117053 269268908 171817373 861252690 333453890 22220813 154827570 669039748 775752325 119137362 707443794 586715540 259562621 684104729 985986156 4076396 460333385 701692466 331243122 874551738 400682188 26225554 836350513 105230325 505312035 702585297 688760616 346977735 618251279 665748864 54453861 832657332 85337641 173960689 390261686 932073961 942612087 969733965 381907612 134028934 972117855 554751098 835320930 317680873 554510385 920705463 456876742 884942976 569465070 261913136 634165513 755069183 993427888 183123640 345167647 650240503 675714662 39356211 512134662 198792115 473384977 750855805 500041314 480001259 929151648 848867238 850604660 954605716 849557870 233467303 980507971 346216549 454744956 826078333 754257968 423076910 136598550 971533791 458741288 104021115 310709970 770407943 546175784 366872879 690317750 590884596 432161242 415909895 863306177 158745559 634499325 689601684 339615050 810139208 189168494 955794554 671431870 552660368 534907473 706881420 543046115 683146060 562010821 592574026 332873098 757828654 856616213 773180762 674325180 280825456 737385504 125090467 524253139 467477874 787176126 321668740 227253350 871573281 117314721 486253527 340035881 546540636 761563595 205007078 715302112 549348643 891945711 736714683 850114996 319645174 463564257 983890688 839856053 903651445 890545589 601890245 616550986 698720870 209836292 108934694 424438408 665610186 344453755 597565417 778742128 746407295 20299469 743320798 479281925 316380638 421426113 221408967 799606500 915291339 384949874 348163077 824985739 807184531 754106520 117877801 173912139 811157293 171430243 806331125 39100006 401349292 393091906 805990775 64897345 769124612 277716557 986589915 43733818 627780012 777815236 637770921 666584075 892654966 752012874 800966675 626745250 678840022 356820219 269648993 264457808 818756677 935260014 381328492 24283879 674585265 644154762 990612752 305480022 417159974 16444542 87774502 236743706 560229626 609826145 950410426 745449879 991805091 236920362 25894215 519917819 767902506 761743000 945559046 240565723 728191796 503079852 440296078 221062681 217256530 210455564 967531189 849258522 652586877 349778917 13797214 971227328 679160196 634348339 398966252 872138016 70413205 825605004 412811569 585885360 264137125 551253414 389306032 291992701 465451792 988300378 115598855 369603561 429495445 573763164 717132883 282720500 109958476 989532003 742409187 168267448 409201942 635310838 806737512 336952839 157772720 807859767 281705190 881262701 54261883 624187126 357178109 793762267 2471971 532536654 524560158 816001155 804207514 415382198 51726414 148480356 656525278 893693813 873562318 258945321 790870019 826841670 992849973 98195137 861103050 387322417 119439723 423311893 557665603 851330975 474864273 694209094 734509331 646841251 406889497 963532981 61445083 571423804 585690366 809140798 641377606 921419235 249344784 46428241 503788863 176396076 247768872 788296596 428433328 198614655 935333758 495362720 588254312 917893538 423140688 211969551 450949699 622338850 819850017 443914513 725127868 722326470 208366253 274863035 706592266 112017314 404989219 843812346 749117762 909341714 663875206 761248483 999593638 151404191 48275792 287705216 106739080 102225393 443340313 407718056 339652180 907782997 28753915 44957629 729430090 616743355 145086231 936853676 571603949 933053206 462200382 62569737 470648960 425262931 904999908 418303573 46664633 940686986 381714330 373170862 66998065 171229435 405755856 25828904 361760911 405509842 128900423 217818271 356304738 395454940 630568820 630592780 74263279 153375765 251616472 137720960 86694637 235614238 959116092 589850286 730058439 483128779 916319761 901194224 578197506 245015666 658290927 548418684 749203148 303768289 425571933 985988058 762953322 995607970 487549598 18989129 272924890 71154395 462882297 423572086 638954567 684669230 474440683 911955861 454604448 847553508 706417045 964907441 726316895 30714104 117992499 667021271 837467922 751096472 859969092 735476413 999617337 689946524 181395173 850175099 772088873 425364308 212064684 259602353 425175303 94359320 340386394 784157535 452857843 478057975 519757036 85793224 619602831 442188619 862037087 741273101 815722524 199768043 859585196 265311545 912556836 95062438 183791828 915101526 784870419 447585679 976211146 433900849 374386751 167675202 421177554 997925849 451381801 840662824 968737633 714056127 297749625 203130060 183181608 60672137 866642449 156039343 17410683 677199214 676618178 530492211 124917655 197844690 859522645 138541523 953498963 569515309 872684829 4399444 664310822 330999411 205893894 328966207 166713604 945679047 798161219 666966743 794879629 924168768 844678345 18653062 233959445 507880329 610106142 387243852 146325677 228042970 75971039 508670772 760146136 927213726 486777652 516137687 119398890 485398679 468757180 388825329 766547785 287474977 954970758 65000449 944040772 353871302 687832202 420286087 98242032 866571144 851222473 891216847 39102819 509814679 243117319 157308053 112498234 327501891 853161313 289106710 411922688 695336765 57688960 30704130 131832826 7278560 931671015 131941338 252984522 770563394 652298118 461337365 429275560 144745911 499632763 236833556 975173441 225347831 636448257 668325192 101315458 362155033 927826353 807132759 628326681 686236000 838526963 533568383 579439432 157691564 11432568 515123731 697011340 722943307 565732598 143136241 776792642 571741413 989178979 635323040 909020445 734823156 435965665 170489262 122781297 199211925 779096277 302986121 317979421 382668964 369463901 740753556 70152573 869200208 166169956 816909652 800475049 485853519 842470069 236066950 105037487 634807598 907543230 210511131 449744937 406110178 388576993 276699328 187099326 270301163 753816113 12702653 66716695 169431624 272861917 436538198 872231461 563385041 473467861 166694665 607120138 963925213 909311108 415550025 943079321 488051915 436066162 894339825 626239681 552745550 43016456 568911521 550408851 363304030 754914738 981049253 769941474 590508492 36292385 854772924 440015289 782436153 355208567 144256149 185217894 65522901 81407172 479913687 345816213 37678970 386607344 810024197 204864799 427598755 134880261 199252770 581339705 707311052 622500344 844431133 921070345 791593499 325998312 275564354 558358403 124007659 737226080 524339602 222687475 240317422 322747978 95353773 583108050 194932450 858913412 314648166 45790341 897732852 183681453 405346678 446556428 808315748 831841569 476536820 628921263 415194304 348986402 283523907 885943968 948911199 882524062 235541148 808184368 122094702 126624370 499317376 64291154 554467213 888930702 420319464 714628714 780383452 903990717 681296653 516985209 898207503 249429346 431562576 502660264 807359953 588698229 34410697 918252251 375680839 228426182 229515024 790830641 233576161 864693190 516387923 888964884 683243770 371803300 811422495 182821568 88438767 530871824 604818613 162823595 183802587 430521752 110864923 100778766 398005817 87221009 825885514 287104662 443829710 888215245 664251750 641926626 454069906 327388397 148941894 580202584 306618924 167487361 653440322 769628499 807180569 705597405 849905515 961006221 210472376 512886040 55937611 935481311 295927173 298067298 542979935 970496208 364090791 229731822 76795577 181538245 102968312 324762381 871377289 23840865 140615618 862426739 301512597 626472964 922218909 861398987 619139750 726893865 790671031 115869673 841980015 477107028 365613169 75451932 853918265 204311884 930981868 710551325 378720475 463945374 478175540 32874353 766762987 264341158 141285629 698030319 109840191 944712224 836595222 102088974 91448142 578495177 187192591 111143816 765415835 745395863 151751339 301431802 124640091 216732811 499167262 727416918 249544205 30949834 353869268 340116934 548891528 878858166 340305496 199549765 286929164 821369252 626900799 947932849 508906050 891729551 134095504 530528904 914428156 162713269 95850623 254222551 420619839 952579609 956870976 548073854 930426213 247829161 934603262 345695993 876246627 541342036 1821789 460990493 991071848 318106371 428059455 186615580 865207509 740336551 935038356 266336957 36553207 686510778 285597914 464552817 504476347 225882782 557179066 566678043 152411944 283514858 697642568 262354885 948202357 389923066 27062517 162113160 55102984 630911117 262833716 440919835 481012722 722627405 602700765 882987981 884031268 7422898 228518481 928278927 294068416 912822407 602473259 734486622 674265861 411306597 526251858 670658280 92897636 863869799 509304497 189206340 96665360 626925915 857070806 255422447 28677378 573779223 703773211 284463347 959646018 681476393 213427104 696857482 9634595 247118937 422496979 425046696 992348675 737603747 836442798 156365591 392339928 854768245 652007826 195572058 745909508 660738262 949702507 349941883 594803131 245484119 290431597 14030989 556063044 617223293 298704318 734495992 363585795 443173150 419643106 287385339 59644550 730724550 83468102 456306732 453450073 334726793 545086481 197421259 321751012 949187624 508597094 436200405 626375840 632539282 498015306 136513707 975936680 73189836 997191187 917278179 431411815 861104711 630140451 27630268 77227000 297258361 321961477 632273508 353612306 710497207 982557098 479934706 592785539 509983769 99476563 266932672 50160218 786660161 415105508 67892721 723894175 375496958 760620720 537931304 713741207 360613949 889003687 111238031 361287806 84633595 197757061 328708759 7530558 980229666 33297716 102080662 550406268 171137410 780764351 913151075 606523837 784623737 804682807 871364664 797075080 237904637 625876025 733802505 670876147 953876940 779176695 37233765 998096352 468450921 930235745 270551916 823432662 458774899 756773778 385062325 600153020 538105403 777405937 272812354 337623053 463406133 908561398 28041691 112538199 661121653 60812731 619546408 560163223 537055643 874651274 165093242 81175976 259610035 265562792 392960171 647275311 306921133 973596352 348865032 32347074 65540223 210924049 403674680 35042656 961161003 666263041 912951715 952527412 351405416 457142650 2960001 933887477 643774277 559450528 164000761 689837988 355437542 388561819 590959223 820462794 785171553 589728295 883879626 66273507 972251843 649734876 363008413 670339082 307536268 909789178 793205441 834663296 190450250 278986756 138656622 8562580 551952305 279207782 887240183 671471759 716344249 514620011 942030260 331260807 138675285 695275961 162798605 823442045 904403899 269587937 982404875 595050261 839652578 680304939 407606779 392854135 119700499 946901745 196288516 245674499 822232451 83904558 36653653 228083731 92302869 19651052 370242897 677913400 170288487 514470603 526532641 625177918 821793571 801648399 805971058 216584228 805730220 201458537 858722853 371971085 340932976 749142237 552050825 832148034 190425161 892219868 645935973 230136326 41402086 445428664 557122764 613682597 169651373 982056613 31323850 392373195 766284705 169176769 775943335 366397087 508916044 134577764 200084517 928070347 20314776 284949461 287105900 955443469 627647006 418079338 602932388 480916504 733228410 731095365 451958039 864866232 584689743 215890920 174184432 774101678 810789636 308293774 226351188 989346464 15447853 917944193 734026373 962455006 593384805 178759435 152400752 764751120 843149457 378642671 199904573 432792579 534553664 931606080 381362816 512232474 714910755 827186407 113411851 737845388 407524333 563987761 612536165 105259110 476042404 850137044 583123954 639312726 440808695 610530184 125844816 262619173 548771002 694463105 223160073 341810835 176088174 683595645 297378021 800002758 458737625 987804428 103814366 455000578 617906338 526233121 127897854 36844548 23021564 434722594 377165924 436546385 54552395 253850464 682059293 739758259 736571971 575562904 997580140 657467997 369557047 774164791 879674552 340394476 288328053 871310704 901653364 405307316 32668833 211782838 207692482 661799331 824577014 846625589 56997123 787021416 269953603 510939695 308696862 180663635 20692527 83495656 521483083 920488237 667132884 172778512 348109364 9675969 357736236 395627127 678236440 11573 439939375 288118164 819340172 262109115 197772088 401032864 927111336 256493530 299171184 734777047 633077683 247957178 860903951 880313619 32446314 756171870 565233414 224689843 450140193 549810639 290893730 706083990 661405949 16415760 982506308 390939200 226133700 980695987 634976796 172260055 520650970 920613660 813136069 893670940 384440862 572125112 403779704 596625296 828061195 849383897 267868887 673254427 34255674 160741741 224490288 597183494 426232086 120099069 562076159 904442476 842171162 272724166 621521343 401218535 75627491 204939779 780262514 93451793 403726378 123638108 816594074 504862225 77924780 60311195 85261950 431355442 157452837 179868574 222436333 434180874 875799709 24123554 217993269 219825918 57388354 349813765 964720979 446378503 462199282 1296106 673577804 581146354 959613121 762664148 833441475 314042079 221378934 735258511 570325314 148382411 317412657 628105641 94775875 484107487 418945133 187734049 393338029 593239681 958300611 252306613 745732082 525576890 299477813 859535805 845171519 904204236 157657460 357242114 988073734 540780992 904111343 98598394 66953171 562043973 57245660 289251364 911279388 672146558 961107004 337190160 81959154 548395620 509021726 876674149 749667279 7569676 233884178 750029821 653395260 883902245 1086301 375411439 784472730 964730733 832406132 882910698 287411340 198179392 316746695 3750541 385285880 67409185 539142024 919143015 714289980 774914921 670931462 253606659 370447528 987113202 613242032 337559059 34039253 939985501 850372543 725843828 389381358 909644020 467541289 115710355 386598463 453487940 458797384 266297641 999399038 353319846 306097937 380882232 163559410 558440396 841020687 357537918 881638109 425104648 658225345 762439989 620975959 602697359 503298698 866198081 883661071 381931215 637648524 137863826 567109758 893559922 540200699 962223093 128210411 602698950 789487980 98003619 792155803 111376346 439497900 878497393 576559617 178968418 89330274 103227757 848162631 929829292 117363826 723709355 692820295 163184537 722068817 124797344 339187410 645643101 508843188 162738633 908878517 734269155 306839225 946200107 193653300 848879100 935214851 930290692 992100716 63222389 609538248 591913643 831463824 7497813 263531281 972427618 637713232 485765049 316598911 217372884 596953924 574733860 249070919 382364132 849404984 14632830 282476916 403366823 959487694 898065221 630279586 298379715 741912246 550017241 282616476 338595104 442530172 678458052 56668104 477006 155096843 332923406 72373198 117107632 493605825 543945296 418696246 998138183 741119997 187816084 73062174 417792509 564540058 167838600 194864522 955313002 478118342 663789366 408217249 30938916 417105358 611289490 583861872 906565087 448247627 267282079 705549368 109164040 930598476 631460836 690897200 390805210 389198587 307356480 956217778 709706455 861326156 731135934 756737170 344363532 457798163 27103364 313501726 674988517 573143078 814977907 948316808 83127680 98553895 414043913 367001751 539879110 542494254 425615873 132837504 650491153 757099894 48825023 346097831 924352428 57811189 391573921 512208967 910151273 982513881 164429963 559580088 383660375 229625895 821010386 411234841 579230157 512435674 708225244 636345566 921307562 382858998 142888299 402569151 557252351 186601444 623632342 22732856 922573333 377706770 659549244 157011702 69192324 92140396 608152470 740175981 554858711 574572988 482556824 789517996 679708354 268244918 492265193 471477332 84464031 255258309 890062006 167623187 292431278 51641788 709676733 694652460 691370831 857335549 321624184 292243285 600501098 251827060 114477473 494965527 629557462 625419466 277642385 402284423 510809208 432839976 182794778 178871851 869962998 568388307 334917625 826600464 673595259 345686811 120356203 705573856 224135502 99307296 711106091 584964147 857665544 363407380 662132704 311354825 930666919 348304792 353332951 645344771 923168588 618598001 953310539 845097568 203580766 567183904 565905382 511722540 680660104 201550227 611264217 175576237 39776460 647880729 754114758 323664662 947921126 804381012 243298071 362788719 679590009 664708805 138211773 782411755 907313349 668423224 45770013 60299545 348822422 32757587 874687043 942205726 367692861 657437629 195231010 891424670 837947932 160225023 639744487 933499775 383562652 823935226 340729989 903188611 414543185 788334970 930586901 774248671 268974859 95673044 540440762 828628487 26781653 618311072 347620743 348478722 127155374 88533811 455577149 702624249 941698306 697808955 194962754 452885249 341875281 214283930 19245923 974831905 900909165 589933334 762552147 488881945 578595053 733686418 677057404 642219261 970178145 823343757 941017503 686545501 227270736 563394036 523007525 61134619 363963053 666811361 505531269 779904422 849187220 173993312 223230476 640331189 858386136 633331260 398541391 88629295 676019896 315106699 717268205 532793057 975243225 235360843 952161567 794497267 397667179 586756059 137789133 795934546 978888782 503639521 709156895 649112721 802760087 806038418 51323566 162680197 356141751 563171263 331872042 744820913 75209234 994219420 643300092 755251822 458722732 376870309 933388903 821148304 814036797 794338504 23565502 532229290 110226753 435343058 792403699 998897382 396892891 735057570 10569860 360297913 896150150 545453747 501239097 993528316 731333557 31451929 394417705 36264630 212998833 955839303 4422358 62078418 720900057 578815801 19468616 416389350 899328440 608175538 784581918 897207668 447119901 456303280 649526201 283842326 383155869 983601472 172621968 595431848 5523374 895885696 164760703 154653712 986205288 704801456 610534666 312481291 823412088 601459390 408844540 962505181 786730020 958376726 892067629 73195684 660097139 520582552 56799369 38561867 462831067 234781387 477960510 265632654 661352919 402343231 493432395 758630830 768238995 996311355 205248418 918218311 671866170 477910259 837155824 865283662 428010061 57695157 900170563 627435373 778710388 439518044 310099218 312879533 421866877 939292564 154838367 493576608 637774504 173041198 111144625 855510582 213817915 660548414 258680472 331097405 806453291 972189686 440036402 688242568 31118820 551066746 466906137 986474990 641465711 456920634 186029068 797952054 288457508 747924707 41376053 611398878 745316832 900118448 214038304 431143442 814013002 354763584 843615035 185666061 452401867 750523810 498517596 40334072 836356798 509411299 433036834 53648274 300325162 308668872 867140778 516785140 456270322 792891944 774978914 410854120 680287722 346741659 607916135 658271675 879912110 125469144 196943526 516399369 633794977 938962700 375449215 939440088 737063017 990263710 904504148 424316668 419874064 379926319 792007412 952429951 266397938 738094496 124431532 742189474 899674300 443143827 264318965 912313032 789230446 65868410 485297468 54033946 104834710 249784894 115903328 728722438 260106026 63074879 182036102 634105627 825447491 684826140 693984777 228245130 32564585 706516364 958845892 746092152 477460348 322552388 533636863 121215705 740377459 354148086 534421816 811309633 300452487 439111286 390160932 683441272 261595948 889621869 188681629 80846865 490917507 578247645 397629692 493569693 633186932 246790547 779095693 898229984 905850846 719113349 638824885 600011861 114385052 29830455 580514031 166935216 673414843 146337474 279114535 587217192 2332688 193967796 20088772 706410118 890429669 701266718 286897163 929075987 905821426 13409044 908048490 472495893 869233097 433817981 901512298 588386060 591442169 267935471 409257759 461348466 420647701 381681240 239147970 79768060 135940742 80520554 434483331 974219283 484437807 660585442 370592852 424191176 205615550 250044577 330400064 266428119 563982349 527211722 964944916 226337768 139760273 620248992 371351937 968135698 856744001 500052601 813380461 796093258 780845337 195282024 372582747 529127508 712245479 159928173 666973418 474852684 834604201 175543873 904250800 397523242 905615755 503787284 455822428 724200431 649311683 255606441 106569171 173680685 964319506 856095534 667139217 883162977 240830011 152576168 238806383 900977492 967441976 766323014 668879525 715408767 853968572 14181264 949930002 753050983 566801254 323619435 165821346 205055943 970774250 630950013 933570392 735630835 514967340 18402829 366776979 585840634 949901907 638247421 852295138 164544983 6817856 947770638 994830711 813348339 278965219 256365680 925075147 96874671 120886122 335080147 66045992 43593039 854490256 662513428 772308345 9095903 16807310 791754677 186070661 146409067 601377411 150374315 545931984 742513266 546159781 837002565 368470171 916322855 124699865 193596350 392047559 458120299 309875440 815641324 254961219 617835568 642480769 822316404 148899460 781666734 51889266 611186064 913573896 627299443 260183517 719967707 9671861 336778888 782870186 738685022 831902123 70277405 569198087 798136867 459240426 564774578 453569697 25500589 459076271 639305934 975970501 768096009 317576714 688789847 675535327 511735035 529981679 199612660 422970006 750926010 392305545 417792178 930929407 749103944 428123250 863824652 508482274 851528946 237526995 260659883 9078502 834995248 606748039 447671504 99394282 411224774 997418678 40435474 40674011 484054534 90776706 48643833 171943767 789779661 754579599 134306283 566971103 409984787 285489467 360135754 52020131 76779040 998244974 216811310 937491681 588925210 725219803 605101677 756811942 441135374 823972371 467311023 148599970 604924212 703679060 532359999 115205022 446410189 273938525 819445051 11731664 693518211 815733602 449663185 407408163 925490377 988707732 251607201 699249934 450230704 823612125 937923204 635251214 769390886 425119334 947511503 873981614 628624109 807935603 206958363 238856940 60966299 406695755 319202358 190445827 958956541 29748322 509874591 753439448 856976404 938885742 364146447 74431853 195474548 764171474 667171716 689706172 223511396 661458052 672003845 434474490 421390028 309081972 263694103 280985368 237976056 978299508 450025025 925990770 707176471 497083532 172380078 556940348 366453519 750811799 450568032 42351076 139473900 816791377 478885305 851755698 39960447 194035796 236063358 558360905 675768498 88398950 114089059 247203715 342489665 515754338 639605779 452640990 2688072 448905379 673264290 680212601 444583362 524757322 757975435 507695619 543790500 905903145 58010159 792451894 254117035 412311006 862460710 972186146 679397951 38399781 622874130 870684386 653896865 576155792 711716954 628797234 360872068 105661826 354716744 533155968 130349816 125998273 474253272 452468771 73678516 761484924 794678906 643027368 86525399 421151824 908429157 415183951 678114766 208084452 2481004 586350001 61907190 374393248 350454 519366375 609123754 510807600 195258994 58734853 883323156 17765900 953837832 473002511 308117411 298201067 153048033 16795096 285350059 168332877 754587901 985310302 395325207 493544681 136000312 725688486 483427116 680362746 272813597 518811539 676428143 43222896 441199961 239949091 444528935 145213643 875769544 295589715 781579851 6037497 155689657 828744022 30659950 30996889 143894914 654688773 657537018 556661931 305990872 971452576 285241344 503404703 582150132 855364943 527562390 245664882 595959253 965203456 801516762 794161152 408432740 630981570 810259301 21353538 749345299 493726494 686282458 936899807 18838822 394910044 99389532 910159940 945880527 197270143 667499577 358775492 875769359 986945165 778063542 704996609 639103043 801338818 585855775 347569281 759621110 46388669 214540177 385536317 593902852 634354996 406608868 895232782 889283674 46847919 590806139 27602328 588510562 670423092 504485131 461683146 411785510 507019770 877932158 903888653 938824043 393456005 462767164 908677311 835107151 998393803 183837357 447653547 980367798 533722481 262743104 893096162 616491688 948470454 114440280 442338601 433898251 613636956 801356746 189165109 41838793 801251649 735196564 183244919 150830245 173371416 671404732 956451506 991805664 76060157 925744773 951473041 413311664 460020000 365883759 438094135 826900779 419245948 577651525 41686424 42746968 854635862 155446732 374226560 334528492 298242632 520604711 86896162 7525320 138978985 521507871 102900250 985979613 982788583 873232852 718159356 208585370 247762325 806049795 959558850 377840030 726334377 666943424 156391530 507651226 425788739 396824135 489366116 608697061 427415732 126510471 632098201 222667506 945894040 669308313 779908228 133674804 964822403 183923020 213426824 843607681 20258816 519483454 921547722 595117302 997634554 589779659 848820079 989691482 382779120 454822884 751360704 560616387 195961086 859359229 244211124 46805252 119652148 629872946 161627016 567452158 132698994 791307421 363016920 343771464 721506657 129927111 89217988 507427080 743705552 898645067 320435957 400584898 74493819 577361155 463327339 65636335 736660698 611711643 815175654 953381601 341965898 777147212 966412132 53468306 879070601 258237386 877545781 554249120 796700579 659379948 109490489 576655597 777979337 183723016 442316275 683522860 391988608 880346190 760362309 70554917 916521588 729896850 137932594 355772636 196099073 778063613 239620765 225517694 198277951 392356868 704328110 136126436 259242386 574589523 986174087 290841653 274324161 116846498 884229833 231939740 455247814 190231185 860354803 770534545 193985766 263734747 101739943 973620572 227298779 348731414 481868725 282821464 404226331 431613964 781919353 210383393 641528519 770471230 332255742 908112691 759115431 283596509 506320705 511107847 303847946 383464131 578580221 407457913 708680041 744629115 639286747 503239943 33496001 387165156 259712962 405797074 273280973 406320458 193559583 752542804 996203790 331240311 339386245 440549299 281068719 485126452 607287684 487321131 581833568 102672694 755825523 183054715 51683146 399416625 931684325 256575814 48176813 522721185 100252576 952198932 461412570 21555462 965976524 574598500 440413974 212296666 776252557 136160537 929715851 746825703 902941087 26436011 420232469 556541831 276853575 650534575 661605438 328917900 468106410 439093255 899883647 759538234 936851971 253355812 418286660 947143546 427623877 661118043 980371622 589479115 734024347 981582835 505272407 271060362 555993065 207628314 431199911 91811253 807544915 135971199 174598165 917665492 711583471 248072203 316716558 359371850 965499912 634107238 94520103 496927747 309516687 23634473 355251421 146269589 728951197 513788816 240210102 951953031 81542378 966159889 617382681 594772949 832707784 978763386 599888863 858461357 863482441 426034183 285838378 671966081 682580104 609113373 581318237 363427580 762990691 105448423 517145980 890502426 561572974 541159457 217468751 297014296 786980313 541689820 520466664 580254638 111167328 183646434 519214441 934462994 723968177 734367724 67062838 312907034 293721410 896235643 509284983 933895528 139169628 892659348 48200840 440804431 847143728 841764458 664502595 432190737 684278800 873595140 696896966 404325712 16778075 892872589 170887860 829990157 410468117 743490945 73736103 158480201 987769406 588344888 640024088 542342803 236630074 777215760 924922383 790409474 423774109 274030685 659224607 451526783 217033968 128231849 818713661 248881959 138844314 317589686 536687744 953221851 341326060 494626063 311765355 342244838 729715606 930766062 318456357 592939399 749089305 362496163 858910304 935025391 946727815 84836854 262708519 234526160 938803250 673186230 580015052 319174730 273768849 680429048 162342951 146083751 171223341 157606679 597092822 197410070 443898364 227214641 199817031 166801721 723321070 442053070 990751628 424053186 475418753 974114639 917637509 870033798 26281368 793322574 311671302 362183184 648639629 541390332 917184867 560157044 468136554 444101336 55455927 742768473 44472341 520141255 150604713 585263463 898172111 101694292 136529167 8600016 372733342 16734040 959758541 786338939 866267448 407216605 403039619 428627031 971827326 604799063 29749960 318338292 669426302 814811380 252212786 404817982 711536330 866360933 336222666 324058116 817915821 793685507 190813355 769954736 328978500 919442703 58010471 402561634 794791267 58241617 777235112 96651613 999568236 974192943 410411406 604202837 174208913 269225031 588671203 198998599 725345762 479190931 67224297 892630004 619891469 839116647 17412596 873038881 892643239 955169592 436941993 82005883 411177800 84932194 977763433 864654055 97027789 247320436 412453290 61303593 873446916 437712717 332653153 825735562 633691306 269376790 542447908 455386697 899104784 567493604 167002131 849525612 513041506 791184121 54596228 896344898 566126782 83244020 563261706 670566210 216442963 466795973 240100382 148066891 682470080 372182497 964177452 48744433 161874240 211956429 798544311 465451988 367840310 245713777 993414975 789236314 201859116 949703507 967088720 988474684 768825968 71373788 601060909 390591020 269439228 415036908 736492776 819837563 368976357 992885024 958811255 135902954 69883303 526803286 393387207 789505786 952671924 717427234 807800586 714020624 590983239 241288881 265453081 29944543 359969061 116141987 305884517 369443226 684569226 736742454 902059507 974430547 585775276 518589092 207537707 88633434 101951839 970152555 656459364 747541760 184275933 496245820 458337442 810953693 348469472 783038239 273461543 739158253 741943103 820916486 74052961 615838988 739575025 967223770 422204994 270516083 918570071 479146926 656539510 623303799 887089829 432679432 73447847 959349648 642470115 305579566 688563682 428586488 932506549 513538385 318566818 827732253 897754694 158275614 642127897 132661632 393383958 55012239 843284920 528709355 783595063 736076086 386219532 859514581 349805398 148276549 614602062 912235026 704759089 652330304 115106899 489580081 372082689 520117412 317807750 930242015 896870204 990528657 710919903 54401290 229112971 295518306 397184095 976536737 388892533 640293384 962829635 581608603 66293079 352252401 321876743 714464391 428608709 633412886 114397901 825144850 970399596 568885497 657124824 175918043 68091676 573327510 835156471 524295825 731206582 165758387 294999404 443550822 817020385 568501846 115222550 945035026 11106537 14644243 839624681 428444550 592882791 428740271 474382801 469071571 894305683 93379163 218155806 198168826 920125188 25763242 255664318 452345114 622699094 545119370 741614265 144269940 449278045 125919635 617244568 936177454 578864704 448062175 633304404 369490708 885944638 159382035 293031545 613896948 403206354 490195068 344797758 700199342 389443195 864174303 119468546 924421251 868512007 543070520 324095612 37019185 812840876 83662235 25914548 807485222 482659074 350340659 595398083 650284093 252077814 458798645 138714061 635779917 399876619 526570318 996945868 495191788 109843028 483986184 177884053 162369411 402620596 845787483 743610681 180233662 996604714 695574038 301430114 923010741 197102528 541762147 895065322 735048478 543694742 81832619 6563269 831864461 929629482 133242689 55724421 740458959 131414805 990902934 758094658 330825437 742877490 445371372 580439535 19165116 20304219 116157279 394958802 818278719 251152596 651173309 597923227 953289857 928851610 111340635 884683102 659509138 574054143 908871412 967751230 825533442 398983391 453596664 944889889 926495446 71308367 45156297 306403781 612315345 829733580 496823005 597308066 975106671 854334071 45287748 846763902 242696505 895566946 651205857 596606834 526976233 905129476 56846580 914885763 872114872 153873530 694899028 733061163 18673586 359593697 70815133 897793437 680566036 368062649 799151720 403121133 434257806 301588697 280660434 937669913 942848008 88159690 570168617 810501542 594296468 689184758 140577309 42488558 510576756 863727067 982318287 215446744 698362238 927410381 501836908 210260116 920992067 762160357 229278458 721314608 451554089 798037775 793848365 90084955 615990654 814960185 898256130 903916110 913072427 688395656 118242739 149715532 41936862 582714201 964339947 616107460 654802531 100107439 918010583 88878699 169315361 106484831 102196485 563369473 752064821 605081544 446341100 362961801 885513513 623652133 71004560 624941772 104588738 203442169 207549676 384287017 352587212 823780170 818620051 954822149 121385577 560515033 842538017 783680213 991343630 246118032 500914164 323431064 902667810 304354151 133683457 859127899 690710353 884644351 295347958 994810141 320581843 470204669 160989528 794029081 879608365 70260933 189470369 877800439 833626574 292249462 744444414 949852138 248143970 351067171 415274795 595289411 551596869 954783549 650102402 744244153 558907927 435165282 380196724 573884360 214443504 757613986 62818993 466777471 297710585 305992587 425860070 738767886 620238023 713363247 390572896 413940394 175459394 182010502 410410335 935046308 883231493 563445034 579399389 150865228 78905176 757420758 161009977 952426242 697916941 602599269 624607534 817531655 843612379 583586384 430064749 426734557 894624343 911457629 933215468 774387131 96242661 704968498 469852873 160413099 359287292 292523023 64687228 274910020 756506933 180567476 471156978 349506385 214407188 86447546 674146173 205543743 391630164 599698809 264857550 238641351 409938163 956658491 844801318 224510562 89793782 175112053 546058901 514832394 446530719 134947541 153111916 536474937 731047167 630213782 971407600 612528500 202115926 436577850 812433722 574555767 548156678 840842453 895169186 834475348 275819724 78889256 266964337 955410112 369472668 86453584 291965513 435407381 972190585 578687650 143362737 913324324 715102518 712281584 53287181 977446106 621564635 110447177 18287840 287094635 836306992 675305021 553713954 35464480 685458740 112029710 294353280 501948343 885860882 783230969 491180321 795571980 763330790 697748921 764978672 383674902 444243288 485696509 556542098 81546889 958478294 521876839 121033175 872865712 214611725 784192952 690949314 126328602 45418322 62130261 372451158 129076695 419675476 417458488 390139035 726311148 372355015 819135914 343508156 366640401 439789032 711186240 122815924 824673349 301848963 150032895 930600059 149355993 785085514 109770609 720335854 137722861 470019267 361397289 676062897 828321752 525055991 259766355 10822796 225067527 521974270 876033609 830690901 125915517 647507860 362500226 670330227 319032063 278706031 565607597 388323115 37355793 601251417 746683022 322901558 679553664 438511018 52190234 273463191 724196996 722992112 480158372 454795591 320215973 228988143 940149764 944948673 586983447 941962547 522055243 883972118 118522342 332923512 969806120 417841333 597515866 777905600 758516894 763750953 491337396 801828037 47424484 281913222 492657583 168963555 110805289 139012591 463723206 681141578 761598857 765701577 22587571 309541722 760755851 551389895 851622939 617445855 741633970 496850637 957584078 114532534 551415804 598720158 445890421 508351976 307824766 37398985 178115268 636586688 481633151 4948595 429640870 603020095 946425040 461399351 393652553 373351199 486229422 275480990 3210452 223655712 363369523 89065937 386543302 195624759 789732303 506189833 21878293 597239905 371306671 846590473 167738749 492406258 872128767 588887947 524252306 839431124 96785227 892963701 730358996 912999887 802417623 839145572 506017772 897713590 895961257 155644653 750726065 801032420 187478223 932914823 861122209 695156984 191527115 837223416 725537035 162365989 633011157 767816775 859765516 54381100 115175132 433734080 679830432 803296899 679548704 101717177 547761319 250959375 629920919 238188593 751060771 333150414 695423799 758112929 793301518 31328932 930473998 427764058 430329191 423683802 929164361 3670556 206497439 251556123 874145376 219312896 591530956 747610132 568546369 805618602 352237122 623681726 214031170 174784506 204895539 200828958 358392565 393026861 387245615 246092003 9475960 72199953 49060777 952845370 104029923 537714726 638346939 175004145 388897467 466661808 745049921 22050503 850605848 27017214 819690481 947145163 321925340 247313634 782348228 35477519 672446162 110551722 55902035 800577656 587501422 285458506 688924175 611799426 380792900 683091717 877909238 643392165 810676406 81627461 412910979 995406935 798347678 103911978 189225752 279576729 406567426 532720217 918004455 391210233 181358496 221209091 893092302 836692065 86155303 424296091 713867454 87171100 881248542 465887037 713948216 242928172 685532147 101640912 414654213 205415924 319497774 265920345 106071243 237255577 69440477 537183320 850747557 389486798 144618040 531583498 385256856 905443730 90264961 640181597 651797272 500821226 436768234 140997420 270481835 853479713 832129202 882245479 724984182 563714331 384027859 379676681 776705697 460622861 49418370 776978855 436839440 816570995 465202174 274982279 408671164 772271096 797142374 612118554 81234686 310972468 284612692 482124591 170725345 964647121 723670867 528567436 256623922 874420160 109405717 331257716 867144454 833762771 843956449 234496422 858661191 691701218 400737684 624302821 966823297 629156514 797331721 428909188 465193385 511845526 332665740 371341343 693078629 780056541 678107999 549080643 128380852 640144138 746671706 220020515 87552004 334430718 620225475 996778103 143219960 691594006 157733536 250558159 324518538 486206108 686358394 298562646 113368862 916801200 554530261 564845782 277656350 317098300 280199943 748524497 586938311 706072211 938940650 892377421 401791803 497214776 827955986 987011830 11226289 841507928 761126012 392740621 84803756 846735688 871899579 506112120 897372642 113806241 879744994 683178544 510823716 567754658 729716154 242216355 954809910 127587933 97934757 79246311 303908557 547523817 96554645 486407441 814667159 14178178 373639760 573828847 317305319 850702092 665497113 93740298 497238592 113529651 793347492 383538659 340504801 506487626 817744297 557509864 627587015 831792340 168839349 823855410 626031320 379688949 936166547 332563251 767644213 999612096 952975753 797551777 299432777 896821958 510386648 98802882 975679476 47298199 58969850 637458516 301684408 65585978 15053140 541956663 152920732 855805928 539376788 977744104 706880902 670261290 361082966 106961122 709106737 15819603 674991128 947997629 345849925 323134477 751123486 845169899 787694892 458040137 446870977 887014694 639843318 938350516 487888912 306488284 758643391 241548884 428075382 793648284 983528740 118042468 596253371 64020360 262258501 81317558 376013644 193931145 907896439 84599528 443264421 211282984 49752985 600148519 182190928 21891827 236878270 214125320 788402693 722683426 188465568 616336910 920999337 80936410 434004194 139191469 491937050 566800637 536842332 160452493 154125618 556352705 279913748 770521838 838690409 442060753 363940516 130810765 345848661 709730949 317142049 875159212 339859642 496028424 574218956 513924158 550427751 463707562 721736667 597617878 5690440 664069703 633154700 558310395 744682930 169141168 648318620 164134300 554350211 125320049 63893468 771046780 857559856 164592196 798586317 45222295 741692280 243953945 876743608 458660798 471225731 567744275 635506264 540320709 846870563 376044253 479380909 514743311 549128304 353876381 225947841 612370820 696230730 523332293 597005185 316125956 576932767 38747083 596509583 309079475 140929806 478894529 791325303 847214125 787516033 941308668 888589889 244962454 895685994 492840741 122573325 357821975 712002049 171569032 975926650 585868750 876640850 707165479 563510002 69485855 212554029 91287921 589105128 616774725 210012261 87558053 378025857 473270610 843256488 97901472 988282888 898321317 362905721 625020254 357848727 137951956 918832677 444340144 127460819 212122410 254083393 563158682 284119297 32299450 284386702 478816603 615485705 551362671 369466780 902505695 579844014 860653337 37133094 574957422 827015208 86278378 650453228 525713415 940937719 77566255 9689572 480281582 49087037 594465440 320160623 384809997 323455296 681300299 312679314 438406695 701816477 301759342 563794273 305720718 517149238 175801614 63463333 263286456 19957932 413084590 411182635 188709205 230510440 245290163 117670778 18686413 142619013 803128612 353081915 268398382 450988059 272236823 20987079 638189109 580956515 678548713 37423863 423133272 947650906 25240482 590525285 101675636 593206374 411810115 962224418 133528457 505045524 778795692 639122889 991681718 138825782 764259090 500189844 1130494 36135792 94648122 705748277 875551746 923558445 791764195 690087346 109864209 911577486 386851497 307313130 100800002 317861870 232950095 252736050 51302986 641012774 15405640 216103573 608407848 148381160 985102752 958147008 194621983 901297497 975726159 577796638 251192238 101001723 893660325 503614735 306866439 567735368 395604377 493439807 707367709 537617221 6107387 821202592 935161982 271892944 617991893 323242626 256078448 693813504 185170914 680338637 914632404 851188631 623210008 44068365 15593058 656503166 821660970 45821259 521119113 343408548 405789753 625416858 624263077 734554251 904849373 136960877 30167853 265717610 619324527 695183609 578489663 529194944 10677607 616027980 951789277 634766506 946037873 649238206 403873736 456562583 263923545 248068852 919270170 869104430 345919998 295858365 363970444 77531687 509985500 219210916 998330973 441403020 981193333 372339875 446834245 846508034 807615806 181886993 714884637 832246071 950703935 88391107 435489110 27144447 802939906 484061461 292299109 298649129 862289406 124505650 912642379 501021654 229888503 565318305 69759093 243224820 58860105 293606289 720126568 182767841 631553614 625043778 98856653 53004162 932049183 924455074 106908085 719406750 769644065 639932018 447973308 374178529 967233806 470855906 878766129 765814427 645797219 7620083 996274594 483523752 619057238 340056297 40806459 417479068 313453227 795557602 754402648 14201296 955481612 843228656 421127200 377264116 329877220 639681184 701650887 531188086 501627738 86631879 76785231 703788163 911354896 70907784 355902170 186067952 403098190 809949000 441492924 122529106 234070795 636510551 520628233 688332723 668376184 998411163 465921547 519816277 773603886 833860629 374216572 380013562 737378898 209901169 701996528 171353367 836840514 228120658 862317215 131537737 886647860 806418632 352603485 731222431 785291247 463230917 481268530 277256604 943366623 677049593 859245575 877858864 117240732 330569107 454542791 991427383 986798708 66021974 806638357 360969009 657987654 588430030 533369060 182524330 882175501 474348462 544180337 52297398 270677919 147661085 540498990 434177957 488961969 127040563 295482891 502454653 3991318 95591893 393497566 598578212 349487751 143804569 566315442 383217880 307297978 641107564 428973613 919770248 25465740 812079101 576682682 141046803 159271994 713921968 57284761 470040315 51459940 550935261 349106508 447817822 231105722 177048723 701189450 125517193 315705820 221161378 249887932 302806974 969053275 333684962 568792001 334235141 361888708 109494189 404116239 203031 467185569 313551927 512451670 143185045 675010714 161911040 376700506 151792983 77843779 936840957 639556869 901421702 287094366 542183448 226214809 378671909 472949549 162318068 929206810 476226103 433000766 951111423 270952598 806333338 163012906 12634236 847403315 955682254 385846479 717744757 781306145 791568485 713833923 834223354 292733481 805893502 573891860 998899359 192886729 562888282 160766929 43534025 870067437 424465292 63136328 333612633 298600918 232636072 81383940 239533566 504917133 726722120 378922922 640929510 754982377 522037970 640687307 743104017 577263365 906029436 700240824 938119530 74671079 766003129 14865365 943100373 401619876 990802284 705121332 138607908 226786602 114266499 881480798 715582472 649547570 675001969 306554304 905064689 945461476 45124923 343701302 839526433 320392961 124841418 459029492 654498668 577275985 500281095 436709210 848177476 908532113 12676109 865230081 553309007 149544164 745888850 31082155 927371222 62517295 557426324 524655882 548536934 504526114 904121064 579472792 340434944 694022758 634777439 743469510 815273855 116688842 812842074 48512240 512977097 615020429 8304245 90435975 552627353 14597641 922212660 363795511 516528923 23795659 827233624 59449534 695193715 747401742 994993755 564981617 559193913 773466018 481927972 771158998 927803774 391379378 371916206 609025290 930016757 535326441 180021575 799587846 563530960 671163690 555780570 629197861 905963573 201583096 525643199 966151236 386005040 914572086 880323926 733292864 775787683 982731489 414160781 643212585 866113162 532220507 505262912 192957157 504222968 451732149 94631593 490462746 955946722 566929068 457765981 414969011 215068531 52219313 998862372 682374383 144154929 800610639 5571549 637459226 358572798 574555523 149372461 930143643 530368347 5433146 346019762 201242594 88714612 59662252 300305664 792645479 681354072 618050023 897520825 20801682 465002031 379651715 704326047 125877858 330973250 494569725 605828884 247281237 955582722 267217405 648272586 986537625 625183332 535761683 979178861 943016913 765464491 600016376 974652094 248843938 584935820 555444093 793173878 410025452 164366155 796634305 743936747 137704626 559499334 210730157 670645964 588001740 162323940 785490200 916412344 377398836 351674392 756947013 390979791 106564591 101336941 506818956 255456656 701911972 721903533 333456560 390278123 430763398 11655912 986886813 718581360 86256001 256591702 45670082 647659077 687487551 220130453 819167603 39366587 698198442 459175040 933023949 295206812 908849813 695502175 855407115 475170906 839373843 837711679 968438163 155359478 721954021 780955631 945661073 734438826 914751711 187997494 23618638 696515961 506499922 784396895 131497196 329855678 741669660 191889855 494235659 860712520 578527286 537086311 766743466 142848931 911589844 374556170 458516263 31378993 277003134 893390401 598386593 762347164 908139560 925135235 53024080 262538189 495619432 619852134 977582915 438752135 254891266 679880422 94366174 834392991 958738242 967726981 704425414 410770618 534619629 845308097 921898477 747143800 176924313 578516180 217248980 833207141 651488616 781518254 499738864 281705917 504248429 277229362 715184755 681326565 545699646 546541359 444917260 115243651 621161305 294365267 613660428 379912790 862897720 788239304 532285234 559287095 258839268 491719324 81815380 670065911 924306834 924858864 221348919 465787045 727521337 140938650 725853533 461634441 617655137 904292357 871827122 26971041 813935616 915117436 927028007 366723448 677496122 896340706 830191676 872091631 447173478 982443717 122854287 789714659 368411014 913567485 137600796 518554112 664684379 991521536 238506458 113081859 727460635 345192942 208357325 572117589 617341043 132793219 22633140 299813815 614054105 575096843 565081773 626264888 719429848 505649802 97406053 18375342 720630109 293647133 564910186 50140346 895773898 879020153 53633823 513607648 561068254 159769835 388680543 175432790 620035109 312245602 81418748 143047591 374810164 902722234 199081402 556607235 308449442 940463958 879923533 945111087 967708158 65291098 644083622 108315109 545239604 638725287 322591121 74148811 743883102 742317194 784221102 27595626 706468747 523382465 363339129 992588650 50514205 179517867 413813000 278559223 574235253 488680413 420638642 131068630 912381589 820702429 554357791 867590008 36938403 612640832 990367687 855457284 529622820 416098692 675081160 749668455 407659217 555028392 16240363 971686007 528804346 899404075 19310820 671847344 339483534 483421151 904885365 837314407 877293669 372519432 77238101 837682732 76925532 493936509 983813073 566806280 6862558 871503116 546376031 877091857 663974423 384661958 459516210 684717289 747949829 250478558 71005520 373370331 198913202 537034082 314983454 700511061 462406440 443131444 591570312 683225970 672430784 30607902 273918931 970097643 805901590 643084995 21575261 488414702 796835812 708011938 156560589 790857303 92910156 491457884 748080551 495343171 765065327 225981155 756084797 432553082 769309025 243700827 109615392 904867981 788086677 206544903 366607987 855756943 237190436 964184097 634571956 105979910 276288057 521132470 78753921 234830904 796464093 390878635 808338120 813197767 984112991 516409035 240201950 71063435 951798178 643982428 456523016 342179722 124822803 497039964 442113360 891507209 786239401 797889832 30443508 731467211 370919713 47735706 981728836 48659114 689095770 280276204 69316362 481362615 240730679 514500255 130487500 124989905 969898225 463711976 164191881 394168367 810294406 654558658 715749107 595356552 945472250 316094523 605729701 579795983 646150041 14065838 630786058 749470651 962592777 587081902 470214091 345629623 52502614 843974747 665923347 549673058 563265657 767601928 252078049 145177156 682908847 133452658 819184887 560474271 726426089 316238600 217858437 942867992 871994668 284727771 321487521 63299583 53035421 222320464 262215191 684728264 725083140 571015833 344622676 538209035 15105829 682549371 818976911 205463214 876880595 158177272 66975785 714813576 264524457 407734867 157951198 198565490 299272926 874661886 132954132 333061879 794093212 427595127 333397902 660642936 918892177 377865323 603961403 497791573 486496541 499781666 479023357 700602278 809691128 899438437 67836907 726776558 730152019 659485234 382648982 89581290 826253447 389022085 151810065 956725661 443570511 377602908 659033636 298679148 562713328 254117473 393221644 296954385 503881691 560452446 574882426 323520382 84571086 147741622 147705953 25303722 425417584 832158537 298831396 190437806 195106263 54144401 281972535 717861541 494051676 250922274 161418879 191366497 426634468 33274204 111314521 344470584 171076287 451200268 708524300 585141530 7433165 440423267 285563089 492965907 828483000 654756855 684019892 149342280 164132942 199981022 295955735 565477022 10930847 171785902 819490707 181295706 946158307 998795835 50648160 16521356 292692797 290050682 517470274 68528777 555503921 523416378 617782487 136794615 450725928 849821006 612975388 907716951 130183133 827627707 33568840 26371533 812120327 233214101 87899068 609716310 856221186 523633146 385456121 268954882 428824996 395914313 737714912 748738262 759913522 709326877 45019991 933801114 72736003 749349511 500979438 933933959 597194314 652029104 80026370 444288893 168305819 765857056 64143310 249172133 714496156 811391994 798778511 677426671 648690952 839434147 648578719 317713110 766296181 901630780 125208801 903854670 30226892 703735729 947385374 859441551 777973183 234172607 978148393 474727703 845949534 870113167 853269559 697089073 92804676 67129185 698610004 902025581 651549269 681327860 979740007 249109461 862528108 374008472 770069161 27035484 238370068 185606929 553157780 828166642 550891939 401199853 650759632 525255007 856514758 478092625 707611689 485206043 496183265 692570600 337207070 540735892 873741303 550821033 346807452 674076968 160825395 886272282 961932960 444580966 387356559 337792394 697863355 503959832 522560916 160553829 110999335 186585066 961619229 622847753 63791344 392515328 292823049 767279144 462610550 443919288 452497507 546965553 207099023 173391630 777285956 904827526 338070400 470748722 470590403 566064027 731928259 638211931 492494269 215604470 980195782 771579385 688720725 29339644 421635611 349956253 876682291 849981584 79243498 203597146 899900827 287261769 10424078 931056199 288346530 448528103 157032096 428245076 965435258 473020637 498747835 769260568 367338767 847349934 772952651 747147994 927768407 629937710 137400041 907239270 601457993 449878805 629499782 946629690 753664062 62969554 636675523 822883242 643366745 350436998 502920132 719796871 656214745 372454918 819796386 555508208 494428043 393240202 659697998 138405928 973520247 97698191 130121523 865942645 336158660 999860160 137815157 688386443 782235477 581180767 727313122 328298282 700226888 538230938 494509701 69737106 315411867 261730168 802871467 719490187 439911438 135058547 145031136 968521586 212747791 730371840 626677640 284494362 608709151 505838371 373205201 530260141 159316563 764735662 946362984 252853969 282180615 425134416 584896707 192429339 452009664 108936003 64126999 19140437 444549776 149337873 163721163 211465665 698863987 971743613 682793374 904437448 421282878 620638617 188958692 638426609 13269394 353307558 330109862 533926587 641901641 647422909 531726239 782962520 164896170 543385902 177759665 663483211 316724656 118141651 566810092 145404459 23240331 977996567 121524940 436247986 823960302 686484689 996407278 576271586 336870175 372127673 126491988 798844639 65606500 372730363 252875072 530137305 728075777 785164879 282777043 681510369 806672976 927412391 836054925 75866527 371278563 475470436 9724989 553952516 547535206 738912180 52340712 236474261 179799378 954814867 107901712 192168536 493805608 658140413 564176058 395137929 155881966 123699701 28197865 809185758 63360213 868179644 13989538 929436169 232798690 69345286 200759813 317512782 790702616 427027455 478730224 423263183 635397541 70418086 941376993 168809177 581408236 670109440 767451855 908921904 661725765 907608764 220681186 952562521 346477439 769384140 40328855 871586970 516186787 531132363 693156041 230864113 915153361 116285555 994605390 76342680 860178143 944376701 863730435 525188747 315886207 135336358 740758422 500388996 311612563 298889517 460579088 435846070 707102219 476125147 830278149 586692654 595761036 24112346 762252064 724539494 14971376 917505667 702256646 189747356 820070033 808182483 879400960 800424768 713679283 528952961 865423896 241307401 815766459 134856638 386444055 333349343 82703130 319370566 361924932 393924775 27710564 439189641 959146631 533889615 567706531 956322696 567685390 79471123 553897739 286191399 689446498 17723014 442516708 11223711 52426702 991628860 788824553 629017304 38954387 456286247 865263329 183859853 385437114 33388544 868989261 841238445 63349324 676166073 257986108 385356463 553310887 949549619 84468143 932538704 854729112 82750093 562575375 324544068 741799506 582237858 805980782 254986116 183887319 128684366 707738626 213342948 901589604 766042558 317454340 940501134 846517149 723307621 416645898 797826445 836663706 71817951 988475087 254416988 162341416 396355356 585716088 381808659 532589450 80906965 491003357 652480261 296357320 737066125 780124584 154153765 79590739 693511355 925241386 791824128 84557954 405753716 443733569 912145175 491735633 843950431 686801122 29583846 960389760 13714499 284602441 197495611 773758836 495542505 316112017 95651912 45254274 185961675 977860864 574858080 436298634 268104073 944760603 109611360 806085541 266789413 585281534 204427858 55701662 327754741 871861412 410673965 90611301 799921020 660539383 228230044 703106093 684772133 199259589 92928585 292185850 182575465 724799147 486545895 624866333 53323319 689108345 829437203 677354519 113674870 369327784 525651730 982292666 441508424 633422297 304139942 90439601 157352961 403286022 881926620 146438406 22999223 118814091 363524427 659513832 48055266 266330713 57828287 385542218 575113003 629730252 668910500 163333133 238017560 102329729 948303626 966891821 942527186 846284694 672989670 573464856 346273851 254762268 860936808 120996058 243723992 352328533 764520906 27518848 701713716 354127917 865446783 43231709 373355543 587343160 418846829 475219513 111194647 29477426 873768040 852778662 728205752 203605597 340382264 973061506 67970734 953845430 526254410 647150009 918455563 869355614 233887248 265441318 71402386 861917141 946444359 133256194 270359486 535325029 718694529 56285282 147807060 665235808 328190525 972754064 232563375 230030597 764090474 289652575 732223151 775364654 407710608 87000079 97204945 167182387 538150824 604184542 928820333 788778145 212280965 110214650 196929685 524410530 211811715 354796107 437361206 487245018 404536528 758018497 691864809 773727276 946301582 289266149 680753303 94191416 389813260 221868693 29663085 310712981 452960017 605530829 821866331 452910692 541308119 985503166 66401585 438744197 533068957 783902908 495101478 118392625 177232447 860401887 733996369 997393505 6315527 885290418 736342252 37232919 357253233 485877883 217030571 931680910 646189711 221477162 630702675 637099127 987886921 52586595 36459130 632025388 267588396 330924404 507310731 659487309 818466182 760461684 204765842 876229155 142608268 304122614 118828711 862661917 770337610 644699208 510360262 948768758 86301892 89784 387364065 967189053 230862264 62884612 545028114 629122589 525783658 886918369 77089241 855792028 299094589 153220440 600695312 946493608 895690118 191532124 259032253 103551451 267407445 425299472 358097360 28531375 274877878 169365031 94998659 790177470 323812810 536557546 271671385 758434095 424409998 518616655 174907945 735081697 218204201 196024488 565952005 227045494 695647445 455052384 493785280 462921435 536702705 476989058 401990974 114419899 618604151 525482114 33932983 299147949 693400183 764224868 797856079 293371562 234529580 212907468 92774652 485790566 775332306 100987504 774440911 608864167 366561241 238425505 565269688 243571623 772372677 647073 763033092 80246264 860628747 137091234 801346185 504315371 386054825 705520613 236740959 379817112 442230992 279843296 614100475 380954879 886200100 197418361 658159530 328987462 163372727 719826767 529493118 550239121 177212334 174766328 388788392 80414948 879877795 492512174 360565844 993500784 44328013 676247386 156487450 424394788 664406287 390599599 694608010 34178829 816421420 787648862 793979571 118731550 951977089 667968569 782477960 752471802 994155574 839608306 688117489 615274060 771339100 311307325 441104684 694472066 269176861 869892638 138366237 203518845 592098852 848901796 190709210 487100708 212817415 507408275 198769512 513148298 138000365 558733459 365583516 481586418 260926760 813174672 997245029 291994107 43638842 242875743 950353501 565772393 208945700 330126441 719281294 623116620 470594590 985157085 175476106 628511305 499267235 620117250 127641920 262059820 599462278 45458507 301286698 864410947 433827416 95242321 170079572 211326240 919456701 760586482 854683942 775733059 51378870 248225508 599181699 224416417 372732075 855502208 54743554 976495620 836684918 569184288 618421303 859842392 7183107 905777684 225899426 474400845 200790664 182825375 31473871 435346675 839406027 787481170 395871 469573836 172260981 302792118 796958233 962382845 427267655 206460876 868706177 188873648 889515894 912897385 195872043 870689115 997020434 45911430 985424604 649982767 41230685 308929616 792094981 554856236 676588514 936628772 724446691 894295101 846164517 994968363 49365991 698990601 240025103 665845345 287081382 580088127 214272309 21021284 826320393 946544121 792525615 406348326 707033989 139546774 353617552 358026997 763168983 567926412 332754449 713004321 103076663 500518848 2384491 422828088 623921630 216649423 367768448 188153484 698529017 837069487 586368450 782512759 874650337 130050255 67150573 898825389 921739606 220412886 562100833 434309829 150014076 882691333 643645572 913131037 465905221 147711973 667882062 14880466 40660099 768886476 323573901 314073094 974289614 473636033 547004761 646273515 938326684 75942577 914305730 777331034 521495841 404781440 444454001 184518928 979640339 578519885 595388899 953716030 334849499 930959105 566472593 157074375 485088373 395618264 296950884 938047507 156262575 720930801 845699224 50212288 248026378 780756059 191028381 109617862 799190645 207831520 522473978 858719674 488626795 635792372 260806102 567479595 766877317 695700743 302376080 858585000 169805716 769340172 817592048 291268586 735867831 614438544 946208387 667943423 279094309 744908974 213188886 136628697 517911453 964912684 534388620 320445703 364582151 876787789 493360535 200696020 542474013 365658276 5972814 967056570 463816716 257226477 889030848 925770895 57720548 996307440 491137331 135609823 817259434 527304590 616637238 989000502 273818637 426292181 383373182 190455988 483100401 501629997 531758432 238916977 861011216 626859623 587077345 412072665 237152249 599907400 494275865 646451039 466258474 676311872 512806402 972154069 62822453 473332224 756961641 369612086 158260184 355077398 908933605 865821809 73017007 162800818 551148423 342865102 249359727 990341373 776002543 443998531 411587552 305829207 462450376 925769949 357829047 447127637 203997660 331720822 478407657 1873182 171646217 126560471 873469158 433043649 983055189 774094380 639718364 702921665 598762517 352751905 842636151 10185894 491700290 173938568 392561050 846493448 390443208 597006226 221502376 179257342 22490710 369009823 393382648 236456888 870521585 317125395 751525806 115299206 903656719 808747679 538920266 851307754 773460862 118811511 521152053 950775451 381835202 274460572 967019256 939073634 920703057 342599604 68629178 224626855 177688247 10138385 817361375 102786344 123035546 92430310 658131724 386533574 61405275 540205305 115766777 556808670 512973242 192133850 284219987 347011693 464560088 646098353 8898938 698166462 897919272 608678013 53868130 257622632 281375594 881515850 391801919 963690285 475585734 402534038 60301914 855700584 774317180 657868246 128608791 513675324 507544396 422098360 845196035 767263745 788673893 423807595 523337763 105000071 328407116 655532104 972407087 989360562 18032652 715624278 979309714 868246716 228990632 868241667 382327857 927860788 15546624 495226521 163052952 897008391 352167261 700703955 457714448 145645607 5647514 200268194 9482180 256171977 7151434 643669955 478542841 187483165 183556494 276002890 30841402 380660120 629087234 250353805 511422219 97864008 228616463 330221980 101386870 933766886 327716895 663909692 34480469 890393082 811664297 287951175 4842467 124357758 428999955 435004952 512456895 462552985 116084593 995251412 143658882 143323914 747136400 863007536 588246478 973432380 170540426 917895622 991509516 670844755 707432227 149213297 304127481 531087274 120021754 800021468 800347596 376074753 37683621 23268776 120933620 422582189 33970479 430546326 912340914 251865181 293455538 663160721 102181665 946063369 612733685 302447603 788435124 437961433 817241629 778116284 178392528 423171034 55885373 537229894 938764690 567968353 728316170 637360164 548075098 251442177 142956199 959190107 524505415 631415625 719665505 146559616 844785817 671710232 251526134 94354804 744307944 817196665 673956861 914818584 361305490 448692568 244155770 277384730 431273032 760050931 483972218 97553443 433839270 942249443 305143400 625786904 112716674 203942387 245993612 611341228 586533565 239155207 243052681 451013321 945431018 79860251 486538024 483857828 173288816 317353778 807951367 600793184 971652351 820375149 426929920 843450808 172261915 121086280 600422179 915217661 754793860 72930274 99236608 663034064 764181059 492401470 253014554 419461993 290617664 791943524 431799546 567373827 791398338 751975432 857781194 353493425 890114311 561443878 982276659 150369141 691373862 537778079 901137877 65594323 739250398 532610061 344736969 771356772 732358402 642208160 406323604 219007765 132072521 587223882 866077188 610799952 913643045 999708243 817380625 972075073 546013741 417891583 11296150 315698148 346919415 668453996 605851168 535301375 683567123 812456213 942859452 822278235 488281427 978543905 593111683 870296739 695383754 672126430 141528028 621015889 38795808 354246310 222973901 193682368 215781400 261908715 596364865 844992636 12053464 95517394 58028948 387014208 39699107 209917131 648007933 868093987 35704907 177036585 650202729 960474327 343973570 732921595 718706902 32789185 181945269 969533064 259726987 514716356 62318698 369372223 683650741 287568966 576180127 490665159 929267302 70770191 583813278 198388035 88176532 506158545 15748896 283397225 966132124 467541912 14565985 351515735 949123777 301521708 899500424 287097511 906221836 341763008 123872478 975428518 426712999 81422565 285893482 564065762 473141915 195962243 50163256 247386714 807722827 228254452 17312207 784646649 329571353 910448343 33568973 533479730 29443631 466166388 497660119 906225163 317555968 414191366 203715225 986760814 180548784 88060394 385881952 840376515 409633582 242640563 808692035 679710871 494367490 641511878 439125474 592300148 651296054 718624818 307905482 789786003 630571972 527367237 42460816 565849045 562192163 884369683 687175876 773222195 273804965 463946908 508865492 934685032 681428098 459047871 38466490 103724206 74407011 348701038 879851458 652080735 634007882 615098874 531160497 832964531 551195744 823437966 21812055 521124061 234701409 505313425 910325346 620841069 385256465 659369780 689782837 156434122 440042256 521882322 714713722 864991639 778686477 513407667 467085709 220878918 395627954 456651309 131702733 65683697 157845552 717943524 707506076 262726489 46184196 893361984 61773954 114739242 418121432 724792492 313040632 504079469 481718312 951876917 476350202 721723388 120747188 743820510 906246282 550537696 806451810 815734659 273962294 956704348 957828611 334220257 862286449 671429173 789253001 495525831 91320259 953505504 539390212 179855041 481010635 180059922 515516421 596829371 766384092 421753537 440136842 717930633 922147668 842558425 359449683 550973879 38420302 415957920 471192681 326354246 362330336 465441837 770731048 839080020 83422454 338076305 777088793 822059265 361498595 933700897 104620852 760288753 143362331 99868410 148071321 186289310 977381433 76435073 518246270 927540391 399820912 504355530 790863741 860839311 932749055 278177326 78465383 60852485 209756472 383744536 334263390 218808840 468866310 607306835 181385406 533251565 416659317 86806810 408336552 633353298 573545739 973279334 970678727 790738045 270927576 536388721 966026748 622560140 494529763 924735184 714804649 389400583 310074024 245090219 945680313 383289237 306063190 887320267 486324850 650724491 302620687 579115764 751298757 498138427 738424315 576015162 527309584 891346375 402749199 128181752 911243519 746902464 343913536 775265644 466329024 175891573 792759251 809578279 334140469 924320152 356604565 134801597 960630627 113582324 523966202 654358993 272006507 217315960 670424125 936816795 54593528 809806553 194859380 858521018 301503818 767842773 162174083 78894093 963275870 616998726 1558682 302085368 193500115 65848928 813832833 900541802 657470506 731701753 156503672 608823470 168273935 50993546 470068385 552566476 695101678 157858173 949760646 64542219 295821924 786779027 789993546 499420074 447687865 217344501 805148686 231278305 688710165 988079650 331417276 364796227 474917174 3636219 678441557 701028920 499345355 993975630 959746438 691375626 367124462 354496135 193301031 311060434 926240586 82705295 154461711 553355978 997342060 310723481 20485046 160024455 273732133 646987112 94218829 905402533 189889773 813998436 614955814 697250437 29532666 304876931 952657479 235567526 641240278 55584556 887075422 167731511 966265064 627925119 115806653 246078650 482743403 271497788 802559750 207420774 939440242 146460350 407476706 312585154 239871459 708782415 495613802 261998192 385201852 174704569 738741169 865856736 959369838 778179890 975785398 275900474 413080855 296696401 605321121 527223570 21302923 323475577 495034564 30855048 533173779 556699412 884942872 641490375 552332048 32639990 119003170 497361564 305685551 777815793 435042871 514710843 320219446 302828968 272819316 646435587 109692427 542964711 534878693 544912566 639290252 813341107 850206396 805311353 941094176 335483839 521994043 890423109 763777982 785359778 295641838 863317591 12645535 807626994 805355752 963985359 155668392 575584934 192030390 358348677 720719258 784310086 913842815 837979698 899802405 447635067 212329522 159331192 160291464 664840917 610650612 390674544 519810184 343379995 781062912 617548054 119966837 226738857 160287531 522505683 84187730 108035546 299365548 6264890 445438507 222127507 24164890 219718353 145348719 600869358 779215294 698599777 453986222 357514421 322383349 636625857 198118885 370385507 924450274 887054506 921267815 42586586 656094594 837197268 746322380 427945891 413757059 775867465 321754682 308268737 791043950 98598965 383959826 332423251 90325925 946222083 268574050 261468569 655692259 542437275 986110383 113042077 824681286 270712135 260473153 537222205 910969844 266921431 291049416 157789558 97789927 908561077 313091601 380961622 513782355 147554199 306105081 810053990 453114202 101567264 283689695 482093319 919335429 287426960 901360832 210474823 817971067 750901003 1226598 932912998 661629489 389760567 288209484 142959843 153938204 672072807 765261343 648603881 117656136 760170970 835699450 123462270 428773467 42528082 130504163 203322120 112951406 511399029 588614022 744146936 818664521 161182389 672379255 899843201 652160911 989767307 872916937 592705125 799519060 564143610 619732497 240943853 160251901 170100348 310458210 38285902 660737923 995873925 687054716 336097011 747356024 722163159 994493992 17793508 758585338 734523887 721569414 993082046 256512922 725751001 987703852 582702199 304521933 952085604 924583395 88343531 297365844 920246677 497451270 965390350 399275989 938414574 106959333 293413951 714651494 207220697 857773210 20583833 633094539 281851104 957261090 616395638 305498095 834349322 174849779 504426449 109287230 181346574 804648917 687940691 873432130 501695341 404021098 325919277 728454520 461976618 824814548 864314478 739528329 938559532 68130816 444792305 266561554 902648298 964755675 48246291 599818505 640460864 269383837 948915958 978687632 530851336 155690734 475315349 946609547 337109166 182464928 350617056 340631454 376385796 659094922 676294509 272890749 597090609 450635949 481685227 930657498 15483035 7525301 568023340 356334204 203970009 572955686 349464695 313345170 537598028 525712631 537604315 214011041 242472250 455291256 356420874 17562685 388461648 584963090 639716960 981719232 162503057 771473873 48773945 809872076 466612302 405756568 930435630 603241362 789261237 464184364 41090636 121088573 159060595 503766017 281184568 389466650 803149162 443316704 687117171 268121586 51061771 441612265 167319557 469569737 554403596 938141828 612993242 574940015 429377607 122228969 731971125 411372266 764160032 462788272 574067535 885353316 511010235 418023881 824691482 601665577 30675403 20910606 160905973 420545801 262193506 56630064 327164832 564059455 12434709 182152491 860547897 987234558 69740620 196935757 855223214 563136122 538042962 958022795 848601184 632321228 759298092 361280138 221388571 381379926 239814797 742061791 833551751 613835866 787919352 158802928 321950410 227912385 201536003 463946567 913059313 404459111 358593132 1999654 584198284 585815000 148858281 34458766 961014333 557504740 376730000 428319328 506474433 573579595 185945738 242320246 700884124 917037832 582806400 393790395 450279766 599186000 167625763 879145530 171551817 200269965 879123237 530336373 214417539 29225278 377657071 621243821 20441505 776986480 577021679 876891757 794831478 851596476 163627964 509305319 554713567 544064130 876763136 112593574 918113122 967026972 726908841 728630222 639374233 733171655 957701144 185927079 156178567 809924167 505239832 466761835 322198234 516717771 698588971 78132307 561558262 331691912 234560926 645352110 248946518 372745293 466203021 735423260 333268979 438961631 207431824 701043358 637725543 362610750 747854803 425627872 260128519 114322213 31882225 53734014 911107795 671290082 898561103 360957311 401327694 202109164 581843893 518018667 423124058 604217832 75601214 332542624 483274164 320403376 655437667 456243634 112538072 485409241 870079695 417612605 625650975 40352070 972620682 828503066 53156083 69139342 334140641 944652426 234283027 249375699 696909440 142621381 652660151 712861477 726105373 832452858 610277405 937726254 980874849 199153750 236933638 656748109 684030104 725853515 784625067 812877701 447956045 901690387 293487248 953027002 413972157 852845882 115421202 380759451 428954982 534264321 79202531 406361342 14235595 959087788 687111708 633236032 219828010 187632751 691712081 626133631 923090999 257723304 707814540 310955138 221617231 911059352 778858468 781142488 772894320 991194563 68750862 870070561 215625364 958433160 921014561 309339198 403504359 781738547 50554667 508579377 394137482 939974892 782357472 549544440 270302499 402624967 551860694 658148780 325099266 807576398 10619765 235208649 599175200 929411638 361209640 411282713 201446132 73842741 176752924 530302214 794771265 306112378 724285561 358859482 574635049 631776490 869832934 354885073 530526553 282032932 783887272 182031362 430960122 300878897 270344147 205122815 954955810 776682980 335913735 464388439 740027873 513858292 375175121 318884010 295735498 371306083 77972998 519582973 490210038 172408268 725431975 341105487 718918294 176636417 924280559 667269674 960676574 233467836 280473975 519085261 493462642 169099554 834896397 343136414 535630527 106693439 531752264 129198873 114282804 89311054 186985500 908336632 764303325 799187975 873463951 283637891 982522821 876436888 221774407 511121257 7900738 498182663 469764800 553377346 153597663 990429559 530922242 985979254 961956668 794687985 311176143 143032996 648790936 691795797 934051411 124734295 491934074 101855353 889767674 314436184 275676058 409481766 529487084 551089071 698966450 825021701 836814180 171181392 751124081 759220946 85784485 757888467 148195298 64485803 417590952 284335088 753397445 639675653 217489478 199567411 99899307 516532962 883604722 377334056 687337751 121734028 56836581 519818013 844935928 879915628 613304582 748927501 462176248 249857746 956202358 812141396 700762367 535254593 897439479 6127030 155116001 573359967 336512218 433548248 475088443 971052849 334091156 98751609 756290848 74528231 321016761 825074199 200217770 257944724 625412056 688590005 660665596 994451647 456908015 630060305 378893571 606801943 170608166 186480639 40069176 518846738 591798851 632518664 91548924 571865117 224405867 505975748 579566266 154786129 477646561 162935607 544214369 920603523 859958258 578562176 279519548 262669653 734614188 596805518 462158533 939488796 990454679 954400309 441270989 255960673 816710755 395491368 639432503 640271692 913065315 811726553 310670273 893530355 250248680 660683606 967248177 96175173 1414930 56702389 857769137 206479761 75082113 722961135 466552127 429108348 745512726 956000063 506559447 856127642 41820185 730601916 837539117 76563331 369081213 396844459 782807760 603555273 277322301 924941965 602552755 657354549 594009784 318431146 590403756 427130258 954986964 23493043 991357236 103372232 367273353 519313422 70239648 455679252 653580451 89631511 638236306 128860768 175068548 299866074 779314184 254694596 202649320 175071551 242774905 250760270 619420695 974087418 382903069 583005479 256167836 371544993 380148280 589936666 332373081 372625605 145588802 816530619 371456524 682501381 720643670 779462949 9491576 390621178 299940489 783447193 621355438 334751633 450046704 465681993 291016152 877497265 521919747 376522363 375089021 96193641 3000842 813894543 354074311 187241051 254489668 956211646 231372880 78201553 776447393 367786357 368586475 38531409 661408080 231377079 621766996 455761212 668459563 571449519 632973130 961244759 909384430 432790588 4830475 741726502 775036227 595919025 456577038 688561720 231819271 577199067 413698274 747870868 483916551 205805745 691825901 305756337 445456265 831055581 816545458 342378748 728155194 28563997 947983325 917161629 779098065 993381825 625736985 325922052 565847196 904407442 80592860 360481632 728894889 398553261 178971249 276204688 58847079 380261022 179793138 656890334 825993514 932068870 682029671 625980333 116969041 33523179 888911373 708083875 326836391 293587675 23993124 755638031 888852768 905824552 300373399 125976429 494707431 478156351 838097572 678078108 799980968 423292992 891198887 643394176 112890356 119485710 507007445 200780954 719509582 292037692 411638509 744367722 560930992 509665564 205261952 172363117 938828222 285745351 351876137 989224507 901018133 572952212 90849970 2366450 35278938 136976451 277221940 293165518 198865292 641205004 115700700 509189390 554415397 321791828 871768290 65266808 80004292 7865171 571037383 444286664 91833127 984406126 286239587 522784521 772078084 502896978 292918401 730521751 707604909 504515001 893979678 246258162 36944354 758093235 862615347 573627641 554844062 543064700 894005306 410597518 97575828 699758101 243466747 742717057 938190307 16313831 544138171 604474221 575749421 463527546 996681657 954308115 58117392 237869642 551572024 586776963 782597802 754483310 914654389 108613774 907218879 433294965 428262246 290432229 770944945 908651445 949416233 803137753 536027136 530410279 606373557 590058977 673031451 126344636 524958997 595347808 699787430 349318649 458756464 1554122 72619949 651668256 223279623 751632931 736362092 233469957 843816713 195773002 957153909 742653237 109550489 560195651 643644753 313057523 572792013 553242499 470890024 299454930 64901855 879900660 703144441 457117002 392448866 204803957 892815529 909109206 417522109 932238436 54267507 640902016 631414381 141196960 86625581 887813842 484489273 573243058 579285621 85809989 317791453 519361594 644155746 370354471 102863554 646080210 258310122 772023819 217131443 99440595 626948123 202131025 353372808 743661769 371433945 26758280 368024020 408666819 207022391 738994793 904496326 848669250 193130188 439103528 980087245 778181924 712394940 234058608 484103100 925295094 243202812 621456311 396934644 480522807 46282966 157761053 188276141 707866626 453918991 227802441 728093724 894649538 880184016 680271711 515255093 448100735 996841305 355310542 891404403 631613944 802859205 59461315 963138242 316499221 731517310 55784340 900046146 536783808 731098232 538796944 640187238 963639607 208444950 260861623 101816135 77067512 683535989 804921006 351722301 142661724 634138297 50570087 246076178 918379919 937205821 904564462 102733499 749962275 395308596 382918971 931297161 164769992 651101581 421946914 401841436 298961617 309941844 364824170 200078072 786486518 331007481 624731044 122619910 58854531 163109850 469837657 800239190 786732518 73861909 807963150 121909475 396084009 353805875 253631636 526728465 902694131 358017425 294500014 875048489 908823707 752982320 157226092 273974629 473967979 567967793 989907748 96597145 25486167 771844081 127378299 961973256 952487218 422700384 293054337 337559177 622378727 933815531 518663688 523133831 569073546 705753097 963149003 914527254 973471224 467876434 865727306 761251036 623663513 80812412 326796879 810174780 599141758 922596067 587894363 777272319 135416649 207371407 250281232 484007552 897691668 301865315 664397045 260894296 157174680 580955452 292060466 56352317 423377317 811452645 704173826 628828009 338326114 108929001 848977548 783256332 906482670 951435527 71700159 682104944 15305 30366135 344110038 360719685 409023634 104310854 697675460 858231184 622356833 994911520 842474425 136025938 273637579 383763093 735984473 43069525 520589618 492981923 359715605 346585844 401444852 78557960 695024435 810586939 324878867 483657128 559477605 837724158 47735274 947775221 77102700 605404577 563908683 483472564 897211605 853125535 440247765 726038215 155627036 45693802 968770129 483536203 26243719 938990286 432306002 643369133 495922784 205398710 945315778 112118111 451879335 42943738 839184325 623050143 571793362 167614600 256314244 938042191 290276376 939243013 555933069 314302703 98063162 788145778 309310135 148986139 283119124 727490185 95080873 849903319 872736412 421627103 792958072 221022042 413683752 465906840 664214204 357766809 643566243 292488147 38477966 148653833 100034466 28592514 113480895 273596288 413837845 139228176 758616863 637222730 795923973 644278227 277665525 340198227 575550008 900287577 638457020 405718378 664984591 654437361 173893232 491690550 384033304 357288512 774128321 333269144 492854655 467099610 938762079 37659017 11466334 110545854 793676486 840317862 237159851 726413061 561146287 732136366 256494984 464480237 246483959 740509636 194050182 813892151 955301643 874698799 811286735 955329758 994818984 448342320 448098822 503022208 91316423 196490720 574452576 273659053 210319406 937087436 712850615 687844880 637363281 759347347 51189306 223625434 355021641 497946616 607439600 711547284 905960717 822033525 213292563 874200823 54427366 206614916 345507406 347985003 401763916 506311815 308460879 919614382 8491906 757760935 597997646 476713301 402348490 631595260 986897640 664250826 174084797 467611775 606465333 208649466 458858274 758993585 164583145 174959831 960706807 457567777 498173578 208165119 449335223 222736225 306112646 228154694 414941508 193135194 530394766 333762656 476785409 37915467 391712150 525425743 142642910 412354123 394879121 323388390 389613280 931801280 149698362 500527063 880731292 883408092 394605526 336218019 685635562 109852139 661983637 129988171 676884398 485947175 911059187 660903112 859711158 493084190 541448869 251689351 32451991 128552112 503627882 317487600 753925944 720930399 984906735 366271300 334065781 927891012 367105428 999311275 861126425 945844993 369689567 450537970 6072387 248563545 768868826 556714349 630392643 980405384 176725881 960918321 944125232 381075798 30857025 375122566 628119228 804312398 356580937 278686038 389827773 922113596 298181475 570326189 518621674 424996487 42744093 83565284 181712732 228212965 502880248 796102537 806173846 644139177 596875814 359485586 344669426 998695232 502711951 936493503 556570192 241600640 168512471 343158133 388003497 664400280 320181403 993624549 719613988 772833616 138833295 23531773 133294908 887530583 255769568 617974138 867054421 442190621 14877414 720732246 617840467 848076499 206177764 68136986 759824863 245252304 195083043 475958012 992203816 597736862 517501435 803890142 644126566 415938080 429181604 433584587 343130244 121747486 617997264 431078020 949316414 369433218 697977345 892242542 560117529 914644304 662441320 105402840 494033759 456652613 772145730 464590306 344210720 969368295 231456074 784414208 397264166 672620690 674114983 318439038 285110159 88734857 291411283 544652202 659932005 579585320 163650622 283154774 583543975 635505630 508133112 271194772 264226653 332070640 721873046 394539775 65477720 525865330 213924266 903965066 173877282 873856697 42205971 519746631 191544237 280470929 939033870 922844278 578547559 571449100 335461893 880581272 570668 757267637 481937968 54166277 599177208 524729160 514123009 257539166 106799291 396433824 897530483 29033924 876487853 559085182 416097613 119005800 485101538 66019740 844255185 105921639 928639889 16669700 316195544 3863794 302104888 580573030 273611947 160228781 144332248 773632131 978827559 130084724 256441002 402202356 272695127 924813271 584697176 239669586 835237451 986282334 96358753 937168011 754601797 832251017 99934566 817246408 920666875 279249262 369197720 745037820 451958933 671871638 671398939 570836035 370522294 483942860 845572728 586890798 757983959 883492819 334883159 646360402 295467330 424639704 914876008 938298955 937362690 285643423 135453281 903620965 993292231 160977234 521666697 529771592 165949005 903046491 854809410 285787574 368593763 703993329 748565528 241634734 75512134 640806460 727567419 804947064 859223487 746547377 415204228 376200517 401544275 490465204 562725659 331075946 832250803 596248668 718518391 951024951 338426698 125360352 872687474 199718948 658466787 265545268 887969326 307874492 118271235 145127904 50037408 183021952 835850889 64611225 294233278 617639385 88687704 123982419 742394324 641191965 962692186 503562259 616975013 845596418 729206431 178779381 146087125 989309126 409774769 401114704 6980958 921223377 806469712 16616165 757367249 511993831 258896489 817454540 52880526 270645645 312364656 522015502 102908920 18225995 668485572 171972646 480033512 412938459 242169724 230787459 530300346 959898530 683946590 285277585 516501384 859153108 173309365 708108434 961904660 359947826 782594907 344186265 124507441 604637761 404649546 868341438 704387130 249906620 86704967 606963156 178971360 118886353 506651860 889251219 893124336 941263271 956446066 521941868 50614125 353655362 165351941 273568499 849443862 274655681 866135482 191066277 245831651 141225626 82093783 659020874 181371481 941183081 712860883 266866975 575243391 483833949 207842676 274868518 926729343 902571761 51184840 622822329 935164672 206805484 234789002 451645485 911032949 951082175 373756421 82797137 785466548 909967548 929114862 860741394 13962170 487435275 983927181 725133277 43984102 117037086 529222162 45256228 902309638 241774805 659385407 399710201 34136652 78640812 735722542 408882542 975911181 719752398 745772326 780103709 794268233 841373482 251226775 76785530 385071485 42507235 706443213 169847396 992757826 624980353 518079052 65260090 734844319 110780506 871570932 595242080 251110946 213026785 134122588 533665580 438915541 429671121 461999749 917261180 931276067 648502243 509382989 671671199 672937957 893296540 872447755 332072887 387293368 719093852 971063719 149120992 602753841 626170232 880759416 927885782 135177519 649244243 368384581 826247747 993677896 11512415 237400539 954863462 913982490 718447705 60559567 807583707 478851308 410293534 686111524 410095234 731201391 832421150 964088809 749176562 193617259 806588560 86696057 894500294 523854714 451533997 505493079 910721303 691543812 568526342 940298612 512615635 706418815 428408081 352074956 248884581 23883630 814501528 157927535 72962507 954858034 254867095 852019232 123543867 932123468 212606045 50109782 46586661 85588703 831093672 502450822 7769836 856906739 126021327 522621430 567505350 600749381 601353646 16137743 497561124 858068243 889078546 918375021 287128934 501186833 593234574 576289371 21935597 698403989 108291924 197572519 245959428 108383083 947618649 995935583 863168574 752277766 173323566 45596122 932805225 631666818 484282913 224713260 562611967 770401194 301726240 7811251 283505569 489661656 938262406 513272532 583303272 360932334 234619818 927602039 70076420 604059439 999136142 495654188 693383104 178127279 8520988 562445381 718986845 749910140 409609761 38797494 534295539 886333389 200078909 278039457 264069400 917891233 707900803 415883352 98057826 523148149 14580633 754662396 306005061 700704776 602860341 472991649 26550997 420092317 522392645 393272933 748267785 522903255 606253854 225561369 950483359 236762460 495100826 405839706 341578846 359109209 716959216 614994300 474845885 260432439 926204377 65070840 652435952 836906874 312211472 141144963 20295216 690355599 324626256 692789087 603352916 196220045 371197478 428557257 777077631 530013440 606513385 648664411 600110806 667039772 456596158 982841005 526309748 200254416 675176051 130288271 402469766 189241375 116988275 633347978 968185168 491017412 676319100 838714119 871410914 709477782 436381541 277860304 897718291 805498501 982889688 520594908 759472160 583176476 398255753 354159110 979625665 842523488 42200877 10026180 716687642 701510413 238350690 463748424 260998109 286939893 942566009 36379215 937386135 815708258 371692762 829722114 81104492 90570510 525216934 91265162 910160414 824561030 530317045 82082855 860032364 571642001 859426090 785797036 941346945 175207549 383777696 900331002 563801034 346367386 240990185 311966248 404386263 225579028 728943792 667182917 461120296 602733453 352212741 23782565 399048016 937885963 410736415 644580238 519291729 214770411 646575132 74667351 312475261 414329727 533206512 299146092 341263516 183242141 889049910 410512828 74023133 598266352 764969141 213845779 327682433 592620086 655925996 942443515 546338166 239941713 569313987 740147828 187868727 226382372 195571543 198436545 382216539 623795777 227761118 479844650 819258239 421218124 557268761 721030247 770793532 859748147 404836150 392789138 58571294 879972951 233700436 930240724 189449639 845943362 342261370 340645221 787891952 421811579 561448032 125567227 239736060 576686402 181639200 188703807 790490580 101073301 15924388 232973125 74804582 69528462 515266930 732958077 319504521 368910598 678925212 409968323 428381126 863075065 464591526 703572074 750740473 821334390 740022127 376658310 884601243 715834705 32434913 586952062 320894723 997022245 368219973 296509419 371472607 949268594 942843098 313246973 301879341 502379781 625671448 133219500 674977921 484176462 391553902 24926106 395125628 342312317 174497285 611343586 133722942 267056396 754219293 188543865 268687382 975725354 288125089 462570514 977245588 93135972 441194231 46188124 692561243 263298802 390978956 699320954 291995700 732008320 149960557 637051544 152276061 459092489 90470229 418519590 67455922 456163037 587178205 479167451 102831622 827047625 863460813 179893459 241011574 162860387 621967766 858593875 266104550 126293202 908248074 361002113 97502069 16840200 527777322 253305222 330712098 669796172 481512052 875613002 566562423 850901317 23083211 981980583 11931912 646980608 656445450 470472713 208401153 654856016 85825924 844489085 511493491 274131276 351182491 169515612 573516763 28763466 691135947 797715053 39393440 598951787 530093946 193868153 546164290 354359606 46940364 899242373 201693041 187861014 33770506 195559189 173949747 247182653 783986798 569392741 582364633 862865950 532995096 992398401 768677952 121076492 59689281 247771220 889052239 839840138 993238746 682293259 530788861 345498205 766955886 804685012 222968881 66980695 822764307 964579908 333490333 930025775 944125256 665152954 368905585 245240012 989947776 710916514 898231889 716113961 965308551 434272418 616886628 938704503 799763010 757606111 443171145 309126790 153072386 45520698 190598731 684151571 518156407 777799472 530507457 335919623 549735742 3127230 461305574 150254303 923405917 751160512 192563222 623221638 489184785 154313767 107372730 338225951 227764383 483159108 437727544 713064839 902167786 994928240 22620626 610439133 711312495 247907566 261734470 431764637 624546687 738908711 498070977 618942052 856893309 106505481 598625004 877450340 456529208 260355907 261396550 627922733 539706211 279110354 115536650 610477590 902943629 385817404 510914400 810090104 480698560 377477944 69117219 75611162 836144110 461126393 564257881 104307250 787681620 136743922 817246442 116061961 84012729 286257059 223065520 800720610 794467166 348755906 562529052 974025267 958273375 268156310 976533732 359497434 868847648 549875243 985293322 677030283 878596496 96513805 550475976 797904653 493836524 76108817 806245937 662279272 83122115 280656579 599568194 461367314 940994966 598216114 99052054 191489706 656679247 14561543 566349157 445196550 953882461 914294642 965855813 133099816 435906896 248215936 687825262 383088989 229472671 967589795 177439335 255233603 425862377 126963602 151330957 261044296 146029066 507724969 998405542 143338006 701645504 258908392 713363197 692216156 886289831 312602052 616906767 288390512 752415657 621626402 386363244 60649717 834489601 618988090 60747587 764588684 279062033 915182237 160117957 966276258 634174258 964361931 678164501 912959488 580190195 181593717 62424479 729406681 750287086 795821152 166114926 512868190 843914437 597656833 915370039 833993874 493260192 652828384 143026728 952186074 149751827 16043399 203815655 454013359 272768011 582464104 492727211 42770645 523556036 307239844 906101795 343734254 955098874 958395960 605907506 918760842 426974441 579171595 816957018 242550536 874163956 428527758 417827029 983261250 408544237 89388249 633022246 569015306 829318594 527408503 748032260 37686129 123345948 888070363 859985301 150661814 871080797 228400695 43672104 714426330 564957921 630123439 348926090 373438940 477511145 56396380 540042619 799914124 208069049 631880158 368777831 817913368 154428032 229491690 569356315 158467609 354428385 291454014 588543756 272049382 88375447 758075252 749160137 27846840 900188171 688862405 957951536 247354716 804147245 547462986 296233339 127102569 638025190 577568239 961973813 303008937 884979770 65557559 925038820 164076029 238251938 206511063 327890537 90760976 633815894 582248870 841820529 565928459 536249128 437244896 843552365 720185550 553288959 522358959 653146309 470627296 87495057 972571473 957375477 844108246 151433387 886742109 959654735 204032656 864426453 77272362 181290888 451005985 973192414 159205149 633694032 880562561 544579751 763921212 735296759 621463842 964583108 823626537 645197203 732240344 25548421 113870036 288713642 570398998 707751594 800734842 298990662 120991350 613447162 253704954 809040191 674184457 491784960 306779839 56202235 877612317 782431161 627176866 38700037 548863678 189008773 737407066 964727662 107160974 676281969 822402371 518354415 285922877 738929768 686868695 308615952 906740353 131242331 818541424 717901002 852297422 808368036 569819216 705516777 620127580 67440801 508872525 102702820 753800719 396377772 642351259 148496276 641921996 475311751 914687044 627922121 432295645 346233309 54403808 549535792 869688123 807211997 210530440 974323278 939304894 372618887 77329718 902523995 312503402 163775356 567656043 927354869 399624603 763623387 838648739 884204202 13361267 892693511 286024951 68565204 166078847 299673843 331600288 465893785 478448782 491392857 182462459 66048761 204356773 220644000 644207970 30907006 149731554 477148419 925899236 720131423 514197269 436410100 595984088 917337989 593102922 900682825 365865976 262927562 567966528 33891554 700350593 999061152 119416995 209187350 901925236 252309637 671642270 616186931 857613709 391267000 631025482 438781970 489512939 384662132 466295492 408205632 100623213 902222987 652336839 701144604 494011463 868048984 400991469 709267781 997535156 213459778 195867802 409640159 845725629 340055200 648820929 423522364 467796219 813611278 770901098 914535608 137501149 240720770 742989481 565722634 248701414 164604197 629168641 245445287 358822065 842126933 958216459 384383699 826373107 663667963 130234706 699619019 201585156 181713528 792832510 359963383 505239089 381732307 378501963 123652118 66631423 622604674 713823924 837254195 990989774 30509583 61233955 386176430 183101332 423163443 755968379 978749411 416863960 19286037 554362530 66624817 29412187 138132950 144043766 445848148 243299516 313610106 252165918 885981037 35811575 590974454 689287043 807141495 165566691 283593171 330189172 64613682 744712520 867257159 849838847 931828793 151212314 753881230 562388848 809572955 271317357 403704 75530811 332828975 270249168 148461792 31177782 552070208 309790700 752082801 790892408 257864144 602658188 852737311 678203040 785306124 785146670 285548923 718248590 710545555 446848645 933979626 942258452 218889478 194057801 315055892 946639201 364758980 82012401 151101488 492899998 939529429 324165256 280676954 369345597 939094092 993578455 554328595 281689022 538197918 954636012 417111879 472134545 318465873 490006735 229961765 176650491 337660945 889347392 744882543 87784838 16703686 209029214 169164129 500156229 70628865 719766002 755100233 206319353 238310528 29047659 492292030 654075078 70000598 905707508 199697585 657484946 66895985 339226165 797438053 162808916 175917703 60981095 527244614 17858662 799712731 680534502 167195686 37266926 789156300 822927208 537047075 899537205 318503813 606698894 388624931 980623443 148077908 163228676 441529341 264862628 134833124 658384668 919544835 777648688 311328825 543075580 123163754 872287344 954283931 256385943 373082272 138185666 56657618 748619041 966943281 587965947 470158480 534460578 976615205 920589784 963197291 814059788 205607992 585857277 371890273 662489660 732479714 200937188 67664200 548723496 750400083 426928182 303786549 371201912 112772916 783429929 273156035 23006427 632593758 675667996 654736759 758756115 569868063 521848755 177412235 964275036 746600562 903317598 986883536 143718788 322006419 485105869 804780685 26145160 837706282 937714083 250641492 852665938 961678220 809090677 284124224 880851556 155711571 113941322 514273284 784350459 575096901 526436013 423487719 492217986 244748457 703211301 651681659 631337742 479954348 21930752 94739182 635552524 148027027 137123533 108481264 332055251 760688417 280546791 518106239 188375919 631740980 913241143 742419022 236624018 890236447 653188701 414190598 827461934 764829936 400625229 913477634 521086917 668327609 674760486 314248551 686989514 769843418 112524435 239191749 640569258 629315195 297330626 367666256 107914552 398704513 431152298 387395385 47317389 792581207 388292057 441597948 309366715 367181253 222199212 358700155 309198818 555832159 702969549 364931237 428877184 372530890 281355566 930942811 441646366 386220559 254095193 602006643 760358669 501469484 294013249 310761233 660448053 474356149 120857480 117376215 810718915 632653571 953649984 771525518 155028666 196222786 248701809 605044340 574174548 938643572 6307982 228831749 34731146 231697782 174931149 63526387 329211959 815957928 755561588 146261886 926133115 733400244 962273431 210119846 399563283 489461953 921069941 416679634 169417026 260225486 917216788 569479482 633089819 466241197 912184947 785257264 892304185 900448659 709610629 44926617 900024739 37747722 997349022 279885716 252772915 258815685 387771705 780052876 350697521 872527094 668434854 716004313 392108641 748672437 431477457 171264774 121576530 919561966 29174813 900746669 555565954 111050001 163006451 496473129 823944843 573910000 530796803 996842892 514882110 975152312 155589581 260560526 105337981 980863779 536813846 193748493 622561698 645697515 370240299 396330010 995794585 588970886 233813391 251750982 194182315 650066078 870036671 395881833 988828882 452570850 304894181 913689700 12966531 312778862 399464519 986334998 61811435 711530204 823492571 867160589 868882268 852509796 609241734 512502049 686332245 586210360 936858318 9709206 705240279 925069969 198464611 833889975 717835206 590708629 65247136 344486902 184846875 641722678 136148233 677978999 694417340 660282240 815207146 584594643 848669660 97739316 405491570 770163352 466388422 249377691 425253817 618231215 107472289 926668331 404925678 701230870 220807610 119102738 946127841 256668759 586745603 397426053 479197695 855609914 621109355 290166929 157575785 593845806 233628686 926634721 748634674 166389526 932588136 669102877 865385064 325852045 611834493 586883228 476842836 517286153 502910690 913568198 361848821 660710199 982546043 674482058 494256568 747811241 237636760 271644040 249806400 659349875 958784523 551945523 199281155 622821615 947701671 276574546 358376132 605783649 673758400 226572613 294600018 346943540 821491779 298981191 746878337 934680295 184363122 45894825 854374300 164699214 984533652 100453612 799910800 454846390 365614277 656988162 993765420 347413770 658337697 188387643 637070982 916434852 211188031 687257906 107364417 446518061 912395433 599410744 95898724 493729707 730429947 979394218 901461417 21240603 147894829 885871887 844330166 749799663 569619165 963196146 195605235 177406881 130408425 595506016 808840596 144374556 431239895 556359813 94633776 96404726 338207373 863752566 224244853 647592284 754984732 644799133 346173949 724968845 413808239 331085177 794537536 802757433 256886524 139560505 772846449 908948245 180151138 568897943 940338733 414344215 600768980 421514115 218862351 912311198 652905719 940525803 317594709 552180424 527433936 920930077 736376539 179394149 111740494 719409429 390875272 759657554 456074728 306571577 821960689 916354799 733130114 408863529 539729306 352877369 705972638 330114156 324117768 331256746 134823241 896265239 372355683 76494470 776367222 614972288 809307832 905146747 437488163 495544023 805733282 387223896 938411809 396084077 704785549 884057713 301409903 976021156 627073658 308451699 668866919 189614025 637026728 984227899 350355987 924980471 190255336 232998267 138349616 715027135 413235866 862790885 40386997 153078431 614258578 436782793 875877903 357104897 132303581 662809122 619015900 115548912 526293806 859462203 966690115 817659281 770916197 153411706 731388574 396674640 591039178 881982077 146866246 428170753 887485792 912416802 149737940 505043422 516848680 392163404 602124030 738551187 72496275 454423596 657473216 273400338 315691524 26727175 131214529 883330005 237804604 26229660 732363812 229709083 774008152 407804687 623441484 488413214 393107122 126521393 340136877 787693410 254789018 781975629 314390082 353670576 124584447 155648715 694935279 25260949 238139376 670812772 164271118 518383587 779476880 215654184 731597482 563977891 439737872 632918881 669463294 963290342 229937354 449028529 571989747 712053127 508581591 730935817 639069521 149370311 332079267 604642254 920095623 676270582 768493800 548197097 76091179 207353161 533071291 435973223 915028787 302575294 173350100 525328173 723972632 487329359 956631299 588827284 405708839 322323018 901058491 47989630 281903230 679152600 421636915 79178760 525325588 469421261 57967491 91485033 711911182 207564186 187554713 2877732 900985783 530011305 289136083 201520787 928792766 450852950 733914623 473270389 481365113 332520355 647790491 943935798 103148767 188859416 143405834 307424691 869934151 424590631 156454712 485284387 798307511 608699134 173289786 670705494 87290380 493604295 908180029 34172159 542010656 575006710 450243660 641614591 107670573 400224819 782268685 715116290 197692066 464508406 378764669 618165474 760317095 758263832 11898069 850856842 327197950 795443738 674250869 369020889 822572687 14146198 684669688 220163718 786223611 717403740 474477466 70806883 523334319 86451563 101263086 859572931 40140366 212980914 286996378 306303698 396310587 943421933 274597732 533849094 887587116 197746249 528760205 874692794 173585407 798353865 40347450 83968336 196539990 637091520 389977864 284706288 469097457 807636228 692536206 588662056 635481025 103156274 54237867 575099572 818423635 171047332 960864992 291840674 888215749 768643180 756823514 16279653 315545503 814308962 247302579 736961325 572308886 49786691 507398252 428951407 406239599 751179524 387686083 595899700 671079718 994130230 930198554 205832469 642970789 269904452 252475421 62180674 552909862 676912842 779200906 556904840 578511754 126791152 176244830 748013188 623790107 874091887 994029335 993134404 449010505 586927707 864060077 283790418 570928284 338246217 716285854 635610830 48901525 960334014 923211123 837995563 999490640 697913267 42745326 987173071 511904831 101804957 81255917 233994468 166045786 25612388 881455305 198749727 418132685 786287538 929142237 241896140 317383594 416339985 472827357 232680667 513483143 320663991 367071951 679548751 764747007 699339747 42662709 749259226 954817816 954794982 39625406 108637647 415924799 207156934 154169940 333514858 575672579 816391366 246858402 26428885 86815289 440751891 982749736 517533520 197062918 827061927 585457160 439278661 6545223 559914820 290404840 240865471 189111276 730316847 523312567 170233191 336583965 96865431 921413835 613738323 894265045 633237958 33644131 963022179 317721442 894008758 699959121 786723309 484281379 470649212 700177811 610771945 972957470 971846321 689108030 347570558 642554402 976268474 262054093 37780573 738087065 619346522 558173620 209585355 231270051 946818397 21306493 279995252 126397685 587990493 125170508 208386879 510769927 196838479 500521568 235311929 137938278 181148103 216150938 762749634 331268405 172698377 693793140 72754930 962732982 279078325 891774314 394114092 423858809 528610750 981479599 621598125 121495266 543985303 577969486 486131353 168210256 824463238 348392423 431154870 475935103 752276994 381981428 35183346 954118776 502156804 915763007 792984031 247794110 243493789 542994049 720649509 43177576 432001908 396645172 302053013 969946594 103344590 173658705 841447320 504092644 633212375 203717538 402300794 831079477 727398446 255521849 174998918 630675530 365141214 712386747 941517009 111021667 860150182 534948540 603459528 622682568 800131038 42136534 690048095 152085827 817434549 580713811 221261091 63831711 149233594 795342836 458779579 299940008 589909623 601628510 105375326 716580590 631508080 388973049 191802835 500893543 973925364 699226710 677225249 882588728 504963480 732922865 920273440 834297664 276610034 494887026 460844420 441776131 618999099 320265937 310945306 387162854 28694103 155182587 514799817 765793078 114153173 155069600 178991259 806720729 496977369 816593480 75482265 247545539 502564645 194502249 609391768 30712541 292468751 169370984 620612520 489621534 746946660 957520191 881486701 979750894 983522308 609891593 582304127 757460259 667875072 739740702 544779369 347054304 906390771 568346909 140031485 201384792 484875996 971125601 866505443 480307775 330537013 234924179 592031709 650174895 398324030 799402405 329123981 226446696 546299785 300690086 718244486 374315211 559829475 930073974 473920520 255840157 867667535 400104953 58548119 550620106 49221711 776198676 35127244 167768203 552320548 54501732 130053338 391328256 271625293 886529673 194905340 493646143 491990961 134438679 685317729 671187976 491379433 238545755 839858370 106531301 567047589 669958045 884536914 601579926 661812781 467040659 116497036 31572572 212466554 4405235 745829514 4088417 401491647 732497197 122294272 615230091 730206263 695391996 979764881 768890326 410756658 459596190 188768203 341454778 553502879 505630954 318058435 188287016 839976531 438507874 361927151 122071130 505850982 775523838 278855631 434194644 125209296 939519523 457530960 490425442 405119016 437155587 345695689 497717751 613464812 307127639 430010143 491871707 712138767 588365840 718379837 751109454 6924288 764971030 489007030 461651905 197382715 100205499 121337546 111254924 500174309 766558358 95740403 66624433 330495046 564301390 256793935 725286106 558070486 433372458 663058371 354373694 131496188 278668293 223539667 170049103 525519742 904863289 291864853 698164210 276188945 628596380 815002225 659972847 494974908 19738633 359125254 736816981 482254948 91385188 805425343 73658348 93147507 775945779 701765460 980555665 225797894 836255411 412968137 485747010 428384331 449869951 645681303 163624660 357894487 511423465 786772270 2316294 500638398 408467381 943441017 568403529 583234421 498171310 911321802 864236385 163896719 127421246 690358723 639081135 202713008 946466626 68604549 759955340 82569688 345009573 608200758 760805368 511288139 320034903 258725159 455924709 237321033 742489996 256884685 847456545 628101789 130659398 442397578 22400631 448826755 96061353 345411721 31600416 556846416 334299230 937835568 174867725 833313665 767978628 641574476 959738472 360950505 277612992 890419518 485370294 313413061 611337688 942165456 688587918 641875356 287253480 582697315 630164295 931367089 809211066 889708228 665664173 762589679 608935986 282272337 115216586 182072786 663840891 196676384 841471851 30025450 865828020 49535836 966506431 590042697 200591067 252902836 69595525 497729781 592513045 53336370 225821341 536467658 955749308 854313132 378548779 840911247 677759807 537541442 51627364 762327910 667935268 979481283 202574351 349898085 217769428 397665802 685404781 756442236 395030000 39010924 423481612 417737211 600804967 295341446 699171229 614307973 83978443 416509102 597274248 517013959 685811730 504171654 672345921 462383701 816573479 362423908 623195796 438827963 771305483 700914714 89008759 753169305 830550160 686668829 122745418 701122038 522220010 160951218 96033199 197432293 66969158 15896896 64575847 377045215 180906355 690425317 980106085 561500739 69387296 163918163 124756714 459205604 537309616 662512289 809380776 303028305 377712770 21809553 958814491 513654725 938557673 6736248 389645710 571204626 912567010 853448941 505320087 513765917 1434981 524576139 497391399 690233556 706131683 411744416 15345587 724505084 310461449 487232453 563045358 804789038 887364598 246421352 380148877 164748267 898598131 528466678 262736957 299935885 136004565 321528672 902486216 262550518 653108913 237992401 988079563 407446224 521710200 79360692 774318053 373202418 599593649 516864021 840468617 33220320 312837097 886975703 733834307 256246929 438010329 449222712 817579267 384598480 713456026 109145848 700926859 480372594 551688432 657671320 555132669 506391802 885622602 64912547 36484013 370490965 364625419 536483340 193261855 363576026 69481883 772011951 13322193 242468868 733462365 412806600 35361052 489483566 913092625 706327910 789006059 974649182 748208119 748143147 703403236 782463082 579631622 328680214 876064851 172772989 870539059 520218654 529056221 137778166 355664860 214964494 597237418 496869035 95688826 96612787 491305924 100051734 587681983 178922951 656859324 733648818 730143603 97430209 24425875 115065817 420809647 658754784 826532702 122590397 556498403 133629912 549810456 670120023 349472699 187531277 535199645 297419518 143946666 496725509 938413890 65174840 795831426 827917955 326177385 794313020 976435096 539177740 484950817 505464863 921978207 348049062 280073407 525316330 676673356 731137055 364058503 597562393 778384931 20748502 629780195 85020574 837620592 150675021 527382143 541540307 82029191 647084834 541213227 747348489 444307677 712508976 44144900 182800622 552553841 463678228 846356248 221317019 626240923 218149144 598120444 388842040 280457815 541707242 504491136 186827988 130727620 134560467 739791598 850787900 806028929 839826062 714263188 488093099 254254755 397700067 902364932 716321360 586940003 292075326 246375631 765670815 596305135 367083987 506193277 434527542 655359189 633545953 778259845 338851850 592283411 262962486 845843689 225655449 666783979 297868234 253405560 828512222 557026509 743745801 931256205 743080337 7122776 717169664 267389686 352132841 935883311 718705301 117011900 564566304 235606234 522167537 60271977 202214183 53946376 926748230 862346081 914553615 750748586 921454231 281778436 28493080 512501224 397002721 553656874 975833934 757173136 458503635 2671522 850786728 99768613 228880922 687253596 210832989 11281396 817385747 283401429 201018456 943411211 398545838 806399663 635064157 508794119 220202788 791921769 718462908 702363131 802181765 350723356 357580058 908043232 343725780 488077367 819961671 267494358 219207110 278591654 988680589 103522363 13046483 968450302 704454182 925347109 425532846 713165384 718679242 353876524 894688316 409686798 575313752 890028734 875940303 485573626 475328756 232297544 78272868 225797448 672647753 561472980 202983032 838226448 779102670 804697205 930834115 988844133 317726671 92105778 590229814 917999209 584396249 64210928 479670836 971956574 896233039 833630790 567983918 7566331 942610719 167722353 838092299 939423139 256332183 33991837 143271569 561943803 887047976 218604923 377334904 159231976 911496835 634956315 85531557 90625631 741928075 113717338 754432724 70251535 185391470 700299366 994495354 521768304 530596181 707097459 977651707 626866402 283194960 353466899 436334989 983770582 721264402 535486976 803394947 597961387 969590366 850983439 950933176 717700688 405137605 784397715 857809565 148903794 690577021 681863639 83643113 383692142 181889386 849043327 333526772 565632327 34742251 292410551 141903701 190664567 95966982 74195416 306480739 782928800 362910778 217024321 46823405 441470945 515292779 398076810 608177702 197267274 493778647 744052622 778398034 964923986 135836736 231270802 744457685 499933414 71041856 831833681 646903686 957166141 29501220 258787133 969054430 95583490 294356818 414564276 279587338 948820383 447403007 740820796 268298161 697278229 948306660 277680847 371762881 186089927 364301201 600496965 555719290 944333001 482327242 750412725 520855181 76786100 877056811 51991025 367992847 159875575 205125430 169407258 906442468 806378613 873792875 686176342 761252614 224306063 235540314 649423014 207286435 61973109 790585275 813123391 861843470 13171700 572868997 918555157 752904113 516285309 56514187 181129076 955209813 201510418 735257779 905174359 924512513 79085591 216527896 410727630 307522835 305628279 859160323 977305038 938014847 523418344 480364242 444127406 357535240 989689391 882389955 1174407 462541284 319577044 970430630 771293981 754701472 501741858 571270317 471423123 890551405 568674273 842744422 565454515 739752317 34004836 91412291 585068575 474792688 735332968 269485806 940783862 683338571 497191382 727817547 965000433 513738263 258357931 457761051 429378833 721189597 303001448 808492159 17592106 28691957 235042098 141465597 558646251 210277427 540492276 282971120 162034427 362321639 490980337 366090699 812217918 8190629 554870852 158711864 542724042 20101077 286076044 291260665 560688677 915165403 575911379 78919250 551991908 838102016 376954392 473322678 842568623 562738550 854098174 275970020 623380945 787956575 785758185 909485351 241014854 270653959 267408773 170356051 600311570 66258398 397673803 124381250 607879380 329521904 348250930 298293338 517678149 488603475 954228858 962160447 150354542 473487071 145511038 651602487 224996796 443601902 346414529 234822119 913228006 187343249 179078941 165364648 120202612 689063460 140810879 131230033 945243120 36546703 704229835 211075784 574234793 235144470 734693471 660275287 291351800 363791602 8495722 372569375 10953219 595277065 159702146 530720976 34733024 10262027 410265201 278272959 668443277 103753277 520186532 937545125 477798978 120329798 870588106 74224589 186305605 917066399 757925899 640852959 155965019 960726776 155221478 867100406 676933291 447541454 450184793 777278616 135531618 754968167 46571298 129247084 754602207 962007997 752695129 540044816 496708907 230555409 159964101 590697435 905356511 627009853 99551940 73958642 828093353 949080339 902683232 70342700 289115090 270185682 564531201 380047220 370848875 179407940 842786159 852830353 89197855 22314863 921607750 618284921 535552270 659771895 703646299 636117783 548398270 141668348 4570535 825676378 713818383 291439779 614243322 489092622 618103323 145750652 801070695 852922103 468059956 795693534 154026318 622262106 411840326 149942132 616566794 770744828 671175165 569798574 483755367 623229255 119978053 924808386 197551454 429984384 719591361 336040951 902398101 645602125 650906810 978325081 106011310 637617818 105642315 588090776 902379727 77081272 949322826 806852766 78096834 472854208 188043646 373772237 221176799 395963519 919967142 564135335 543932710 848389592 241044370 822188006 492417627 397423711 7507440 882401194 887285944 147339311 749697601 421811433 822678569 927115771 209697484 36238546 458638209 241853636 719734459 667104240 114192605 918996267 17357378 3511448 17592717 365467102 524082721 654643532 793991520 200612030 106874393 978808417 8487917 974014566 13228199 343609862 39072273 308389737 438469488 990599615 483971196 113126884 159859867 878685675 714114133 117463061 592512526 445816308 476055143 141077913 362925666 187174843 466608045 7326160 811325429 159326235 75406787 989796954 33741021 794917022 261535557 938397027 882327768 331303379 505374008 254203299 527992364 858483760 798671523 575020800 256169143 620945064 224774840 463547603 466834420 307839584 559348494 942464149 19308973 47723848 434887433 134295604 478222443 28315128 311773737 879485527 317914920 449993386 129290538 462325739 917043908 859633915 632932608 775882160 395401610 897133789 859457692 351911920 383331344 808975014 480725961 260519220 939352858 692849195 853028184 905023082 831992597 999775926 854912513 544463996 663421123 158139940 325530617 534798251 322274691 759741784 305070187 437475071 743775435 867727403 155636473 3048405 539095995 133737298 552950751 508363991 126012918 85655944 898245194 927106671 562940218 824965968 738489997 206315902 292333727 358917550 14801141 766080396 445450267 299009762 218594064 521079473 842754721 191056745 972851350 128184206 156155611 854454721 100393283 264709476 686442932 757436924 859207055 506542061 560679600 176629715 997462479 998167545 843765206 588765285 441623107 240502086 355638105 955713811 321110415 703571357 375957844 947174836 437787207 313049051 524966973 760629759 337977062 455998963 849786579 915719008 62331663 52197163 462504664 763390484 92870866 701863913 5474355 486243177 594250237 467782760 855770106 396096800 634200106 458222764 864298914 739136114 76695220 710183212 264233071 898346126 547827850 353795554 994803964 177691822 321607502 708449333 990419343 223847634 445601399 996670031 972535837 600005528 260257694 970822333 571118937 29265412 484397899 459506640 738534372 287047049 930779792 289790101 821365559 620590924 613396825 286634734 645290446 146567091 421298292 598346701 148381180 974299632 485513511 286587252 251640217 832004603 82837682 921393851 484915542 777738590 341310455 525874352 673266249 795530424 591700105 966316593 909980826 143841319 477782332 857037480 752184443 584436360 466715628 912442511 373691589 512986921 723861338 918231057 284305046 768570279 625563428 993246496 831880208 803263857 584410224 792964752 355581449 40685292 495170083 375579184 862683435 776370957 886979736 154390946 946290698 532608563 389791968 324200931 982472715 281590703 252466429 859151859 223782957 198473110 496597504 273818100 617930635 892003743 595151584 212493241 778534417 75096118 820228054 996266746 99134730 300473789 668229787 94388066 531865267 158819539 592350706 980788835 861810797 70487760 821354963 124687799 157490189 962884438 441323995 788921608 983751984 971706555 2957303 488120722 988875190 313799034 830267818 160442819 734822574 802810967 811197426 468566161 622106076 478905202 649539192 658438921 625979848 504469543 346033961 54473392 875412196 788990153 195370806 683357948 204579648 875187945 815131915 6165456 462080553 155111926 542217887 642092205 544762847 423201983 886237683 560373202 757039231 473635187 333875216 910452389 241608753 693883779 667744032 121863023 557910835 349154292 964535431 421970736 672796064 673930870 952226223 365507409 768691029 633623050 654936462 839630772 871197946 526744265 276864029 191799384 223324607 406965594 11870244 552203236 873126444 60730803 776024372 710428065 87783677 441144653 96322384 501232866 567880211 838918395 464606164 108729526 34341476 218967067 233199587 852075087 847842884 814364470 689495565 275135796 764315893 614579287 767906375 164648968 9136784 943191036 219143206 672009485 16215738 455123541 123176513 708658444 402084256 73569176 138143292 734444425 185465113 354515674 129062174 324191720 528614362 270948948 139747680 510179542 839620042 748645732 200796543 278664594 98020475 17206471 658326327 231280128 979447576 346057934 731569339 956402794 695100145 904669891 82603348 514495414 188627278 893239863 99260369 914666259 3548617 10283814 743795608 741576084 367344437 325213537 8171061 540869675 52914499 302256293 669411426 149960304 523124225 117570047 879959493 676842859 238175603 933347878 395306340 475178485 92555051 419691195 569364001 875401106 279178194 397881392 417309280 345976371 990296184 437960991 579789641 875109810 15266331 421768818 454740223 603369789 762367849 571591518 880101546 581880489 697287044 499930936 772992253 254570701 915590432 30691242 796762674 320629271 377490478 120505358 824869026 491392245 20527402 754215377 69098945 469190754 641502657 404437087 927460741 271096378 297681399 472455611 439148206 870206978 968004675 70756244 347083305 652911594 927457740 685296182 195044830 537173112 919081804 898432711 676481047 649120198 248948389 860733396 414640017 681601736 236542499 213096543 81869038 86314256 243927856 372220218 795688707 626185956 960213200 560524541 702907691 77654587 292730038 477388363 404649116 479487148 907936101 260443060 648114063 784235099 696025188 704721750 540780449 312558140 755425972 806798382 535534382 911415835 552039751 551832563 263784003 522639188 150614192 720317976 647515094 223725830 597691116 659991655 113125705 566644331 871824577 973870655 333559928 412686963 210410954 625532106 323771167 116678052 708122554 836588046 718009479 570256187 666043684 575847817 20875631 70611845 766142595 138195492 800211637 194802780 898833024 159381367 854607371 599402702 32256666 461817902 686007847 573532059 259487254 406683524 781183481 22685075 107305546 973727921 956181221 381402482 711112845 445444465 980814742 441425985 514144841 391553744 697122323 431052860 906179704 306549685 373112863 573391150 349364434 913542913 820288691 506336951 69332249 359667973 584139802 196981961 841959530 61516951 35222210 190713975 640440088 982883793 36466571 722228528 43369361 52869856 285439420 215349995 735265823 151352860 53592435 178947464 340913855 844566876 36240773 742774732 898177308 270875761 757396428 488738470 742044382 538446338 413545943 487461230 617452320 809167036 505168267 586894003 650258441 281969712 716026143 631213206 964294605 598942765 392491893 118505266 582164765 854465281 268961586 552818313 108922077 932684222 21818623 908962321 806341237 995181171 675858094 39614592 387024738 889584684 351403388 593435813 396787169 675675009 787291815 612784726 984817087 449852355 967007315 596172442 652832164 715007243 338689067 181013219 747869401 718540442 953992893 418042270 128032414 880072896 400038664 871327198 921907925 624536760 826746814 167610553 168470249 958951195 808075938 739469667 426562842 261736469 743978885 523622607 486998195 646487631 804361582 689337216 611750068 20669301 668894902 76841243 775869453 697975265 275279257 766388220 61372114 92870026 398502266 349848601 56984621 619165648 392823826 51843763 862024261 590794958 181377475 723649896 760536690 320161320 126587468 458288490 588627573 43752296 57842541 625325380 249060108 118856335 10386293 289219979 964777660 29035753 257247449 831084530 806177642 743081540 349663210 573679026 500231146 541246468 715117727 966199257 525132513 454895223 345870332 699918852 487460716 300795 297480378 49784077 748022323 699550539 393638264 690916356 586554683 541059358 68188906 291415433 893939223 715253367 333999357 852560400 692272027 767198562 415037013 600090411 583301920 421054094 964099979 701887087 608793809 675442925 455256140 125019427 5463538 102869004 211512652 946398134 101330762 693752981 913136054 583164568 614738106 509608099 421184616 801167478 479137276 94380468 434842657 764080084 841593274 221055818 575725208 457118112 707450828 104449575 873151346 823259645 819616238 41408284 876324441 84991902 25661021 873273352 807127425 336746151 542887955 919740954 666981910 784086486 140515254 847934643 174398763 35982417 469494170 266724230 321836790 382146646 614190127 29502692 535609486 922303920 723886999 488849220 933546380 620829124 751953666 356774765 606199305 123787595 628644807 82398086 113591745 620633232 783801135 640128890 168733198 562619433 122364070 254101716 754698753 337260784 625356044 541003692 27868865 344076044 29736065 268056559 426188940 119176984 580549753 144618436 380579337 490771084 699836557 953290377 659358099 458017708 705793591 285432741 770630799 241327191 767934337 862473964 540842032 834285303 53118137 852558637 529937980 576809348 115946347 145171929 605377296 471160159 111251726 851118899 587437002 713558363 45722251 902938807 773684775 548558384 263587939 125116391 822722463 403271420 589395888 689143959 205246246 772316665 908692593 192431386 424340574 780907 618416761 234637190 663635439 366938577 312351981 435564145 193855164 754302413 699797813 149786298 232222450 602369708 603413390 103159190 48681197 886590539 206575098 480671210 239068321 104225960 604532641 169298820 364543141 977195453 170238875 377059081 193479408 736160089 175858345 143897752 272321183 105105577 532757850 73312492 849674394 83799129 836415342 641896717 549357121 540844523 310406597 595174587 134257803 508201913 910677532 638415840 278798616 727220774 575893951 662849416 527384656 562582026 888699293 332401687 52493999 249649978 532859605 170194473 340237208 642380783 85852767 293289575 518336138 90238123 964440566 494485897 459533957 740190553 68607332 62457148 667873558 442663976 417022048 23866058 83948201 466585796 399696811 231072649 523240197 461823651 229777874 872262405 928875835 425212586 949560078 622461410 417954638 43658282 754886772 451990370 206495133 723645420 689027327 603321693 103057003 445801737 471593056 683102216 940299417 665086152 710411950 615469043 959244162 72517663 833849255 896060733 192327843 483974853 672203005 934471557 553831711 330599151 397189483 166738216 51134803 757943139 549589781 1421427 30631418 555438560 667129667 488154488 583792547 370499432 828048154 74464007 869696491 275457264 80050446 311865741 502154062 91930262 616132202 637934994 628209738 851533696 742984818 702700995 254798459 394903875 783463217 465830508 97859982 967023109 142253013 437181249 36491291 935999027 518905760 217770067 518758608 91946291 34286005 697958181 593878560 212560447 396280476 661347157 139506660 897714444 49614883 452102490 223650425 557237421 977889383 433039886 278242944 392511620 960639497 537229622 992304410 648901478 442681612 38914098 864749314 426356560 866037970 251859520 182567778 332633942 739899350 319787199 965779137 827790157 866567368 928469091 223915527 357863978 785447030 198713035 422274226 294416370 41725700 581547292 155206116 621592286 305271816 331038554 839476095 257343220 140440788 883456323 540071426 576003699 27429564 853308447 917558935 973175201 656009861 865424523 639479336 817329566 821369170 993607885 549860269 57342044 877956418 750306935 971891789 255726202 900584277 312288526 874317919 505304060 987169259 422298096 704111109 118958516 967590872 830188273 673229779 640080323 179777793 828263922 89691440 20080113 718817714 560581170 775032163 377172152 184611252 765936584 706832291 927770546 207887452 237625270 71897819 148889278 361759352 360961673 925291301 2102043 952022629 229223260 741399825 747058182 356288996 466198076 293601370 44908822 481481536 721143218 299333246 530957944 638143925 866851964 894797849 510449315 269999937 871091236 584941108 321566094 908901223 966866397 245931763 14814346 595849222 759992416 154221929 710720094 329828593 220532278 979100627 402637519 953759633 610451231 833052207 466192849 38096797 759106691 983692333 546812053 235466559 945788950 667722654 794442245 855353562 917246301 897105096 772752077 652597482 617736856 98359643 707021424 862176648 926529929 820717283 646965800 969249447 83092296 406523913 361931241 827129594 470669416 315302321 109714229 223053418 919049013 299877230 803506804 729042472 38196352 231541470 680733601 998377597 616141173 969467815 73540191 304945174 378475437 115630237 756388565 536813839 300424318 651461122 960393653 70361409 674240815 31934696 726534295 701652133 138923538 747118000 121909607 2022492 79324632 149397530 720632829 808300667 96034565 685943264 142673044 406849280 133232766 773276467 994257208 142699544 858928363 728792413 58049180 522988829 76663885 668503382 710884317 723945475 801249488 522144776 225063306 397547610 716036049 675267141 477297425 830648755 92900010 174376054 445397639 588434730 648593010 461237245 863785234 840459748 905301852 150916878 341751470 824774166 34051145 691652648 110026849 278182486 208882682 164459135 316291242 312963916 499843624 81194345 256185015 1016436 911519106 312037880 813394714 42177200 80402427 885233336 910935880 140944130 193473528 476717863 63422872 540393541 272671358 199527844 431327206 883626319 518569710 329998094 727202228 137495567 855821544 444093192 653722338 972260431 531287790 523654641 194585016 187537394 636815900 468454752 354988676 36827147 710699451 945734928 38045153 679896932 800293299 530726439 849266308 983443309 610734158 115164362 757760319 999826074 987659652 104078298 277058342 350870326 722969000 605629227 918812703 459029060 42169422 847091443 293824100 962120324 836519817 395689037 893033686 495684317 944233487 292744673 404449278 236754553 664541625 515628681 96003718 828910079 837000635 31736370 591763336 406181051 391078838 820227830 462608993 808486806 90189276 546497362 93477932 92361260 223855717 784498436 136138121 526476322 904349929 554708893 955086792 176666138 248851668 378682040 966492969 235459263 858658684 996781371 9694454 823475533 945987584 255352538 962777987 843907948 407936122 338135630 792427814 94082528 757539489 211546538 451184990 814642766 504876482 672137796 870674028 566077523 668806902 435532279 574000105 210971973 239349619 728479757 885109039 372578452 380063935 601757330 688275644 752608583 270438445 376007324 111679294 452673119 135089831 139004839 281792971 622451307 381778586 953321168 934144164 399379105 837458563 598562111 336687292 921368916 200350782 205637366 267275281 122774331 305010249 201496688 669175970 397361087 233478833 372939760 523469140 568191061 369681175 694151793 237099874 709902735 881825104 919081249 84745527 791923492 920568127 629829119 464347798 556675957 883201339 113182982 792391504 955303588 275869587 194223779 124818289 522643926 213324550 645847979 242433975 685268090 126290091 663720909 680000284 961416897 427932015 630563891 557284976 717246615 265306108 971086555 289004948 677769122 199948139 817225726 639068357 722185393 606675260 56753587 36051834 155991849 660337604 115198920 295438763 554162174 45797901 830764443 259236676 290730264 93815033 77086397 229853905 640018404 880202296 17259174 339689966 515997428 30347133 311385791 274719535 716573893 6400862 685148081 629212022 300008003 448963180 772682180 901522216 226629668 202672993 136715978 731097746 31153241 405881520 862377083 146773455 851055866 465169781 896162605 956446246 855414225 16924682 17349963 162318646 940355858 373177273 67741886 821329811 435851564 854822795 269760943 169299360 509841751 344771797 629379259 293773922 262051962 258697332 791260575 725959671 549312316 232956469 973742982 563336190 828243649 784464483 881231959 295637256 380452255 80150806 821628766 735938588 211077999 394646081 71131678 828502898 70193479 368269732 632520211 649242117 560289634 655126601 165685228 124559787 68973838 75274484 611911676 125594463 921021442 264969555 764124674 107964441 120159935 120292933 415358848 670294871 482281694 694257730 718205757 136148823 476440003 798308769 509479072 945960030 349253413 756852098 61572512 757083987 982904739 219313196 504483536 395325731 846081011 979525182 240981948 437459050 520317800 168216607 656639225 409077279 677468125 697646902 25299027 753961506 281226075 915767614 847501233 742335209 627589149 571114631 362739170 41973443 288233019 229076837 604627828 683151115 722612624 993414063 289410327 167829771 730486428 709008711 631219158 668132687 91268630 777876879 158547480 196290929 202386729 105849835 112630576 71252522 271276285 649857790 10493580 426413083 427983035 183171302 477033821 318545304 695681377 702507673 588393088 500774746 668701352 460316900 714072911 984896495 93382870 443100274 311984351 740817430 518147213 510492223 92589337 432071654 175772599 609320755 709571844 435467327 57111005 721524500 752359379 165776684 282095946 739208097 486669529 933472755 948095219 775943805 262660657 329208384 483004926 236265679 23824030 33657762 632137681 241275820 341429726 714645120 750814425 161220526 978246600 58874540 562827252 578206194 865138711 193728977 343225838 337807136 573233858 306782940 706721600 817722009 964490142 667800086 137606977 49930870 564819957 408109830 765875141 737227761 177526241 74866135 525307572 754686152 880041754 386554352 201978559 135990719 900814394 427467700 545610687 389401724 667864856 717169432 384260721 431442114 308961005 925294539 998324734 976683244 162335483 350885572 951228269 532825434 891996737 785590191 26277302 923337752 364100996 286031926 295911567 734783046 873159445 577180129 460236007 877449001 613380271 987381221 811020747 410989044 431240213 334667115 882827234 990486323 183528705 41639446 494100404 152341642 122102762 956723744 476267089 292802274 875369450 353468504 378912658 472003961 839632917 633205625 475739522 631486981 483418017 297907384 606652092 853555993 771905981 949637222 562052082 62425402 500343176 822322900 692448524 128441251 820642045 265697403 705137775 216435306 272508679 538459421 418389681 440868618 710471953 779952122 338578309 873051618 932384638 797047775 415042932 665869331 952755736 963645901 888723676 761319975 443599818 290163128 719709918 546031847 60808318 600706275 569024575 557039989 60391034 669508560 167973454 884722956 546456688 323105435 746344891 246284292 69234835 685359120 673051778 149355320 397414941 784567824 661223029 286488417 591645263 199853620 461818595 427269745 779890909 840155531 749842507 482224516 684111801 784468402 492629967 98123972 596196497 25909120 152470720 343832172 738362713 518380021 539141595 978021325 450454411 775608556 494603034 642350348 682798587 514592396 781490352 677368833 374413821 897784635 533393386 960472536 252421696 956540412 626194531 910825284 134653748 439272091 254020907 114776910 546292867 173264044 491511646 253814390 958901071 128929238 923901712 898412625 200280182 906599580 293214011 73357096 507090959 953813716 649114785 27636753 941968404 374471736 701915073 453825349 737636978 993476843 411442885 392235877 568676166 648328177 16706009 740193568 95266603 79460177 193043690 501937398 768335831 810806335 452027151 526516619 587092588 540951567 844253165 99419818 263555350 128067394 795165746 166453918 347811145 257576008 958013670 559283939 778082775 527885821 738193616 753143935 782805281 775051071 901621500 470339201 926574592 939678314 288489794 558777318 50601904 230971702 494302941 36985592 850339940 626204927 743547604 615983941 982389121 102326639 523334605 724426165 282323842 51573155 814845903 71883495 993645860 389782710 460741856 362221252 575976744 444775220 235584206 717482029 57250582 296130381 792709738 978185955 131825115 968920863 450704532 570291860 138120918 592009113 561990746 811180956 726392725 117374159 575141167 443822194 993038691 219695477 572252019 284702895 409201275 147117506 877856168 622490007 2579543 387197206 997364601 277637897 563845491 5783243 150415076 204893075 242223570 202659100 952396665 546365396 1056181 975892903 736870979 886508954 216013673 837172293 838402234 886466849 363486755 788046961 538237819 152025212 84364073 559770605 191702713 463283655 251039576 629643736 471822751 162531760 699405084 385252706 17142478 80909695 253884830 483627827 389862664 517664569 607099030 367980508 449817226 424038697 522301184 577100835 467858293 216732157 267198413 871461814 492900736 335584489 19626708 937310896 588721833 587123780 426506010 62475510 287480447 631006530 259634123 187564706 740788189 586726002 520358507 820404878 503857239 982212114 936773634 657146000 497723608 401619665 962086910 47010272 158383737 898292640 11792400 240697916 448685341 168173888 8624967 741225150 185309271 384667527 184315329 465042916 255432239 452728169 390583613 303254821 416087311 712915060 573907457 635909806 56910195 178502969 37455749 899245097 907604355 729666005 534011765 637559825 821842917 48746127 721482180 813302093 138904329 261485689 449783246 945460268 727756294 186651416 490778932 647415136 388939363 200756673 680196110 341305306 12569879 412302658 817614914 413890344 864548828 752198546 123451746 747825818 912948203 179079437 912651675 267034486 864179288 729156291 312061332 885207531 523888359 820838908 780010481 852896781 587887181 419917285 2705105 306858052 55981394 976258833 485559748 584929641 891022051 100635520 27260526 884848556 36185950 355465801 281997823 158241409 891363630 589927035 435687462 762131746 7092891 446073615 449146696 442733890 647827180 208241160 499236996 379686804 356558018 37799869 101480547 774456931 145140942 166605932 547056840 490492039 506525861 3191694 131996008 94109805 891538756 333438344 513689249 491707884 268884494 15615933 205751845 510671489 614494052 982442621 836118427 754516310 296575012 2430760 567602041 909141952 313825556 557715888 360880237 753151014 410207761 746267919 290498717 631674496 470896147 655693995 503334859 756318769 495474757 559546403 327158327 242748686 195304934 899729496 216573864 229745763 669495575 473719511 151461012 801058265 386190896 412323857 116420550 330385027 992416270 769099045 297805852 616802610 899309924 411417859 186973181 179727907 432954478 468366388 972786812 885420672 658649387 554068448 859353836 186749062 887124621 575402545 94515037 683530331 220635374 677558696 220650738 240834694 371343462 811729008 919152710 762314591 394759954 183101380 947590968 420952476 863503288 827404247 184695581 410115279 355082566 810619139 34426321 732167789 818767167 62694369 449258938 974793378 163458802 709185924 33148234 944962786 463226013 969318592 434733701 795648964 619480373 353214955 643062996 25934436 656007612 133391511 125915595 987292602 316700315 531358860 487271603 663131469 232306639 770429344 154361080 969257623 125491991 903980386 20504037 740705859 460941064 86525269 882429341 359522487 830294682 665339219 41389622 782858842 420170255 234398345 417471593 774504746 733150125 173248609 721637611 348153892 247741037 342826972 837222751 317396134 738661404 953254823 415861764 344578340 941558485 394759363 759706104 818356614 381577063 928441933 973717008 344736651 699070406 376879304 383131706 108208619 72815928 56430029 132767604 657278179 885897716 811896272 260500653 564739770 297733325 706292894 271729279 83837956 535644680 736460798 267772743 544519747 315882649 423182422 112799199 309295757 871065803 83110496 183046305 72793282 700300980 250964389 974090244 967196076 268286583 466823220 434812425 448129117 213391083 192540698 609130536 789343316 624636180 738864800 29425648 788353481 350144990 765022019 851982199 531728557 896616867 119491703 557212862 319372658 205019420 139053417 670162913 248287876 372326030 633849803 725141218 908148129 144652887 161425857 274217077 26849007 440867548 935572339 850926839 280146051 839140400 185257746 245304798 837252848 926251881 338168343 933808920 611451282 970765443 966066592 600988992 769594329 960455177 775271921 313706862 59349050 876094939 356711384 518546946 782101483 377245129 235114902 78953617 680847630 615644221 521498722 519657699 973519644 704310103 26493642 962175929 643532772 408807885 16135196 19282342 475993154 1904127 762085 137801014 909921550 212016025 715038973 404239795 226256407 669948305 42018431 5004321 79197768 202798985 849171861 429453800 358646655 660021908 983390049 150993530 713477921 515388736 690636939 70816114 961916258 227708641 623787540 962102809 398244341 905318519 933138993 146838448 999352263 290579703 336613139 161102113 860397378 81721525 342874404 384265601 464714800 284430530 666584178 164378627 715565847 350049129 21942783 826201930 340122258 773407584 320200317 530662582 771359343 665933403 726653817 675136155 546992149 521089414 581103760 314609189 115605674 745619437 726572560 492871690 820249680 818791292 6478776 160175311 350568338 174202867 126406030 300004149 818972276 716422607 344902058 129002216 824690286 598071140 74838220 370878709 505402661 528082189 990043930 652711210 119685577 32680362 115348335 498056673 561534717 585813633 400817601 69317699 915317346 371582795 586650797 318831743 766396238 843109882 520553841 608317377 756442854 21483073 767225571 95133995 741872612 145029281 188375306 86657253 379493471 126442108 501499308 28555266 776088487 404700044 174117467 46277400 929580501 89791463 909170353 792362863 98322258 782837012 119975599 374289745 333770480 117122076 570836990 277689141 279937094 831944363 117381422 679813451 973116697 592700566 320615244 900829594 57519805 831168116 858820117 409356852 771777634 742904716 911341205 575671887 694751764 198776211 411072024 840237713 323042727 759341618 253544214 142520503 597437875 825847330 848034072 732423165 20038323 16645027 549021439 656359647 776044831 873412637 45451383 349061007 490197900 933419740 520109993 900340374 698584929 406549592 275413792 352587297 778406474 253973726 787864637 172448752 137664485 960184955 474599200 104871057 961917533 176446611 434145764 328152647 421991897 758093284 925058761 670026770 938750083 979968671 507137259 400048420 796758535 883649962 390339446 199089491 381157820 496671441 527715395 163781833 494055644 324782314 626058144 939789556 335742642 546776745 354552107 767029298 316247915 447093793 370185792 210202204 658183983 64875099 549827501 212274500 905291204 947738233 342900848 792503888 813572439 684057339 960069933 140517784 993693329 28952036 397053633 577545835 700175384 938647067 496738269 690794289 596047128 357663018 747242691 980636554 223855982 113416765 574825909 897909983 834316389 195414128 933816513 413878133 881691745 395070312 576519561 927366430 883731278 910549492 114210288 398231578 732182038 457065704 820874761 67062707 384286181 465108634 689944747 567187917 171775282 671730977 793895682 552131174 887554591 123250477 91095609 997897516 920701249 869016352 917404775 784668514 529175342 37555400 414291224 98969743 487756756 634190979 696035328 801680474 221232444 182994683 724878934 155590408 319454918 50363512 480787118 297089669 94750838 579013813 129526732 169558342 810077544 247115765 803478533 769801936 665844344 572098534 726866551 296232721 501944086 526273006 94106096 480041921 143839364 617543858 311495716 895347696 668243059 630859073 570146210 876550431 420964123 260897581 78446965 713733763 270257540 446220165 955963061 800751878 880892133 603718744 788716425 987549185 352003540 354668292 282778150 406128984 901600531 873744938 715313278 618304610 62113704 880502467 877676681 839971252 431301017 300950972 689427730 828844069 181595739 92067839 819772113 768761473 126320992 214817349 856261716 23307484 901664490 475796231 281345909 348297955 208676166 337713229 242297638 889361310 252018147 467384746 9753542 499240537 357036567 519070032 150029407 404132727 697184769 451436040 649752289 826545747 591434807 802833927 759492237 561997729 20637298 974582460 824421327 675724391 706260462 296021078 608361923 470865767 242554492 517211431 105959885 876096065 482784813 376517521 435218360 685570585 968976929 492151231 718201575 182241726 201643444 590347580 34193216 803467438 224065615 72690495 228355596 678647316 890714574 461083396 551227061 618415188 834306732 713484463 966473020 649715318 75248210 356993555 375949923 877114243 588460384 620221291 390381184 331417341 731124562 898480397 265032020 318842879 184439519 619689863 882407290 758116315 283216503 551492706 195079428 41790201 102863809 363154195 707343704 898589689 451562341 162704633 499861959 431984638 95527178 905635272 61885301 120595236 964841927 150967069 233337588 106916747 458473689 222211870 81296090 337314177 288039631 81852197 503972307 87794918 585982400 931065764 812362823 915786178 901698178 138884901 585482882 453165943 31418528 205863230 890334902 422844435 439232069 553878980 64076727 172369630 14392698 884101127 349713210 674896147 502941065 795591037 482199032 13678800 799702663 539946390 216439436 78684826 923648272 70201143 135536531 735820504 910305486 614741823 279317253 971856132 194136418 30042681 293235462 488454338 655182992 490567731 610225097 61816439 124615297 123564915 16457541 504699532 869573935 626064706 230854210 410140855 200423952 482385792 504472126 148667179 648872382 235770861 54698305 788034941 467390133 758864023 656745029 873384080 909463462 292455216 862190160 43092261 180154409 337795284 305958319 356551637 966125814 174816151 293648212 404331274 278251820 826640139 491827677 382944601 557845038 266777579 989619678 84404284 208150894 155085587 394604864 924905999 995459735 358492871 827243205 147238030 298838841 164647352 43152252 168543979 827154123 394470913 611891838 211256199 288072 969032381 120486832 151466138 553271011 328664189 54607342 144465563 637351836 730768963 313732466 989315335 606932320 857192103 51154940 559983097 363885395 477771111 286128012 853026241 675886090 170912001 62798046 28919704 284101381 989532699 820287498 796454171 295826638 692560566 491325122 727878144 972698362 254577729 37895711 800638227 908508166 575450378 372853097 262355023 794677525 761828471 652856112 43708062 113333819 95070988 814423107 711698997 121555797 587095845 715785777 488136278 536667042 313524996 143275386 788352793 270625512 887501114 142063407 253431997 41629339 120883959 817405553 642629315 519946007 612030035 271558597 547440686 583162219 624776608 21684796 467801172 364974947 89914067 589717264 872282299 710865019 498311763 549622063 470967279 501498855 385115441 273087156 840655775 984243883 865734426 5745279 11725635 187860992 253822441 247095008 511911069 831540373 63294407 319732148 516090261 229683063 290460131 197574797 406239585 14460511 590669862 327887659 313944550 401028101 171947417 613501753 504043122 480180023 925044062 370581045 655662417 565295540 172650663 197309210 457218510 648376935 169289202 698605810 317444271 291263262 463028931 882065553 137782316 255364263 995556441 660970778 618954336 101681551 866664555 426837911 748138106 756625532 587594295 351287388 249941274 524702777 559691654 947358344 416738158 76731174 226931706 673725694 387856235 663056769 348651369 149999102 451019480 711837631 996061842 128200054 867280431 488983346 898269774 426745927 694808992 154632260 903520245 846896666 206839811 595759236 396959813 303378074 871629645 334240684 365442917 432562616 28723097 287362589 239234615 944768178 994350607 965243400 382603982 752452036 939384594 12042413 478326668 655720735 881902365 359711562 274210213 263301640 452254363 441169115 697057383 287777731 287541165 686915585 503018958 6338352 754978829 10788190 915892570 512353762 224569080 472399693 748100069 908574098 592508350 985466263 553647933 486950183 366227187 256519897 284227768 714943139 868188124 879098479 939874967 814973723 617558798 811340110 771954643 471479669 705287461 669606854 854742828 402269089 427455331 970102200 753313267 224915063 430099485 400273036 447530521 218390613 738876720 66109176 729236592 992313848 366885974 801003184 906320770 877863591 121450442 205835268 459359894 887481313 857951733 376756325 282355752 717803709 689602886 287518820 288348267 231552844 101041174 110983101 373383730 644136621 249306819 62495581 487817748 402322541 973846025 438776998 518932481 456142580 176008337 189701108 913625985 541893362 641494741 667419575 324364828 33779820 521188321 280218141 66759258 551589863 670201167 292734209 317971585 968217399 815917467 681086445 170076941 251057658 277878906 603623061 646550700 125567569 31023870 34716297 494030228 381454794 435108597 340586128 732374206 332359120 423177435 638888509 241341282 453650541 390206916 790823265 224304359 457426086 70883236 519698921 24362372 191013581 390007059 395538988 595361143 61530877 725426087 976509563 543734316 398036685 630145347 650192361 463601674 274145047 212008072 327963523 5501084 439673412 487888197 837617965 854061777 409449798 329914975 763425535 723728053 808621586 562225774 29263673 577429187 222797446 992981012 732180567 855289883 53879872 520333407 835052089 770802554 512282302 289625811 586170549 191510944 287661963 596537523 907419007 574582776 402253344 74248406 251153763 919418453 872570265 138702613 964240337 292933823 338055215 757999592 820552708 481512401 433357535 825499752 891721265 16438316 934657573 277277003 888549529 113537534 775251569 193554928 600039999 161714386 283115052 598061016 523659095 663755250 154668423 900852286 644636309 378083691 609832137 985243519 463662635 338058319 650763060 761761751 611283648 680979384 314113499 300400159 225111341 485730720 337492909 609754563 988314069 838009808 295692360 871847595 771219437 574332183 315707721 371798214 685176871 510497934 783452384 401623500 799010753 200854321 296392003 322568120 90645124 458533750 774114602 55270009 840503852 128157061 220470302 639573136 571030858 703205222 892608888 513405441 663867102 48755286 597142862 571328071 351205372 808719742 475981455 931132596 87183656 881784627 905169492 385390669 749811342 323387824 188529990 69175416 251729763 381103401 10694062 110409309 714224084 314686824 8494316 594525940 784821472 433247299 503850079 7057558 827911403 209601592 74836556 293448188 345076571 181110734 11087989 55127857 582224032 609942198 980242600 354171211 13117395 103986739 410429074 378975224 210017122 750996845 576257265 641590084 972964285 420376019 438813763 424639930 980177736 364445512 624441409 902973131 1616658 210175796 943794654 692794902 532323339 748012678 255315470 735458791 370602395 2046766 203852894 269474945 973675611 419854289 861956602 738266408 837535900 983602247 139835301 387327595 39169297 841947461 496442393 468309906 168177292 493690755 496981847 617322035 966141668 19529037 811740071 390823312 991168258 49647172 528312316 684038569 448761767 760675763 555797347 210109646 748172915 15259046 787473532 597237987 732687048 440652581 866000950 979507178 935503123 696013476 272157230 727408910 288439608 693285889 631985254 254403349 114106286 223490587 764370487 601060059 927726012 488393503 904684605 481474436 450189347 365662414 782292494 982117963 252033791 399195235 948459887 609492282 70800184 662020644 468719401 771061356 413392800 42223130 609222659 38587238 422830125 812890089 783265407 603385281 327202964 295224598 530983297 586258467 370831450 503041118 526290770 178257028 888448041 386863295 142890021 183077499 712561582 871690595 578444113 636617115 433550640 927199942 136988197 308055770 855014058 599188846 791053854 914851667 89676051 814641280 175182612 123742426 271626672 44955882 575768601 917608885 633406179 702978139 216948227 951444725 757019306 111631949 257571479 834893472 126580917 725215028 992206013 307185755 366870117 780227703 537054141 623782568 718815654 945372428 201332196 121054497 917034731 151056686 204876871 522818293 471122180 769475823 644817065 547539213 33851643 738265562 947653558 520557859 706483298 121792751 729806023 746028841 676523618 803605375 225646546 909627729 175042746 348423490 273520149 457940362 112615537 732250363 934958173 509496910 469795359 97787853 993326368 725114747 814942284 491366914 808362538 617287587 975237347 793606536 280976700 53403887 382954615 204321602 934427390 240032646 774896981 792895720 603979162 903423780 632785199 313219163 635840609 579439139 638219318 403091381 909751285 712041116 304616693 667351585 949937021 528596913 248788484 529226769 729094114 157782775 643479286 32027401 75536884 582478052 491474517 177053095 913393427 244872839 1271327 656617344 291199445 298115796 856305752 320141916 539629816 100497066 166051186 916979292 324180798 98692281 680324814 270076563 467418801 533100606 8892053 444671883 358145400 346602523 117101742 754662998 113953012 125349391 427540843 683594941 280315333 801012701 933173257 206007184 679549857 309287698 499333319 150052666 823157425 124265452 556785476 501000979 102539179 438174382 112259954 758495139 621471950 163939066 263542172 21966340 324745167 872426729 318046629 960858933 601400978 67214348 798547992 904491376 683905323 760732585 943141829 518108380 860624089 828587261 522664280 70577237 996413942 628534498 154250121 71335984 542922680 266640841 507993130 199526502 84821411 336432756 351913228 106275163 402341509 372832653 240530575 63859380 558501834 125732762 8797675 900390105 582622321 880880667 687226165 4616705 98802916 651230092 558833536 909788357 897941434 612073056 734616904 123408590 897916894 707512308 198591892 572895827 52664121 181738523 933267313 351576600 267645438 48532431 993171991 67489529 668658951 871822355 156977394 238901002 179547953 254304037 473835745 787270105 628495012 569291600 778323733 695243456 203408196 883603302 761087877 919070055 283530562 929851344 27593708 246205243 5280638 421632537 761536523 183776530 936296348 956412391 598936537 586842022 768043057 166878449 740768087 329007974 452087781 710600218 902639724 988677342 496507513 211745421 920144518 628512573 103604842 263156577 716379301 800106245 711998551 178211682 536708359 396534491 658381340 338892865 436613993 731045170 978025872 802452860 606502265 416689530 335721769 775720629 80752348 162046632 405916373 427132210 227064656 266831154 768427344 587704993 2220245 103157011 348047499 765315091 303994233 227149456 902138014 198772072 967128665 841507004 895015982 485365287 302247447 306530288 719582138 371242852 329716835 963412755 428366840 159452772 531343432 525624419 351886901 198109301 798874634 824126189 158574715 834314872 734980661 126750774 833515184 233261971 49470134 795629825 867123038 890572644 714508345 631522700 303715263 769781100 794757416 7093198 871209428 378830812 280879646 89341857 227428256 291419077 913325310 849228180 715242809 502544083 701326476 704628826 64208396 288161222 680300727 9522028 684053651 992462750 33046388 174881028 192353326 647953697 846957067 57787287 226311428 384792898 881579974 499114146 35529489 108920909 69986045 920719440 851745299 347984716 880933589 144944355 621682043 485288752 427925671 41607634 372630527 91333333 314619291 715890315 242690241 383502914 248865488 594865168 704196592 566265543 956666298 847887097 305904652 807911324 712921309 784041650 698662125 170399441 95776424 950385712 341214470 85237092 722233705 680333574 688151992 745555648 970312964 833897175 379858220 174585978 834842922 113054983 208882803 101426815 476113436 189427087 109426501 671053953 229145187 857481702 669135799 301703900 121115870 367450969 372025100 886020494 16898028 829940141 319796860 192950202 323460842 419658915 695372186 337685757 875107592 449505202 99001049 522665007 886117194 634404964 494251308 663838800 524891082 565962265 552720600 51772393 648510107 700255842 759731339 577527754 356788022 525117960 849149962 97087299 693131951 771100353 997062147 132251680 584228737 249231378 608193727 860615774 872133711 145755256 116113031 31047734 59632080 824557948 616281284 934617153 106424607 86151601 499111924 762030618 34027170 329788809 657146212 389209125 249858878 576286435 490179042 838602847 757935421 450304396 576249467 89529272 442447528 232522220 996539624 5065413 30837693 550169040 893019712 460475498 755421470 371611855 873479984 43405485 636305438 446108013 365134091 861777328 965395784 426053553 374613121 737344387 8857809 158124260 796958401 905647955 524676643 990413069 993081201 609229230 966195877 328736595 437836318 497290476 247569787 368110260 742705605 656112809 770327935 549849702 2528508 645556415 837872083 446272807 990635741 985594024 226272390 197572653 884869221 403267012 57378438 251397123 829385441 183717540 212963286 25344761 632767438 40764687 300466716 216338349 16312630 888448610 152704790 329073348 851959341 734062177 866455469 611829413 480661136 504636284 385039416 98498866 661683896 104466284 676011345 860996531 738809726 355379233 155381008 917410867 305589366 892547034 610817567 192914439 625476208 526938236 88915389 105744031 28810467 608543695 228350238 328993768 331192318 8155361 322602725 731481344 958876107 334031119 550826708 856723212 929529013 674532211 735795440 954126338 957868857 185968708 404757720 707796733 237037071 779249867 581960712 779944128 5977699 500444850 865278663 272770129 688451271 947844855 399381901 66896168 568320685 951627527 627979960 135330837 681294647 681835766 23445954 55780082 462095572 566657813 47737397 520900035 39058915 608892426 569022036 886050200 718789963 743293773 171202796 188823357 681787488 485577687 492427679 510299804 471041934 201830103 530096373 896587683 725020094 192439592 598715732 723310259 193547819 248864850 290050037 638483524 169446398 557154243 564759061 729677170 211740952 588378943 940979452 230706648 749770158 436071671 372420791 825756521 792608701 305911523 639729603 143267166 723046207 519169377 129569662 65998539 534979055 979732933 852446907 378096836 762438669 505161916 16623334 171632808 608298561 384666197 837803916 886661810 791708747 122932912 589738274 776525949 72645442 786842914 384448104 706383340 222977924 401280575 448800071 378622139 433931512 374465483 172877895 404212296 569914273 684804191 857941178 510843186 695220834 98615771 13969708 341100117 977271034 631344327 782949556 782177506 711620605 856366328 192679458 243040129 269107022 905712929 53128270 940340343 146672289 410455539 685215107 698900873 554969354 638075716 612596095 890474524 473967733 839964 267765197 913145000 138882623 47259773 736993283 31631967 315044215 660404256 747436124 135290258 953337405 234478595 620432263 902741936 995148036 826373812 425187278 967683036 16711348 890305168 586423647 880158787 945512922 792182231 317120963 606063459 344351444 802489284 42968927 728703108 849830051 413177265 988430896 43350837 987424569 795138593 653366686 311763829 616921916 872170599 74504880 44005372 388750848 803285232 887752143 727903699 611866225 702605540 487187917 501590727 406337832 108028897 767658941 499248418 512668821 361686013 407409513 241334570 2427144 377130683 724327760 717267912 132915790 29695681 293012617 446714467 299794227 103701455 938554056 2651681 594836663 463213994 96403369 227746336 462783377 616882308 891122356 338346699 449077194 235750811 656814249 153592299 234013267 642608456 852153947 489624941 264804772 165507837 48082135 687600537 399569500 931936299 13592064 557406611 404088853 130607901 606812009 347958459 961654768 531028176 219193649 766492411 429883947 317536991 264139885 461967578 494104460 45704471 844148822 359604840 265247250 388151356 733272781 813804017 165471608 445521860 250008670 861633447 145668527 78475935 962403667 903090406 363521212 229172376 99012169 146649945 816943722 738251561 870088653 151559305 301725424 272789395 873551993 822003709 928588898 994709389 951722626 464913176 596132168 577564487 598881413 938398389 364192467 449742440 586516239 498824695 327939986 652379890 549835067 737167028 260863292 309396258 700175827 351754474 689110401 456310547 249929446 862952591 281601394 395146710 407131906 204344129 681099272 186227527 381065264 582503844 994238453 123293228 507854751 44671035 446648427 125498275 104497065 606932836 863031295 149353480 608487399 290400308 449641890 473847226 886785580 904844450 442572669 757644410 671754012 747622762 623652328 878670741 574527083 985971643 755838694 704678899 326102602 129646541 939678123 787336900 103735627 382325795 927066664 810702035 641021481 393338474 734971130 603538545 324692087 616174214 83658674 351020509 259825753 909384076 518409915 123138083 215037399 351304760 547725447 606950392 529450649 840321675 600038892 334659689 285748852 765991028 340281158 981833399 108451477 709081361 610509218 363040664 11805430 834664414 63164992 189753808 365333602 660715421 797406916 483954813 663173063 782972079 688546642 702726424 532095606 944547355 593756218 210178908 16586401 55996223 366326298 474755991 313601756 57484512 383102667 383497808 146798028 304955111 787477648 554296412 149294641 863449738 57402903 10689801 760401687 707759843 193364058 97683890 714334020 577168150 896800901 309124741 681784402 639568355 225342615 260681807 865950661 152981015 36488708 781934713 265497863 428007875 621146361 682052466 542159147 200016815 609101355 881968332 766733093 340534802 124683368 549199789 868178207 52079223 956222311 648523479 354053092 767034951 684485725 300677197 839381976 520791779 993190389 880239335 750316551 57181233 592927826 46239314 464709742 223482026 56624062 543172798 5969336 832030072 300737484 107094936 105249542 74021371 258325245 405169960 638748845 921861867 392050910 768447331 187449248 994654070 183616796 460592132 171916747 701965816 53208274 501756973 620170225 721186167 381319367 410375627 936161612 295197967 60931559 857469832 541352106 485044299 791335547 101795186 137950503 946480153 446327475 778326708 752036328 311950910 101022835 591410601 187249644 687700278 218498558 428843246 169703339 318077348 874428294 736700476 10321248 888949998 982650253 998660843 585597927 310808434 137821988 768042410 627891149 887400296 856641298 85006974 634815490 547127950 19101720 216603116 723535895 413922134 16964165 740406752 607464890 23818025 637587124 430089985 880282144 600381495 896708829 178316726 617383 385752569 344529669 987118477 15139808 462031176 797770012 660676257 465245782 25083910 240058986 520544625 351843103 800320014 694141219 902785969 668305415 55357217 481017308 444732393 631949120 359166104 310997354 859944984 17844005 913061829 873562221 71389731 939596333 213973384 620659307 204364255 826018575 246713412 322968379 796764462 746235153 811759799 766125837 984290279 591092092 629757867 683377608 348287304 45948802 797736696 771994460 132347842 317233035 197790403 757036438 9399442 129871019 886650604 694531207 951480398 489011537 549150208 444399939 122380494 659645045 500177028 484724609 150640664 833870110 791414626 64423475 149570109 595187105 202055525 38137813 705886314 799847723 950676547 145044968 786932675 723940408 492506085 522282879 150627804 745169006 31296980 303663396 733092667 81408529 688602272 671414877 348513102 925666471 256070949 386512740 590452298 803323769 131383278 382205045 443538485 417723359 855095799 387269786 724582307 82848498 45568432 795001322 874736292 622736900 763582918 291312216 456845351 549188686 505954140 963683613 625437836 893725410 662140276 236986487 769443403 3420416 660150956 433425435 136255929 747386637 798462927 466268958 77663661 324798510 82563236 243993349 211953935 376239231 905845562 558162247 455676685 548379579 109022801 202305845 85774570 155429543 734582192 437030116 14242371 848099823 2996616 407248735 51717306 571104045 929806922 975913552 949818554 290867990 786055273 437831178 864439636 820664445 573382140 138978238 400107651 345384056 904005343 228333094 771700386 872491942 261239603 574474317 154525901 608251196 422016410 754193624 326670543 144131679 997582464 724941362 872955544 428207729 476994328 382901635 370565638 880132688 411881176 343182859 871520180 841650709 18897206 174736106 360623814 470567936 676935579 297860497 567511793 814026478 954540792 871760895 558220844 321009792 344745115 173700514 243834381 627754708 186605678 203434564 93369183 765500274 80041699 330382395 335771039 944137144 274190785 164831427 390294854 862753146 499969236 14824347 932423148 282262456 108444733 108828300 962832523 215526996 639190738 736921879 956431165 947185746 401901230 219728944 43800081 280427079 760564829 880972742 340600432 534819339 608018282 749135512 904617021 226080818 22421076 897283180 743140542 953803887 809753106 802577361 818392366 953257791 18415919 385226828 477116622 872918468 817424409 827007881 593410301 933788336 143829452 64620689 504266040 920377359 669842391 394379214 35100439 229929804 724692393 81591883 439184403 659176475 602300403 253123078 575231828 967622741 156612917 931165350 722277930 666502334 435781633 609568160 601065209 685260787 859167571 488884852 86702240 228970309 947426797 391019147 720267122 98821721 802033221 568806237 204188554 303135721 270817504 200907549 890834668 544841956 17924448 363873911 49517751 512157631 59779048 757392948 413361841 526492807 7322518 241608288 607336522 871356625 515485887 916249167 634478904 302885501 392266694 102402881 587202407 456522546 88446959 196153606 826758729 498859541 70238736 715244661 308692882 70277722 357235547 115824804 204870320 602331491 1670174 429367381 42259096 728750745 884885500 298690425 289951972 53823569 149700000 241315488 475893779 302346430 198259812 963376804 587109260 358367627 563370751 723926318 269681050 792824356 932793792 90070483 666103123 454608556 73543788 285771283 618540331 196653838 233785842 195380634 63474744 33557721 360650619 758666503 104142990 706420968 736853513 649747210 682651984 748541613 870118077 539731943 557544003 679470720 165408747 877595669 547420684 742416748 499747574 37460931 268667141 758367738 488589910 27735767 480712723 108428689 291271051 243265169 256048578 54094523 526887130 398687472 763451105 427543841 479115467 723378563 349593511 402627883 706899665 485495713 366269963 570631360 681500333 63150016 142744274 291813730 655132084 765050570 519028680 993751712 151427720 542699182 947431064 861408333 614387102 239278259 553978249 374151401 385333208 334832513 647271211 179895289 510555488 454000841 513755107 718637728 135765943 544598716 558207873 30080307 935626207 15740008 164268204 876711551 133617452 655014954 151816324 922714297 203033508 513851038 876288977 889962826 550370237 620648766 855162306 339030820 963432938 139542205 797229641 981742259 288454646 531942158 818965203 810430165 664315387 349542098 676002164 190362827 860033684 980651058 890755194 972772660 150633503 170448589 182959475 767320060 126354525 919719833 72026560 484286509 138831445 858310175 181919789 453847062 40586035 962904801 167616648 103500452 241642375 853025343 914994976 281099490 418295535 529948191 137945701 761272116 823593137 677061535 845715804 443569143 980436550 309855085 889242120 893294562 791530047 521132024 770265527 603876040 943706775 2608794 245345683 858412244 113236128 172257613 169121196 299095778 384448792 881672480 360549848 252814264 923333481 810221308 287509888 802795624 273517821 344089300 399686007 131214854 748408976 511335607 944937126 616487428 271863002 240674794 167795531 129041370 970340428 606820725 209628454 148340541 832713755 116317589 252629816 905661999 815473431 57086275 576543737 801656260 471927447 634903346 970307201 845391559 862633763 286837852 94464797 145451772 149079260 635626230 751165068 118207321 960834721 581402248 516715203 324038905 479359803 705472380 32560836 616463492 888508217 21588177 297132313 658436400 676935207 875547567 417747022 871903065 361513590 411565406 659289915 835268972 786851614 73173260 674505926 98085467 677656339 566875091 311996218 315599621 733689314 400391897 43652335 179532622 543109866 822828098 513701358 167504365 829256286 728564106 651971809 493406569 88085115 119679319 850581273 412665860 321520164 835899606 242068878 586705339 966760018 884278109 787439215 543588562 734169950 589292185 74314900 270048685 445523126 499370675 788095491 561922081 541358455 503715480 30515803 816165558 477659924 720458215 566213109 421795381 10434321 712465257 263583627 123439611 363773828 387093565 111808170 830301641 679266383 190671169 703827404 933547415 830994312 749741919 435240839 618465880 235286553 212613298 960204716 480547070 767141044 266849049 868545837 567465000 125196146 12277142 390318177 820768613 693917072 244136410 841353499 252291620 647481883 215623309 327150475 323362389 51806627 610584999 376029960 580273055 11535865 753032113 11704368 761987556 518644487 533967424 353165635 583916121 369639434 847074948 820262206 247608396 707985586 608790881 600380612 446609742 763288503 136800181 463272806 901066640 359375071 616422001 682554968 572179037 790293690 723573607 607194444 336778944 111721333 157059304 676339894 174205682 81269881 578183049 995532666 173837232 141032241 345940866 250750136 255687063 538512096 171284088 962299947 470920258 171676739 483453901 495946247 114802262 74787862 84424604 818973761 862447189 104828834 826537319 424519702 10561498 717985201 420178599 642507868 245792326 179133939 256756031 884956508 780214171 120859305 88401452 25371168 875891297 129179878 704341697 324109752 252609252 806452627 446941333 754197790 987215408 786328913 301082602 596171586 436600603 674116115 706295210 650219664 68455904 83676620 944394610 846462514 232298420 782536318 271952701 992291278 685211739 628466881 18986996 636470304 405155996 844011814 761205020 556580379 313665103 360202177 148993115 606392953 839543883 205662203 642808782 143588358 337211893 836564370 959302629 899487987 632903264 751071335 198230642 485514989 530564066 265116528 407609447 808020510 700145496 484173574 11585619 459407157 411366186 967364401 901654684 286586651 485532604 991117607 478737347 774416040 274282705 524026197 826182666 951976029 247873496 232881991 381705525 383573955 441464629 988313480 335881274 976150049 197934211 923894411 948935248 513114807 45458986 94831545 607096431 368805498 186252574 347528679 901096900 936188360 563025886 498049398 805361123 416974063 214405450 31888836 502586447 268351860 156418455 516248731 187685406 805445061 275635166 29786326 270763424 609706964 350099741 204170198 805254897 988093561 617554840 43170457 159698569 644335392 732287361 523588485 450405919 446992172 618998179 896391165 641812306 940235852 470040861 777027328 696657633 789259380 987818048 359876334 348406235 11370071 52406948 625707694 571411523 973339021 624727879 384016694 968761134 585539479 370294200 906465070 674920494 212108939 281213682 508814663 881181870 42288059 82235702 764072557 682089425 542535676 94426750 451293040 979604883 749444456 180642767 564760742 455896987 643707850 913385954 294931121 516967785 926376090 379916207 74793975 262455019 750338983 574074427 839454654 961112469 728194028 899594485 891426157 581017397 591921676 598415603 174072793 360084146 149409372 491380768 394032560 581871461 914667608 804848199 585080131 746694875 679629783 734731205 227954279 359591576 563242662 745282770 820595364 154196494 401378248 755937002 351495956 388943718 944538217 712111136 916985238 148755273 426364027 531195206 931793315 893646429 545552740 500881003 980235760 746813674 416323813 862888531 747942081 863530910 239144383 759124323 158056258 44058716 803502856 249541196 162615837 645756042 883634654 217806299 389197858 440880467 249804140 237819127 339222555 303225348 5899924 547499876 788790011 430564857 661712319 261339604 715987333 364788163 118100437 264038904 794229231 25455101 552603444 446975528 782717369 948259222 441424000 637282219 898742326 972402271 151821181 794906059 790011869 23457827 979782067 519244333 978840090 358167630 867929713 396328930 633880674 966182544 996579052 183671641 540173716 940359864 764750273 246024142 28535698 759809414 341831978 844181001 334497972 650713549 155029570 225899022 56199439 103786488 936622281 343456314 394631272 901488471 601708573 348234130 55100087 468315888 12430716 426343652 869929583 739229271 81633484 493635435 431377384 620943841 44202949 470734609 760559137 411723012 336524233 970373431 305124819 758785636 4274939 291245999 78311390 218426527 539290584 785598872 924082297 56360798 317323703 424681233 965571730 49439756 599307361 627424723 820797940 10429872 4319904 827418877 340763229 273320343 640664115 644818320 760371139 313685403 829699195 464644834 683330424 13959759 381891629 491555906 967924495 480004468 662903880 295993383 805337896 305879613 751933519 840628290 255459320 778613325 886415755 818061715 344600698 706526444 566557092 72253225 626742273 293728361 956581476 755783930 70766878 491087308 466709887 863032833 323333574 548004476 871019169 181394797 183517223 438635543 513029577 582308907 184020374 670537556 358751728 493671529 41265021 996003184 265032859 836510158 372518084 807669777 420069072 101842405 348945530 142803197 5131992 709433433 212222698 309698504 617616329 455759486 321709565 83374304 372636228 219338756 300884635 579997184 282058520 638544257 153157021 880531877 444373798 414332735 622829355 751589958 125398607 528166327 113480982 185311780 474981463 450455517 952498543 197377834 970144381 926442493 509301949 295800644 414040590 74538400 307925655 70838484 556212109 277048978 793717477 809681217 268246938 49887215 19091578 689168183 981161827 286139005 165062688 463610145 268869502 562674761 611493363 862101951 51545365 720670173 368123423 426657385 448092294 654438622 822046494 650264455 257183982 687403622 989814099 824618708 614210345 950042592 398454424 227621670 115607866 607851930 604471612 564300711 434922952 648816952 98810131 363246338 194134399 375142925 409593616 35568959 55120651 316330121 307532431 305658896 414850025 463648572 26366 372350589 91989802 227877900 106292572 116040913 940806709 493741749 995882113 22765724 90833149 600366049 150931900 978328969 715839492 262269668 827086718 703675374 744424727 667072082 951014634 563916914 124052916 102537518 45963754 443008348 757036202 134384494 54473053 697946249 582847574 243902669 335596606 274312975 167707563 12348084 135000552 608763336 692717600 350857219 393756181 183834470 667785850 902148269 570490082 966899194 498367568 632096212 613243920 660525467 198372917 657952005 238906046 26807233 999354836 757013111 958784703 920742225 68852003 678015528 482878294 741985602 687689956 891243827 346607641 558887704 644663342 895601183 348959230 327925524 941757256 879737750 793463596 175140302 621885040 554100620 470949671 156231900 300836821 681706135 524975397 169272300 934681998 443461333 514543206 351655030 602502596 994060727 714573191 27285406 765876204 266141277 555775469 382873391 250680644 299614056 350441156 697520595 706026847 304012348 910902758 456163192 644507487 113923428 503769391 394832595 166520111 653541200 210476064 550384240 694054582 819564679 369110020 533577173 402583613 345927427 403896449 711822783 367631523 401911290 739381587 326496983 917985636 897030976 497482433 490389163 51084799 82472380 673232886 714056910 141006574 901852942 114478720 843950847 403168308 378815 356248069 94011755 555209058 53311797 17215517 502056374 791173495 658712652 107543796 350373203 485118328 771139855 852611861 769744410 920767415 442391425 759075506 283667840 189500166 792848786 581015572 422630222 874598237 365334701 846242557 735312090 214016474 221952315 244292576 686610514 371882005 980121154 494380369 329118705 297196780 815310305 712672895 342804409 766750296 912645785 218798936 480759986 578522387 507365682 655037253 310906059 458090174 87118272 389828185 50499436 51118078 318268833 239487245 281240725 23352558 751591514 556145314 781090362 119746783 89001555 56552674 145926940 52504484 137991589 247140101 19185727 753078205 448002306 751226316 887431065 224152764 102568808 65827352 639360096 294984375 931814667 662998568 649420735 285917105 394389066 419451819 785844247 23505337 351104017 41033050 464377025 237694426 325182286 449046966 895068002 576603060 176269292 850199164 321699685 275204628 746763796 214839749 826069378 621967608 721358396 742924590 704136536 719932976 311655927 290556779 614094900 872064773 623942787 570079107 846789293 744452582 757299033 154336232 853234551 383387597 537544602 865283417 892443448 319223637 976465292 268807307 8030802 810817103 708735006 734003285 4402539 414478010 748987321 657845294 48329382 113169336 995377510 678567859 594113711 59232828 240164839 613198772 892656297 568476251 714293498 966501076 522393370 613355162 204316317 967050304 295337913 306188654 663963824 539644121 920550446 662766462 760468517 254485204 171827254 521063958 915110822 481622060 187840696 106031185 505089908 8958142 539216979 263170673 657311263 827354628 318014504 142143519 794132519 160807719 415617064 546009477 482583539 90137259 805867607 388105220 759257491 595513809 267550152 123905077 424574716 888100763 273809219 64518049 281288690 48622875 972242869 63006797 133816651 627573701 108166380 650773629 211706004 177045845 236315236 291042358 342681320 199813199 841730059 441221260 31253123 555552090 234119894 975959487 605055926 145620950 774847783 100606900 416382117 35227339 551352830 165971676 898001319 820068228 323816189 750645338 845352462 256887115 260192044 504553220 732920376 964148991 277326534 443693740 919764696 389278320 389703390 242135141 743149904 480819778 365689419 660142907 432434057 559762679 932364256 49816447 698544206 384717290 111209428 850953615 431142727 200470150 195939316 470557536 710878348 907938209 648289349 949285029 829303358 84635433 476418811 807701460 821955684 643768423 455971598 960577272 220200222 139278538 380197714 150392543 397840373 603925159 319242468 840435456 17767757 885539325 874031800 424636174 286318794 180519173 435905243 927993008 836981581 983139220 32004142 214722076 630165996 957222824 260424816 935972616 470581877 265275487 888223386 910877064 82222972 821965545 430887873 772324951 729648011 383729373 888035412 224077450 147980486 648516121 148526933 736144232 57527708 856796487 972387060 500308472 808215328 773950852 54007255 609501627 334738815 290599728 364406343 753002217 398489469 565500487 631984413 477946598 461418209 959771939 802156401 647507320 903431821 408260315 251724750 423621884 844150416 440777495 835931413 26135837 721374747 337152685 496760275 502114293 626327701 99750049 972065535 84723696 108849256 812278756 164399716 873480485 820068538 42281849 821144277 992546204 984872178 391429347 765101653 504769224 675224164 952637234 484721148 454417501 340791201 853485220 208746490 876188521 750737191 111733916 888538776 389923860 396188331 790292678 65017299 341969575 143640388 917382330 780654503 3862895 131733119 85103642 336206690 72403104 320849247 596787721 298430759 585925746 962621175 82062523 703734568 202811673 864348429 676569786 132281412 792810321 638237386 939988998 779692564 500060658 780653917 263111839 924521098 352395893 489416409 251897663 118747854 792537083 519189895 207688612 283962353 202311036 772021072 677687657 745424516 646027924 429260306 168365225 891232922 844056519 88896350 665743005 92287398 306089005 116514347 520277507 235311326 730135098 932108377 544771848 682444511 478234810 278633855 996394418 829704560 802549430 523394667 37792808 841546745 8503906 318166398 687639993 722583779 552134154 357812415 976906358 364978055 571758631 81014292 422315860 816850344 81797410 448376323 749399187 179772300 125681264 369608396 700215163 872404028 54768848 628822172 746015781 490471029 855155271 77148489 697749793 410277839 268797672 198250443 414231439 600819445 505504470 900906846 840862208 806907105 922702228 506146279 681016785 755443197 72333845 833069397 463521668 480897691 925580347 594084468 615905474 860360633 567828247 244803806 40811579 787492149 429764717 489005482 3233434 92179352 203683898 45764463 810095394 284368453 112308403 113766677 517062639 369196701 670206530 140310314 405643918 143646387 3206413 325034307 31702458 735457696 584063340 649788766 771705500 959486706 644777378 671333950 405408638 417677269 350850786 94218795 41733823 141737854 22328888 791922987 485103263 835248572 121910525 938024086 94643771 187655768 126599612 179343386 976700042 110519371 817426159 559731836 319139514 634061544 104314041 858758447 346931258 741444811 665004923 587082849 75892689 294367709 17237833 145210593 444243497 79908978 254081224 920691924 470203120 826489374 712424297 918173421 894330122 923848754 128163247 9303138 370803425 993324762 295958757 68918684 175242600 355309372 179379578 725663229 673599732 535116900 101517741 673618459 429068428 602240000 717074283 660170439 117499302 208736855 70482595 54316201 305927699 841486270 983718286 954539514 459200511 219732174 77419866 488926354 515448126 210851020 645764131 104764977 288318783 308797167 612394500 195693965 965607876 633545604 309623914 903495491 563543887 447246241 471670595 903167301 964647965 339396512 970963682 466814004 672257448 40211151 750913195 901515938 946957222 606082814 420732581 443649196 997182784 53163485 754228520 514732507 551212635 623606085 724181195 565340289 969310071 491665628 335133102 704028999 993046302 49247490 561229326 700638337 365374028 367029643 78474990 398519298 21743036 826538502 242656906 224312045 483320769 376253911 621419067 1374236 666763566 188796728 216224318 750354808 716516381 189174373 235744846 329644285 638264253 984617458 112001402 425060888 221340769 987859959 78479603 828932414 108686857 347357126 665028706 760249249 42319920 430673516 975005857 129112680 897931463 892894225 340973388 779625303 720003698 549389826 755954161 586328733 285361495 525553511 547181304 362351533 902495748 173791916 128845237 43725658 488867112 533353949 903370839 104083398 683157346 224334041 411579737 84076111 905951193 48592429 557982435 283276879 910237367 619040480 47155362 200640527 525634837 520848769 640605456 186038915 605227253 271693982 494424765 220520478 189871058 475084429 993572576 975712030 571774819 578010896 867124944 418273149 115369078 422569257 892647346 944310303 206759451 302712281 775430166 570287849 758512259 622298541 566537624 829760558 901071744 452995745 348606495 886524904 801525440 161214588 461436494 490949732 401818947 112680973 838471767 488809648 202313059 580469531 746975287 187476408 891031950 682251101 957164158 305623435 487203804 193274617 932053520 271643336 760992909 244169361 486674298 233110812 339311869 624301183 731868068 530112312 972658358 232543878 574062251 967376180 777987119 78749034 75422753 788361008 195298809 324060966 989685377 72621381 167887601 168605738 598513866 56366331 921331817 242606319 430408513 224044659 980931522 761488754 640944179 749515622 533335323 959356949 268586027 146709411 781608491 625266000 831276833 199192300 499302508 785344192 825081578 119016391 237036668 238621759 851918200 556992581 810541463 204732942 527416064 966899395 50371336 773424015 332094595 295716574 547104613 646030355 173532491 425368453 702108972 567156876 712110247 739734302 374819630 223282386 55936931 977390277 941506496 143950255 291633051 50153523 196128143 586743886 892549177 771044319 95418947 979364618 528472437 86380948 345615581 603597001 394081362 757828841 233547127 971673735 276065998 230064135 224468953 19762725 549464065 31889543 483551294 56414736 521015048 703002449 420965042 167711793 320365153 518779509 607203501 355038787 34619998 289003946 977981910 886346915 557944686 833309131 127090890 597393694 909664874 815357186 752621626 120682076 707629126 937742454 197931403 58736555 901388862 175424916 794565348 902029718 956050744 696588189 613002401 489603505 405716520 508749648 584612229 561717928 421930985 966635834 504195585 990395295 883960423 851539875 690736038 495455698 936183927 943141957 198807121 747440425 913080016 349212068 221254535 872002230 566553380 238983671 258176864 360810930 97759528 334558949 224273750 655839894 452219515 137422174 518044327 677249118 980320315 247852654 402523772 106998789 132118995 62095346 577463207 954176915 497151974 135494013 753900912 150041520 483541131 980912074 443237609 316776420 390659050 336134998 594936587 451451112 843447589 744402009 740306353 89392681 792663825 319230460 608522832 58136468 238408886 171145116 660629818 501701504 234631976 61465285 350709281 752052821 620129337 569616897 243226545 805527664 221796458 420436810 577343527 77606763 409630304 169025879 470197511 826693338 784353354 80645190 943754041 119547422 388507073 198048559 541825645 946854680 315833057 474440284 453307259 388443097 688372113 93405405 61529001 784634912 283969169 414728950 978759777 491891407 74711152 703682090 979558440 236407599 476147636 884059362 618305899 705558653 630824513 314817917 180899553 195510391 588166216 432906842 365027378 468151145 893182702 928279889 759028626 11468212 996705207 991410868 663100205 77693197 909775881 349149519 522316984 702861609 837850620 621176769 361336973 449947094 314589894 438110573 728446888 937907076 327028065 669043972 386798361 700102279 484953889 642479000 64571543 217912324 185441521 126867597 228907675 251508995 817240239 548705100 254908064 876128282 958327830 621695779 508905329 859682609 899911144 29465481 184031365 537428870 612963480 848298196 286877467 150198583 578683388 915124834 100787674 907195461 662381513 198939466 6831169 310055816 316613894 80453123 173033832 597280347 410516154 947246126 816367537 266512556 320798467 55812765 246785656 997809610 78282354 341263238 936232728 553123936 781115793 685476749 674833523 603534289 702974878 887094193 152076205 168551098 954572439 53071602 385915754 718488101 264047207 592613994 126212647 929443190 42592377 399243651 396285381 222141052 968269416 966767640 702526420 67246543 663371503 943650325 888767791 599014251 949198719 834035207 219913976 74745803 878992630 830410974 436266741 247192597 370473768 676969012 182346410 422132921 563882938 25525183 749056332 217683622 887872131 861212194 380402843 143463805 861743738 509711471 21761484 898800598 2240426 572491242 580985808 932999110 360782503 108338258 693606095 412433166 765640905 681258833 499796988 86061118 758313580 554151801 471591387 255034141 54002222 938109829 449018878 26766699 709872282 520245777 312088514 109011309 962201952 273838137 153401037 235644605 84082173 909440704 369810329 428968938 532936779 228839417 508276663 698648087 772851317 334756795 996642308 238201518 940365794 638032800 167563098 202318247 459934184 3408570 458286856 248222669 457458672 364191639 510995915 566698920 157643636 839237637 847287970 316144956 600959788 77498572 897340627 413238881 448802489 204959745 342446155 374773184 473600359 35082577 589522244 359188792 390740989 392539076 858794818 404257182 454724615 509366493 757022348 608950772 240577794 636645058 794840408 206298411 411841689 321852223 483235175 842549864 42594838 636802201 2860466 745768030 342036165 769506662 674715182 141701481 785972413 376391729 937760081 333181494 317995175 226886431 181135211 707747209 779973984 956351272 154690567 605386939 98219827 72466458 195296462 905484219 762670680 797290697 139699818 191697428 973285293 439485434 476753468 108972120 766695644 395726967 279252009 818528267 568216112 236558812 831155148 164441835 215261233 910688316 859525021 868452429 959919532 561165915 318142601 341044330 249272380 414192146 580887682 2439605 314866995 119306346 954923226 368056296 638010946 782365578 544393429 585815121 258878790 785840067 352089947 402191851 201371706 362786977 294131558 321768130 239600431 710113577 557716349 534503083 779061590 97079509 319876491 862065668 848198731 932729936 897979080 282812136 677788401 62192731 943053159 352301887 40598387 11877594 428319838 580973132 661790362 686671810 925861177 217573190 153396556 102619836 369232125 836063471 43509384 911274646 212049511 906684294 503121170 713386417 689048627 807373570 996208614 242987863 541056872 639617150 671840899 73070797 811466511 411953489 540951657 312521354 491772170 311181568 118814666 96845584 67866238 498678121 434645188 94133008 83824726 906220139 494017680 271432064 241762894 275014567 973819663 957842661 407832017 223974509 282342613 967189168 314304101 447766656 639831524 791876873 781341232 733575650 445552036 216264696 361491506 822237545 703719055 596554014 326300602 284157685 639188538 972737192 516758312 827620932 563536762 737181463 15611542 986023545 246523155 306404953 974006716 695664253 990534685 25047171 947461728 773696164 795426544 38324633 270149672 666545263 764137618 240234398 249704398 589850068 726605842 117254460 230600274 712577693 133050081 458504556 429612136 439771542 364487921 745448084 711213123 472037516 832713254 393782958 386846229 831897249 363923156 860768500 738017352 625310426 488411198 174795599 237570287 823982330 391110748 733481997 727712877 777947480 303188788 842614345 379141010 252010632 456425809 50283325 962954794 277747936 319148909 623156568 166145052 80540297 839841444 427672802 429076085 332430991 726269110 265963942 703118690 600533425 352089416 398280272 780270865 260350399 411536963 43264120 948302414 838475318 132162387 31708663 123637138 417597431 644300107 170649909 556830377 406241879 995934191 895058606 755496071 433193822 827365212 276701743 518020666 852856547 803555938 735034258 465250865 412508817 99003711 601660174 913975721 508565964 368642706 564508011 4008168 330659967 757718570 722030378 249422378 141492214 868575717 50619875 63401333 10851392 960030447 249813903 395218248 341730158 735803893 174874800 462025171 946985680 894079407 48102506 453952466 994138946 898722195 290230827 705050275 801896297 326238333 227904771 834607180 99058638 523610016 852926727 986396229 968973390 787064380 637593910 353965058 20585819 217085482 793995798 855270539 789027344 671660629 499702341 717748182 789747516 685535600 369747383 181410613 556443167 345833531 519891070 799139572 33062475 421359362 934845002 571040672 122215076 104960160 292019041 935097997 107976457 577148152 174102585 57240384 127499203 189260914 763911776 681943743 393445643 701231967 874277785 809352853 571837240 282664791 321826977 151068281 884288382 283405180 25818344 10062414 859569165 79927089 75080075 901505740 883186967 746203800 939614594 208016080 75669349 501114470 725068688 951649042 869363182 128177149 697089235 419085344 309501448 925143009 298049945 966779533 922199212 557256783 858532040 309436784 404923484 833923382 832842532 933586341 844292716 921667266 518198381 76940603 886853920 888504368 174730883 14199628 893841180 794328146 690254128 123389521 754038811 515194658 444384015 100526980 546714024 864756513 471302537 283833141 105438726 993700188 871195285 222783539 131207196 863114623 377546285 562068935 225835120 482783572 553831418 440473683 649280691 352058303 774231652 767072450 992644046 549544652 276353091 317834618 315885685 917867850 173251329 510656474 338224291 569492891 654428315 4756081 478324717 53551684 826132878 390148051 619773936 299346872 689920318 601699533 168601560 652189336 601390302 579423250 325052179 384242671 300137278 372792882 312892146 605124438 575039378 686287342 890277512 397932194 67597541 483996020 125677606 720492225 873251300 832968289 845668944 1112907 137122772 764495036 725858623 162287735 351503641 763813312 201653438 32170396 123724010 581164095 330949913 261163514 346470321 732843418 223578742 462002058 630155982 570431698 97331064 241830333 125680977 675649754 21564208 572756655 342946782 457426379 489659198 570287337 748140341 933026205 866359435 570633367 83321055 40911743 891726623 391992145 696293348 493693717 206366682 933117413 945587341 227605719 583185369 171638395 460149434 818149708 440619730 113648154 493181780 958449057 483730651 407450983 513737087 140917471 963010974 714220192 107767768 649672545 465413414 506651337 114452836 307301013 98124153 201083409 58189308 882315052 919570943 917846097 92281479 911759514 77578580 30013568 80670584 344645704 705801559 283211184 359582146 95661374 384862397 269232288 429051895 163084159 582569746 5915011 450253400 681120612 833301196 876406069 285999056 72297338 444910986 803134809 1924913 311497815 381065515 48197586 566272901 125401886 888075929 252181282 594534563 374135672 551177212 756736762 662466009 193602079 350580591 806487774 919513079 854490490 468815105 44137424 908125544 707522943 157292378 359935266 46514495 14245301 9053053 331320750 338551095 827800645 987975969 745024043 535488703 845143002 45656902 561439487 93319597 378812722 624616275 986649446 940502974 901578871 653948907 477147104 504419303 772559929 614735218 513335994 950203429 856593785 84576622 6454334 64101838 511439870 166928432 859615241 734166978 281590621 836833565 156709946 612441714 157088177 66348136 54680321 1461418 744829819 279888419 299984737 465858062 925410801 20008323 366521558 726154251 882227578 344519428 345724126 788836957 834976488 341902176 619152661 211703887 195126414 800635902 58850829 70570942 236666946 389043294 462475253 974390738 799788082 518985138 677105745 107448721 100997936 877386931 134886285 116813867 949133405 746561243 712785619 130391197 946986945 973884094 649337638 271026622 744289956 312119312 195892772 480719954 792206402 518958872 240098186 265779271 56481188 254240630 286110170 441635497 282282824 743688479 286027010 379229826 364212678 507778627 681993843 551288755 960167589 474777343 656160574 349009395 302127868 522182541 748506331 5261511 135761411 441600622 594000246 793320238 947161812 531537017 246045854 873192508 761860284 70609745 55741884 520505886 344682647 262185709 740905219 180761818 113526558 758754501 469636609 856476762 239918723 838666203 322631647 610455576 65837540 182793172 177351859 777198410 262727751 21176766 858945123 263580735 848242401 80027117 773935716 45375454 744820570 51229958 167876256 813641852 719321766 529454203 887640357 814031819 525248893 604800040 888174760 983699160 569607929 806673067 413434287 30892845 623515312 63574229 127164124 795092327 973206116 603256373 35886140 793812488 517931355 358721267 599119105 820713446 915725253 458138844 656467990 942362078 924196104 496435367 439462079 724400244 304148677 295208437 861306110 938100907 244102474 345060449 579655768 261721196 933551506 378942903 291026252 574827943 83085694 234504118 356999992 761056597 436375497 390059400 121214255 552628648 501900759 685547250 906009951 33925517 499541141 861510492 570696676 589909518 648526380 853020799 171461013 719660110 700320572 942582659 347723049 41795255 864551344 875323565 210132498 596881084 912270283 657337259 707534320 192917910 135590274 925384900 48719136 709879477 427711939 818880553 288271275 898806803 512359307 420796821 18417589 44225783 60437405 368281324 867431721 577535473 645926975 395996673 933933374 487512473 842924431 857595048 292758026 846847092 298948734 15845301 755782571 577423188 881599098 141338146 182448709 645870747 508650852 765274531 317931984 527684187 943695126 625450774 803649567 7371228 351610567 799091462 702334867 48158496 846663001 420890034 693039166 701930253 164625991 483794487 234303947 187471608 790672681 167060206 726857970 186273522 610630929 341608065 468786358 91999406 535377828 822269173 117882058 753224328 89940690 798011042 548066301 833793956 107659217 961833725 359185834 199599702 188419881 618839546 550345560 660053406 488652605 602607499 365615757 534848964 327212176 186193412 316499072 651651615 677307696 746721868 346034906 342579284 60438636 696185696 69603979 283196555 208251884 629638603 858364225 677025678 777901030 713734157 811571061 382606036 410397861 553683669 345469306 4714949 254018729 451536806 142977024 178973722 409062967 980381892 753799573 193897932 654031269 993111527 216406445 117696752 757002147 194972263 171052078 38081509 635037559 529028503 881513382 478402333 814337459 623789989 691514181 190977141 533929736 543481227 528965329 603341817 325247401 176793663 516782533 546850185 400483844 933006572 563843904 220117167 353481146 730944567 288037495 441220038 718918482 605349044 96254739 191077204 893180660 844135733 430746547 347597252 81613279 950476732 830604719 627222134 146331096 29690153 323089878 950131158 512194452 205800559 694667397 195376497 971914440 718313698 377807187 901248014 344278177 552983991 468675829 490677828 552154571 495913047 256946125 994006910 317475931 248758647 954749147 703389486 742216892 864153359 615264042 76506426 92404601 21644568 327024648 965405579 963787930 946879611 150277269 406261947 346277905 136283037 930058025 414910515 29783124 448840185 688995860 42726426 315516673 710016815 796931793 798692751 253097019 359703241 919675116 1381169 182063401 344848731 67041787 987494182 641264301 308531432 884489790 213379933 914064404 364760022 681715736 514313903 594778949 725479700 510049435 247077767 502492693 45696953 366498593 984250795 225650533 373422999 815570571 687439362 165963705 505352334 31894997 189435899 154945904 652842255 492554034 772485823 848908354 215677566 430840884 603738669 257746798 168927072 657373599 148102597 456731101 513881280 867025666 896868537 467013230 830123564 87582310 918134139 122435396 368833843 48677626 233114955 427905339 690606737 319268570 21144805 403088625 103404617 326470559 853560998 33374955 581298280 669351138 108571506 779402561 390663085 862004628 787082755 900173534 119380586 641247596 274065594 265013369 721707056 771159194 985111741 480576267 113160588 565075230 862603482 946883394 766343358 759128090 480471325 97503336 762186182 409509437 364358595 903677141 247153640 416942833 840303937 490322371 169440623 341309617 90543778 180711084 850386998 545741760 356291400 533218808 483316992 652040059 476060415 648905981 304309655 993580808 664412284 848633268 689395544 292786120 475266912 191352338 499336651 444397495 621019734 803803998 359558177 1833033 250599099 557869024 541846288 937164981 183934241 193149820 527921988 722105557 506983952 526026410 402552054 498314262 32593980 372604372 443989581 734097490 144391150 776031604 105697484 422272740 561952318 419605474 601269805 421361650 610044624 499964787 718152689 55157077 69861375 341362515 888173681 726145624 381487023 173730146 388543314 510530532 586515299 171738663 442160943 909576715 47912528 215119297 272194997 112599154 586134407 878521764 663810568 155047487 866102012 193177843 814705338 533159533 828792815 743338110 705765323 167592712 755479104 287038851 508030124 966351179 906555643 133202150 971541582 222783761 249014299 100993816 26005042 320062645 739172306 421026109 769622163 644365514 180370358 311319786 644436431 536454172 90705891 708210122 907767139 541262778 333259704 766426088 256702377 311246315 830903335 198271298 693196199 239377860 513174398 722853079 831103205 362949348 493585703 707439319 838261794 604621061 260993885 177164482 504354839 949374171 556844033 875560596 970773305 655641298 306166533 92107123 267006021 831154052 55276686 634821536 592686582 676997623 696512381 750408797 317515337 898901074 705817357 880837312 299035885 30947505 706261055 618825759 941858748 943777454 488939845 468444138 61968390 40976545 772445117 182830376 617082689 153951272 934616469 559151886 820184211 187452557 116669839 17579242 609467809 435251603 417333998 216063572 894529242 984646769 593815293 632943902 513760573 44335955 782048676 501896300 60583376 516454472 274807255 213238248 133503863 234535082 324333764 61792753 23802134 637463027 121929376 782171041 106726625 728598806 442093097 290753256 658000634 584504286 907551562 352910640 638343010 718409164 505988162 668543534 92999087 506529676 983558225 1553766 12263418 297741930 985043337 582081522 778777088 239476478 386938875 883995374 911417492 626669113 725757544 829761726 6165875 513646012 252261086 842706229 627769999 138432755 499697944 529769894 352102942 148456211 257640077 235572803 675017864 611280627 450565814 889125942 823110183 360971644 282078469 353478775 331298315 106503234 520935457 628599269 714296917 814581483 403198783 995350715 394183756 939325797 58472386 260497309 332494586 347235340 687169398 905171514 603254626 961571653 294283322 335221408 139723013 454120927 329612432 395315828 669909243 929201716 269818633 442255292 413290781 638332948 861930726 844502133 924654874 525148874 176749473 822564971 71265012 548348725 457118217 897792121 610809042 945413309 808646728 803148659 135950546 880284578 939319115 158379195 231420872 917800496 246795999 124641068 980996701 430640517 739533141 713449061 665767836 142852845 661739713 39731692 126238857 241369703 267172553 878787004 26458648 680445639 796498605 24118315 503718817 777377628 202531975 19852263 859222654 457859262 244794118 974061670 591195930 73577048 97812145 678306346 813460569 545445616 300458671 715210693 47959002 210916250 826611783 748775239 310065239 314780138 791307346 120837857 5150098 838034773 305953550 527992048 361885241 134535514 63930935 963501311 893872780 357874916 493839537 973403166 65289417 805033523 262360944 521982815 341283703 477913997 33897252 225797890 151955811 206908209 128604521 528183547 801935413 9518132 627662954 917004212 309498227 197518820 64654263 298819557 994315872 152296276 9598052 365292502 797451305 264064594 26945250 134998964 988436764 613398903 579389812 189210825 122964416 944430809 833652673 133437043 390270652 642417874 199007248 906860170 33619136 196965636 449723403 46180845 348150491 182841043 268155151 118614758 64189648 9554280 975704916 408289723 6167836 443151686 323122634 754671829 931583706 173820342 288137835 760632360 787922719 377648358 805954734 723037613 962491889 717512374 751024962 80191573 322535591 628995076 804482179 544471249 234288426 734350912 612450726 233049113 583437943 796686505 967761210 683432214 422103363 852934463 838249248 318567414 89903323 668317109 721998558 844033645 774604021 918562167 756306121 505965772 816722426 617418688 889075227 501279025 964835431 62049690 602973132 597925642 523308867 97424914 297724901 310738018 851256648 766444149 734024535 914984403 813145870 714625079 396159248 923846494 532431470 984035298 341645753 853394325 935453162 291289126 691818853 144564001 534220410 508321321 381227010 754202035 766860803 58026735 79438773 478251650 765306025 194680908 528777258 457351898 226451592 937805249 279645196 273476038 692371574 366246312 113553694 377458843 105885007 404335944 998100304 785186988 807298465 822645108 17864976 369919355 726778948 889797860 544699174 75615636 753930740 687828829 111756541 760307949 646799524 220552563 67784164 679710900 342337098 808536824 984166666 492289688 905531374 27584269 956377978 604317421 683072433 124841359 37689040 332323153 794005920 110658707 583808801 248769881 98724600 71083632 405885986 836369463 796926369 688311835 330338613 217172055 605968599 141564037 69742477 478619931 29974846 972314486 804541336 955771976 304285149 101692851 885147806 937329938 652677549 919637368 326936715 44506807 835318527 97551787 428740250 346744295 17426294 363639092 409991779 293022408 539789400 113358807 683464544 188144551 280623021 241820982 223607877 790857319 309537945 639974866 881942382 397908295 934779485 672557147 487968055 675472900 975861383 254684811 960979804 478942697 885512212 232337768 806795100 882112219 297956150 447650752 711958383 667505510 948539945 980295987 502429776 780885741 232095408 786777045 939546051 168648173 40384048 459398589 42164930 719613522 556694225 277141481 141772449 6019733 155049429 665647572 409736174 266733393 497364931 504625961 532984558 93081875 460344867 934501251 791669826 884781431 604897652 872826325 292826345 307758116 777962271 584810204 172101417 771006448 145347629 982159359 803375334 604212046 587451311 701833576 90009263 200703307 829976132 847635474 412284197 861698199 908335604 883965619 911970217 68271933 891967 150789372 841656799 175691429 951288587 551812301 256426647 592791027 371677128 733099876 593924294 833407067 415484687 472460573 851671841 506186397 840026714 60348448 808320639 331073236 612322466 855452448 629356359 126456493 672894032 418401208 657700899 121404893 314870366 516289381 773302209 534994222 566089052 92589244 167378151 89113929 965772424 387528417 487702848 448044671 256724489 578429849 529252016 833912353 624604952 175361003 975579829 5923594 817782398 483103351 547661786 461033563 503813908 660831194 164947840 793655747 629701191 71489687 885024965 933942781 804111253 520477782 654623977 628425019 357017672 800627812 693288881 198282522 750789772 795232437 416487152 299483764 16319338 119311141 850548961 992158273 556048320 581642134 932643533 99883444 572863352 50823683 8673777 392626755 663823597 537013915 138522693 737001176 994894862 139181348 364342637 30361899 967304219 344306223 457978374 343720664 321401647 116643334 407890615 553427944 560880157 595958901 176095881 615279321 178553055 330509182 3903162 511409391 348785403 313878019 334656391 67845613 976662543 424886005 654072426 314041225 159880097 305793724 416822618 821984140 808731466 691326112 64660042 790848480 323304989 629009796 613174559 26101738 564889145 254386576 791530168 251655797 684738058 319557600 933437124 399535389 282612816 278579523 723721654 432186606 571400147 738041839 944572142 134054379 356634305 783546734 614333707 424549815 713583369 470838949 76571723 179485481 313484522 810824601 833044873 153346790 920835066 364820814 730448296 449470864 57442679 523979931 93292208 61709369 894432976 772247375 205087220 465806563 308506886 686560639 408968650 77114742 906084899 718298895 860971367 906942341 835133690 690049567 44033206 510219203 660319787 944298504 390205616 868194366 465320390 828508203 82030950 332340197 679704927 278902442 436678248 358366911 981378808 317678779 305338113 806445108 885194736 715337823 333397704 840014541 814678862 799941435 224110919 600491072 429831884 63248074 716309823 73440176 173802199 865795540 635169576 743986827 620039856 69193448 513998606 899175048 874670459 710597220 128429598 834352413 605494841 168058035 258154324 923410132 639198626 207977489 816822477 674437509 495390081 165420264 508463337 183688388 648637239 425455642 628228334 193872286 249600562 68297154 665102431 194697101 613395079 158588875 132357689 325289290 190397058 210329963 400523152 906539656 439500785 275890861 577960677 133783951 625707702 694401929 39277596 610649619 964915276 994405732 249170936 837116120 317186963 921668203 907097161 345239569 931465872 172905204 420972812 149427041 992992818 792973587 990609025 144777962 83346746 557678851 758293704 31013543 361828374 425911339 418628011 813759251 286809264 215960206 724470681 392455211 676522330 982834140 331047345 842421473 733653941 99489059 568419415 697178757 226991269 946656027 766061408 911461737 981880859 63899088 44780108 953228256 742873538 221583384 677992029 851081714 889844917 24497687 205835301 709350302 937157773 588239547 476411843 575703388 889425678 10025141 647338087 860349512 82240283 254845560 693152239 869053080 453818274 394245492 446598917 197200586 615234634 646121042 698205674 798698741 188444788 121240745 974323192 795646132 179576470 734165002 487836492 65780318 869563064 335814552 809579352 946076258 775721843 230376636 457097235 53417011 384754606 754813170 745139134 362187921 278079700 1783290 692084483 837924015 653079747 885198648 452108994 68267935 570142311 524484919 339235730 797502723 538396562 101452150 700562403 262666543 588490484 301846485 905440050 836628439 394884583 65336320 960420965 806691204 631532401 253263875 379152838 16739990 863106763 298338963 300782039 806669900 771481205 533218354 263844929 973641166 774474721 641342355 306067807 94359078 445077122 44729779 672984576 823136450 324846744 927958546 788311053 565012027 118192417 212504708 273193034 499660996 107892691 667683854 626488344 424621242 905267839 630148423 565957273 186667476 328953149 429791850 27356922 334830379 523812702 552288982 75735836 381720592 281896994 797413747 975584086 444147978 993512100 245560059 980243005 243148397 752627303 439757096 683334015 682928139 514555776 630468754 396011375 108604766 624838096 304180647 366001517 827961545 319071834 464927181 940417748 536530048 325610802 913253175 671127341 625378327 500533878 904248589 697797879 316508293 374764357 99226731 193444939 210373733 282753263 164379232 584218767 123530974 1579249 756289486 236310009 575189397 89507183 896162507 494126513 445847929 347433232 271408080 695746260 523844975 732812717 30781739 588460276 842444912 558958981 803060636 410171410 387585265 833516255 708992950 879598001 236946008 579366027 400600934 524341765 743382774 148182716 754114761 816394197 867303637 506169323 682633483 291639130 295610276 987863580 260395631 83604405 994355362 38650649 316437411 135468463 481180729 413516486 422003417 848270583 166733940 314993433 872406837 685572386 695654595 221306871 177223027 543477233 787752665 644827493 418607924 862545595 151187083 575765362 726895553 795568386 234160183 105497137 901392025 687357676 229860515 788237133 261730437 38500156 205436334 909323429 185595785 59264467 841475222 879887831 920796930 157672142 617359358 35281242 829326107 973157605 418169898 371140373 29918877 439895246 647539552 714088037 915989669 341009038 727113728 18520695 936959393 76466309 483996060 207314978 758091883 10449193 89736624 360196826 909821592 382970447 794456282 57252643 561604454 122676169 458463478 742892315 505847395 358393627 743069918 292868816 180154443 367169397 479004885 976397275 531466613 567348421 124291585 363403322 994188412 664756396 305902903 165463615 619832481 852952740 989426525 577009801 731481459 112719005 271668025 732239816 775677624 849578194 440494918 399442756 307947332 338060309 10534462 984922367 902835715 180299157 120840758 992494874 783399604 682146453 58514765 645389888 948143904 523003127 426945647 772326380 851099003 897283690 884574404 133402271 940530316 775603066 344909007 737364740 876329597 696648229 185875114 562313972 141319268 520965435 882745549 806981499 331432121 223468734 997235578 990383944 338484125 317858146 699274565 122578128 505269045 394255169 16342962 882631753 133029509 464812532 679497969 378713093 599096585 589920883 321927720 242845580 944549792 131452447 619058606 644691947 570334387 497089914 971895565 301037936 493344648 238587356 516952466 261716154 907027171 367582653 316280809 111612539 573052388 598049480 727879956 692669238 98733837 405714515 773746259 378615297 351761829 494758870 921091301 657264635 886018150 545795339 311499333 671816939 865415953 506303830 455230589 35032955 147304544 116770698 978356715 563098398 683862622 257851326 196647390 540486060 237810382 321087098 201867902 998183935 600025160 233339026 293169767 246643505 445885004 96420168 740975564 800709421 688638820 182191170 783384148 816024880 522687492 759567174 382093865 896092553 665250654 619859518 500339333 848717835 57183198 939754274 481205046 96910802 862369207 390315412 453033035 614980361 547171778 120927593 540037216 451986416 227108286 499744747 420190238 858365153 492724490 525415652 950331311 325020489 872302437 154462722 751706153 145759616 190139759 312230030 558595372 691749264 250512844 335040917 388774114 778186111 535843268 572870161 208732648 697706253 865133867 632268603 178249165 822091477 780892031 906405011 379910274 385833830 324006251 796486767 694142298 326953721 489243505 96040145 361862591 5359069 60644387 70641112 497338969 761111182 406038830 10188333 549036724 70622209 124237211 992649903 54956158 153721869 85436546 654480867 767361650 651273259 229038544 644697727 142627322 630277790 413279397 551681330 302926538 164263584 626785626 249142845 737457433 444534680 369265008 556006845 540575606 779179607 595526290 473215382 135848245 163118123 978402719 722474555 278978270 452132238 303461329 25496404 706062387 333207483 71609801 810202054 934813977 881554928 51348216 413960184 254879899 326121229 264770605 73893739 284679131 322334257 533642246 999201164 123038191 419827938 347303527 764374420 365908838 146855498 148389868 583934144 848487477 879409270 667660979 335968202 4019970 472212394 235543898 188505916 396338730 972965092 976759389 26333918 38956390 290971690 723435865 126405683 421519003 859318675 843562476 583007930 912719675 809556855 890275213 351139966 502677527 375817026 955733660 256865543 52505652 380797255 278108312 681007985 170624222 719992082 765135351 402720893 529805749 534551941 609690112 858137853 532476380 357268639 787177250 563873228 886456221 274281985 795488990 872951067 47997559 299492767 622961465 652592624 70418795 280103532 179463512 555209218 451053988 502804401 679699408 822264509 1151758 218123770 410223838 368421877 272652043 647598754 664441148 715877732 474422517 952785844 819618940 708835552 148150516 406473974 264071005 104107747 804692672 643571383 982103736 931334755 201602401 947161180 12713894 988939262 183695639 317396586 929785472 138303890 116041521 720404438 456766088 988830604 450179855 441170638 829635267 749149111 33091260 727348410 414488219 863001629 342954788 841713028 253855753 428216626 851641062 805289146 57011161 551957224 591666231 850387650 725550279 356471883 902732252 626546281 297522418 623268024 750409364 658079370 901989285 453761956 756464740 208448160 944761419 385515756 270410003 215390446 800271461 97062584 927948092 981015261 709361352 406241270 309311403 506232829 967351131 196532163 838151068 800119344 350838158 760728384 763766031 467426721 4386991 848258606 740741497 75182172 897289029 701789842 605854741 836466134 974823275 603951505 698834744 232249302 648320600 362362018 150396463 734263592 477688776 882709085 968682852 82457745 722380129 376914182 993656514 333177549 844147907 955186301 607471302 295675448 536858239 246111311 927606200 417538842 460483157 730390186 973332521 601087516 820811854 13812429 78775237 391997585 825228364 252834251 965469046 149698081 274471700 93271920 421690338 333137234 695600395 569269771 714025667 980023774 660657606 355089888 559672686 639858285 374333278 101711195 384589626 917265810 947502854 127182562 533341611 948795131 267361186 155078019 106264895 477986123 201322866 609784412 947083095 568185385 587497350 421811324 273514640 42932669 723238467 852551315 109315199 598244548 228956339 518512974 210782716 530971680 87812907 767373801 918178065 606715478 457428194 801988660 127741818 283673038 228681281 216371310 895568055 996913160 157132433 383424359 706712640 327942081 596533498 779651878 21962867 824333374 220706089 587054358 333085560 641129884 625958413 635489788 792047315 83164315 33025597 862218546 511769326 586983985 86651081 370259833 540741599 80593190 643586858 732744376 243986358 546360229 727578213 192832035 909664616 171268492 261429589 817571847 622949916 616636170 752522370 305964263 919879263 428378764 535054209 528331734 926392906 283210004 515753095 985526921 293784400 607940379 734849210 306305300 68732673 961260890 691682281 332364271 664248464 702237867 261845285 578929674 195834535 926975812 591998658 481461303 585744875 650510760 539135085 867006878 303167246 553831538 585086265 191937187 780697014 443718261 113135647 769124153 672281111 620435647 896268761 787613895 447881965 424530214 301346890 508831228 732680072 599707170 539846288 335116673 982932903 906113691 669431297 986155454 878363249 104961089 187468672 245867372 555475086 410965543 699081471 878427448 486527584 6005737 980949385 97193903 160621235 817434669 459690543 524619743 222973655 818088958 230378556 361130899 186484169 408027689 840049726 317414230 289245863 561358995 412248315 415231526 828270520 103842172 994070251 695493530 443555445 914115569 212191124 877346568 116505120 125116723 932996038 642024557 975919541 624270185 420079970 317324969 369655204 902178676 706632312 726105423 260869407 864136005 884383452 894521393 106208878 424062742 813146179 408975368 776515726 950470376 531437895 879619006 718560984 907651662 311716081 207707437 690612655 670017480 177671407 701293230 21876809 574383408 506585557 903665396 13560887 390652444 692368480 53632208 171215734 871650650 551012529 905329236 927247107 121478407 16238741 82363036 52431556 658817332 690031474 950809290 430093089 266163668 755803858 528753574 723465318 509206939 416037096 532467296 277717257 878075889 165488368 239322228 928899571 850017633 317014061 751264905 463065839 53311499 328567877 231699983 417128874 808883936 310433510 372440984 94444299 340300228 359283907 415244263 694005562 626088391 443945678 958652157 121929718 886655965 200274534 495675375 615792850 445362313 881970045 150204094 212380679 905698253 58571717 951349851 893524706 409974766 170840237 228677546 753034996 218903596 23217396 467147882 359637990 115435841 951181865 761059247 358625739 350996871 974017689 884723388 992925495 220523592 288178186 199471614 96501949 120269420 472056282 288488921 522094982 245459412 134180936 73671212 195649525 258489161 884854870 751961171 627468853 109130281 871300926 894462070 415550340 967798839 399785296 488874887 439856354 796548352 308655325 623937639 448721858 271951040 68984415 866942153 681043368 622981235 873157392 111046547 399934552 101898191 905111459 156915524 112844299 826261110 455927578 273073880 823034085 497775190 330971700 638582382 731438798 409284272 924635300 284386883 329164363 824560550 318894558 754431468 29948731 493962989 243684179 195969928 216184602 149744521 268363536 698659813 86801064 221915782 550630145 402015197 13634659 101723355 760629818 66622145 916604710 237888699 554348351 619438729 365458202 650748956 83075425 89324722 400308225 553732220 589145859 334207237 70228572 870425402 673691579 75180701 871913543 834313263 603599749 212338417 963539691 957751978 276249695 335893474 469943174 787847501 3102980 762289711 710280772 116175914 833681099 126264846 283239664 465230061 944791589 332094984 924748423 145131287 696506143 532625852 749896166 875923043 323367709 87163980 939072096 26365831 802436670 562477916 169366569 911647257 441491359 831968510 426157400 639218493 310699957 626077325 896956901 507779394 892404467 982791937 186461941 172283872 12129164 682809938 908287950 403116740 443649591 64128134 870056432 312684979 351095920 210965980 768001170 400530900 322430207 503947445 373859706 811858099 624574795 611527663 666903514 893298666 911085218 796023206 357062335 71110976 587988199 909689166 470943897 569683232 513668226 856523584 294031086 421692959 558847056 692346186 56475397 634795240 618776857 483103020 808458249 210261095 830613761 223088280 894859173 486914 204625017 291740709 509919929 433573261 670105638 635551921 570079079 821232653 394222713 705769017 488303664 353385143 829387260 384427927 199360994 239046829 121092017 818580251 580603724 277887384 853269518 443744885 24626074 682402326 218149782 170696590 959969301 13013584 682048316 328121561 722666137 223925242 875929338 546096329 114141337 837261461 273375637 33268047 673490666 569142755 399473212 231096238 866002770 488127242 290087021 301977363 336702967 699131465 818327296 159917966 722368699 46855420 999883230 810607009 405498034 973118459 964023107 306504756 182635684 289614200 862243568 744777998 7292711 719119676 482682485 947971123 31700011 480521713 61112223 15771815 927302754 224964821 926907903 636678530 19278676 500408824 867193821 566583708 791540372 214210239 77413505 354687954 159375013 156159627 301371990 580285031 482309604 556604482 138341384 378300561 832209292 999721120 83688479 563266323 163205307 356865343 175307820 906588709 243235567 92776005 339082343 297245563 445867219 509909106 979226722 126578026 478859762 347006473 390790864 688325387 641459195 175885124 784950118 776209822 613333878 537701213 975180904 334657477 990908048 910088085 920194468 936631288 211637077 520034512 476200769 810580669 461093556 384842700 361406971 758840766 497136209 770101757 289523685 582777814 951907732 348539109 995926174 495464269 146341111 63144306 615066749 248562627 614392735 502242134 167754475 286854681 97930548 20408455 601852643 552000197 198272818 916622009 813379650 132387036 399385171 76494849 833328589 779323728 645968020 152965741 330951718 122362826 664267157 906436908 908118456 227093071 238212626 790572746 912284193 752353569 774857820 564450783 673410247 16553671 829026106 473431155 503493304 353233354 722440595 427548678 310982030 492832592 549756786 10858947 286675293 830281873 612938970 990532534 18344724 153449450 755794578 321779358 369516938 567929981 235522386 549686337 420088689 239021581 914352314 781708094 107580950 367299417 711228378 308965343 880716320 802139446 125807029 939042355 891066477 907510240 14924736 144769304 481969607 760132757 786881536 871405148 975228080 839874208 747584847 912718737 238907283 318100346 882438758 136481311 976562479 219735499 9603919 535661712 279985550 715381479 689122896 78910495 647829369 491759193 282691550 236667621 721518693 154813965 722463425 494487370 36233921 410772568 284277876 935259370 549577109 409082615 345487354 813419873 209524074 744462284 253430607 800705255 870147006 862829702 732012893 464017861 445876791 789545999 307619697 804373691 662318241 770653244 40060783 852682364 110290251 197979904 344457171 169493494 629371256 654482103 602606323 558722707 765104952 932894722 957889993 803327822 563164632 798173195 676795908 336017906 613707617 216038299 391691544 594194564 223465135 942822795 879858033 703988516 940879665 271229479 612479392 675209391 525063483 322511053 443044013 677855176 821110520 416769151 91544017 927226842 502637881 630787475 649616004 364737887 759397809 565099524 257978318 607482631 23136175 345848306 587351407 401728935 545239494 145021045 558279225 30167076 367237264 839658071 837837401 43417240 859508044 110582721 55141557 979649172 951218805 711879355 330844424 377004889 917579571 660452013 307272967 895947950 52643046 479025224 621515241 535989400 71736392 578536463 602489282 690653164 243355823 592182871 877486910 4508468 781458795 848765041 498584706 221347426 795894402 394097994 933271424 659328008 522123337 33001969 523956409 903189936 902911518 332349274 842794225 130813199 166277892 551217951 315337773 921999384 355762522 17715834 112930259 357997992 882865197 254300748 851908594 551366406 874725629 831361090 609880875 183498159 295888993 305071903 795903536 6060977 102053571 680682431 122010061 814737081 149051706 819676598 489643550 666698766 731233278 11268589 961294419 583675740 779008123 804656652 417896353 56857549 155673733 455397987 722172080 294258041 718151399 359565432 114549622 963519632 303085812 120314558 961218613 412340740 104118371 291934056 267198916 903869019 868429249 59438688 141059721 129599194 52599606 702517770 420324156 133112755 459309866 651611124 495101671 388599323 988850710 801270087 18751768 525292302 102992418 187520147 293882022 789346580 631929733 7599460 38573840 494242313 340071448 584529824 587998788 226486205 959787256 934840610 593350302 51637628 655010997 505327771 358831828 408541232 262343256 258155833 935642008 12249697 332731941 525663015 380835300 252943917 312736279 196673285 543605817 674645033 927339646 542296424 742159801 193777500 87908254 977128243 241855534 297857906 991294791 156455617 222095886 669977754 667208887 405479201 610972542 122135576 904169420 899892595 543702050 376126566 74078028 138926354 476697153 316605600 758637147 611568500 621754012 795808454 35414550 3977271 797152519 957660339 954739212 213125115 249448376 815668265 803583418 219275420 846470390 374899471 196554837 774751799 891824591 460539734 358877232 225848931 17905415 277086845 920112333 790888911 107325829 911717363 778210421 89041069 908136463 779880982 702702127 668375807 731666764 202637600 69214206 524941516 687156990 673836401 408235774 467922055 884003722 543064808 336627475 58678176 509563313 568253575 849609912 938491937 500840538 780077427 49763311 59657599 785045668 469280082 956657581 731157620 402291187 694147051 944437537 556484732 236573504 19494539 141922707 233958220 84566874 702108982 502710884 549716691 778389885 764926296 802439438 34365652 199244394 476703270 423015605 950577878 663565620 982124985 263334507 384304168 94513565 851427061 883793473 89681365 985510505 613299569 791251892 538343264 67620485 482396175 453973172 579924120 313496877 866931266 288162106 994018551 870466459 645156670 599336818 819815106 171099567 658594372 452868721 717443069 357113018 975204882 940536745 549489570 587039785 765036642 574135404 87223137 588170095 550472561 936032408 941583010 923063102 213606032 248769460 273288143 912179840 604055262 924412721 683717203 688495841 380736007 783872880 15469341 531366812 726615747 724945275 57394805 883958859 706981844 650052085 577640817 165729369 814939659 197141451 511198292 78574788 226814099 876025685 164502193 598223084 643828081 158802928 633729343 914244910 353978504 500370504 748108734 920991323 812539188 760954692 228605666 462195304 997910502 26533368 65054167 788213766 557762367 616367882 805400145 290746920 180042996 607078550 511677823 581080261 268930594 9045429 439776667 799894592 150682719 427637905 630314425 176986154 741213853 495258440 433188793 147295420 957361768 924481793 128400276 387106846 426307034 70319563 979131437 72516937 69362402 151262055 105230887 155799596 467545105 676437215 552294703 320774421 522930818 99514488 886734716 240135685 93434768 822319553 853149503 482865414 563876793 360754004 303859874 545425452 355478594 280776210 580511050 680367960 510169289 392365220 112146558 783646466 972637312 752887221 977662666 482505599 136023069 327826610 288366153 281820009 83444008 105324214 195149197 850837058 410619597 75054150 26714126 302353710 726094999 276258400 742758085 731301575 587556836 530440967 675051326 381631912 907804770 198951988 639193716 982427639 165858405 546091679 144072392 768514967 548042150 652654757 541149748 821794780 153573757 260253560 309501501 787321205 369516441 423072852 674817388 743776105 217291776 220918691 592952712 551396852 860378009 907619919 935417565 88995762 987110716 136213765 137536429 656907111 982325255 474664913 293907197 786904987 761327818 832811505 382858704 237356130 125066457 216335618 574137373 505337743 218019572 903883210 592184459 476507146 733835668 371705224 160219208 27320411 129656247 284167746 730619927 466622054 516995012 60503693 509692731 524173144 462502715 526786511 588969383 438198155 680982020 481669718 626997284 956028813 399460657 480035039 102722645 536251158 191620781 103739215 338032597 585127344 539691564 413092757 292924223 900077121 606573666 27410384 825313054 992501187 62513272 836398232 538464879 380161860 344638999 397096005 202786413 988354440 446635046 827632882 336819999 268035677 366981906 15132344 888371627 598529752 762076549 110426754 612083396 235946445 497566283 892103311 728170983 341172400 792384333 858695926 479062333 224615651 734111388 738131476 353322969 740705498 868625599 692497261 727001122 128287493 945045132 263176353 158029791 113976440 709203774 655214905 426016230 590680630 95759659 727943667 920743950 420084742 858933791 124718710 561306520 902314518 534540587 503373952 40683082 189065245 583103427 689110655 239149386 371122953 396222358 247868930 648770817 949790365 609098999 884963556 109139592 903562935 682358895 152371247 449599042 204672860 509938242 985991651 848612311 234567151 405374724 808470275 616523960 986582715 9213460 798999180 186877484 182714808 802675446 754816202 308864264 123828192 432104920 550980625 952833478 762004793 28733353 708979932 659292203 452925534 646178149 785694049 1535431 295447746 905647963 123077491 208621665 951644377 949116625 279065897 808594187 632997818 775380877 530266591 988816272 962587324 273252615 74922925 543679005 251206572 7549903 564302512 659419722 464596103 256160900 847397730 899878468 421690080 882921378 976981098 576921786 43274801 947500315 804393261 460802094 562526186 683399550 19858823 66717635 85100683 537162122 787446429 316717248 690925268 861633911 809223630 311679199 700396516 307850552 41901278 585166488 599733593 201758361 691208826 754975095 859287003 939138090 280294758 73087402 932337651 704578733 550178224 425754217 365339172 698621847 663298136 852551847 311101922 786992881 531393425 152389764 351840481 147060377 268669931 341797247 366649872 760770661 31188877 530018337 349366322 960635380 292997658 610285698 479625896 435130540 815049574 796381403 834008714 132174054 990163696 334224131 348041167 730198257 500143455 698909224 523699388 787391249 558195140 917801327 398222865 556976714 270655800 93617179 909806325 806101065 833506015 471204935 15816956 235094710 251800900 208916990 122016507 602714178 863948200 378468066 355515635 933051630 811785416 583285234 128704450 724534605 768159978 945709944 858245357 479199169 412198648 364038079 887041493 293296347 18383019 857704998 860121377 593921498 863627126 710505325 477324880 768680899 126215413 575610453 88017840 91266188 187103036 955696784 942768945 418676240 257472359 981396688 701900835 712090653 419331768 540895695 6057629 792533124 403507136 919098573 296181519 177386938 383220699 647837360 869114322 751332379 323581751 506650868 533029871 790082582 271499670 745406837 874175091 762670945 350833494 113253459 831069210 17818105 772032647 669594703 99010332 91444410 47803318 698313692 528674739 286331878 658974915 987225356 986378208 982168094 471330350 95134894 29983945 880389841 285510732 2474467 731183308 497854037 661748100 994643052 280571132 998260803 110380114 50712702 995547478 718447226 600179836 904866165 859592206 780073577 991944450 918024140 322096521 915891255 538825148 447182831 147133483 276030187 943701042 130757078 509804058 248798508 532049781 793254071 962130225 457676534 885377185 155627016 184036384 647503247 849180835 243298231 346402225 554908832 332693236 42856870 697174287 419589671 192949155 47663183 1309445 209782377 80921381 235963042 391820153 637579366 548383157 900278525 45766015 143734670 511871836 344358770 28590254 958682023 392128916 50916700 731636510 693979179 916289008 578182827 392415580 245850001 268028706 291748835 999842530 388184703 86416292 743031608 890157591 426357389 104007843 899995866 476150125 750408373 585561608 206536955 731910078 951214577 686744915 800951472 63674982 268291660 346128490 492770025 139502964 461607584 423815662 605380671 396231635 814060681 412530952 918217871 646091945 640280821 690066573 66840857 578523416 717164235 784125596 579547690 967100955 933424639 69240868 907683357 800121960 443068416 816174267 251306084 364388225 842951476 336137566 435592710 762304981 844484757 994763764 762096899 594893309 244814379 548216198 632234555 915237862 651644918 368413837 39272831 524797391 649421945 159958529 442059249 836518108 555113180 240549625 529493465 612070440 660467131 112566397 76415994 663026908 954068334 880553795 996195404 554673922 382850230 228527484 792328111 109320019 900563581 660820128 422646570 61619031 862500559 240596992 929779149 798516434 733442603 700985315 67931699 113519334 459369300 513763332 745678809 975616063 878808703 815078860 357161770 362105846 836236251 512858905 132548903 977751467 687107686 139653318 293993398 203401084 311224564 318403359 818992279 406412076 690841342 909104053 615820374 417894820 216098720 465548802 543738424 224646443 826395172 720320303 631428966 575772629 732720778 333617515 38676215 751725474 666377664 84857134 656124775 546323656 141890587 780319692 514422175 159137259 670115115 873303110 557663444 183094716 476299474 293740662 975395846 806504268 774782289 181826088 720923961 789423981 209099344 102993471 758826195 883091659 81164069 870936309 772396259 396889523 53239381 323266676 794028047 706390372 818336155 167059119 775917228 706402144 342418834 935896997 269432889 418330980 552423930 802592761 874008675 808250042 293084279 980948582 597343982 154260318 855157699 699445453 601978155 210137465 286802096 292301517 699243192 172129899 92903002 748682854 197170161 248650029 350203307 102245608 105138507 83829397 802237701 332325630 743888809 679462026 91018366 226200379 312829006 729265382 547662389 472799408 554056333 983723178 994703176 235961269 978465197 692766759 651064214 419917253 252153426 655800835 352161969 152031705 430870107 81898200 44789110 811212648 287817 762902918 426929620 657671528 645643750 873475266 599835331 898889483 96064815 167760667 19879601 562042235 18522868 784227740 96760532 813373014 457044141 196821226 308519770 506276598 35977349 735058973 824644124 875065988 98376492 560937540 969059507 391559701 352433875 938901946 737327149 493920549 433856339 364082435 425247902 581724191 83819471 663315255 30830689 653419763 298258397 198761982 264075449 933156465 288899082 620181008 158547645 65889473 548080901 977541640 805276883 400426429 876272605 614213382 305357971 30745321 924832708 334507292 53036130 472068292 768211799 798444534 934826633 199519484 532282591 993502682 878126072 588686271 206215190 440004856 426086526 301492266 187974237 327950858 419062170 485501991 85005563 545997275 884292240 456353146 470185812 230279069 356097783 235951886 373088588 967789820 84611779 693741534 140598549 737377498 589159595 627077687 546785842 839638760 128147440 606785598 160104171 792023454 255197520 331335550 961248231 108915822 146591143 454648072 371874519 798068221 786732638 193935416 89140369 792138417 273783368 385840973 542893083 932995949 219166027 390884761 10883943 907815090 625844849 270793430 948124777 722916720 553891537 16713199 256084478 291489761 450165482 916849263 40984141 807981371 697934365 748939148 840279817 782853075 644526938 685735225 64545468 625849107 83185981 192127804 6922101 59040934 474809795 851399154 798965368 970631209 675894123 135350669 225451263 200093465 52749183 360808968 644858684 84179595 585799730 378259699 845668376 641390711 889268627 836598250 612908027 1706752 456374116 494222584 505107615 844535679 189972315 783247010 943327787 568375569 424010200 622229348 832221420 831716056 720546483 932675528 903700441 184645819 67407109 282948213 452179112 806610084 114670528 579079066 292198550 666683233 76396211 633011383 713203283 449103429 982065319 730609356 378226957 504417675 658547968 825534106 571851017 15868990 921103895 473921365 338645280 417305230 417238498 549673695 24572970 145255725 715632441 332207247 66668055 368712940 955912468 925593132 367993397 590443421 807934338 485031515 636649207 875489786 172187464 538088515 651786060 146923503 711283522 813793584 936331184 42612667 560875553 903137769 431502663 694441111 496880061 315121412 839231443 48706711 185758651 838444109 325820837 176525792 69997153 827095865 64520723 907046046 81499275 447293008 435086433 623281158 591705579 832619559 540460577 546415892 533530873 345481075 921217037 466310590 387120233 802009262 393859043 482512236 105684797 58156258 173068779 60919241 821068021 103638123 62156207 186534601 398090403 771719039 171401947 425483859 862444913 422229082 629367435 357228729 848893324 838726837 608566140 770703012 57353202 752646204 645699792 755278641 427611210 80532668 938769862 202656974 875921994 773436882 16022205 20457269 837703933 38985956 530098653 653580798 948437601 287618895 120634945 962753792 44288323 867357403 950301233 121634195 873660314 85283885 561309875 569488857 449532867 103266950 449528341 627804503 348410866 709981490 718544551 926070364 901130547 10532016 799207508 613335273 248174532 675535680 458693643 395563929 384698233 736191659 324050112 939112313 118452202 844996519 302225891 948127521 417422905 226431688 573405240 530670744 526699908 260186095 724968068 911004722 146799755 362110357 877787643 438888529 948386472 604923302 223285541 570509331 643576813 433063579 278639154 98176738 919500411 632803666 85931448 405880442 731563082 810716083 952115012 252433515 977804708 745444795 212288672 628516911 275836926 488057613 304477398 518579329 545194967 840141064 460880341 841721295 439301638 845477589 972843225 923033641 661410898 796213836 483847688 29039563 801637399 127710336 455721754 617135121 664415934 170049839 742135779 721184943 138199078 176478244 635607420 599316391 894996792 880425377 572164435 171550787 985871073 950676195 98646551 47248335 2534969 962847295 272831321 904641480 788847309 721172387 843092741 707631199 413231324 430350891 707889298 520976079 179027969 663773268 196020248 355939513 204865310 636233796 271933792 488278650 72572024 453443286 418742911 855362145 283513422 994243133 575721624 25663823 687824957 841656239 393227410 414439368 115011876 218369147 259448744 211931866 838913271 862817397 145864336 581919530 896830261 723872199 719494961 344931601 449671556 825484372 938582499 245846776 789296 342909792 471589513 637526900 807638946 544498067 191020626 837204324 887980588 731245818 676985374 169411767 644376479 925192270 205040824 639088788 499553124 186860231 813289727 256857061 469785203 573133745 905409512 256261805 797100231 208372077 556327189 72132909 549974976 718285083 934021750 439802595 31508164 763797893 946170975 389022495 707894327 525902267 7137295 379703171 258261684 260144475 534297948 224407211 632558306 438188639 907867385 802669261 629896163 969228815 406097887 935920538 111110516 721805827 569905933 285830167 307501784 891166032 339189162 712331621 451074673 282816055 391920805 641540029 999180873 456513043 588241443 195454470 168227551 326530964 659731412 709208061 408926644 452736237 276533162 980510618 62318030 909272086 554342213 508280557 593470841 527663608 984533812 153563354 775938136 432387607 687511958 64674907 455885094 310718424 647108970 621844895 604284712 720562779 971447190 449862362 971390865 481478328 423011762 907925775 544892748 650241845 64783724 240062405 724837370 22993046 550014490 518662914 461152512 638162806 40502776 760800929 848590787 774213598 86368473 758319765 175010981 845437560 445242911 9665054 878129816 765749223 835348961 809135708 925936499 946958801 798352522 617682458 983446950 417453353 144756170 554724899 597238500 643093827 517922625 57044802 106379308 389960720 859845075 740045768 934391915 178089499 743752079 875212105 604930385 897423449 492254560 242901687 679362905 5024592 235622017 818114108 603433008 444529577 153970479 641277079 449699085 370847330 464348247 259999966 756860566 404668354 539302665 374844522 511868809 879019342 70958039 272108411 653659272 160003183 729793272 477456430 499932336 977013108 53814101 212366971 26719747 409475965 652931972 604828606 770684836 163777795 4147799 720557052 4647167 270989374 14262000 600634484 200195216 899191307 330191792 984994540 377869680 297470038 854132810 779115530 261532357 149428754 809606374 311792906 118657176 321605868 144182599 78999447 803118768 497777028 995380376 718199658 823167054 347160290 106321225 714214322 383854269 520934762 945783310 979712359 591059024 237981016 26084664 683043983 541128116 649969247 787088309 833058321 315421446 55739799 302389538 813475081 615379029 421534817 936012405 533993076 660662132 357598824 775039783 425605936 542498536 676452797 93309573 621118542 483370053 290526461 98591975 512475180 769643700 293738450 877371211 595633106 369988468 255635194 294076662 158328041 645666912 742250307 972457707 788810827 954081470 611677600 545993538 47219051 515371587 300098684 36727869 110553079 674813383 382997585 131909639 459987746 540159119 549914790 56828106 543518779 299856307 110273398 166640237 810476836 26690832 758000607 31040054 233613291 612395712 153435553 186143844 143477451 839515998 839851332 234695769 706845901 450605961 562966537 244183666 603270989 920367576 902788352 934190364 11650664 42283521 617284764 369923266 625003422 930400379 973663696 236214540 51215281 532597186 205553535 943283663 595250715 642858056 693382912 277168774 833724870 42136591 588864812 170396007 830740849 806901174 702255246 164937861 316412837 950951728 313329896 199515473 456921119 398638895 84151111 285679201 515915882 96556191 810595766 627335851 113972937 386183960 479153553 740936708 534441618 249286531 605577617 459013179 176134206 537193679 705198129 304411783 186383943 837536398 144714168 10950337 482939123 478668970 217376588 991397361 749927431 200553070 183602978 254313979 613258483 698988652 224284995 58103391 251592977 533738375 393012557 429986163 542752071 199903880 243363324 988482563 346622983 508571265 253096487 98064895 89564167 45161714 436434677 904702754 766428261 642283114 977760464 404849014 409222951 78513962 228164156 759560249 633286176 453790484 104799626 671658568 53438745 768172321 456429361 529217109 731753691 563015658 64157716 40188185 684449849 561951753 449494216 347361668 212117987 454592059 864594873 568291807 498633091 766894943 849711667 61652785 392825543 904775048 712672625 902545127 114853558 301261778 111416390 660186508 256110119 480912987 703806251 702546245 13952186 228060597 822199570 115796148 712756532 754340155 464575768 509538800 375829629 131561174 984057133 772342715 220017835 645153561 925382766 993539945 765533944 543692984 192536524 435224401 722929506 13763917 374513622 604504121 561268869 78226798 969449998 454895237 712253407 855278213 79280430 670420639 724075769 911932869 902874354 911001669 855278060 836661535 176810795 886800523 405340336 665396615 167420568 369678718 977184227 665982023 321178825 45310457 455741427 955923915 800566274 825574026 872535447 6700415 598720430 58665474 124677930 349392353 140403087 549639370 904955986 776567608 392636844 291422388 822684141 711701452 718398195 11084052 792269775 956714639 20065486 563331149 114232435 200218943 437938522 893717449 273927164 193143551 399293139 811008156 432968960 410305095 764926772 942599962 349428604 460558873 144731199 285178567 567966248 679445596 276530284 616161915 366642860 337412513 129738820 647068028 144764323 85310660 740110330 592674197 355590632 910786832 288943844 306581330 523793278 541478516 155659858 906264075 605345732 78265164 102341202 673461349 226021419 284981403 20388417 113306948 849670671 426779948 646351647 219429909 651986950 520889876 809116666 754670447 691939597 818394867 330666556 760411696 648865831 666596341 540122702 351188367 785233003 550478109 162034277 406632575 423335782 940699220 976781328 206901563 413132191 144837170 160261410 111520721 647944347 48432651 296698541 593684269 95754140 301891426 665029495 167731766 572507702 760668561 947811003 611800114 366821688 900937828 922307842 465905555 267282500 42181130 303101545 186388415 760802484 982369143 341718017 651643776 203038943 556690537 456994816 54033994 555029662 51228081 521035228 424176611 273210725 954519804 457810020 110735954 464524669 508998657 250086012 956928115 451155182 622750705 997651154 553311649 261485213 574166400 268821609 120173783 819040561 689481342 228276407 846151600 127083863 197468340 624334438 560003372 846320562 514043954 274590456 191932811 310277268 298652068 825585539 278830581 920977858 252790537 940687948 155740669 628665443 363140218 602364082 929274116 778905740 918528869 732963766 737275477 939702510 989645041 184885246 446500240 711043362 443519289 747523665 280561014 952597297 739878203 450681557 76675228 766297111 889051764 909411756 744154149 329874327 306295671 176248972 882299742 394005525 610057660 604884820 928748945 537437077 120393540 978427437 306206025 41847741 27476814 270678133 129769807 428266926 982424165 465333175 936457250 312016389 935117108 810415098 567338641 266490195 297582693 794936076 676303487 80236796 854613345 824713034 504704003 78876362 148138661 689009201 261653266 232397466 615938382 691035246 469787697 365808322 708837632 18341406 39501462 596604953 818847085 502770629 121375622 268823090 100197821 498204313 547700877 63369813 436402778 164437445 809062127 964981754 628882047 410463765 315229826 340202946 246831448 549973262 874471568 220689381 374944390 958124931 459472934 197219790 977265488 214443404 8223433 356062593 352750732 134364686 455010366 76469235 102896440 399806626 51246239 505261478 19855090 450489483 286724585 774265372 523383092 474872153 274429687 977664650 525244385 254495525 743981941 93681815 149337086 552649196 345480033 194849528 724636008 199262925 559591512 143346182 274463688 637197028 148095062 464141536 136764375 712454638 392804961 733736707 815060540 639787766 706324922 573305116 773215463 76270752 468581516 23148204 418880221 679780829 953469122 921632669 719044551 741850020 117452688 323306303 466880247 788735236 994570365 936395862 215596920 379650766 233327716 472487379 77348441 552584768 74417091 582530273 805851637 926942648 744830393 445918829 433723375 292781359 284385045 406027238 387157950 306678737 942125564 849119596 893774309 105547688 350174811 966247706 112152539 915985147 715088971 200514333 950854455 29225082 373271701 744689072 333930650 66694720 847196869 746515247 836100131 554617424 587291526 319031935 757526410 665979829 277047810 112322543 804729378 833626198 813198015 236588238 40578428 280856721 707696256 748400501 358872920 551880193 413855308 339480307 987295006 638244707 312238397 506622329 349027215 204330256 279729104 223091842 980213192 443202536 174196590 101242446 674125983 210360512 534974995 915538523 537038419 964673830 520876271 628293402 6610554 178484362 225787161 255882418 339059547 886964104 123728092 613130992 252635729 88330071 185860386 722776500 656019969 989616543 645477151 755796081 261958132 271111633 875394050 174761853 94055711 940933182 736166095 476027413 720516693 849077070 296513372 979470733 677541203 530060648 237322885 435721239 377421232 819262607 111529710 342410731 842025529 624445385 82257972 210110069 12098080 116523168 72233326 888259847 328832897 518787449 380976156 618937998 85557654 794112310 657217834 896345707 401844028 209662175 886192017 150822383 860487273 218434041 437102177 627367270 501534499 340223286 280763497 164591163 137511143 865994720 320559770 824219634 950894103 842367538 196296272 470366652 978874863 296561234 193526748 821554551 347082208 861314172 408164955 9722625 503581112 224299684 221625492 687389835 463946615 748452639 64438152 885958996 137593449 405985664 507379516 9349772 145925704 782637322 805350132 641156557 587770687 526088892 330704892 778793444 735441821 404266542 149323901 768313589 741199968 595572848 732842920 535848973 719863426 874516604 199600975 464868437 425377501 262356163 327408553 220524213 462720550 650389401 173967492 2197724 975711790 637336715 445883663 304354515 867300761 111467157 857821057 425764719 64383243 338477444 565089446 398114973 557546148 774962479 941614769 251389078 222677159 796726405 712820394 292300136 711848397 428700096 363396056 731385407 21614678 694286697 6078063 255871192 740633946 39740104 714715166 241204829 852023330 252052278 493766466 956124863 930292954 18838193 608204682 593743910 18721761 600656064 681427941 812531942 604302069 56925801 11594086 437018247 358072611 359014255 676535361 496863161 390279710 11576437 564891336 496958687 51972543 730614266 650786760 279782551 281706504 866049858 347135198 3977967 420353247 898396799 254713400 196427239 192485758 842777363 794827713 12334116 268910713 610944506 946808157 802386787 941264546 740203694 962089042 401678065 924794126 565419405 735515322 131993768 65016074 978003398 176762904 48216745 731950929 151844409 463824850 187493645 78900658 126897721 891641288 304346003 702326765 759091478 647207167 35886416 25470175 824477617 277924728 229253217 267277490 148043550 815770645 229038688 242227893 416869986 917352667 142943016 334098418 901535149 672034668 563028156 371898946 104179507 70043619 213724045 189945398 229825645 191707677 594884982 737813367 975551752 431096192 907402516 915837925 304812969 62482534 818620791 987008933 597860321 575964552 302215501 446750584 74203556 115849809 528757807 108866228 363256760 248454058 179158135 884415059 624643344 845314739 316467633 99328058 17536923 25756624 965792022 874664214 712457677 301427004 628380377 650570121 521335970 11487995 217694084 552576039 559017492 481917671 791513567 701683710 819817505 624644071 156229272 268806942 287926168 477448683 352491037 457157675 258394878 422687598 8171260 168733098 800691366 926077050 254513328 443970263 692376559 500148212 180679367 504247126 482571677 284133626 387676176 690674518 657419420 238049009 910621909 739783123 792088124 645691922 559725605 824105189 680000054 452492236 417355771 758545274 169055029 431948496 944012346 848412576 31293021 392915205 987381847 649790040 351578659 723767669 242444554 84458564 819861424 788106938 238888319 66928980 514681893 262502235 901030899 471714890 860928991 451697746 324890265 476983342 534484958 434601447 858290075 313267066 226625417 842553431 207790630 786952714 142611542 725523237 432473605 894805914 730258737 673700464 633593090 951835604 985354662 280282689 482205303 589173713 955386502 811776274 324865501 945880773 973267453 262999198 104757553 444898036 897967226 626556651 377240083 532026518 573160689 727098465 3466199 459889391 977007969 305961235 369202463 923691880 619167866 800676823 293268122 623754179 163853810 248322418 308235724 47435726 499552169 892879589 634672437 834394644 891442017 920982776 430944391 140762288 291539317 80514921 351825379 138471890 473134632 162847457 702323837 551194621 31799767 820316047 619221323 617359508 518829259 746390133 960133380 265564348 752066625 73468773 843092528 870515227 221332216 700491825 999384906 409696333 963602676 108759742 341897647 59173264 677624985 879255798 436055441 137822538 765077962 5943867 554695318 874460363 633870101 170097059 671820201 204449954 591759401 891164660 94590330 121092899 909556416 59924395 766600282 839059086 349078571 530809779 181273458 880159529 300730691 870826552 625959778 335747095 358890200 475957686 39707879 880228377 40048623 410133437 512709664 336101243 72865943 305211206 990784796 180735668 686342647 214960130 310745720 95955630 716931778 562666202 223508152 531201895 975587486 301500997 403063364 987300985 656596438 105656977 38785373 67214559 594812382 537214066 594999057 835616468 639197191 290277730 311462594 476685188 846664652 332507928 289751759 772918568 795898808 466636365 436502201 670671354 562805676 678757333 510047080 906885675 716371217 353042882 388854342 118030277 242182562 430327983 163532071 491402501 627936349 136362634 904683621 328134539 469528512 54255900 375357291 357376515 451731425 59059643 392757871 610511930 617561220 554380463 21204353 747729095 170115363 258575845 389278260 358715182 34092995 141458441 481036016 304007597 473366489 353655248 634364807 117370423 599307165 739174198 795228313 835548469 968755905 706753065 774455539 208973770 468511670 434384419 170498020 878508634 292277552 321080521 201827010 565430134 141145582 210516525 6306030 723152769 241478567 658923686 331042561 26509151 724556774 550452647 219868626 689505851 682838459 223547333 356374926 918431783 241020275 566049030 652680209 245655948 483899617 419189562 873669360 608885420 546962442 758911109 513865324 992858204 486018255 707523766 387862392 83889110 116951140 42951297 878316597 330479452 248262048 624525766 205528214 633967755 440949868 136190620 25203542 651829260 499418815 489323979 635305755 656991599 310271420 995009334 560956743 160906627 817465500 522405423 36609784 360277601 870605409 343165148 969186314 942135288 289221395 361105068 226042716 754459057 229501843 323758003 973896493 152246315 205489152 501838352 170486600 745671114 846756580 672938778 698597914 934005708 650678825 712696406 290276679 321091514 514842535 197252647 852452102 905819382 530179472 744163306 914280676 742536909 222735132 376367972 966736675 156426352 245898331 635454496 696272296 969913362 823142772 171834221 644927141 746142639 346201387 745594282 820151102 589324543 818197341 96325205 101048028 609397541 775110809 223520379 60393550 856272902 574465612 315690529 658842000 249912295 329635868 850387034 457015453 164266335 313014150 707841360 769696771 825597403 942815492 310353996 650595470 175613276 138134982 819114469 968135963 269512030 565246653 21319775 343471482 419268766 500976839 61622913 933011492 69428362 673844867 493419898 866616221 514538764 349532806 325793055 17963153 941025586 925272524 587557118 213076287 164500044 560487390 758920410 40312968 637706220 785916736 249948823 612886961 436492016 425233786 253061720 723103154 727987031 717383451 960025047 469926410 892015513 301110861 791184586 545117247 841361425 911073472 998518023 415514819 611420699 145896848 758241051 514503202 84336616 671784403 945365526 510781030 425400789 275924943 261409486 936899043 845305719 96037082 220228113 693995373 912016774 555842460 747517996 973927865 353351522 281005593 647396341 304625763 111379004 465832663 870339791 738366444 736633077 717842920 658488378 901762489 379426709 267481839 349828359 569057896 533817222 392945722 382304987 94147007 742458702 282815388 548693976 86891201 59670010 72513439 455431620 871138428 980187801 974206207 488512707 841545788 777842118 640226468 9557126 873728053 308554809 444717193 455504255 269141704 672090164 393914515 525397429 989950896 364809664 720212284 456644533 966226531 990717157 40663300 669339152 340107180 647768201 62694579 304171440 225938038 201202891 101680693 695828226 270780530 349414384 475930885 323221219 947998306 953399686 363824803 905881706 720842330 348445470 893672106 263062762 609966575 243616513 179244537 788235223 377600434 835870078 885347855 138173468 408989721 362356 5149736 486755254 794610797 534192074 505135541 803685321 497497882 366548030 406262518 826171982 454739819 21842653 612867028 476579093 522568174 118098284 7760903 614522586 535936339 108878776 129483152 962433131 158953725 85803231 977953448 776908669 83576309 223115769 230292312 321376898 592839104 459945476 266237736 748646252 921377854 170432255 566451696 352758369 118432078 583166129 902876072 785927224 114227175 15132063 760603906 416509621 849343031 958143407 460521614 6268690 717105685 63089818 756158604 482438730 364864444 383508522 44228715 614779549 590566052 139386923 304137245 78766505 837389659 755222173 336497695 261878457 827608436 885350406 26834875 604851415 548816214 200841367 455329397 67998576 801740035 219556603 409086764 865537990 827430228 195298613 612932265 736694774 439637241 502954474 195649034 735201190 736183092 774215194 643562384 883485456 613965776 707873036 714045492 30918044 629678816 307472913 683325245 476428047 247456474 411555972 135111071 546495495 876634260 51059962 755208275 777748878 214349418 340757140 408628930 176624018 725571897 484690148 884744453 530727497 257246471 501375388 427586283 162624388 333421594 389969990 155663392 177219318 454281831 222802690 427955516 484392979 679236352 248718710 239631739 333095237 239298010 683589252 244658199 36879202 714518495 27044682 899144739 415212032 80320220 627573646 65465315 107871301 258490040 251930839 416284506 191227109 953153009 637175758 257123888 167609745 262038522 92942918 754234134 180353129 437782291 361649027 446000231 315290355 419066954 612243603 319459351 851185640 663379416 634956637 643846503 641328643 103656310 777565805 12817387 756824116 207897010 933072610 51335869 379123067 729394357 501742169 103198941 551960369 771818575 943011611 100577351 65990463 555811389 250633860 844122285 533169276 519324913 654406881 636451896 571872285 319687778 875929669 72956590 263690122 660986693 25076857 188301280 779453513 859950289 266745150 974944405 32823407 199620688 509697750 621087636 389177279 855726872 578139614 281828166 535951506 688095893 482282716 82403890 271788715 362991691 921977187 913733862 388445131 175474482 138624076 482697148 630435894 778360823 462335831 960111925 907722356 963669495 63610238 64579986 417317202 703513187 719720260 156479968 66690524 338323048 81321234 854916480 685370222 419152302 934078752 758455359 584858459 43109698 64539385 407283618 587815400 849792568 648090942 30897316 274472972 582746503 548329484 533612849 208299704 633845284 85840588 516055391 807823132 263136546 907751034 152498839 87888754 654527325 299385052 669629040 496261014 260272857 80928015 994017310 333757104 39677935 451413556 494858636 124184985 262079316 2389438 106583104 670972305 355691587 709729333 872394053 759246815 156148478 217507246 633878439 955054675 43491285 728923172 23038943 252959537 928408039 893197707 144785908 269567364 997220315 678164722 794649696 652764785 500176697 313298917 697333483 664805016 128727632 754074704 412599007 458955208 252761060 248155621 534422971 834799554 444793087 691015104 696479150 891666653 837626476 791889806 33989760 719334646 317717927 664092672 196721989 800318739 741132774 235167287 442186640 990544615 481164702 25758591 250027523 995518869 858468840 466899650 659312148 398337763 542916271 880284368 283956544 733586923 104196169 619690240 218307390 503501999 789733499 854325151 907723239 998813747 76171643 926379368 335248203 353223863 187485574 336846133 101228183 44163378 143962088 598439568 876311689 418579329 461740442 791978902 493293111 676868825 405771816 83196356 443198974 551914348 372796269 140483692 130972078 89708851 676561079 600244616 200259678 910332107 407731018 950528454 827300911 654455144 429149965 901899782 18321810 572107445 967284776 545181243 23409735 479435989 733501937 525994339 228601758 477308538 279578796 311946131 235281245 644490714 923665184 766862047 687933461 928231478 686223 374829188 293867997 526090548 104462800 385855434 358749971 518078487 89532116 375810371 743178383 776784093 959602779 236026502 554837007 776345542 824583941 319438657 915824147 800657868 78488951 871182894 723527748 614798796 372305495 684091944 206101101 261166850 462406749 2000045 685620606 627489775 443623187 815796164 69564980 610165292 261633140 476290235 985354600 343242850 53911024 722397958 392789732 524295407 996662544 613371226 7173904 890198716 740765818 989523936 715230558 787006879 943110216 467656153 931286390 280951504 383542752 833013762 918643701 386449739 754663066 655558443 298760428 684493698 614014301 143641343 122008416 497018828 393409250 73419140 63978202 577097697 569372922 923567537 514821579 142986035 349893711 381798111 706037516 753075176 710310253 178183962 186612439 574073937 351981190 181460053 817661197 616655020 504447511 74024363 223661368 472676210 781752888 308349835 345592889 186677558 566086239 10884965 997034262 458096063 209055634 885719941 269461404 937402953 641927975 224984302 166142611 335932674 326507829 375960804 391333885 646146501 863451252 813576905 511802419 778242777 369551553 869984486 423421830 813024754 958348711 689685935 616973608 962854153 94075565 934919830 308043737 744577680 632231806 489266163 809069858 722308086 537290908 745681251 966240559 2325321 374857774 206059855 838412286 152145985 915166632 497237924 274259684 818196219 58213531 595692512 164011731 896121978 680817963 594003685 675306904 586344709 711333684 949282133 537200915 112925735 869197746 250474468 788836169 669198103 201625816 597311151 574805779 111078472 174466766 580973001 874238556 896641977 316640720 187593112 704109722 256583828 485329427 913869533 803987114 844869601 540525013 383662020 806588151 528115233 964193876 248160755 828278006 298572574 652351801 328913859 76435730 270425043 28709876 696101409 115166396 40536520 267294460 436627459 633047716 524891507 35815967 336781019 366553957 241060809 865860099 452382532 375807386 198835198 916962763 760786594 944171723 932144762 819567833 778435629 166441840 910038333 509900060 344465657 348381829 248035188 38106431 775898473 245817735 963562933 815279409 22907620 616854149 803993558 961008499 252679258 542930662 304523867 101556449 518622283 650045873 769124323 817735493 693825221 748616397 834522608 349132774 382237417 957342894 751363852 881145176 567468069 585952545 895577060 480025529 926100217 578283637 641895897 409708701 880337223 495995269 368510804 413333791 788994165 710162930 499038488 233916648 484879031 51208493 812266076 271324717 70170674 885604996 960012604 76161145 61668215 986512166 695376455 572061445 332847090 327037741 19973182 415852318 310479880 951589589 132472797 883579653 84175141 931382292 100535304 613364607 251428872 307297496 523603004 535028319 396262869 515108195 74467919 957834581 863174158 826772698 11523255 682250603 699669954 914466678 444667557 317844234 913734582 434512077 64797688 726948978 650966640 244067156 363651809 104906419 406443731 528520665 900553453 780362491 237324253 410674869 453825008 787414556 370662821 482651896 6819421 478657054 672342297 314007918 408981414 770244526 510758885 200018381 559853955 860714089 123792957 557514427 937437746 939139206 42869693 732868924 326181024 866475350 620988673 577571258 904687682 508526910 291456506 611121470 95162745 737024419 502014972 112557050 542655384 177985699 378967533 941411285 55212282 909796230 610391169 565926261 672094904 301992626 746289385 860978165 700711341 437660995 992075220 94206780 252255905 577016988 447532319 954125306 166963505 424452681 476249748 231445626 514570259 841679576 859881524 641914411 239917799 557422148 54438445 954448651 350501537 306088152 91011818 94333007 838464279 559075793 831972677 939885238 57381626 826116321 699359452 485093280 32576416 194050722 457824083 981456433 343117407 382189401 470130485 681963826 884704009 600433827 491351579 84162753 106368329 594604797 394669912 40443597 166875142 923910768 148581858 991543076 287473826 971951940 232487433 11482654 811153968 891908098 785995082 613731587 93806195 172914248 888359931 940830641 671994325 980978843 45172805 881888061 809480172 916692214 68373315 667975266 285195823 633579175 942420227 938858026 332905534 489838426 689720186 646666872 380177568 923541354 841671904 550368233 516320160 262290125 359742719 38417564 913885088 859248266 172671524 971573116 679523031 814930738 885799485 361166135 26356534 783554829 398856936 483778748 753147517 367563185 325097026 704250034 792419225 908734614 452392426 285326749 565267971 221737295 565189392 586740750 71949408 562250129 715960613 585804807 235980918 949038062 322858133 366958785 932343103 918619554 680680701 499716002 662446632 778786559 486682451 242434417 144765927 58083212 430868833 440006720 222692552 95182833 502037267 826716005 739341184 516702893 331764618 297411861 106293026 149402155 516651302 777834609 933543375 736906466 468333001 599240005 41672406 315151828 554172158 554971938 520918202 680499303 674059831 511980824 645295315 783642424 771363178 249915796 529083956 244348878 929083724 540279198 375013472 776647815 579094334 938491783 676993651 195376180 306956641 494165985 681981904 364688174 655865844 769754353 781906635 448957775 770184804 337874324 988628680 320856684 670908888 345047761 796970862 721932507 761987112 960970137 312313008 631432880 31233866 779254961 210006347 308633863 630928621 627398334 45035228 411750661 852007229 426317046 485596065 285686837 822714687 759140099 465021403 904608336 904101682 59381814 619037086 120155297 183556431 451275465 527677290 640001954 552872108 436603862 459532227 896686499 306235533 958651799 77650508 739046293 178512558 600608580 798673104 909748131 143451823 993558220 419157452 875585080 594559161 300895612 626571050 640056641 682993243 671749614 335007855 203759141 167851924 269857524 275269511 629370325 537473128 220045533 299348638 816246118 816204806 155143095 31936013 421473714 76692816 962064034 236110009 754108223 180333773 452565446 793409898 934637621 288822912 606918850 432365114 653631672 447336272 735996165 639604754 242850358 86251051 794051167 570398498 114907141 731469014 941160093 480418355 240771692 219097544 764711626 927847092 111645670 947458521 172426328 7425478 479504809 229847093 581461660 623399666 544403408 815596309 581247063 183282489 329298363 282355277 899468600 542465619 674303700 998769940 59360436 650569612 271805730 781852360 48569591 743502217 975157514 376094812 390499386 500619898 274441833 870611016 597605793 896799863 925117519 994486538 373780923 918944030 186725292 439827916 950116919 370510592 449726940 423670017 656990779 69009101 760683808 304754900 260818283 848913139 505882500 135786508 912335503 463339382 515514909 548628053 404463962 61181914 398084648 641573527 733944057 791029065 325146498 268419237 74521039 386441185 263905269 69171586 596270828 395053921 421447801 281985686 352821735 627051578 133081786 69828092 4866933 954294334 119998746 760771372 226445617 610097779 716149104 616942495 838206504 940780628 262219558 434961591 584692036 344846177 369921386 380609123 245706682 672921843 888068613 371128316 960518732 146285273 968656439 642627836 891813041 131159321 653789681 490099022 388935233 78558578 539167373 329447828 609379784 296505453 796073997 531113539 489356524 528510308 428171080 258941004 77366086 315805023 474134121 973407563 802412855 179025796 983739889 116789625 95605261 219494184 849840131 536762737 733822056 84784507 228282358 886081435 328884832 550828192 175867911 607513698 964535515 450303048 187493503 510755469 185676358 869202630 306846528 886016813 556817051 33343451 864022241 653409704 872814917 836604033 592772110 914483347 960460756 352371091 900398543 126872915 13145472 161414000 297281084 767320364 152132827 693584197 263426951 84293951 698612760 568483019 295075076 154635188 685723619 566422812 189265706 265549777 73094185 235918354 40995653 697768499 167867940 972501898 368655010 717098763 236970673 431461299 334408194 529235077 66084490 249894066 560014603 4081950 308635171 236787997 348256410 890611944 830679272 453692179 684711691 853019581 402947845 15414630 649921675 701235271 422739477 725629421 661888206 348542513 715172720 6645939 30192798 549872238 230672335 711853251 957790938 45557707 388796631 678714371 351809776 17158576 799895664 706781549 795404872 344943680 718503750 658062946 969805168 525783518 18678133 628947809 450308922 12649271 224053658 94675562 834335483 606370197 608737082 195916527 518352447 625994861 63023862 859996649 856625217 799957018 395320388 367365139 195658114 395203219 769075693 903002041 297523495 495281203 401467260 899087475 614704750 191339324 110720302 465022013 822157560 858190558 87257006 685781076 253980345 706213104 704369444 760893747 449437621 843632509 780992125 27251490 669623546 588942805 338634765 126662734 440539440 190818424 199326660 768324222 272724604 215159513 150854801 548786029 670580969 358570738 323096299 231268812 699386965 772686598 786513668 734517179 638270992 555879462 319011013 537397838 346734388 658230082 444967751 482537486 413283553 423804722 14087344 370584554 284578163 26242943 312358843 751934684 140653524 481065271 320292884 136790888 719020985 319359503 353754624 947998132 353489932 790688531 909672161 626291374 596383924 409576497 30960632 169790444 936817838 720609702 966930398 311928656 251027872 692929606 504418936 250684645 84260725 35757100 341101945 423162876 723595848 320419174 391410994 760349819 672003987 441041445 866847541 628845645 485789698 351223485 878610390 386980437 303145028 239521273 75559430 152743741 553043990 9529891 534270210 603825902 975999996 306114163 763777298 372415756 65196391 27969655 604157115 478889492 572717907 234282744 360017269 588505580 704807344 493683214 685192647 141102896 57115000 285868 657199519 755219604 550888210 461239597 937957615 42315899 829127767 571169806 45957641 330135620 802983447 487025874 313531657 100249023 837874317 429333496 478178037 163840779 303652823 282765120 411179528 925501829 316948897 291492276 520802128 309385248 406240256 103460511 152959202 828734854 532848745 599584930 206392873 82501369 388590261 632928184 368842584 752404111 866949887 953691768 726377479 453206000 357300151 467335360 301897702 794610588 58605634 436821138 731074128 700572251 778833810 619042731 879806781 463345054 573446956 497386013 427632137 333086470 444758429 595356808 150195319 538638945 194433528 81446686 664073083 179592774 932633221 521298459 628327157 320070757 330713076 451893063 625034610 918511618 950857819 845900228 531523977 787872436 658208763 326700795 713780148 612590789 541363111 739813265 436911354 962045735 538195896 910764445 384419223 146221718 463141534 486205401 543721712 933950746 903953865 832404925 812563360 890969470 834103769 701374451 494656750 446111437 811560315 893206220 360640007 965010819 881294487 135964126 911798927 330778761 273320281 217447685 736850251 367998642 463351718 352532940 591613867 911583475 543536568 661464121 185782051 598406767 898450908 14718888 974936667 798740582 292342590 184407172 864201801 104249259 594875645 239185200 973293587 171907942 476712529 2225183 525584978 965230743 910855472 564015830 420635840 200056052 549475371 338317380 158040901 706509186 744208266 988869845 738419139 199017724 398329642 831125511 82755901 100779985 563039442 909719970 1718306 734468857 526234503 312804996 899638815 732438215 652477711 372856317 266272552 197636411 861220707 385565339 494781206 125040228 836930882 678198047 551699280 879699661 929867481 647607063 188673297 579550787 371765508 503257534 250381988 989330747 685238619 55520398 436598371 287775954 598487708 185863433 626189319 912404813 975661045 213127526 48718400 341825202 867233006 947998631 195592280 961083181 189339366 349567901 153089399 160692294 983292665 182020713 793456359 973786112 680365090 757569902 199634473 390794756 367785777 546963581 98632017 542381215 98134863 839760999 257089130 881578525 801310696 971702582 6347515 47814263 224739588 305625023 626949534 356051050 389202724 592339394 137721283 275409201 646593775 252559762 192833563 638386890 636747979 500093007 879114079 332440951 199305832 376102435 206151841 516786201 851500646 390485734 925271316 525667118 181099032 838208535 929527355 458975727 800928628 890075212 380129541 630812465 995234715 420597448 568360082 592016755 604545043 393998874 267203325 180942180 526107412 620540742 650253714 774925959 13629383 139368905 17429270 546915767 193612552 572307440 665785032 624454159 490364536 608614281 830433723 518857033 272580262 407396537 551158734 590878745 203298003 278115065 281143670 168861173 885879338 791771768 811540728 634601418 586789346 748918170 363651719 938196116 253648668 336740375 467326842 393528712 79154593 905693297 116927277 62435350 13764267 640553470 599412874 969071534 120499132 667586351 340249288 503075706 735513956 971821694 32453289 413760064 938260841 310999607 984215885 52376002 192360847 925023989 573880939 20785815 943817398 681271695 769738273 328425341 270447846 597096293 210905719 88160508 408769438 188531834 841125308 481539196 848291348 5163008 360053955 588598027 517986474 793286362 806957936 477670812 883486918 50489897 236856730 554617357 898348057 180351178 493005327 155702591 961717815 513395853 248987568 518000155 998614620 624474094 457613482 513648109 319314687 336078650 3094655 319370399 397202995 249623995 848466041 991448122 719169071 222416115 986545035 208175559 324479404 869397607 209576959 262232087 754777078 341047485 909286607 378648277 595683505 302939037 588714784 937999725 156465623 78230468 326036884 886262735 893793690 545631 629763764 987785683 210508676 119334795 784964721 93187783 599957067 963777345 614081417 332902167 945511358 866585701 372305053 764920881 361763572 815116690 283100567 42047736 999581952 832924862 667949182 279480908 802452686 667064597 241354230 981719862 853121880 655873854 286649792 606299874 230944674 797497944 486802932 259972757 691797095 21241479 221828170 311798243 804996562 957154543 228176624 358662350 849409388 124816792 506419725 773948516 138833760 84313416 628731501 503631884 905238430 403033733 548268786 788246742 426826471 263022519 950000456 406478739 152094190 132746987 991482938 712540407 134645777 410501065 206518077 541426905 15861151 634358222 976026597 327898269 104528037 324360848 448618450 960956465 173999386 983904721 499282576 649127750 120150444 778671329 198450104 48511566 719832976 443471720 563357209 342965439 788021478 134905000 417779102 228187547 69502213 429643875 974513595 540219312 636535105 376726524 465205889 555393197 677243293 957938072 874690857 4577461 297793121 327593275 638305785 397835211 267014626 762735097 460728468 775775568 950393918 38563795 476710715 463041546 943837034 34426704 570804843 650966429 359816950 443074197 917024613 909549273 364012402 32394779 622829693 141975048 123058597 917940627 756137534 774404734 153159177 122431697 891526688 787869804 866200310 548366633 999234114 592106138 530058548 156925414 245027923 241356474 706353275 680066618 395881631 208941543 509313322 544446616 378407423 239551973 593891261 58569948 504277706 981459926 67887310 485137864 418892820 616674980 549920755 184766697 648511239 570153221 218387264 152032379 957113833 774545638 208896679 325140611 953666457 873498507 657833333 103524305 490643660 513486879 395838581 829090371 501977206 454793364 527987848 149695409 548992712 127414071 252537894 222040448 262150572 494741224 828498323 5383139 103316167 975476615 674802008 663254011 893608975 877146020 898048023 880305709 784483170 27782895 684609259 6115528 748011492 25112997 75350048 782076658 203319361 165367554 534350627 718109825 596998671 469608077 8964628 432047772 194106219 672511347 812522099 165333451 216837352 157775229 868554981 849642234 111289807 555399307 215585041 213355386 570210340 121092186 600145544 713895359 188559742 225760917 153687289 403804895 550798093 862736208 154272020 118727435 587545451 1850183 743184433 51990651 37087616 892225405 720421382 415236133 557666124 47086740 188973217 362292498 137477642 381563273 306824630 803118216 476828621 466659629 308500879 504266978 673112179 10297524 896407526 927132814 96313032 281851057 495058821 186478081 761888451 411430615 941995979 364725531 782953173 381081501 876967631 754863356 346965336 785960521 372569687 224738567 194974307 30866661 438472923 144622296 464048301 8607744 250963780 489841063 445182076 586814953 383152863 65111496 418965017 517978343 65050462 521456069 60376444 413837035 188705899 232004036 622909455 138304611 507319195 218468804 687212628 248898888 116638120 184202907 530437220 996722876 94155074 495518170 79735939 991862579 395795910 730621338 692742693 778374670 574553971 176360691 806461458 844942605 283533524 872514324 540723199 134835271 663850929 517451254 339817754 574444605 845892255 265544559 509979754 823486788 86717605 335455810 715155552 12581048 214327015 895491338 481282777 780143299 320510990 204014680 725589415 969141866 921617329 863958292 202328597 6382316 433292011 495514591 103276172 375739433 555536152 902710381 781808443 604117405 300707590 794547137 746559864 824814097 667125463 818179108 364343302 939644583 574945673 858271001 445246437 787404753 896201104 591975359 690448945 435835254 750867753 60316269 125596753 533369731 486749001 412637652 202930623 629981833 581404146 933061749 746768732 861095861 663806658 136561610 546862782 446586137 96496180 53045715 402602660 403911595 960140480 523029089 732620360 867461142 74579054 803457091 496646365 958529276 294791634 711694417 62743454 540675680 732615325 134554218 944034811 178184489 129654003 704982630 186922234 492602874 979090900 851209171 509570825 869521461 411627706 603403931 586703950 148982886 204480872 279273633 650243205 779613109 775675947 518737201 16886968 772904245 258996566 406572640 393205727 337940592 337555150 845333542 398088836 932088552 409284108 285101501 67800944 518643404 330430009 364512353 855399103 767486790 611761226 363625238 797365541 937694654 718510909 440992212 906347917 889887874 417663326 264420619 193096106 288591193 308200453 882838587 619874273 87128216 269668283 799823296 469415306 6950082 849852289 54154570 828944980 117699991 35656758 611731223 683310400 772960518 85238460 320527411 803272289 553321837 665742212 296768547 115401671 956343937 857637270 14300836 152709180 533975500 628829140 849764947 591037682 560211513 58315227 387043088 923503319 953278566 759170876 594319483 893326250 875974772 732266464 947493839 240794296 940226774 69280991 381244116 242337487 553259348 563575798 543615541 876474433 780326110 964917436 841361080 423211276 986465919 469438223 781090152 836184223 677953564 909094730 283145544 184130960 254970884 579104456 209083120 754957111 157963476 857371494 946788587 30769885 833924009 845142283 238871897 150230126 388633449 279297746 668908882 236123466 267183619 531127756 517936321 24309722 298563253 164433304 784343640 620643607 85670174 705212801 744698636 516267719 698452641 524339865 237499609 415062247 306500470 384228864 39997851 320978596 86459451 438404104 370863588 411513295 625906268 650319214 453510624 473951219 55979695 612897639 689772897 458107416 521360177 956098097 299240647 918067742 7131025 361762870 234822584 161714957 710619408 348772155 31603602 447126206 906456892 243310606 894777166 71179870 879338467 579928750 328779368 238067449 90284289 133971254 717641464 472745528 812606585 889882922 770373896 291241613 294744003 864446634 566992136 509473855 523443422 257616718 126075723 428543452 583417036 862228941 336330036 165702837 536738115 168821101 185679702 428933886 972666656 679723815 68083617 864513931 717024899 21443611 466832751 810646261 333736498 799934847 703901218 698391973 309258200 594688740 925141528 3904987 912543477 583187135 475541811 451734604 957308115 495724989 730366930 937525140 600315033 224255856 331029462 435885820 91808012 520554857 845617075 819249197 154610892 223281137 280625673 357554429 234428876 496606708 311087391 675154243 723679262 618112354 505561163 706639088 666626516 804107653 718184515 626744697 718115216 34922168 382829833 105875491 118616752 821010536 234920387 625196316 804076017 484893173 586098232 111775007 447160258 929216792 355080639 48317517 760039060 729840280 904176700 619908452 682903294 226122093 600924311 405908567 736539977 490438673 922347760 449289334 247501192 922632525 591664374 36429369 501998258 948288713 498192354 790320889 641271553 815866659 271925981 153485027 101749610 164283990 760360533 814736545 731738575 570896881 661425494 211363996 181292872 14015676 669710440 948686651 153384218 860354014 793317808 795557617 337209473 885939759 622046080 232220173 401261872 386405302 715338452 589128113 145562343 239269609 606576652 955198824 641962416 572957048 350072351 684850085 663701362 963446709 644765613 445291923 968634778 265644823 948031765 535761655 905933830 567637398 842168016 369915979 138107078 356641659 216562005 584688860 598350236 356314695 751002551 911178651 952879315 232426478 152464625 812732556 880803108 813215275 146522541 396454653 697448911 573988853 273875596 616734819 289730603 628499275 879849180 304239142 920868078 71852058 401309459 36654845 621570195 955422249 691319202 387262811 911309368 999897806 92534525 503722001 239317258 970504746 778722300 40258285 419167402 425524237 405066041 320005504 235886681 833441988 932825818 535592307 971169416 922001124 980346951 656603324 576326610 508042326 546193483 738253125 422921574 257546348 235810291 315352795 667333766 862075540 729125757 26323126 475784007 864731302 892108439 63898580 306317324 195584306 362892477 738950456 267677790 126966075 870597978 853386855 17157321 947623291 821603722 311007766 629233405 66966878 233204917 371491662 252276682 660061402 528066949 286962540 438005747 462416147 103719850 433711330 963133117 558622099 369009797 478265176 512474689 845854627 491603894 440681251 115462425 385284935 446397486 237170322 402213271 584881647 876904518 146081182 403926316 884438291 348255324 775396827 631513308 979494036 720394321 989585381 440968847 164723227 603658568 913668715 611791527 538660240 194266773 223566195 592500419 141523205 613320308 70253888 386889519 265029834 815213740 239601970 144152754 846761773 220931925 769607028 67376770 824353598 435084712 894905806 915808608 467878777 390442778 477184869 956363609 10545937 907116976 956269724 138764034 419449535 592860365 91239378 752860111 356319116 507813706 612508505 846683312 10597583 729159704 979367397 356522220 154105808 387637593 871721316 99605614 926083976 636090637 990008658 873072020 39284683 661792634 374372646 873135453 584568850 152551166 489696266 126926968 235998 900573588 616070433 738670069 179864569 732844092 391679436 836042759 230403658 164793270 653110040 426462365 49568106 398376062 313988012 715928527 496462365 159264461 409949726 694579069 872175322 967834121 622859335 357082451 680432386 673910893 996658878 254501565 327797493 468744368 635893169 692943696 8114724 829810958 64454550 117068220 539156028 358375910 209937206 220047771 801494240 53773257 610970044 863482726 895401444 63705434 352446626 818437995 418178268 992497286 120164701 899953858 236449033 14522005 768541810 789900821 532228293 366754178 538947294 496702833 391568152 238344516 849359669 611532157 76303744 969674584 999982378 473607613 52106902 743459889 652726264 477328156 455808699 994712563 34815882 471100875 559295117 486580662 919822331 926722795 412287441 389024273 634013758 490739482 665771694 451321030 759530744 644740876 732678653 277490634 110824566 134827548 893182101 558062088 472890898 114655963 940182191 931802120 895723025 499111653 937075552 91220057 341696747 995023088 645711731 319388284 356194990 625148356 906911591 653684374 112994731 287709313 569250121 159658144 78726532 867195649 226160323 202455241 368388057 807824492 864970599 741288457 477650353 893940043 773628875 570221902 962844907 905832353 771999659 925888686 846235104 166654729 213817579 58908678 119322299 272963174 403134146 420428331 695006426 256643319 291799739 366870775 200246563 73806184 981717697 843001762 209637986 200988865 502915228 657297223 934729573 751934526 151408681 405601969 544373555 955976727 773555345 659575759 967935300 267072399 267070051 325128443 726738844 992975341 162950470 21815010 654642391 658267346 445542838 486016670 274689111 675671051 494302222 342968781 318236283 516976238 730493611 117496817 586247804 497621186 869487783 681674286 491286433 123266590 754784002 259013466 546298773 328221322 257634479 415240624 624347332 681679843 829272619 795989238 555669647 345864037 698367191 295677909 575415696 835691625 431660728 39997957 141945329 413938416 48203501 360294006 381593460 608455343 186935367 441256226 321305125 651299666 373681936 132336910 991661356 218641301 592379447 918574529 753018002 540312244 997507003 532615271 539065982 768993611 242621904 27263236 756644574 787265963 170343218 156514280 766946497 526705837 679038467 498047066 917625639 377782497 947939243 346521661 670954438 375509521 169386657 923059892 197792493 548548664 383832194 338585171 479564961 859586772 403938465 934476218 485695535 441878226 983602430 247652640 599286046 118545745 712558754 446994798 378847451 86199917 103804841 525763014 501453781 920042682 543712689 672301905 323279619 754129672 740611678 185467754 703541132 138546751 298201111 1631927 130159982 315194892 572566497 529899090 324356191 348658101 78921151 207621309 931916250 147685135 64180534 670197822 937350559 870110069 646047603 545308663 748970309 725120413 897250998 53399003 414533235 149181805 468069246 488603164 734451755 843346588 833564307 394355987 824276769 360338947 236494358 727619930 104306626 44178533 808463438 887095660 935381833 790322572 99027738 541192123 27093026 707959379 907264423 600467248 498747610 511544875 185872275 828947670 726006009 410322036 310098698 809886022 102718265 230896484 954884189 90301501 709946821 393087336 254404163 996179356 209132879 10288053 258562330 738791650 430906920 282611741 117303105 832459578 50146605 478800891 578420543 662419109 730550059 559546997 963487737 866013600 70312694 921044498 909552344 492452739 282710542 577178637 652084342 315593699 883675002 474791777 251596984 515356118 833222643 161427745 336149862 479809002 864884690 623498591 553591896 442494943 286273796 74722518 357187402 7994291 309485613 882006948 383242731 677819494 622066333 268372450 437685262 300025286 700235568 307404211 532682025 474348689 344432735 564099958 829184592 397740879 238244190 471004779 108671266 151685949 774837823 894998693 767296337 183160382 162456634 68276228 502068555 183514317 736542473 984172439 178476884 447385465 876668278 377440051 134922242 723088575 253628362 850146040 525724832 713243612 639845172 675977747 655031193 824281421 456795827 131392059 684977625 182247669 106767114 314032176 165051464 221475537 442222240 382638278 340024827 892537035 242598523 933928938 570089265 995815311 262649206 643182266 723448262 425865531 550520305 458047432 565709766 719967335 422764241 619031094 705600225 830604441 623450604 868104985 847135766 512513286 866756995 760036752 69593650 287392977 589632161 813405478 41614458 292847951 341736891 705315467 422257696 737092865 650042061 454022163 836709524 955220582 419787804 586275671 698279196 915932558 918138299 350229478 26745261 190153005 974634927 285728443 902715801 884501953 310499076 297784721 543829343 585999844 271451327 111032302 292318516 208495029 320372422 697040984 877340246 190861969 630081659 664964699 463705059 588556358 967774463 622039763 768242250 339149683 922760178 863904583 856660148 214668496 355057210 589279743 622160939 70132270 397861848 371038496 471384220 595237087 86498730 46439550 198297530 345586466 549056065 749237704 170352988 835718268 897179848 37292619 19607398 843658139 212448822 998903189 549672546 503227077 671797333 706524799 10895547 571529998 384896449 740791678 811985118 590266804 691254069 765722482 346543878 956432770 206946646 103627312 149353148 343167618 688613350 215109015 136149865 126126596 25398304 831862874 911205341 343279926 202914586 325758475 764607887 179451592 995215166 108115069 636823189 702089664 304039869 574857341 566795174 48630565 369622448 698987552 49257610 907550740 452146019 511327665 843023614 932341316 939867372 675469398 17847933 76407832 238241446 228756855 646716369 39390199 226131701 543910644 953300189 382035709 859215663 293144968 375987611 159586629 791856534 439829642 182066749 94204628 284984405 992993134 805820546 944058692 314275623 251839275 53860268 581503443 654999905 1065148 595051674 181843830 204864920 690003765 612528804 240420558 573563598 697466783 267366224 730503950 929409325 139758524 680077255 612980353 329643498 432625336 865254954 110851914 340667911 776598424 599812878 872546836 834830088 411029765 673981640 721911364 279279560 909522778 997585290 119101221 713705450 160921997 603935616 934761408 123910560 726345740 211622127 779509519 732520423 439786064 481121896 695151940 640078620 539385445 846150127 288955529 956945753 309802818 363169469 426361100 814969759 379649927 504893946 68934750 417688208 180707865 785665209 648680435 895871974 235810968 122182737 519288995 364125274 98680457 421032295 929510654 528239094 470782846 914117428 706927778 697585760 448978089 62859028 528803528 356005079 544738299 85351016 714354159 850223333 4976995 737363009 890279416 619355424 974399998 729298440 917239957 70064901 341356074 649269693 795749128 874699920 922303319 137630978 104182322 415566071 225790587 871806398 925043363 322601766 318292106 951854387 719567072 467338930 495662612 487657449 526693881 423817699 369401490 823930111 6554844 444802277 52696944 984357004 579230121 450066628 352493055 569422856 119331239 711178539 746210091 117288784 20584259 218994652 62802007 365116038 13888324 601916323 851262982 803577289 809170552 437684563 369592281 395307029 911307226 497175279 811124508 985701952 615005645 725794690 406506230 411470442 804587871 156057855 60417473 44758523 224400362 846050808 729488379 566993010 941010938 401885894 560546292 709887752 980504220 681185539 612780122 840241318 745640759 335020045 843354974 953504797 977598108 470721480 628495366 533204712 446092291 665974256 189921170 148368812 240436354 693703359 641124088 784327059 174318184 45261498 948234887 411873941 409669802 789121232 426503864 994031744 336452241 110238009 529995461 542921522 522646292 809683383 449127293 866235241 94820650 589067008 901211532 164393730 964564450 539997079 546066400 101373530 831851016 551000476 289684049 996518578 886106157 20040913 384920685 825816520 258893825 838326763 883898624 590783866 897424034 659411282 417139171 5240876 666846123 465266872 619489689 314337865 219033778 188953389 127855349 41631967 584267981 100375953 63602424 454384787 327037095 114857868 624934841 51040462 6732943 103498620 487234894 128873259 177429527 161528366 343454513 47854016 884286351 926895219 107984505 771819881 551479318 870100498 554146777 910046011 789589181 394119194 495224975 617728843 190794859 221034264 298699526 290898792 169339882 967515177 975938692 807189924 560276527 313646350 700060471 371636802 535666639 120639398 367266092 157678482 943969571 480857436 66657464 969451988 468784282 578063444 969095603 446879077 707636778 168102367 817426880 826823488 144265431 252322251 597109952 462232078 684134724 631286999 570573777 470890905 250481179 969664869 180939221 985041651 412559597 960012520 157103295 48201062 617064191 774540545 850499093 739288248 412353855 138480393 398477342 837316580 843875722 490978969 797147351 16100276 830087485 860518090 40857115 51805397 254148469 486499791 942211139 273912013 766915161 895821279 78958545 21702148 398078941 94545833 83389180 563368797 887679653 364240787 654664393 326899545 724416750 680416672 216464317 946327103 941145452 422763918 617932152 401797862 711818050 635123921 961531945 224898821 533970893 166018113 550903541 751293862 86684171 670383117 545579938 451454159 282871429 784203096 649587155 365002908 436115667 55330552 997804284 162482231 848588596 229107051 182062249 110548209 833780959 498464192 583586903 921111793 382839243 199328549 492677544 795133797 122201703 438259310 505583788 879433106 926913022 185054165 707805220 816231835 464852593 386951709 537267634 987487659 974221206 687307824 271168652 818183325 534206842 645127319 928985887 632814794 282123228 37839066 614315644 67480458 965265931 977042598 640806466 831446985 989132512 515259232 341422678 140223796 40979458 411840183 215682196 528887476 136184191 6819174 203985076 291965841 891449394 533703229 959906038 536796910 210612987 482814794 134834563 702929758 80496157 145466315 424922627 549702057 184743289 24135108 987993263 22992933 663646942 892135375 541383011 723743507 893989348 202623666 599077021 728194205 488321382 333731700 168466839 160843734 357438902 248618122 377277354 779813034 453795967 244324711 438810662 572170840 962797235 136837559 52274312 308256423 933618377 872544763 394880997 586474277 486999280 868280735 393492920 983357432 145079356 569465822 15880893 336422650 457616055 810917653 866400939 626296521 774132391 332517539 18938510 468548606 530625480 978238635 713019861 487306421 782161616 925900309 120170046 442015133 138896120 777141848 530045003 328438094 65115672 772981905 780186685 5442078 504661445 293510631 263780478 680029480 691127024 42336417 449941319 891095303 906024894 437294624 531847480 612833193 528429771 248986730 705053869 561487911 467204500 325453929 608084983 28398652 36512754 255811196 857492278 704082246 111642079 4097249 697170621 679323732 237094539 940604608 514678689 91220730 202279794 374895052 880112115 693996776 209240175 285973945 85064107 462374628 266817159 794864665 94893710 317893496 491914336 924821986 195080856 268390701 564867954 551527152 237730340 146110139 814407839 680064412 627936677 48479878 149150800 16475760 97237811 3228611 987462754 482907655 109471846 390111895 762908367 509362723 44053381 295477661 940291462 148767842 79550833 722816225 365314756 171561297 668742718 838213014 932328625 612050876 106817596 916565033 289284935 240283631 257748860 407858475 773258076 214668598 215454499 844038947 103231423 91108219 212339868 497210787 191756492 47805323 843456071 714636337 978149820 994203893 691781318 858012900 490179097 517945103 606980136 499150529 179341032 180452384 455064242 94970449 586435603 843927293 850131996 344822518 576685704 494503152 773406400 704548395 601424140 260142730 891174435 361552493 132114433 473142209 128414800 447013254 808052521 221169210 603438749 519733943 84211278 525294286 979884769 134930911 777180717 147230677 170379660 787792743 178501854 729012207 762559278 359399775 427683871 400300360 339233524 106851916 282641621 996075762 166866143 577023648 903661012 872299093 950834032 432418751 119702151 750330927 538856949 331955092 998708380 427808180 415367704 47387302 46127716 630831964 456923988 869634288 189394668 840102179 270158398 895748513 389716967 127162360 61746264 964399271 77409908 764081996 91051309 784882895 606303706 640913287 401759347 466594691 175544888 948281722 356474419 168793689 289296376 566855849 813915505 493226423 943904938 362339023 498608840 6437875 228553513 31161046 155184560 525633987 801408817 751295297 257747836 512183855 84291174 700865033 197015691 867134045 644461422 894540325 328759535 496814876 993928303 774110739 907689033 504214844 711316499 262809226 41662694 298765246 781492485 315534570 938229377 377513583 91107658 434830878 633638647 159959080 138944641 275784542 660656841 279444356 59713968 857494486 680195665 471245264 74549160 70628530 379332561 912538629 769666309 892111815 683418033 449777932 913328424 977939480 406167188 954565252 875721204 60167645 751043668 160364643 814385214 368404353 435946269 355871669 941542525 645054453 963132581 70007246 436807767 93562042 705292789 178609507 37329570 437429251 884466674 783826809 765423917 493542850 179365446 118756459 127067862 540898811 219864776 734566636 380579195 581809846 347722724 263115817 285143387 87154145 132662364 972777595 512339238 16894267 435019351 426974023 73920669 900872371 868844479 85965094 234218892 303213502 712548088 902314780 845833749 774201166 30214304 299631823 760392845 603441786 909565499 773570580 576693057 779643281 103337248 795733526 923487318 977475476 274514901 682977599 98861801 217798068 498494663 147334054 675127928 805363966 570820471 814492253 642370273 84726486 313727341 114291908 55479992 377895308 247610101 706285913 880466008 351922046 592835567 796010404 246611187 844968181 723850531 693663385 816541177 620495459 142013609 509182416 387396279 184904480 559900785 288848210 477906698 823896522 292016073 255185611 728055290 714272234 542878084 221264520 768843721 2605987 184049461 763992440 561872632 987313686 157409163 817930321 329395512 704640345 579125500 628872119 669629146 349494564 832986651 694471169 944641918 261293824 96516403 113098421 274394003 362578048 488739043 881255304 156536343 15572492 644840056 509169744 275765442 792837196 421250554 398309431 848381988 878390779 531594087 387725413 855125139 207879202 25331229 103411390 965243364 910933241 209890164 683216407 208602943 239486126 457295976 192800434 173565904 422957548 837855650 761694895 775920572 128727401 614359393 893454978 626780145 461301963 197501206 495253988 704486243 996493826 352923385 344549054 367646004 431007733 252604415 535664397 336989104 977938208 43132353 229108185 851357427 12904998 667041499 613137837 145328538 235742935 49307426 733928298 860292941 322355349 768207343 944438112 229719032 61973397 221955276 906371388 376030586 447827961 507371505 231311732 80430373 455620846 400781563 365719871 847720576 483447771 332801555 557323455 147062040 753079625 206631515 472636042 598191848 563215007 234661314 354801961 162263001 900522692 276626013 432824130 136826119 214357732 746878843 674110440 845289572 906012363 210653344 527833912 635251551 619944815 238430402 117101863 362143185 941650427 218205393 720740485 401829125 118061991 816106312 337995695 922405471 864135806 773298885 636320968 976451396 954703668 809751070 239282328 984955015 300422514 354448653 811027645 361950291 600675139 164872964 871218298 863487308 371282846 235092966 76882798 54637797 733666922 112738309 387968252 812946333 327709590 489995067 486388356 321341196 733551444 878763480 451546234 405326164 36740743 328662824 831034358 782707108 674073639 408962095 521162944 365038020 474358212 555437359 332234220 558168079 813389540 582659170 932976110 668698954 951843984 673794483 462645982 222378205 682470056 568284357 361015141 619661974 480306228 467341839 743953599 435140418 28055324 146123844 780550292 652252660 1935611 7518868 259966254 699229397 721637111 921767747 587822552 594718597 38645357 490758030 340938555 365986564 58910036 251124740 946366530 621968861 661415935 877231598 818797596 147208503 869034076 320084856 146695343 125462787 551931874 265347861 486056483 536394227 846996982 541164883 121737906 72661575 705858501 717303144 154356140 752025708 135848320 357433275 963755508 224869582 429986193 178969415 315765487 221738356 300281298 809071756 92245102 846738032 527220195 207861896 63673681 328334175 502805812 813047765 816049926 876557050 814679298 181406701 100129205 280239184 370884521 997579339 349961817 150984284 509598704 178348434 422306195 309207591 138559413 99707610 891079462 26253508 682996576 448400327 129784764 162881149 970415160 984397869 808099721 161922628 802788832 954596571 45369911 276363847 247135418 535923967 453695147 838599054 788427928 653610083 985606425 838563031 600779105 869432762 63606258 630067774 806378667 779308721 424428492 435789120 774972643 496904546 121568264 789129220 644791300 435399107 370554859 243360056 458319575 728085704 870180539 30869546 880395227 706894858 351543107 979354024 340430645 531947606 983313782 557892003 254824617 410718681 961631697 36917829 167922897 435112907 194379723 494172833 985562053 975330624 393738580 607118818 742640727 244578137 746031659 113335997 347912054 606771470 990724441 478845055 754491416 412173954 563319780 555128024 960628194 618092813 272795621 983467272 871613315 520730127 995614674 820090586 966937163 383117946 592732042 255240637 872855813 456277508 219778086 147393109 842171756 684329779 3450100 628555974 878859028 889372127 881077647 800561826 439655014 358667304 60659373 137187469 978664250 121752705 696721992 582430342 993946019 83315141 571161590 353882309 37021741 83668861 28145580 244273738 759591248 316348456 968642727 681706389 481882816 587239423 477449166 12797236 139463059 303479449 993800255 900472612 444816884 317174537 933761982 601178971 27121223 839234321 747220001 847332 331754854 194655581 618557323 371129159 921347154 369255990 389083406 970656556 336241268 591787128 301120304 482442665 701369649 9600675 202309263 748064048 703781689 575197830 632366319 411113413 727377008 194444521 767024405 174082759 307016026 642797320 503019179 732532317 272849664 123210279 601759770 147309410 804601180 10479317 555511525 448969672 416230885 889894082 531497898 829188628 569863253 579570439 778366870 230896293 490943773 995111673 531405244 204418252 918879908 453076693 819092124 439690906 351110284 482987426 720490855 408741067 350297742 759247047 418220621 182409563 652472732 198802417 473916846 974009607 583517630 369159400 994240726 713158864 460572208 284768061 146321882 884556735 294993158 295734847 555462813 64813864 270219456 169441590 819865462 252889633 446717741 423059390 321463045 503398731 635748857 936992724 2437159 155673990 493334209 283498468 203642707 814647952 174958290 7225308 515883709 885662984 794225548 180079085 876043820 789250590 852084454 946167594 525137000 398782202 702704860 947637199 83186674 261188533 20796126 523067577 185551810 640498239 413914944 105276415 217818032 967993143 824461378 377971577 279918207 883493715 203377298 437599353 848005005 225411876 799792107 236199604 699319564 735490913 312902740 883351952 604978526 872026042 700527986 133512697 337992100 990356426 251073042 322771327 352291057 290355979 357796056 967522525 929392932 697540786 661780083 264982451 935296539 867482849 724892325 722454992 192758750 708821123 652093425 525451687 712209215 726494283 663771607 537149802 817982275 813252162 748282817 725493654 421691316 881938729 464130489 421030210 256869137 16306705 438309420 256575794 84098766 184299631 319401846 620139882 51045964 162934558 209157176 65278839 668033252 869435411 574188252 549566318 4139162 463531617 256678220 835930683 666969634 552811230 397956318 196253841 65844435 608624365 871066854 261560782 411679789 646333784 189977583 497636060 503796434 422989388 95717884 797467960 258066996 201378045 562788352 421859787 768631655 56685517 96490836 943310344 571485569 430242565 148753026 459532706 455235968 278022350 371945324 872055141 738661653 480819018 688999828 631285509 488917362 697248482 30293448 194333885 477787139 567831738 13626449 672788341 367439495 939159569 905702419 949193714 442201368 555345757 686762298 505399227 285970205 487843647 818548659 389444374 366324128 372599936 240461647 869832809 932072593 978646888 281086612 450693401 656263652 297622749 212684999 20434865 416091424 953638137 811389865 72349813 550013443 739258788 626100 36747868 441030170 376050423 428725207 47652091 494370076 588083600 694451112 79694896 796104632 62784373 30564369 538041689 629291001 338065256 759832205 145778917 714473993 183466006 282699166 409272781 643720863 92552627 300314706 512293799 42330795 91602283 355892146 547855829 983458160 382941115 772462573 425645717 527463922 462739984 943739547 636284087 789485066 874697495 31909637 948317488 755149524 476744949 303689742 422774517 335353977 187348111 519232219 843006908 161114953 964874617 802662270 209626021 64611309 35526983 75298718 660169938 159243056 539630772 531434248 349934895 773173392 277145785 68687702 902990959 219469344 765809604 356910203 32788641 717301882 376377930 77833833 518453629 927116419 764378554 404613530 154138341 201685650 892122107 730881075 628648938 456609826 473758126 914209775 731709774 52421415 784845052 391006861 798860711 476336102 861310516 492309959 71615282 417877216 473038295 756330450 672825547 13070437 939639585 975934303 762206887 559609581 337509832 189346274 489395349 494033245 994966878 475399560 646767375 659165260 984742129 816757218 965712957 510431235 727133306 255026601 426978365 591481989 168694372 580955204 287999678 273355744 174595594 629163936 609352253 603059038 602877793 322843854 209659608 494875084 430279911 791362961 868769346 563566328 749002381 251105565 420792428 552733502 527544051 642471427 610564426 932057979 735702534 472797448 758575015 89961189 938690021 297234032 179353560 978650420 16099003 571082673 749030718 400835873 231954965 109750061 322773924 13013152 80757940 905090227 19186642 334170802 110071386 311154295 289262857 288446646 227507835 617172668 638708725 549222438 998362041 35436907 571470756 705315403 518918102 399919760 727430580 704738691 264998737 809506911 866657100 612201977 362216264 512578287 617693376 499196636 478819209 795134421 590139718 702207897 819070370 800320411 27266043 183496861 42498856 201133852 305548841 466654172 432329984 171483693 410986875 603007562 465265914 433710590 348802510 431057887 541026161 721117153 40626749 126234978 991781131 874818367 724273914 497493500 17888063 545874086 844638537 536462564 182179434 376903647 624335721 695070152 993347108 16707975 861752690 686414191 857412178 667266348 6477012 689198655 18815671 590269012 343825288 533779735 519458905 175343451 624596577 426348837 727600840 170474504 143412242 83469546 388954305 216528717 46386854 18948034 293638878 501404361 185338119 555592901 836864260 754187822 419783887 934160953 16177512 122596803 599459384 314859945 885894317 39736250 410728821 73676253 731114827 487899233 317862020 289489369 77349826 170000854 753636314 395087673 504931347 163397679 99303891 365587767 730950899 689748527 645458440 565278053 869956456 445780669 588276484 142109139 214638358 732261843 881313593 282691844 956290546 113066411 187796795 413443788 600990276 18311419 596598882 964884974 92465176 931658282 778093618 962330171 616611336 996352990 115310909 911733736 343544849 293405564 418112272 25943696 185490460 5471839 303102568 212167018 899673168 178907341 280404774 468422829 337075034 802721378 591473048 27347318 711565920 310024291 603194607 90437889 958237302 758930054 73635889 299977654 905292831 341000662 56890230 467012805 920059911 17860207 412152207 78428571 284250971 223310649 489184012 446871745 583680912 568901832 101483321 317788994 929393438 921200673 860787627 35121400 141065266 918174040 519681116 490396070 301061465 458330944 656006640 317524503 629363587 84652259 433318823 674458109 796410805 843334247 108718644 480605438 337837495 30263774 157552062 303045596 687753997 742845584 910842087 528978391 515954085 379255218 417520852 751765836 855509790 851518140 806858961 901990804 661271480 545425053 9632100 549056921 535715623 395537836 769952874 418267472 315947773 717775647 455799952 628378225 888706995 615942446 288717191 391528397 462340737 927504264 227901832 561319741 49823582 907430003 638438928 990558331 889928048 702472517 659146603 23318853 526380444 383587445 234475079 630569513 935821429 907652780 383800330 386142669 411828436 631895452 935288454 693749037 592839907 892318928 690298988 636403044 529571407 13229737 540737256 208124256 443527850 463316186 38065306 260647359 34894890 259728290 409089185 927249246 202246070 649388408 293946055 290656857 751083123 979890096 606456135 211589194 657230126 195183404 627348258 648404786 874329280 513723593 167067448 947252661 42170705 603941602 840939948 561177221 127229275 637970873 906817523 33264714 47078178 102223927 416071004 596267977 419621220 203458117 500773812 703893861 543621692 736418642 73673011 797266742 933458323 921027221 811305245 323750246 591256125 91321109 339583235 711490443 500908122 156788014 953941762 366700615 534657227 843634793 220770296 444332822 5405121 939395877 531252458 835857227 137955689 955455024 671127304 838299384 481647745 441884204 231566302 242285230 798135114 215434118 251999312 613684560 369524036 112668994 354487909 907217897 239216872 879603790 393235541 75150937 65743334 732862048 541020493 43102523 505281269 501459203 877267366 658932505 183747924 695090353 362280148 88900240 302446793 146278346 243971674 77496985 767940410 563598569 533537960 694533442 810301372 590025616 237982644 774976224 593059677 92690330 100288741 574889079 851072556 280303991 749565828 66136136 664655568 84709589 75327670 490382073 798912796 933758096 639306638 149657230 64602019 185762278 429641214 792686032 466007537 440724799 69092079 854509682 275067927 877723492 693627747 685028564 551136298 381696336 137011614 597860104 758788737 552857256 410475927 403290124 596209071 715263742 709458371 980207080 55939656 113004074 274400719 12028286 73965390 424621390 385746202 132268416 590083558 802763155 867639588 534633583 519170679 742970820 107219927 779208300 542986372 858250682 472696626 276345986 19528379 73906334 821757020 371449721 809621575 359937628 769290330 655326215 937643652 19935841 508843482 804094060 764009811 508585916 870679832 846867255 674338654 266404615 702872799 462966227 428298219 317430844 940679067 948059455 870615496 20813114 876970698 284418447 582114347 473154180 525653793 797463102 13874205 485168016 133628706 190584027 78172547 95065437 476981015 33493884 161929644 756518168 689034313 180754661 288711494 382345873 783620323 267581801 306382454 950870425 176484424 264467559 76916384 374054897 668118666 582226036 451052348 569312566 431751480 15585974 838759946 326499070 180908694 743327376 999681610 658999903 588862438 239839503 465063388 820346172 695445335 691400053 812721918 412312525 173931182 691082351 185977628 39941786 173269937 393872820 566232617 811765097 611607793 449599319 949816254 257178728 651299372 31574467 828973512 995285558 120481690 424634670 769577039 670800912 968006950 738256644 594356628 234328137 497258677 106494945 112847334 334997738 108059282 411543233 103848114 203281448 589871939 737282975 329167379 167636924 906981220 264947076 800992939 913506798 98572992 454913349 753496934 99850611 978924390 766621225 597099306 523997951 352718496 563522228 193403210 974218264 167670146 612736964 293250455 44737475 96270005 30309175 293976976 84655651 353375151 207518805 784212764 986381613 293631826 448053753 819821515 664235689 555721566 521238132 328353279 839499965 569867798 208936016 387213359 556969411 902210360 918148855 99042723 288532697 847626937 707253259 508234291 444300144 40344900 806835221 982011666 842877790 615429 800909432 4920696 296506414 754076104 25908447 806684065 459409368 459606368 488854064 387118969 5634887 143333251 96451401 618679955 88406082 776593289 138739785 769406834 60803626 907846979 712261405 433081441 69806065 475938339 163494067 276250804 87493341 143631712 306539860 137939893 934232050 704243075 401361658 318555026 386814185 540856353 999840739 420962550 592585764 807340164 104919294 257707987 810438507 813919833 787569572 458265291 583191713 979883093 593505246 69568062 829278162 374458982 173021181 758365659 227263269 552080785 296271379 492918340 517439276 929567148 851121790 609663278 696580269 514944486 928348788 776803711 389283153 807915757 400625054 70888800 988382377 824953859 136714590 697318356 237071172 67470426 218825651 336416784 795342305 841410187 191527729 344940418 629189266 99721134 862970172 340996095 631304623 801006833 997344720 207736310 483523093 991693995 914341638 803256903 872454221 930662346 678789932 117646496 776990327 146616800 45925274 752522294 798597461 23282752 741652190 532331682 856924859 981386722 276120094 404481996 41627906 197073523 416963726 559188043 50044940 346310476 478235586 10999373 379128467 417731625 875149948 280274457 219611778 368288823 264346310 650848781 116605379 405774385 241479918 412736260 698889095 523008453 742740348 447669594 543460758 315893682 984086507 509003777 145324697 468999625 1666217 601107143 135393801 67157729 209944814 800041107 396818660 947982037 363649556 622466747 83518494 931639011 941272426 111947407 238700518 18278408 592299978 453240833 198812469 340682666 409367810 683143609 856070591 84384122 548464208 183015678 410975546 451370559 802137639 252117390 988848110 374529480 320205806 712129846 498611854 710446798 587734269 689250711 53306750 816849219 697594845 369615301 608319371 572373298 441143671 806106341 8234054 419822284 459561378 836097140 13461349 205725681 367195800 611249070 686160960 401961045 327924586 966407468 166749145 403207194 112555215 710982442 115742810 677247848 331869447 282681917 93314954 488838787 940142563 680120609 533604882 197802136 604082478 180369743 326260284 588548300 15249220 445180326 931009236 696117864 372633567 434362740 316831521 855134315 384527283 718077724 418945842 236178507 807406190 213992316 777406273 433419241 789560610 128377156 710212249 109014779 636677159 112545002 736517164 49743835 677637607 324921479 909524907 333661878 915396568 755382101 643282183 837952036 615115771 182414003 220324778 391496571 683469259 998869746 474780942 509563512 525789309 1248406 261129897 88813669 666654325 843365609 544893114 216815259 264012145 797140396 777418 639985565 408429665 726872835 676610341 989156594 519951212 46144010 474753824 522080299 519444969 891469856 578485136 892797863 586852514 578740279 493152039 876306396 468861690 708028249 77898054 964976679 780138965 249866737 169049762 448660917 556280156 579371327 937093896 203014701 598534344 143886262 721484372 787822669 854504302 130924426 89443671 830500062 873928874 770098953 888679664 697737502 123451689 345590363 682907546 963106444 862083128 829107423 646003396 380976964 765544176 255964247 194882489 297241006 941472104 842380514 611973116 631070298 224399579 178910847 837815224 347852713 462962086 732670942 219803245 155169353 692035411 192454603 482650131 342798197 330392919 951607305 874112363 519121941 380481494 925220893 778504386 659215259 472547781 779861487 899722702 764921823 604577692 916919271 615533535 992962559 474439432 410543383 392471655 531050971 68012590 994092553 35136464 235065980 600103078 138526829 715493416 6101712 252215003 67859502 474265414 382102434 410833273 954778076 464934267 435279392 618158001 63001346 192893241 349917786 291427577 706701799 589449153 201989802 147662779 35842327 37203898 84426606 535400431 162589236 631506493 881941164 509653884 591231480 982235133 413177560 560603873 597164298 848811226 793275336 189860125 41354379 424064957 353248512 814272275 404279685 544903872 888811991 762849376 457076269 176973191 974291168 860299221 158311358 955572520 275596944 413816149 480871673 872942254 736992081 827701850 139712626 595629255 950355912 711773867 726018138 803979549 270447718 361942407 665978457 647328749 354834213 489026369 791404631 556305927 26300859 330856273 448127383 424155531 654814161 47890903 510191414 777771912 245850422 290364329 856867523 619014259 434581066 874561890 649950238 459891903 585888748 914072929 804909202 139491529 314381140 399214976 245434142 936127552 821133269 755135182 941729561 194760384 124231932 651811372 550400160 502699487 445348102 877673921 994935209 706552628 214467963 509501450 724158573 590405110 298006960 139263970 601947535 488387975 21973774 432124588 372988168 528127566 254065834 591696004 444354274 906037844 474561182 666399678 150056899 313093743 175853302 450537229 968910564 565700547 98039497 748129933 693791164 275830925 173420647 270646269 548047634 577589113 689112598 551272650 725600848 262520616 593727127 747697906 903599346 151317864 355213731 67294041 649726813 676326093 824783317 881549570 496501707 96923991 770162790 839604350 617190519 59682490 496219754 333690968 787694726 280771359 729710058 774649771 50397671 584486419 78341913 476034727 256089310 654033871 384582183 418943179 167930350 53264912 616365445 165252864 919234902 821975021 982308235 22358861 563559125 930368836 882640911 691389329 592995146 135100371 478330761 367840083 704730374 330050788 244717292 396087672 725135544 156804770 395077799 884384326 825127360 14113681 629477499 89207361 713185837 946765734 527224580 773668957 915206225 280764201 439577055 860669189 857989270 843666173 755115964 288787213 277573314 650177280 82188535 266695556 681590796 695866581 336346019 816955434 744217079 458687929 895577231 777048531 326526936 825324332 460387474 454489501 839848268 826426506 288343689 133233109 718171389 598660075 938360497 270140756 809229985 710136874 944627094 783313172 130113184 301228123 708017491 738701448 209506677 195921621 696876497 265365534 662511937 293847626 683997617 383211045 536741746 915217388 541299000 985930535 273364818 565305734 245380417 499325189 326158972 184989275 286645884 736146835 828252883 302966290 194432069 5073931 734145575 601473028 500014650 975703380 438168425 749205133 902735905 857510174 309866390 435204013 289365750 125719922 422892535 627487095 525690473 848316012 416532583 226192937 607079127 730989231 38361390 717445834 75984044 880055246 502806177 484005349 792186770 287756177 325537404 213184307 573566543 604323420 321830051 850756948 259768273 3742592 841098543 989797206 944419141 296662425 213474413 722239120 459955370 869128156 450217571 817814623 112474843 931033281 854152521 525273079 293044324 218116706 740357111 642899570 903196136 669321233 488398333 576411236 863719791 928949379 376209082 865748608 711289207 475412421 424830174 711369675 355055169 448160524 245770263 732775908 732653109 291594978 447554593 656574912 687397772 49361642 13302118 774635421 280469756 340887769 925678447 832775201 290343707 347688689 273292074 891820861 961149636 708426419 612033761 965293477 829207 276052636 485129218 719972594 332789552 984478704 962397074 435235062 452038393 940872855 518211869 721068051 862747397 538548087 461741668 790632259 840849487 437554979 345235040 844026860 923862971 386759284 478272658 474080796 189571877 790196643 32431030 435002246 930253329 415817454 752299897 480866706 26984972 899117262 530013281 994331869 988522678 475966753 5864231 295326166 511454569 654761687 425728997 79362094 954665797 361929519 764749637 896904351 988986534 947985207 355752975 141646352 183039696 331045930 195649055 121294451 601640945 329119594 226115133 115811712 828311693 162913716 278290186 530325150 383524459 679883307 601622007 906235464 166637259 771916060 423693360 177441303 704845132 945611991 516187194 484659126 751849883 337859536 308491596 581782838 876410784 587183179 574426459 303635538 249044361 312018755 821144212 143316115 845792674 780136212 925553766 669628153 7220503 719946966 403425370 349651722 800903330 963638131 680873214 417025466 323617329 723707361 42453505 609803312 175539351 753633789 460976161 588762863 468814573 864057473 369376837 844662929 713435275 520179272 297248771 566276484 811235972 979804610 877723256 327946929 636068897 595290582 771745476 464558858 765320623 347721290 194943908 521447981 580068662 29258202 242462405 693440218 459007066 820127067 26010431 719337559 884302109 492942958 864929431 36979283 937701334 413137079 310838584 410549531 403357333 511846113 656012906 151749213 347793578 827463741 304316321 332813727 47904905 725876712 840599200 163440449 906713296 943440106 262525922 185209469 10203035 679530996 359212251 269168672 860258632 414186411 495619588 236157117 633833727 878900326 12438781 667451357 306239419 842540742 832103665 585633614 409489462 485899680 514104921 14952530 967133316 328582924 299780913 986271581 504891635 95198078 230963328 614788046 425711553 481122466 94713330 71111643 873437185 628852818 371275167 951525768 491448648 123320311 271032525 310831646 525604736 521806618 650432055 781653500 236859399 906625132 925068593 730163417 664279438 751216174 282412828 200460772 347512345 38569949 21109935 995307047 431791517 904485096 419406781 559083522 178927620 557054022 480494372 599501098 931533804 938748598 52345346 8339381 378383215 350592110 798617943 50108397 135328224 8722519 141605472 982687963 338783194 788330708 422143285 163526723 971828184 536344588 954550699 412471025 716812150 2463141 603356428 459236163 112848475 488146580 477714044 261052242 747660643 696500720 494316436 146332584 697003852 664419039 853379712 526009065 849027418 388481974 259746709 886115401 134641140 429394771 737960258 295256725 585288109 83804788 757933728 690067939 656072111 506811558 816389017 299792835 418078941 999275108 657932286 700462737 557766494 85553542 826971706 423035714 578346545 735948496 686573796 147653654 140688805 840261660 729005023 773398548 791150375 669844868 683092216 173415084 36899041 694517446 99704679 128145068 485288951 736025748 480210425 124941399 57460123 807737218 76578617 494954327 980061179 50931631 395876184 137128496 924781000 998768839 346004354 424935125 830755792 606726775 634941875 566498723 701563739 277910098 652367899 975820253 553042985 138483146 364076169 938776581 693518152 378527472 924122025 638840378 425630104 401317459 306979479 829873720 753269635 283294993 523038227 411000987 523756864 786256858 986605715 616609262 252680102 117580630 434216617 418953197 298345982 442877041 205534205 492414188 513425265 960293045 831782946 83868093 939462374 977817955 265816711 932619984 343636575 68984981 187383199 689213120 142775943 950315694 194435868 386030397 965814657 205680679 918680936 943570800 463901525 218188425 154110444 421446102 233895512 2355230 891387601 692653060 294766440 238814551 597204906 135043705 956255107 631906151 885925236 916555307 512356829 751498545 321932700 851310426 48093305 501759130 606347724 64029959 942756346 211584011 506635120 190002635 682452943 677678391 98544959 440030192 348149299 834601770 274129047 647808308 213209564 728368758 337691074 603793833 112429891 492560365 417591393 374557587 797856128 241481018 6441808 983189626 409833594 570708609 794835148 578257146 662879598 884989466 603166143 250816393 36606380 312377065 526696692 200802787 244788235 450966302 792528356 688041909 384106628 626680144 317703615 845769400 399797143 529964129 960991989 890554427 166350883 548883906 684185707 62332854 572457771 780798181 42493257 733873809 177738603 846144318 967176901 630985210 327309023 579365358 197475621 474660486 85519741 705563705 865623043 295027123 58770284 775383080 796072600 178842565 511155036 72729639 363055619 730060506 410044703 142984425 699372246 786972602 583744222 155086576 97957149 785906782 138453181 166223836 415984049 929690800 613059740 935815716 80095026 405053269 80555883 692329201 570229968 904071053 466583066 115359788 861784889 460551292 293486959 554640554 551408390 95120414 591511365 445839147 523094582 648328328 529810758 825239029 363534747 747427338 199180128 383067496 740500328 871861065 671462630 403234366 104296788 304613626 227581501 943892054 5243773 91763785 328489131 259222986 228018004 516137835 185046443 389268690 69067476 199166194 708761596 351872999 524277293 497133230 78971392 717860212 634730462 125356365 298814462 713768521 862596463 777980475 319996325 422605618 871622450 959078629 16638518 177620430 807461331 295438769 732066791 272447578 813334126 709135837 11229943 952118016 728407046 404354045 442626232 184526121 603127389 227885607 269883298 979660780 811086609 400959398 616108803 92068693 565821996 273562367 177155590 663942209 870500518 196019272 872272571 603427848 667833070 100266261 450531184 83695883 378151663 770675788 984727038 198609933 242931534 853092405 11083166 415723728 118491496 853394129 939831316 175511210 129391122 635987097 85572069 831363184 927055756 616928134 959670785 626579298 615828133 461760275 406109404 223776608 347476370 643516566 929029023 91782476 380839366 449457597 959461378 428227604 632510600 396951906 327353133 223311421 754015964 163077993 751999988 538115512 752995883 210949266 141299088 985644468 358644810 950403586 388177695 668384992 722731173 995390307 678282872 440528580 125476680 684645562 277476608 589463538 985406710 210226039 820753868 589895821 220112359 205177810 763776849 845069307 723667406 351823100 458736592 99479484 507153911 292800287 298584082 401551986 844490856 882384667 277146066 513372569 205155351 796680419 887510802 82633310 623714676 543359518 181481423 129208247 514601700 15356480 887429753 814363706 451654964 31817271 910719912 836815684 743435605 95804802 120195344 395153293 27472572 409635932 521449925 433115178 737925478 897300612 316487800 549084499 796657394 128414343 788849492 491741194 700537379 800831401 932228288 217319255 863253234 377574012 309596024 517006014 275152685 713527030 961900939 275855688 194347571 845543180 514258768 289566292 187895142 69219425 948862292 79491400 269652220 355945098 283681382 300573134 220646192 499737436 898647729 47156259 243283694 17112872 487664409 415133676 452728281 139546879 869069437 465479128 6262196 196360987 138286804 911951034 376575794 519986095 439798806 620539566 264649464 525899880 238297136 655670226 589718730 865374244 873320185 15673365 548920639 838698631 267378331 872789342 756186004 917189778 915937484 449111465 215509503 830997986 18213884 621294514 41322724 244523434 85055851 397131490 193015152 714339910 449079379 195892430 894376461 559813486 791933506 800878710 956928202 629608454 36192008 646544410 419594035 77561523 943252672 571126042 778217529 29130271 553873434 731023241 197449946 971456165 338916984 718632635 732329199 231998754 612189623 990455517 385211999 209949789 209001263 868698279 250646751 436894355 278345228 878707220 725280574 925657050 256877398 827409792 804769981 401888296 282380214 111422828 708579652 601213909 312083421 544480436 646265863 72654489 984181828 873518203 611922611 174399013 266976314 43351327 620796794 399405079 395694244 624996056 783159232 627638982 471457661 329934986 93049784 743604233 489426013 194576252 435975764 599927642 145874315 735983368 842233042 220358820 734017539 152928677 999286497 761560383 186215974 787988412 109835250 674213955 959202861 955962452 912455485 293445024 649388597 180266111 904482327 235148971 641327967 187943063 631204569 798683808 409857889 238952702 118408179 364489898 221702717 115248719 637110690 241626502 901476078 734256093 540572297 906361165 778420963 338175384 61904878 60600234 178290353 691555526 848557858 435059543 39390643 579616992 580923557 130392829 113371734 964385042 740002899 321645662 300503012 757678572 570846305 946504382 116319853 157735434 591005685 2898943 448678398 841176582 760454981 509281370 686028273 97163243 163260472 500800680 887221158 406451947 740805589 263652109 662496759 756721282 602459694 738181805 208426258 217247921 230189768 847401316 174442667 590326968 119941195 856492592 86709123 353060878 655171520 354114056 914211153 865916175 944724409 718964916 484818308 345219977 186331199 183421977 505394717 962918470 684315231 385097858 525341213 389774780 949904317 753851167 275638146 253542034 641221437 439435176 364011367 513687141 851964992 205321555 352171964 595207173 894769985 321642753 746755450 748524184 120290736 84542464 552807838 647674075 207764730 110658644 974872547 638992224 516422137 10025042 196089304 927785595 306524850 239198550 783516761 944335938 8211842 782542527 453174287 42117050 448358126 804515871 2110882 64042038 974625020 355709313 464221787 825652575 666290439 839011368 122923959 928282389 700205864 7830353 133828721 331140360 163662406 23749420 330288390 876140729 649098048 374865198 35912813 125453326 135029876 97850379 806530790 176775343 585586460 139472847 6456037 563633287 949616941 559255619 336638208 240030258 896586117 550387474 342735227 159237144 135041547 279942725 977822777 456880480 514041268 684847273 356437689 633264597 121867203 152805162 648528626 786660632 250313264 482166344 985611400 305619374 32380875 79924709 751339624 408007049 741941714 252357067 27588270 215198332 924251117 464660742 629566565 28668134 630320670 586883206 684802303 61301122 40257845 98746808 359582729 578106909 12323705 50176168 452930617 356572167 514852752 219674648 538884139 79352321 750885868 86419019 805590300 297872920 537980503 419588137 428853555 91926434 710092338 685688532 499320711 800101297 193374294 218606004 932438697 185795525 458689161 565124772 20304544 378029672 797740705 85612111 611081991 694061894 32731378 494368007 641576529 385140841 364198290 77277549 244292103 437378785 920646818 464290342 244948779 689634266 77617564 518051239 559514530 71764770 651084101 940658656 432763057 939197889 991296734 5662773 693802816 552258530 976610859 267590471 901297212 135580090 34019055 553403941 510752627 515524854 639492398 784608801 939986704 585958458 338898095 522795425 468054664 317676157 496958708 765508773 866922722 709489696 849581665 918898406 821435070 987221197 944715899 948844918 920390444 957277818 848546727 323940498 609773549 293188992 425011859 612535478 196131864 895331030 959149447 325771918 888974835 368885065 502575803 838617342 373118351 604383712 646507727 212708919 878435551 707652696 801614428 945420667 65292513 649306609 922960560 188034980 591098217 24803382 22905887 812543868 277579565 616421610 139476178 200746628 908249391 798288826 292415782 73198426 530610693 563607118 902378924 834488099 198507308 380130176 568068600 765058006 399283599 834005198 331433499 636833977 923395516 184935641 89825058 175947313 561348798 477034045 93874334 102332320 339585568 633956058 366741146 806815926 360958165 920286610 62006947 214858887 589800836 36551775 498176467 762517083 424889425 130095502 956359061 288988144 243014451 428718337 372619075 884265222 352518342 544608511 295658122 231943478 274040832 606914849 309837547 45706211 392720707 585435598 789678784 619694333 197728146 340303088 61712161 9408118 42957286 61711909 928019040 914650030 630471412 739255044 582271786 865760484 395185391 675918022 769938558 659719829 11345343 582434518 976824320 448879049 858080100 959771671 536585200 466698502 130511825 322789125 241514427 767148863 24647428 790436412 3192899 898550347 832495086 510646616 569501577 126626437 991234216 152088438 181515947 535383940 990221871 188815657 749792244 138629872 221039609 691360264 939250308 519513321 555677854 701904583 965954213 902182966 643185220 708157970 618071414 380237286 31697549 597180536 76128697 619905096 437566587 684925972 83209183 355793336 513405870 774504727 877517267 195280215 547463236 370211586 699127847 186222850 922722130 503662335 668862965 528361191 765789083 152698348 197066706 277384079 511487188 238870212 327087675 394893326 228698983 919356269 707417546 201936319 291058503 332224522 46791117 886173031 611919065 613737185 670476526 266027934 473887755 718020258 308965119 868220114 478304482 31761128 450710477 245595855 287117934 345588159 312935001 831908391 159362666 887502954 874444981 98896084 121004720 227330190 564145051 717382721 724009427 605017257 201396884 520032624 354665497 424414971 215411489 261956570 804352906 357896053 828429997 193875083 374383969 463696564 943381718 703543975 41480366 270138135 700602247 947242057 901651006 214446672 285454909 937477283 424708600 291905167 568756940 461061140 660594216 803667212 140147954 300909524 884195178 2301451 399514027 794434505 809608243 424126338 461870815 846010553 368640299 291110937 141846415 477945995 212786933 208102393 384810524 53205354 488358509 525695424 699377621 863555092 78989634 278541111 639586620 835987944 377687471 592846786 718478934 925432809 375577622 750818034 605764166 729033318 640067753 763310174 477014544 883699817 412831672 932568300 219881155 71222126 751317419 116372566 948783664 754381155 370528543 892852021 384004855 779048988 401777833 884220830 939457966 655412910 832918878 97785267 166461355 830346158 76148831 964345362 862218470 650867361 958731704 781910952 242793283 730520563 619882717 349600434 906517740 832138363 266122327 175235031 502337045 242917332 376863371 302106603 706251237 957441034 94245722 411628818 432135791 299576097 70932461 524145595 559117578 605350989 13307165 452747497 84635557 331063658 23564496 180104069 473374674 773451115 4427311 382177484 820251402 363509326 20353138 368515198 593917464 226461229 946702999 653457559 53455794 68849398 117572991 656513919 471897382 910345672 687736535 761151757 778606053 38569204 766990699 586727677 258901778 783095124 238923059 233114573 291290602 710659032 775959436 964331243 745953597 665232136 269133097 436385769 955611156 656263255 85493411 836379775 279409990 516391075 120928954 359635600 505746773 931096814 590607840 32846191 650028838 615986432 196894822 403917482 440274816 267303462 291107795 808018967 176583048 56504947 312207635 48645795 570672552 382726107 686399392 727902786 799862090 513371483 888928670 159410714 373935385 904681487 651021337 920690468 173901934 556377273 983336274 693619985 752890929 231896358 563317617 862596393 839757992 851965777 858540403 836875758 848108229 545977506 614311023 562419250 816571521 103641924 230438027 902640111 777334492 401028037 969433540 162062006 337790378 894551253 21693784 255136220 466107343 348413903 613519494 827197374 814693874 156191009 468951045 241446743 712227440 573507610 974573523 188350575 999969490 523890052 758109426 702424197 558348046 681556270 758639972 517624368 322266401 715084214 394892610 295844533 615360873 128290475 905121128 866972133 320856395 769899144 279906210 675057960 456539292 581677436 477733131 168333990 281635824 178187672 249160765 401492650 756415661 887945958 854181465 973055011 98865806 975709106 25958320 758887888 818038303 144062352 219486279 958887080 599040779 262721939 466494306 245545593 657499225 895631123 707288125 135231978 872869807 367717176 284203189 219278684 587663048 986097689 400941613 46815293 568330646 97718751 740633712 499337479 683678746 84104234 471758830 942538717 544738257 743782280 366296852 265254246 194126154 547990868 618348886 355272914 547477646 590011156 310946107 51812780 389305931 360507987 697714434 448794851 567544415 12108088 475828920 755375287 913935896 6605201 309758983 563017124 312914510 463921737 949368878 569226238 987545768 544313298 894446316 114704764 261273043 17246824 72598365 728600103 618778875 391488399 560473971 38023782 279423093 232503761 134382278 542865598 741105380 405301601 313436135 162943775 792056853 904621145 35652194 868442809 405352393 18773548 947602380 870497018 624307991 417109792 968520072 301438523 331984265 275018609 975569631 636300594 67005797 425823934 415272182 19055160 210599252 187119236 54441949 907900513 70197364 660081986 640242859 188021181 520832761 953430249 887173874 702833796 33454770 785409896 99949277 416831389 441559166 199276023 600947588 870931544 779842453 911313016 938708135 666262057 521070115 722163973 189501567 451678270 138462279 236900487 647189242 963649401 983578100 753531139 503983804 714331024 706180465 91148204 981016792 86233163 650609489 833098138 274576091 513640404 313736358 408909763 513967546 251772544 315997004 139123338 295011227 493048160 191749819 610366251 258846465 793505065 978979343 585207515 836316583 23902330 535105291 670549989 866387170 956826645 494400739 594291927 524953895 957353384 490742593 363532078 979670985 306152512 801943301 450276695 24271512 328721663 255071928 48738735 300952931 858871464 606111377 374472892 239077695 334325171 434625211 399444110 870647494 260533324 63910631 721592910 705930735 799546575 951992724 220159073 753493321 98796660 774461657 207746487 89868921 15316141 88631838 129844561 589983999 156449071 849632726 354704164 691910147 900422129 751245682 234059633 293245321 543329831 21696787 990049176 335537711 965777234 353347795 264463401 233900480 595395593 859800084 291888137 334753070 216730428 926261874 378840757 208200871 287944722 331190017 15131061 639930343 2506695 168868886 391438967 843016037 702128551 10915438 861918646 209720640 751000173 240138228 408736573 450510846 919763407 771558810 193144714 546972002 140253921 960220771 665294507 325596056 776195005 329207902 740100136 453972564 367607684 312125942 189907290 349482976 666715732 141954254 157672638 156099631 526367816 776460327 659068501 437663484 769344337 470532290 192929931 879143203 622699256 818300580 409728850 901174653 650346984 927039082 550919784 112657826 126047590 197489304 728998255 905308669 570263147 553887404 775244999 558596093 951796793 272651790 423730303 365343045 280370708 807895518 468274518 620282610 580282658 162242353 853392431 866319299 638899528 282395374 322746721 607933230 577752577 792408448 333974711 988942336 952909346 437656239 349326618 133661410 298711909 440346683 777606393 808924729 955400257 248630103 274759300 331664401 645428981 195514657 658994777 115137405 59351144 426241386 607070177 881648507 660467445 565941034 577603339 798317586 990857621 810188538 376760080 998856712 348981467 623138571 283544146 291036367 741874204 926782693 883107076 431887769 93109676 557968011 681421985 322597061 888813393 620015960 105477946 966718413 523838164 567320878 92626599 434330973 671310086 323505240 126718820 932293667 651961337 673492132 360640954 3510063 774178612 909703871 739652623 717510792 131144502 693364755 474672898 221420674 989233100 922814451 119775534 638475835 805223270 943869500 891222365 15538889 367394069 535781274 66411222 418594389 708143698 256816599 339616241 869826352 931429952 318710372 683735891 597826689 37210391 964161225 613082695 572553870 609585730 911891673 290969677 270608282 818786426 314016816 370857525 350850433 256760487 683741087 701280448 968149555 895513300 129233341 864531820 590636152 188565193 961066141 724753324 363068498 262966844 734179059 607329900 849936766 16696304 747980710 96238052 741127350 470983383 585685439 785237627 430808727 670708317 538712489 704396547 230356911 140289516 440018264 320755928 782939043 371951312 866881647 110055597 694397487 802974664 838375503 230299526 604345055 575516342 344646240 627845398 856855344 35713771 333364311 284136277 700294580 810529055 750623013 762770251 931020264 326185118 499630178 263806122 430646292 396970606 581393233 712369858 531953294 333282300 225336014 938833259 387545278 360205597 792364935 245005937 964589848 746908423 659603395 288195351 567782977 202382724 301870761 432984045 377871579 526801556 668624636 70767275 308980845 92851351 224993349 842232482 862269404 373152862 306083550 467692805 433066955 746180767 868154695 233442488 826927890 47030007 217328946 388187196 491111910 166454926 591672633 133849281 374525090 600092830 442354261 400754708 718963804 598605120 632641694 766378396 25672208 838698820 197563639 670280438 749617039 443496345 465416237 654560286 333403481 207387459 268489124 488917576 976932450 501013490 405963358 789421654 152754815 394802584 535948429 275036999 229443144 823405925 529538941 580244491 337347432 713618146 145486378 183731829 375224731 126144580 362089300 15504543 681106284 668245700 196806359 733769588 165451268 137054515 639403248 141856898 594038717 462150024 801423026 275318903 171768385 270884997 921713242 106359971 398811283 672470891 954273961 870113732 701803074 288301522 762727469 56955609 557676866 47640603 688372514 235388389 230298466 935761641 517903064 867411762 264328675 5617322 644178631 725348683 78681636 486655896 25318376 448558050 672451962 615478199 65262971 759766964 30144437 722159949 108394084 467801687 21027122 895599955 504805289 787460988 626351056 678530060 877077109 255922999 613261941 359688139 176099843 281598196 837622206 944090053 908819782 943213862 172116848 180158475 923464058 699243368 529984475 31211969 100910012 682641081 822427244 773459202 915312360 135241965 672511490 407860046 793441306 357059904 251819214 975574243 355125555 616073244 974686400 287071783 577250041 360101503 713914831 51387746 513787824 584265914 975251784 525710442 812233188 294665730 812030927 452464616 711035956 348473947 556915069 877362129 313674569 602460129 380607344 102252880 180395079 608396211 723043390 638665303 812318544 437820091 759876115 960056855 730268298 653915195 862685420 477768246 807934609 831739918 481349955 267560748 723361867 665543492 361176107 391168533 199129857 623650683 542970729 864633475 278470754 725209300 779215133 496938456 982309361 615443024 512484499 153110581 225515791 225699138 615792889 846342086 485077674 752334987 964218783 147983294 530143063 192933816 314829497 716571693 981420230 16230733 799770772 693352261 658098645 947676151 866957960 962398963 279595880 100219803 649739821 526254210 552346035 181089023 477674588 419832791 532361634 686503257 754928639 141034869 437731417 94525681 373074694 120416084 455708481 161400235 806091959 765403155 24880233 402942688 677108712 83951299 578426360 747770821 906670615 81550559 161302912 232645307 475042301 3153432 945331632 793048023 298452402 917572181 159373864 50005497 982143054 209594151 204624842 83629036 36836330 731435891 525899736 698800519 74965935 356800258 628977701 576917577 336250503 211252121 71354641 279645689 40592162 825779997 403880867 750968226 79633672 314754324 528834098 77796297 376927781 871392233 505932461 20870288 107881407 297892418 365710551 365077158 870174255 582633812 520467163 785738767 356720596 580430058 887167752 403182415 341035842 993392744 678837089 218001237 341315519 990553341 272389540 792207900 950127003 852766955 415854750 804873325 270569694 440956372 611198713 776246004 292250986 192208747 746121432 601275319 741127528 80054309 76410512 557379980 46540894 365665402 206920034 675484371 42151116 530837797 459203682 734766721 638538882 628313577 828548708 595912647 827735858 444146381 758789475 939676170 351251812 454478902 521081456 551437391 881325963 30609559 402097153 507640524 994973083 838284881 664950593 366256085 833351624 663491769 413466281 364039744 481577314 562264373 720628146 941898683 748862920 819009147 786156238 857083329 247511704 880033196 467278305 532644469 167291953 871507305 383811906 443727884 135560966 72134629 345478943 350325367 224366394 938676972 146573761 268614344 994749273 86949106 763953270 337133223 226990394 442786620 642358692 321902272 199226008 35533014 421631786 507202391 648965238 433467711 472303600 862649033 346607644 962035399 882795627 878198889 847149968 189278266 154249297 3059720 285008914 79236342 47372815 979382496 35203599 328818330 854427475 708334863 218647373 932101372 320122836 798513759 536123893 472568413 18365092 396338720 170919482 483505154 173270188 47843965 655769468 277503834 338993322 114361087 706562629 205832357 473628620 142567998 349267338 225108333 382695767 559422145 325391686 999376114 586510608 597068466 384225467 35644769 722414946 137061611 671966579 345822862 961941989 681168866 4414355 281197844 6043567 498178229 691901932 67539163 725644525 562407665 735347685 488861466 411763679 480354277 30646468 532454835 456144323 679113230 471916113 28441125 307509654 954795349 915685567 48690909 975378728 290628836 275946501 507145898 538399613 724281822 821855752 699408079 131202495 532854862 863007257 411698559 146720813 203752388 489767336 24657926 170065187 230753814 322052845 654423101 202909393 713161476 176979132 256254570 759933921 360493349 236756658 66601105 514392155 789851311 977281186 741226600 466252978 317095650 612318428 563698830 302570150 84240905 728849793 601091918 771645796 761805945 920217083 605682229 943552410 505314821 420277692 85732122 723519075 175820736 779142278 201183842 438319492 919481677 202913208 590895500 21562728 788696402 786542094 685386025 76330361 612329478 180445409 91885732 501643046 148276192 694759362 477173887 822861517 138112855 639687697 576604731 57775283 600778998 56790291 581281608 4665317 924300863 725818659 481809649 888372301 39678621 675424944 271239439 722307216 194643719 935416161 392114356 645938912 753241654 257893405 933117857 15471832 605991893 749011694 855965034 98709608 62358605 110949498 992866200 904069100 653176400 810226226 197505798 710570984 592131365 672320265 842678662 149971730 326127808 177741441 58938906 842508851 549064613 586970081 619113847 218956516 982275006 330555446 786712117 215636238 829449961 343327294 651289734 562986634 239023505 646816915 831895140 424443588 813599972 285025077 356125031 784211710 90478362 633396307 837409391 459519782 13708275 270609012 125629016 911025055 780860523 841366984 538962606 391229038 260257307 366653144 17706542 966379752 848066224 508005049 588022363 409291544 463719135 669823930 922737768 986666677 5629535 633937786 426706843 25395618 418497346 791957520 592061985 843198038 470975580 802161149 396444504 926122486 513054225 177061802 137353918 113200161 819666173 166129607 800749478 852499104 989281138 732280653 694550702 121705452 546880112 164109970 470399276 651530488 871277583 486701767 62276176 740980353 461680804 63555135 651054430 184000690 39941389 603597392 261649777 647316360 629379083 696485372 699525452 92832286 872498966 970642101 163714536 741748097 771839422 546049859 129862827 909336596 951474503 678856973 398336286 160348712 870563533 730754853 171816086 701997766 799513453 741472568 878393807 152299335 407510442 607610842 442238295 75335855 896310378 835411878 90354125 707956074 387776984 861216903 213136815 863952088 389145692 693282952 675059919 992443645 378186298 712950832 995066061 68214364 540359670 87878592 553697471 762819044 101964270 794083813 885843559 788306568 571710294 282217700 925685695 148825087 95118872 984634406 98088282 148448285 206486097 806683950 735642121 982959823 166197630 327987462 651062322 164464204 474610269 272451073 710078540 814587681 987084877 582870750 666443891 310859626 179823288 182776791 956370064 169038278 394334555 636614965 405919306 888032507 793340582 39008716 922667291 497474468 111054941 92548187 162728363 263771674 876496926 443692534 498103450 301341723 239476683 73655682 524395659 185391480 211024337 187800862 173854098 103764915 762470119 793171584 4099439 44870294 260997130 859059097 638201404 676660514 653481574 972868386 187327502 203622182 364788743 697140712 652472065 270856576 155403298 689868604 673913777 917014948 830562337 92782599 726367013 681136197 351616536 108556124 866733701 673231336 682772619 190563806 15481866 577559078 422522041 178811866 809711859 682786944 38971924 777821569 333770711 780197090 92528460 973247517 944423867 753627641 377112503 175775219 341991364 441928983 584822227 631942768 565617008 967313305 173746938 639465021 804978516 643719667 676651895 522013025 888358931 290340163 959267537 913710262 655730640 102238995 842440298 150127668 372716767 331448953 836369001 158810063 291617514 756081984 734007868 492379549 460165593 216471618 100491053 323386930 450313039 139694197 997451314 324406798 318077873 943039351 727643835 683468640 501860507 787182496 819956895 831411332 109779886 287214785 338109318 767642004 152809495 642964754 71521735 861522215 526043131 861011476 556967690 670440310 263226906 933570732 578525294 780112301 156377041 407761077 271153257 711604187 88743867 650355243 577507271 90247093 226576356 138303797 943982742 766935530 297826748 726037605 214834139 704590941 979826263 324534853 423645305 469885764 527949817 515936095 424350874 320189171 293461805 98177745 779412153 872450057 845911915 263547176 587040201 38426619 8458013 218424114 86703400 174088794 283609085 313186197 943428229 165647462 474882400 534393207 362357875 420975489 829844212 595860895 911626757 862593540 930288452 794105008 58760096 378563921 833765072 220400087 149305936 712181147 64945133 98518152 331173492 477048171 490638965 35328136 799172107 684932130 469577704 53600268 879059975 915442762 511968617 292440661 459816862 651567827 871560094 298439128 601263053 154767673 309206178 481260698 236137561 522809841 249046962 276576718 884715189 27449130 963586569 978832890 918596651 779933524 89143177 397817081 965020288 257727519 915347104 292278049 259487324 878740349 766967852 200244367 488640746 173416179 347229616 454328001 873771092 137019086 969440577 495376722 462044306 654370137 845705567 719161356 229036243 941683620 847886722 421837533 548110518 65978286 611068130 53646805 179152436 473620507 809557709 573023947 596191503 223131798 681857110 426211496 721590972 2730690 604027364 209639189 872925826 275480123 826456171 901488402 214312770 308662792 733872911 471025091 981730408 108859199 669470985 551497286 212684322 116099733 920391405 126593186 85121290 590782636 333662950 232615685 230535421 584819421 584092937 432092651 460279764 702889878 151548806 372060785 944714198 6388704 753926366 892861319 228623102 282396481 425242307 380260171 464747557 631067630 712624406 246959066 685368666 688626102 593240635 952276997 212346687 854326255 767881563 962683802 943392163 590680814 975782431 676808059 342929855 922373456 692561305 231216542 914210141 213341235 372951649 149091855 812386866 700351004 535713187 18997009 329643865 107189777 551816760 537514449 995978461 944534111 125980217 539815989 961788022 906121983 526106015 821305489 256122155 815183354 402795443 502951082 708310382 982947753 913504870 884501108 200089412 747475325 787602089 870460255 454290364 964381960 730906736 440298084 79516580 592542952 284171422 446750697 60434434 949480571 65134868 58079937 437895950 273115716 589090345 348269059 740627883 188277784 90179910 347543308 198702033 249132361 235906859 790096720 784038105 676606183 435968004 996851145 124193494 152097567 496386132 707506275 733163404 115504769 732029440 20573815 14227364 807238844 905188454 625952874 75635070 565185312 341215004 33866602 154388202 27164846 76732042 726296187 644674693 469227981 504157797 218619979 167911422 198736269 747121319 182513201 317403707 456392508 274411627 883686704 283405698 446268199 507811010 453512189 392896739 5244580 377976135 849679148 680045302 86537342 310234745 348262441 2199089 504304847 220805909 327457181 351363195 612505022 22878936 209870629 619337137 353143157 662902269 249719859 568032493 426454172 644351776 661999229 929940960 368796357 411517000 57098853 334862548 5624171 844681468 150594138 251179629 938437537 601967284 774956134 288734350 340213930 474064042 444256965 683488221 333059339 177533985 765753981 575839923 681664716 684061883 59508174 229694382 297408618 450100352 245517135 224012520 458578644 58738948 947315223 293993339 482164467 886111103 941129732 144377493 641226785 975257342 231554748 928169790 458814462 727216442 929845900 75517619 712050839 863271165 897884041 239413971 64089202 898936373 322910115 863580385 388271221 530427007 716434728 923828784 100460489 413781520 305054332 377460779 373529594 534038947 6544420 634387515 250041051 608431772 495399649 564708619 39445643 631175519 195382775 64137760 237799029 734636265 505891665 217365335 285376330 913900847 11512657 111838885 234617778 78514566 651981205 167139319 281782412 21373998 426949616 427878632 793662717 392557701 672951451 444616129 569098037 490795604 590548682 470037919 601325427 879490068 97381914 444956067 726366969 240924962 253225804 976982108 541487964 99963595 980134791 720241880 52077156 427420862 487452211 171110915 710323432 318738162 103335947 531267376 699499168 882206879 582504741 15608160 303128375 663765788 40460336 594581727 772839791 646588294 587621122 103582273 680788269 228464269 485533489 584181149 85708555 576521171 492215673 607251348 816629879 764994365 440040030 854116245 855933165 31432778 16095457 202320264 870836180 556841784 146324024 162547438 10409710 917707097 524010777 996226131 165725515 339243588 490260199 10896908 672059348 227693705 950100958 86622083 768069645 430525501 593082986 218233275 191716599 506693740 107495329 45069133 97703963 817774245 803435054 41099448 167691941 933588554 530009061 497667360 453094201 286509729 924783823 984851686 911462781 630240020 943122234 505588548 353340395 763398587 429161106 715239340 119892558 198069927 31948202 273482840 357338986 417033095 847634542 531034346 752036856 966886337 941323271 492609408 388632974 137025001 397459062 265452135 542526754 919618639 912982461 542067678 264608992 294456312 371676360 352572786 502771202 980828319 547293084 372809177 996427877 481116642 505142298 773536375 324651893 359884148 951690357 947407840 233318992 699128986 992786065 846353767 457557108 63980532 855223307 774473294 257876346 356853996 278359253 432790044 396243020 596410874 708403478 162735530 63627067 506326326 260811492 365950327 368608135 307972428 871937101 468074154 454726305 541652675 584290571 273068591 766963582 138076593 502315752 403678667 556489319 492006494 812596055 253315146 631642818 448251366 422852819 416936976 239915694 768987563 204330926 232275631 326467728 482398295 330898681 725045614 972967040 177969081 977532378 174946279 297519385 376642268 809014396 679474660 642689642 151084376 577390385 196610301 220054814 216195161 722721475 127734449 150628664 660126408 987650026 179398030 982993355 342191887 634858658 227308849 301422575 339269342 817293230 843186222 627938056 420433772 812042740 110641426 313034054 66558213 984780868 853482007 915637836 765068844 141218052 529256991 614955270 92726309 653117668 154743360 878304766 675532655 233128648 270976411 235144969 709093623 804491696 681897579 427624024 408671839 850024857 418227603 765295996 516498529 374645539 121914395 175411013 97965376 256887080 147757124 17294288 725354266 150922290 540275993 633360751 861424145 586797990 121706596 650981133 818760005 202168629 319845150 983267679 860726016 17530639 190983512 951832649 455936809 741910011 666636258 140658212 955152925 219458381 247176376 931215687 701427490 283076486 293720320 195128237 678815469 131062712 908820523 787867652 35504417 533369265 503535092 94392131 405417096 262244823 147680209 740527171 597607350 782690706 478434946 560634997 437881886 171852546 808345558 741611633 309071352 648355361 979320761 592090278 304815469 994370265 875724695 97461856 601933647 88970277 785309556 859823309 614007904 832525695 699386766 789987004 313854744 885525944 285046879 154337680 715447735 6359419 323296167 753788173 358178060 156539190 926987887 52081496 797232778 82776886 907634102 688699479 156649848 453186626 349066818 143916377 617871688 620305262 854757172 358870433 245476301 14894831 481815720 142187477 558201431 481319050 59980561 325250671 412507791 736689884 503452490 388776861 824151908 893278789 926939872 862490725 147710929 661535983 16205069 805113080 366018523 418176639 277828990 480878087 978132030 813066956 457370051 446150522 902729962 75890826 728981407 76374862 747584135 198951412 190677051 196597162 666549105 97886852 286011501 115514163 913087617 897157067 927411448 207970315 784338776 54206947 106904364 530995195 119723231 413132911 492680128 225000501 436773785 47844079 234014333 494609529 354293519 529096818 65431 238517238 545677752 829936745 967871681 577158581 478920895 109480437 271804312 68651833 567584902 857053799 866888410 129179894 666103534 423396566 468348489 310494785 836113679 11328985 813652750 425481093 325843124 254892928 798220518 714245932 822682080 25469039 623523961 285258986 474561679 10108914 899560619 74365670 982506832 810003967 737482091 955076479 553164743 472593144 430517732 198751455 344800889 596018060 864601620 712241092 483188836 162017196 211624372 322888004 880201834 890628739 37520368 388270571 703560886 766185063 287115677 82508104 302201226 116445373 16018429 367888897 314060258 165120735 770173034 792856166 935703764 708936487 648988544 398712421 683467926 886195089 370681140 187442803 531915975 562244999 501649437 453559615 730550273 418608244 530797772 234170023 902143661 91585253 180870459 149529135 916069475 599822770 404829344 504454435 605125512 996834899 521473643 760239737 333168176 281222856 39060447 148807873 565230306 632999025 52790609 337061459 2873562 606674795 882537276 329852726 684531598 715240848 299372115 419408019 949800909 615349500 696490602 672376355 658587507 699942686 149998735 220492981 48939731 997244971 839637091 6386348 777504896 545299239 19692583 645559529 607768858 384194847 695553096 376229544 861674363 940017381 294037509 964312470 890781768 923224050 53754174 626422997 572745258 465922234 366272739 198244166 166237886 455682728 892605508 730086483 545455001 954365341 440449203 636788054 516892428 109086531 208598135 761533173 365933012 682988082 229889992 568510632 836810428 253280988 612944271 905410827 182176068 479079629 500290752 977931358 646322238 275378887 636977592 952360384 744076845 173413048 790073166 735976907 242282653 749652232 565936189 752206617 309704855 387398807 770958321 595280024 752352466 735717024 108749849 636791069 394032031 466752172 788636198 731917205 298971052 458381685 64841008 660064589 132571076 787176964 481263480 655763893 996319277 475195495 974028266 872166762 367125209 978227362 887649600 522026179 927012706 426641746 130414145 936770389 281916328 766828092 505394500 843939234 516696900 355513274 49103758 250599518 358457273 390553543 58104482 709354 755947788 831092053 462118196 720050626 604273477 947876111 951652206 363818790 292333918 218496022 55183731 525698877 573512190 40954539 112195481 2982726 50417971 502267413 381703057 645184527 582510118 650926612 367780520 587991196 529461419 817118768 439824478 610925329 465440865 10776315 769381115 61806025 74659127 493234678 286930091 25637141 75279597 708731629 750364957 247935953 467267695 650949624 473164701 116354753 113896228 611550755 649738510 464695346 839422894 840255652 823797228 911576624 450368708 763170169 206965261 70704353 798841644 308329967 650079683 689007210 969278119 634488112 327167528 535619636 990475154 874496126 417992276 822110524 133774704 78153284 268889165 523894335 778986626 583459299 773323115 615461701 493753329 794083406 295830666 546915232 66100250 416796827 565175758 925851109 347852662 933198934 706517674 339532183 506690033 983374312 232174576 268038895 654708150 330732609 531994142 456114318 391742788 249485830 574898441 81869371 963634393 639325345 614888556 842648190 465582247 307740985 237227057 666315872 963481095 70367393 674178349 932031011 236107425 783475051 183900066 452263765 935028490 168198702 945340539 98758381 187933279 553686878 634622616 969948593 191120546 645412658 905178384 695987164 2681152 514130561 100479460 66374244 761721894 814582911 357577775 481945338 291615208 464931196 210359922 749434207 625168092 163889230 635802212 137677087 756863087 693222301 705591514 960398573 654643561 674718395 113885970 121415971 156742117 747031846 255554669 729967395 424902314 757001188 894216378 917353053 539178602 254641968 590425037 849480554 709728935 777461960 418159052 186944453 609625944 809240634 844799098 446532596 817014990 607785530 255787207 581746331 619563437 913091854 949898487 602553396 495640712 82634853 607383483 766743585 594138296 359731346 661405411 659552176 12505895 982961290 818071001 457898966 966405008 642230351 594245753 2549856 449659759 46941577 421142643 427662645 359146039 722784556 238095063 150496881 331349212 136982508 431416763 557474057 136024070 619401797 479060594 387331004 925148158 910840708 668429908 597608394 307221948 428936659 294095789 978201470 590977144 300538972 925000851 315898674 327557379 353144865 215013594 393807406 224545315 436857530 703144534 617412104 513248208 901257523 607301259 575059039 516639195 63611527 916454116 933991762 382832671 471686364 163307563 491490064 703959250 403040208 519465073 925723976 944141313 442781138 806505915 209604699 401186323 166392069 362730903 172514994 774305498 54833472 753149726 158429537 852387882 970859222 404113608 549155151 37184016 343911943 428648057 33311507 599555461 19855420 886724433 536732661 621823218 152673224 627885335 535153403 564776896 503608032 499346916 9882723 457314159 320481197 541960052 960194086 370018179 477251813 965529790 951280013 579111359 406210636 72778571 922735755 537258774 432837617 986702402 753855116 586664763 982026483 268867825 390362945 980441118 802123079 352503688 718274129 699440866 291073555 684103427 807896031 121749306 620245830 942439851 788857160 121942788 724542837 121740807 651351562 124530880 751357940 571305307 920214523 63824259 752694148 119067811 201213325 505089482 515931221 503537771 529732660 55434907 57511177 564793708 611687338 221148850 106829895 599139562 626549468 544201259 945369428 172283425 431533894 313372089 418341051 746351549 795233413 45414301 388791793 610191388 880755105 202187737 417597225 156534026 628249048 997694010 840577593 10302502 103186346 542819051 382954891 670743158 303027799 686576605 401800822 805348031 585043107 917355587 251316152 267598668 331205555 965627648 743507922 451458793 337022241 52659424 387107876 216714593 843957217 193946774 436290314 903853244 304095146 678650518 295374373 830654928 158339491 944052706 567536180 580649227 683729267 687521504 367771373 520931287 275448906 108380005 442784203 676549263 697404755 405039784 840637084 489480354 893476035 350648634 977211089 672735546 367877644 486237883 214540716 659428018 313012467 587120200 246190410 523450213 381844464 740234797 117204079 345111626 183816999 409407003 861272639 605742285 530438052 228375586 876623592 995402207 925260121 11548815 661214812 349610021 541924831 409351523 95054119 209735065 192352048 365839917 824926699 871683761 688047618 911955303 25593494 18108615 924882734 874923187 336415996 861749597 604521924 49715593 320804435 522201187 826430480 30395905 687970589 629859356 109080086 933203327 381414277 85442840 793161917 439059705 955549477 644729772 323342159 508207336 33057763 847276315 287126840 711601593 518176712 154311823 211488524 480881645 633067639 933524209 59831340 470268382 595119861 554618970 254421299 912695149 805530001 3888569 759637000 487757246 956278104 372824234 243367971 83382200 258328599 74273316 536427877 980227540 155083679 327029035 998061167 463211594 925103056 423493799 408718452 943035926 887593210 978893622 844504828 741133714 134902321 608991212 467927556 496699121 33380813 446625046 178705372 399664488 984097127 957398244 578307348 394382295 149523238 592995663 366210021 353380464 213357545 746939489 111218857 154751302 457588186 189386623 757788176 34017261 921769358 123260889 939864070 128704316 148665412 752805845 341895695 381221217 95955780 610502735 996565650 31962423 255782772 191554525 252886504 840467010 261031084 506415387 765543601 126516460 50650469 518177028 110706639 220397475 593596537 438936017 824268244 993015924 767756814 275533899 777013432 294903540 352620838 826290863 291483045 662365662 406414917 604130572 637554737 174496349 921030420 221097815 710199569 333532474 270159097 239325141 855623610 453612848 742652008 211129534 609844070 261205624 238922958 736463165 409483037 286860954 217701022 718168539 668697392 158522377 373607051 490310698 932245114 147136107 416944539 842435685 143184952 355882513 40095243 878511489 552818920 757736781 303991902 11051501 244386941 239342585 202020403 890463520 639916902 260098938 255900485 259676962 587993695 825656934 809155447 470390655 164742378 674801917 800143999 242936044 287633209 315752840 115902478 457893557 303954913 52775595 130405406 916640869 59999454 71052203 520436649 483558435 82364442 413082390 847862381 683616089 39765620 197208671 278809126 642652009 344340822 893177767 873427849 1153203 536974955 373843778 59899879 640890073 587854172 551741292 120835174 800194379 391627535 756199590 816522155 940274986 234217205 261586877 671073400 977890797 690464076 918219599 281427286 635357738 435780596 15464399 621767932 654116165 893874067 419145586 587872584 814307829 940190645 243038681 274652864 565230565 398885951 582162008 642851507 948937823 812379423 348453535 797832887 794276181 102259067 431257069 599364397 160642484 389753431 350777805 654569816 180279036 154962189 745739546 940446746 723080488 695922088 88835862 879406748 977492320 571907054 897088947 1355195 877344055 385742096 568574155 688257520 683732366 388551954 239021053 294144036 46802055 570181033 883292946 78261851 186651788 530066329 110335481 90699664 944355067 488564709 84741057 805537174 950254023 267345285 91844729 775629772 847454540 233139873 139387836 260380105 551128455 297077978 205831092 160055096 722727161 374143207 901131371 715763313 598078467 819192392 102988206 716506481 107292785 99747687 20088261 308904348 720661110 161329590 703788109 555193980 338593234 845568729 920349272 776214061 616302685 809675583 817147242 457260492 274321675 508561249 381425379 574498651 705158575 466469478 329321835 699517000 458558520 897782479 869775485 424812851 318964803 650900555 212765469 345614942 725248725 999316173 145124954 464253164 761817560 35308305 759679061 513289784 291512007 519866896 16983208 98729680 804183432 746655656 332381988 304429237 664304056 360860827 523701626 422820322 113206091 532903034 811127448 988999018 26780185 773354741 105978496 77733499 424626922 764654646 128123470 885847092 529776815 363824538 472197903 672479379 758336627 313417522 58978310 321017930 830214289 615233812 294319728 561815308 707812144 231624731 390682144 889765263 268364847 387810627 306895856 82812181 214955047 185684994 822979219 883072606 943929022 501355131 741381964 131452334 401301938 680811272 216626034 765440188 391805097 21414755 690596125 685366848 77274789 711071943 824426646 53436511 977290568 615624511 139203933 114303072 849899760 373904622 883359868 484428336 530829080 258448815 796221601 709230367 7332425 471358699 229650421 672721314 59664428 409300343 519682963 887090357 639109517 528333353 706346926 271784309 788381132 890861312 807967669 992233127 405354285 392896734 566640946 773884285 749106920 406219799 386287833 270871371 388163094 428182044 282641829 411639743 819678850 276226742 420567473 132461693 53516293 512614381 575434864 837742017 95188697 510365496 260497991 953853624 331143029 442621327 121410449 436716639 700311349 520881663 938632974 599441278 543963526 147690713 139858772 288409748 634178623 686847797 80289220 890730268 135902118 175336601 299634941 97745562 480406727 4616665 498674988 383186621 131270607 152102531 450134613 667108580 767298102 902859966 58365610 856533329 938150560 400395291 761451100 209421735 918255460 442575837 26917377 825632650 367719830 929319357 488803220 773746067 737402485 491580706 268612336 939765634 785345931 289757711 159454400 633209671 265225128 609536531 407496663 969384518 198591436 705842132 20738077 69352779 560906001 509579902 343416608 232098717 444178326 268354230 131792406 44537687 749600306 70878870 967192306 333373126 470080566 48956977 321133903 174899602 416549933 855045388 429789734 358619143 323254858 898766243 908451367 116365467 431125533 15463867 235645620 35422080 618137884 997863079 329453189 403858352 365070708 986211953 537598226 439038959 731347349 284058951 282350856 220117734 663481016 105537893 168416978 310647477 63347762 549293172 456836230 959610503 297460956 929783365 916851168 205368292 199494948 893759194 65268278 484100509 824529040 223734344 198620395 153782065 529843859 630775794 787123667 805775190 117785082 848720866 601803981 797201740 188484572 703920823 848031625 285887407 360576344 391257909 30773231 363554460 945971678 449349892 273462749 942214860 406549169 679294843 570075369 616192266 741918702 748017013 882622495 91461186 27321931 897474605 730835632 279742925 947072798 734294805 63081976 972569538 671034281 947035470 498874143 468927499 916477214 814969738 312397611 988638934 65146866 148631669 855483601 888544707 865183759 922758220 784826725 981604034 17471367 896139821 21988104 917757009 491553192 23203201 646725313 326215569 426341654 350578298 135540767 456626452 869668853 713478283 792953148 311911585 118806311 2594626 541325696 868420697 298775614 700552483 612225037 121071654 561759407 586156501 877961760 47345520 689263847 84583535 483793324 891622351 115427798 220867015 496183232 790378533 571878724 833474071 952971838 723938561 116420406 48680369 280903802 296908960 875648629 749510604 937870744 842326703 447749100 630238714 493882554 893178407 755144948 209243644 412301706 218881455 793519347 452167312 244322345 403042370 199362609 854704578 271698785 293516774 923470663 838041582 807929405 815027164 232033773 816253096 396443848 878273896 523759728 991592406 929663490 188069171 199432959 318884598 421765914 552241972 538212086 791882114 19180693 417750161 620955409 931453345 961443546 600993061 751375014 77038518 216314718 77352993 353989441 648822020 271741088 565341824 763155750 932386152 591946290 425241463 318534617 608175891 633026975 965503462 394986838 485105459 189273848 197858187 226957101 239297155 844506557 924524373 723012684 601884255 641370740 874200187 994447047 312073853 331365795 740883544 122405541 773415477 80110560 39843227 346409332 978772683 632443554 692414744 248042233 480257580 276389755 372594925 827133566 411357233 391487232 777972459 602004326 329778272 917868704 592894450 300702675 535302340 151084549 799056327 612392959 924552935 44496366 85693851 932043918 816425659 903871234 877684096 366234317 163487146 226298174 26891051 884371589 778613927 286520971 100511919 538393062 516081026 532293547 332517968 77508608 53457659 865575126 817764388 721946063 178642569 458867504 236065894 661366665 415678344 818382425 4949173 699534595 883327190 206407053 681885227 218900814 143397171 494462547 699403513 374426483 127232569 902033650 501370848 864385711 141174844 949140508 705985729 167381350 155150975 384311211 3956282 423559195 295440950 689805406 438890242 395897678 260432941 881528021 635287951 99522550 149135390 198243246 882448096 876653191 401699859 106952655 122421225 585917384 639474022 240364858 153039273 248617222 347583816 923817579 733135715 757452202 105383570 898991675 51014890 600532115 956690913 282256863 736368464 998562194 500188159 106373006 321005849 768466317 397697205 135600828 295357193 971758547 59242807 155686615 335936701 5531653 79020783 59432345 513383460 282874038 294831983 917923430 369145361 24685036 626313923 618503194 394722413 854965101 931143155 350071207 387480458 33198166 877207396 363621372 215992104 387394897 795413798 440409444 423356757 826575808 626530451 153340565 589980174 925722061 222891253 791762639 46335133 145613649 708673084 836012858 115468724 865310933 992738623 879497260 293967844 880410278 466001397 659689359 186639454 219703644 913582387 340292658 610635008 140575049 384996170 905781474 158524329 749720322 87658819 44618057 292008868 391460142 960239792 378201128 196056963 601893679 502835198 129611219 359240878 854197348 748099734 206903264 338985126 416278699 405073639 96552515 336774841 537183236 808729405 607459552 685718890 934728711 453635728 209205821 444261539 402727752 580699245 826926754 20011440 302031792 821204492 275322469 973255888 368260223 134511647 978677863 884363232 521674783 762554979 102677950 344708477 361620871 451748238 398922926 811526638 167766951 291454102 759416712 897125174 595663786 297678600 726142968 960530000 662791477 176493333 241627639 98871572 596341893 873283682 721857047 638488011 125515793 492106173 470983392 341910945 728165310 204944860 711008416 580548662 189241025 639158550 171460586 706447479 389560263 194272878 320986050 620681569 22524019 55526438 970756268 571658301 170379421 339449895 688809809 887999057 275183452 64388533 789052227 810732682 297465245 828496715 776644313 768629363 952900793 134258542 171690805 652382459 117847769 345312670 5232906 429176667 709792551 878301935 350533964 762758639 309585610 592786125 17900968 47269945 280999951 339612517 775677754 808251297 914126835 352547567 621874230 890383180 622823214 668594129 718363866 397427832 691138410 159011261 976003894 812099308 697471354 666226671 752330713 960656613 76095022 983584068 786409445 279851171 440187934 256568987 927331053 31701334 393803775 956272295 332300579 701673510 912243620 698491780 419730721 145009687 267014261 305400875 429438553 306574045 545836632 465244146 151947942 741826789 968027275 470502747 871052038 537706317 272164118 468668559 542616428 20554272 780005692 647711102 618222241 846894873 440940456 366013004 793209665 81060869 933508749 299996816 626292783 574848528 870040562 653159219 676219290 636902084 882693710 727751233 463754362 411711108 609104594 749161065 877234372 502229912 319463603 338159351 417738524 421808017 780519104 181972676 216037103 906395756 27466025 148994751 770958763 627490703 360576935 297028148 116483501 799153123 543254924 453945336 706598815 234851089 217913606 509104574 435800615 363675664 972240747 162185654 151021088 167846944 212131924 582964318 211396151 179383742 690588453 953000303 809460424 918778516 802407180 700142134 238169967 714490651 99354294 32584446 948333021 156210118 655436232 559235279 635319862 300289949 834751728 539892532 506247687 766600922 422631238 692634311 909132271 441270586 369754097 579835369 51511989 103795215 841786850 188527204 157384659 483615631 584053326 988119831 623375185 260748735 443385859 352056638 396785390 843110517 720209630 927963536 605210087 844205426 395542152 437182216 189331094 92880924 978746872 599645617 745020498 918787933 649267038 700723951 232578507 946804415 21794249 618190762 813497629 426156475 773181340 565052888 527699241 888049223 354741547 656266684 956447148 479522119 207993105 797620480 593650645 410158208 342183113 634917985 752397514 912181130 926312154 920799695 170201493 949452643 278989830 416519168 715992767 396414872 932833044 73260986 907258436 273486251 659077594 764387787 994748615 630427752 982206566 910334411 262788097 606475219 223640252 492704341 228382591 370466118 11132658 140926298 340057401 785534152 668560807 171399362 625150374 44630794 859742182 655451064 792671806 817813260 454428101 947374912 73423139 954431745 357248534 143308882 526734333 453557973 834716424 100105035 337713506 714349566 512363004 223552948 672278939 306667826 630202186 513955710 928490032 784944012 265112111 935838989 348755133 738140880 335998060 970045257 550059328 961290541 767645022 715064617 810285235 177677430 869909829 868846753 412523087 145233212 555631939 16638652 725873021 729144451 79128743 254949506 688706388 891946022 495677526 433701599 881822977 342115355 858333812 874243055 582945148 969936110 356078818 352993561 197763829 527783760 389836305 472189731 766413821 466685566 6780371 570845777 591663940 177296626 19905937 736895621 173790377 773645596 283406237 430032272 1495011 317867910 240099287 175177556 83049821 424322487 420098095 781183225 272965429 822935376 137628359 889795202 777096984 434831327 256897192 972230030 508119172 61869719 466941571 372530371 740037302 206893289 441941280 546231016 798096676 299922783 478211020 269736770 436193564 613966817 756109964 915793197 22897480 760852491 331082363 333469662 973745316 597511297 717225731 150461585 854795900 572793731 820817977 321580926 214755506 141004320 500313024 499718315 298269879 181006267 432285963 476586393 448996779 108981772 90046450 590009188 757968381 314026677 817781557 703877051 755900183 604073109 417048893 911935250 520649372 382897430 446456229 944817802 870293133 161837251 828590919 834604465 261681147 214648653 531561569 331310297 338745896 942524263 266316835 475456669 651040565 37002802 450687435 579541016 694013386 430936141 959242771 412369872 154081622 839718702 987863498 424463885 404690494 705341053 576906514 816927588 639491486 317229021 408170875 117896238 872474175 486143886 189168379 717891782 900432384 135661694 353123608 418048327 331037890 810040170 695338351 225317225 752968495 327402717 416956946 468801751 867916899 171535373 628735798 952993605 696610135 553321979 249120844 117146019 560458165 700687526 46983478 39291184 974629702 810395937 167393848 364688661 975033048 30900485 955984660 480564022 479908640 984000408 248660806 959522765 231863496 790515432 704122400 361539495 647425892 61118449 462429653 12772218 629598685 902991367 416703963 325366771 492571613 395775758 193181216 383905485 656784178 88193970 231708425 648277923 546004549 436825398 101540908 496250523 123776525 462144386 390081697 62697955 828902966 235434384 889076834 152252440 543361073 627307556 694499238 100666424 552492026 496065186 197682260 581515146 310735903 359501956 357414776 362170820 645651832 645614915 502660703 483399824 82587881 189263416 594329710 471343040 146626412 813757969 558628945 275164896 195710973 107467416 589189659 742770207 446584787 538221125 159205384 654328545 754113082 911917020 331865488 43875519 389560756 741305622 327811130 210598439 69169223 739176820 238297026 306626020 536802498 889818074 3016612 465004381 497035181 367997226 234304322 942727635 67596930 402188081 374910425 332915619 477934481 392735687 172265461 773420059 277358827 760126920 914981606 587786336 366144173 781887618 990524585 846366356 88385354 335858517 67022200 240808107 59074677 133098523 220729652 606047004 409910993 938333682 726265515 891627871 181069548 674578368 226824930 780820950 329075348 331248397 251504009 334261430 717808699 958706975 889084730 622037171 848333157 417891050 259743135 858821644 344423397 149936482 629919238 714826398 935718277 746333126 416517336 925948775 785535681 179051114 356977654 778022698 524729233 466850681 15808699 701727538 687182265 992841908 22028000 367320363 570027306 871968676 584541121 638657073 785291132 853886608 153902556 662151838 62729850 493162920 373925708 212568240 200887227 637905887 942826783 777939656 384334912 659386629 839169807 858745128 348413621 252250915 340466113 655952350 555309066 830779335 686908854 330138089 865930688 47993784 644078159 180061113 736141657 148485892 637001068 510577054 92315644 128105426 469157777 347590119 306201544 730685464 354900342 202369903 181058875 649089571 779130246 321938653 773079718 1416322 146659704 872877626 130026202 790296041 617721548 229406362 326660493 673717081 19257470 393554531 262549326 390047912 656501575 544937246 834285538 837803562 120999054 776882160 909035425 780379277 843313177 849837846 500802776 30922901 817546103 726227321 983635841 778264832 46601351 423749711 773104737 991608008 64735088 632773106 351382500 13038233 140702404 722361019 950178365 792842371 464434387 860220056 113399989 879327504 480521199 102075209 815190408 935047693 601322451 628342994 861437611 325446499 918701178 863095419 353617501 430734976 660548045 44375120 448810198 409115109 778985700 74442680 520841428 363723230 646256407 624027908 199866867 359111313 588480890 473151982 687397747 418766094 18098882 723365854 614812320 8780777 585945744 528894552 182738359 515477948 271634568 928890327 298796160 462821081 31051265 217608357 138886701 948509419 533954121 426904931 886270605 400346774 792239305 69312426 874460482 931347345 979580585 815615754 884234018 201483377 717220679 932267527 958953806 281766444 393119891 11731233 714165920 95302162 170824239 330359085 677613221 619702575 815346819 522854955 958966749 77408772 901848795 750751512 382413994 361047179 97543712 199123649 823666393 629687358 832724496 770099866 492361727 105323930 469970992 687334673 101495176 861735013 816733832 665044814 560493294 577049102 312019009 297175469 414311937 178117242 3249821 592786638 85334702 969307668 576308348 989838880 835670591 65233354 765167612 475536376 264794088 929572676 758288319 118307390 596893968 816837765 334451692 148003960 641955147 440116527 366163233 533246078 888477215 788412687 29826710 175013158 99141699 972654813 219164772 638039006 5524828 443133850 540034698 748746563 911652293 223920483 267727079 181435974 575778471 342574494 660035418 119848019 92452862 321046926 820544443 270864602 270708769 598574003 401262727 666351680 575267580 685075123 778740981 602346370 225896809 268934164 358097621 510243909 655301888 468446775 225980871 218296928 253660775 783919562 205452964 172642577 668182909 110330287 236162752 125934886 360494486 406809935 597787506 950759816 640201999 917897257 659263086 541555145 344407479 853923511 577200618 837074273 566023008 250441301 268736431 637861493 719880339 39767425 714160350 911768718 63216869 172484434 117446793 859459082 745216158 853902580 731338255 533482062 839982615 590275930 383193473 953313194 689097855 231616407 985238434 78774629 895272741 140784298 955829388 347261824 651264179 421707594 473903193 493116979 244475831 631645413 729339836 826545991 382437976 656203323 215412686 939815123 469656535 332740223 154107567 273518609 796832808 967152298 436807745 472412315 501510357 281087943 522172857 824245026 347998163 590649404 900139073 624169227 546380151 239353291 197325220 60527602 979663409 317573357 657142632 427585151 397161454 950124644 520888422 40646690 657471961 286871723 172700644 414685988 178619004 637875521 436060266 310690300 391017078 687654517 542184516 638767010 786450193 541464684 902623328 786641637 471614762 763295639 963451921 426117794 14115244 225262400 557611649 228235938 216908751 757458220 124343927 689958815 174649566 608212788 459448628 26434515 89398632 16940087 335034772 98891339 430385649 363606803 946840228 940047298 410523982 444659531 843816744 170786787 137876624 99960677 116753929 834333331 552243876 53670607 984197869 24666208 502954085 654802826 67416713 576401668 492863871 930463757 800321528 527631375 993467597 617116528 582910912 245502183 705342588 834617541 681902551 718599856 746708668 432395343 397047807 780168389 165189910 525446705 758048073 325746378 800926550 293317109 702995115 484943873 493625292 387667501 384977430 888539277 441139116 999760239 873140159 857406931 478399841 433698097 321874839 447223980 380645727 187254726 553126789 115492190 786752481 465315333 155639762 969499136 531365753 4418576 483251091 312549872 183579305 149932091 973257723 266709487 714287229 674020661 988409500 746344584 219795891 949986147 881559301 224420876 104116003 490569642 546445483 58753876 895306594 750273704 599196605 202112323 265303674 697497784 233827019 812595511 946829973 831337805 584620313 286175250 616976771 799547448 263998938 532831751 913510494 690826057 778582460 896939697 188641751 733277689 112606395 707256434 111782027 904949841 522291476 736551155 43423137 998805260 825099899 36379031 575967089 39084569 105574007 776401785 540659603 341147169 906562576 849507015 785166241 880920140 391401968 41314341 885530311 654118757 710570718 894451216 394478739 248130660 508110943 348533888 450613796 901270129 665773391 48637592 352254089 673427285 480114921 229909482 815802490 144556131 925316600 751209623 605505394 144107515 135073959 119142972 776891294 732803601 220790104 633621867 737331365 304172218 841743083 214343225 729912473 746268207 425375733 176816989 176730715 447605085 498419417 316836105 792542476 418079190 338559216 688303966 568820733 836211356 949597920 182857302 701614321 315640513 768948591 907068982 180711888 992919170 959358042 172178618 706636274 69941956 665085871 117912119 147773194 882055700 97108649 897465437 238856008 588733798 692521549 574681254 918205148 495392159 825279744 738168632 833965323 363884955 777528493 288520677 313742307 577695721 123284734 584417135 200271771 868119163 89972961 119736881 423572223 710560544 302347731 384116508 852111608 511355521 669544176 499461035 296708713 457634677 811978644 778133075 266171564 38229642 693944985 57598027 708770566 28125326 603773297 136741684 540919493 676726241 579788309 991101464 414365082 359812538 368175045 666889449 514203549 553338863 279156907 291237066 571264946 145145839 628598339 384407142 690813617 635648891 959696664 647602289 940531193 762223936 408106738 35930286 503203697 517834396 623955223 623006290 246564268 948804549 368920569 732504043 96771301 248349268 90579478 134849536 677901679 72812107 495399936 928322733 47469996 855077003 632105869 355298588 53454028 658677693 67559692 346045196 415604771 405548660 165242144 890460910 293934239 819784109 821844770 108019451 536431896 647908643 397928811 116601908 407371165 597638468 381045704 971924806 930082649 452688336 218728953 989828584 140075105 205209594 796451615 223733126 649908951 929739818 620580609 29354049 79612043 553913587 432893754 864346026 104812032 202380463 284079041 307893083 744485751 199805827 923485401 974150474 791885973 265883493 721781607 786127993 16326833 935970450 595762202 200925962 96416825 575305624 863888951 909577163 337446836 828576309 743492164 508089842 952321068 936322827 420011116 173483179 980450487 340157427 249463780 573613972 655965908 816933562 763890691 723407963 368359231 684697738 368750935 96007455 1451442 664137433 144894083 404632492 900523374 251004497 5275633 82991401 905398578 272370729 46884393 557451539 632445946 951732357 529686708 419530193 123234372 12420568 582649892 71314474 477306788 993450849 767532634 286698823 350916971 496383976 413014106 903650710 739503054 34537741 403843662 812825280 494687327 160658928 536821990 271386884 294322781 826468636 431052432 976865456 628250200 29119527 296158082 874105243 915953132 430367776 228705168 443959641 885698642 858556980 425483327 802943375 522515982 392137141 58490287 330766559 719804538 242202494 421191918 768722183 404173765 868066940 522482413 906426937 582358479 845692566 271858599 578230499 977426384 753287204 261570404 489003191 49287584 473084042 521464759 203376385 404715199 954859078 232465873 975903767 592986431 20822875 113325963 79629219 849221776 29749096 545877637 555456707 611156386 81348113 982165725 277033764 643811418 968693309 511985106 412197379 940355223 827863545 313764315 708915439 6381981 51532565 236524605 275847332 174751168 20528361 41284360 466825682 58481317 601589148 125945249 64400705 786432615 6784197 496360862 571398384 48949438 920204785 391883083 201819783 269669304 674780709 899625264 978404841 570315470 680527720 445127387 828022522 909314884 213500927 280293967 239021571 923748888 650392020 56807056 840333651 274045326 933178167 846604725 692142590 710892574 535493686 622798464 850524162 660501544 419958741 514388419 181465546 770657411 672213004 881038988 411988127 419679387 38498565 673124366 312894359 210570530 26645971 71020258 938201792 29476508 39103650 15234099 202961018 832825945 444330716 253346434 73253320 442041180 597382923 295217067 91527743 162272837 807300256 969539910 266456767 319235258 922653161 815270267 359288725 905525000 614958370 491574971 984904545 303164904 986407834 804058380 796953252 594662270 70045917 441875597 222386804 367777324 925277869 20346780 85666807 893223709 918377647 229941617 793224774 800254037 62515416 481709380 388916621 172193599 419486344 634226568 247623452 582830555 198251405 589844870 153390553 428812754 778851889 896281683 408305610 813645777 972098861 146580110 330245478 411473539 856444503 435799481 457315444 4623294 798651243 454025470 891841208 499724797 573001249 124586099 30742473 40894840 847565062 154217907 629967462 225546583 324655141 118914331 480455551 810623047 373042945 854032721 513925604 601240505 481306807 397118557 396462759 679434914 6070102 237126418 156902510 27899418 434466721 461702273 264972599 326148950 162697701 572110401 358217810 641256220 266670232 664329354 371087818 908847589 788902970 814750913 876303536 862511778 324953668 334005447 842817636 842700569 192337694 671417595 696818044 55078058 422977009 984622878 54352574 840353029 598740629 539504437 790684234 770237681 504693184 270147063 468485334 480555500 100191215 536990822 877161570 894235819 400077237 409089535 710412303 111265093 657483283 567757484 628338283 76041468 844480803 314302670 2330211 838969003 918419838 572183443 493305246 902018215 415070426 476222171 324471260 303012816 633513283 950949816 23791078 768678477 351610589 395918606 668896846 810052436 971397654 380963695 304615972 422932827 861466291 131608507 653386001 302997008 906106496 421961113 746377869 197389865 287571833 439646716 829906360 986515591 967525545 629151997 965090946 749308231 843284215 885498793 94078921 492225947 605480178 499800925 926754415 473334416 812891673 920647045 459686717 600886066 155990623 985432753 787387403 211715186 489681327 555548396 743641265 147319132 547527675 86027366 43524426 183225357 583610638 845976065 106298502 981609242 599404597 771861066 971673550 957467518 616907372 424149500 201011717 277906822 705657672 398598375 350268415 937947874 867756608 84236731 815441814 572900792 252595737 142514128 9042183 854951596 214984822 772418607 563828933 51112764 765572992 981448720 596679443 385449947 111534111 673627025 59914370 851715686 98100822 420593636 92498175 908179039 305760980 171310428 722094651 479294144 273313597 837792415 373323523 987844646 137370010 195125242 40950744 976091271 655244423 179442714 249564288 309414613 913648949 795179237 442086967 916481821 263457950 342481188 283762095 111989751 913481583 506880799 721451729 603761634 607110751 592114637 944909141 249843149 277006472 780107917 984806671 463548263 701269241 639407158 814470894 144448126 39449630 641570584 942895624 412206733 236038527 804211856 412197550 242184204 188849988 914062489 639346235 611823404 911642112 37375666 39831117 426137928 268413153 566812877 630744828 99136393 110320401 635207648 956896354 355798444 864899410 97987632 490206364 137089910 342141456 939058122 862077184 852323821 491748740 926069414 848868077 928893063 436894086 902578729 503776390 716071786 936091652 394232981 669683715 234397437 99602817 291693703 692612465 820221416 504331851 375205765 863336361 292022968 870176068 961236226 965378344 831087080 915405245 377302763 319741522 186396849 626607148 952826590 419466283 147980799 315455345 227570756 256838455 486380984 631180046 188875709 989226786 119479744 763685391 366157001 195189024 803502776 197124002 76065685 2561288 563056095 729220149 758169497 971811356 510815104 130862561 201840616 9469214 441085345 827752770 513322871 555277456 864085443 92849807 149238857 6325039 970092528 519283709 903730080 580391593 258585979 967675748 201922601 385713766 685913342 50780592 521869834 552311478 780048401 311532352 476620350 27235545 563978768 510672056 852669146 52580505 337607371 724448884 122454109 831937300 590610699 82585672 861094960 848879363 763553735 575803791 464546239 943124615 126309216 317914244 524292097 77010826 323198638 951830334 838795937 888757979 111472608 161852749 755017497 360874148 119241791 504306152 594253015 367486886 330039904 787991711 331682802 218049710 375087244 551350799 735812865 863087460 598796714 685753069 890785061 801048883 236545677 532551364 26908877 21035533 930512149 820735314 194239528 148749166 943405032 810378906 481714827 649790162 828512576 233557865 776300030 704990616 744701669 412735927 557794375 909754993 155087281 175572990 456304335 446585223 510909142 81452292 869750424 136289347 278591541 488434315 629506208 940720863 897568510 195006673 866381788 925617542 191656492 414476362 859572402 539559304 437522399 550661906 586897571 53217300 142917169 999518910 665657807 943068764 562464910 198960111 943588162 124463289 466693484 433834366 690258588 537421502 867247208 185432761 607286632 166612270 2419115 556777671 654657771 974061998 863957744 657683357 688006121 382441651 767345581 208572233 630867031 221241977 973921995 897404146 114109277 732083383 722665638 506566306 74295495 75427308 948408949 432307306 470054736 736416594 592373236 788309762 631640962 56186910 834826420 418279772 164060709 435779453 882298604 168887227 507721620 369142235 513361803 753647151 486697073 518304093 287136345 936272720 867061882 184952978 590442056 749768109 72388037 631149898 956254387 396229361 178329552 681513115 842569058 471150841 849015871 219945321 982842739 90279346 347230580 288876383 202507769 512186104 215156117 611862002 602915197 627016913 510936823 591353254 689878261 640120985 807706063 731494048 487341927 968575627 471440961 373961531 402883564 147954721 34482717 308698244 921844348 851444603 546539423 561153839 526111402 358360817 402434086 217346138 588526154 396862609 19574450 655966749 977157459 385897044 437964955 284964050 849999381 902549203 475055000 79643958 831479987 577822474 13607123 937885658 115257956 719031899 53049745 472919124 53988197 83258202 816429326 869443479 202830466 902099585 554982277 901600041 264314219 700543704 963157188 281995099 740279676 280501058 487096323 906374314 121481668 810564179 156840723 714644698 899409580 762430018 450049802 753215469 839712462 924424515 672867658 573799183 28529655 181158451 592006014 194372765 804909255 261846331 456865821 14247091 60983222 720689144 318810911 828014198 519323294 138893325 20612327 458509334 443929636 497008902 931465687 311527668 76810061 812670517 545188814 460697466 297184233 959188449 352649503 273063802 191107337 247272709 150734696 654489549 763150546 508871018 481514352 862469995 298984731 440564461 582338321 404868352 49367091 325601611 125949506 177217328 792324005 90043643 402703371 936573148 742667337 432498548 104437088 413301341 252590589 532381800 361833486 891352650 878587891 155428695 940306579 942342610 197832926 386163104 171186383 935167277 873595778 853269987 844316379 61795862 845392197 347116260 664120664 510222481 990465041 393760595 711384131 501572705 728070076 9612004 401305134 676143599 184601309 352309670 501321310 606285527 701523983 985771992 45842742 661317141 360014500 625512325 784299295 775484692 645766164 185251901 793932551 457036550 436758666 404698219 101259916 247772406 512302330 680669757 485298694 305750549 655447975 320845800 81730550 835681411 93665899 876012069 587692090 837801870 105478506 221523734 654528726 297571422 34038110 17950685 687625875 257060420 525495527 397710648 197106384 860168498 700484423 184350727 876511484 507049428 282557560 790905139 849556097 120009687 602076047 361518533 360982289 359973005 449429932 211690182 969422304 449266448 564112119 496046637 686006617 317604617 549906550 714759980 759205806 837650343 654561251 608458249 571770490 305858225 830862421 541286924 367393674 330063816 983361818 785802095 265160026 459250452 269930179 792312183 110710520 492511557 604509207 866365877 655664481 437756771 804735388 478893941 606460656 112868810 636098101 961274531 236161023 836636019 371061282 256848772 435031568 922743555 519428595 168323123 251159884 14707767 572581036 975186352 935689625 190321185 375698356 180451413 844966997 625630653 758372813 971646308 814049034 303185511 58298273 646952796 754973717 486717130 548888581 219718141 548664369 597586028 720365919 416680073 804659740 153701091 306710373 936061738 798267952 704553224 970229042 779853519 110515717 974416232 233866401 256891027 385680596 425747415 726312664 360295324 511993442 14952379 950785537 608974878 522448585 276415276 520820267 222699843 379378013 183223596 94090772 349702215 151381785 945386065 672542684 626330047 880255263 420314173 594414125 896411139 531359630 71814607 902666960 384537382 995610087 173535405 953446487 741082815 677092834 786984248 631076730 303868634 466205955 544546013 370608346 163055157 138246991 793314811 367833014 500794555 239892835 110858094 506599306 194997913 746138581 710728229 260603159 511029074 263742287 553882990 933811944 153862845 836614127 552077651 615894795 107117260 126292305 675842351 925205262 50418781 512953440 779393720 969466669 412789662 568056272 237129041 958735910 797243943 774112961 33687549 594833425 485247733 750014893 295127721 47789404 322582052 683783791 237275124 596066327 923553835 655976388 826617003 916912958 459741601 398510055 214244294 103160277 295723746 314193126 799729069 329261673 572099257 663904782 178198990 298188800 101163351 189705924 750693919 168828452 931796853 606627834 736916555 38018086 303911109 510025405 92481234 916602813 72538419 991039297 596158804 855003685 799173706 299724451 363965067 18865070 472970672 406656878 254019353 312934253 539331443 89703134 196420350 60483814 574350258 248013503 589520836 989856601 388881674 64238728 332452741 10390976 801078057 630569129 838185740 36531353 863379091 555932840 708873489 890185245 65295879 324405977 251282088 76587107 888946737 456362383 147867105 686038351 101552372 533102644 936375478 692972582 942643690 649149095 42560377 248030564 897862588 818262334 692386142 974248543 850570170 573985287 196801381 837850749 342662921 755350147 35516834 110131604 645261064 484021654 13788604 338261607 140956354 582894146 73572028 394127480 111887506 815796717 948029346 883471373 302302521 669110076 113617800 134599811 937191354 664268283 348375105 640154436 418766630 406533525 664562236 582599239 299859687 143434809 822285711 349549593 408140779 491519617 280737136 866055413 142865302 922133968 688459288 466733162 486169966 840781837 839633382 730471525 523764349 177627681 29005109 45506608 241970429 28895154 119853058 239492221 321100225 283687777 762505184 523333831 526573897 667681898 685374423 743561555 576240493 863544396 567931508 273031839 339159244 61812290 590655047 841659495 80828800 192127686 38525631 895969885 730188568 200490856 277183277 702584499 274586821 534839975 600519371 270119207 281111654 492135354 744904964 493275342 538942625 633571608 52575768 987246481 241375036 821656442 606841847 117372550 949339897 43256544 862672849 212392955 840296396 506985238 659338007 581664895 132977796 645233069 386740584 977021940 126867475 101527144 684799571 86928592 854929472 34431745 68620062 419552753 261464958 446248938 97844742 775960729 78455358 858277128 493275169 884236174 935331057 3345568 910783290 226106070 537744480 622324749 152711008 720968216 727743182 708542788 893522647 277309880 312776513 926462902 838436015 290101385 528894295 954382027 168564720 832050468 152215960 657726274 621043618 910228149 223236685 922580253 594767447 391286824 812862451 624069144 380785064 434976608 284135846 112737554 790559715 205774565 434912537 118300145 802744085 641817968 941207420 955186924 718061276 640928892 855340107 990090435 295754220 940364507 23818668 148172887 133102894 905072699 931173679 315072386 309448330 784988470 496617246 801173032 754508100 103263967 954723825 700148411 26401408 771437686 514227563 667584037 75359053 151895107 858598708 137485050 290350500 479812279 660784482 694141365 440165932 188222003 894408861 721031111 892628259 661343612 452117249 833064288 166807305 818513916 275979749 665439605 34131820 849150649 113314952 973426539 279550910 134175135 525419127 150649684 662316933 824075319 445480868 929823111 311706190 5054629 453295186 310317253 477714694 608536684 870137406 925176870 67585768 218428396 352625627 489527979 556487373 670363615 563694324 624020595 33372317 219842142 525179789 119062977 164507009 327408369 41954380 546586535 458893277 479909059 938665898 843052527 198848984 321075712 703865391 633869489 178693430 467395387 69051869 938360460 567689596 106512104 930066753 519622227 539656443 117313861 275067530 151546229 578818366 812352106 869820018 951383378 277899842 366713392 423427233 177218802 633392934 616017866 606678379 799342499 732112756 49768916 628962336 974937952 48779225 902170301 395149192 277383766 987229787 253983190 704336365 148309842 154414367 567871411 635255854 546625800 345767268 594587206 398661880 579921206 765375320 860235325 457281555 205400974 930288572 156491332 662798509 309160904 730512523 772649530 470923975 554314041 691866697 388453137 335759544 710491054 740137624 353439463 985664985 781954302 318646330 545671206 168179649 956853156 241177058 905411279 504459774 627596961 352922531 711775464 970339785 419316069 607960862 194615323 703440444 853747704 848708071 148207983 452698980 340766843 322690147 3774793 201461705 957783655 516239897 789591517 7916582 563855062 85706938 29745540 381049461 344030756 333622553 651150111 142147648 799950101 72181555 265436689 137084930 901685912 267923011 358188779 684631724 371495087 135418102 322739356 980839200 287919902 417400040 955895305 751335487 533042802 98138600 823186363 604023959 523098829 646587918 262215675 702647783 290433574 293532534 360890908 295912585 741788332 767013828 892947939 141650893 874874347 800991315 908897146 799159983 551279569 423071946 901754489 741779266 452613952 33718482 59895556 626908972 438756084 669985146 287924929 523910123 16891480 755931917 398865675 163961538 799932303 734274860 75858497 218211571 752950756 982073954 29113740 958732643 452386768 686465070 764945194 238433772 721850333 719882373 831410207 585997353 75881167 457030207 525000064 321022142 85093350 1101152 228685608 508170245 36648721 331115747 880116571 947135735 183165938 235575093 342402719 346739607 618717099 152251764 512298432 580886313 539487442 283168231 838625071 444285020 591526849 814637085 205833373 844320510 897479553 577200848 14211696 359853822 100698333 687527375 824785431 990344002 154611202 9054786 872710518 725866552 599840927 718692454 401442299 4816433 545451505 851668291 665806453 63737392 269513872 837057356 900957144 633648610 444888053 695424789 719108222 458145767 826855264 575030711 815672318 480439916 61315333 752731905 739153193 191007021 512065279 288028117 555359899 204526383 804806660 620663065 772576167 178494156 530891880 531676355 148040895 895003165 623962239 408111227 291554344 319077900 974706757 459493819 577411463 787369163 358151745 131794682 986029617 973218993 818056227 804027299 582095593 677313927 628408295 405558563 971217382 242899465 413106711 812519021 556420975 726038685 128391901 12846822 986861396 892262770 41601891 383795599 319129025 158848586 204499125 980093205 608170515 976461971 461470884 613698496 526515246 818696320 703423602 912308517 288159668 994435900 44068090 150125046 886764477 739941496 724621718 616853712 401276702 374497533 365445953 384522774 55883521 283932374 216911266 182437317 865386638 819791508 480935839 339320027 644001340 91043566 900807996 72259185 233598003 817752117 687503441 389458069 822265612 662090210 911556355 314972277 651835420 995750558 511667587 225217120 952433963 433896714 91085091 559135048 294584566 60935516 423108662 243397866 678629172 737217628 350624691 853268582 401232595 947974833 561662615 543569219 594578862 781612517 665291939 168725667 57756064 767852844 541922446 297060109 639729596 524453996 873306269 92325067 670576510 38720156 913464350 523665277 919130713 952041391 535366670 678387033 145503856 290057769 909644730 94728946 617676495 850827964 241579578 830830364 265078415 504542038 800489655 559530006 575140779 552099363 101192659 515707960 909242108 935323340 695999710 719355509 439932480 216282188 119024524 270412533 676268070 763601544 916389462 504781014 773563349 140443234 860203786 429136581 563403977 685909286 806227065 714807454 257759299 708808273 232604184 211726104 394184014 821428616 32927244 443556104 118856868 433547751 278663748 315632702 148985272 418446493 23168259 308554175 672425724 749638334 731284035 321348790 443740157 895862212 424909019 975468890 247652469 221790984 482275368 261493588 266668681 96169701 964995638 47539498 78952213 411530339 511588403 989688018 150274924 573559551 467739108 424176596 794086460 895198711 186460562 671132952 341071763 440612680 937949405 434176458 128071558 877330149 447706289 993104310 905255574 835624645 379980203 995191187 561131685 915394689 919880195 550366419 243905429 690288019 568784891 570865491 441174208 32470543 889979220 513849768 319304795 479791326 805319787 648269004 225668479 768891258 48416356 489507871 345438251 359810861 17680239 75022354 397061651 783553940 366157655 169499861 690155173 600394428 857982904 957044442 377213578 543518945 984783294 107418326 786553399 295968369 295130183 11215558 445464848 942822295 906745541 581901037 181091762 513842834 806072624 332757555 684350881 230279245 137891958 938152604 822839388 742050655 452576108 401331833 662361512 750314174 443716071 833849904 910328702 564510761 51147451 749498476 62469283 274300857 709149467 664722824 874127145 61672750 696156200 215733105 292316405 80929414 210269454 155732349 895153793 903487664 642306048 561377973 89216430 901268980 361159272 864993608 682398687 97560155 75724133 173454359 371037955 774986191 692463944 373292263 229947122 832780937 744788921 228005765 552038626 137989079 665145119 994536507 185062755 168625035 658680081 144041901 971356055 51087452 394114283 128675047 959183404 599438420 93003203 582602696 338435869 466741446 271145442 988304781 277616598 759123408 705859417 752925862 439590643 615839750 195410274 954243048 395555689 521754408 475669477 627240309 467942984 336723079 970709116 241253274 40617583 675652255 187879066 960272837 52761238 641587201 455774701 212255843 911151437 276599412 251568742 460006913 978163607 930941681 306932878 492537587 555100857 730863802 491930032 208140425 117480393 318337366 2550996 953395190 345730925 932825246 952924200 790781306 862843154 494865222 305253397 374021510 332110077 687850796 181705110 340961217 158979937 818761695 775664787 873069002 945694989 536753365 774712825 399359764 454142101 47701740 43179447 832041334 151168450 612390155 453253028 117330874 803792372 178129964 271768847 559449392 727653677 198422608 675016674 879789338 163353916 464073677 768553447 272875926 240180697 352801813 539463392 970061819 389191756 331275099 617874310 901430005 810322627 577003561 364125800 906970705 496165018 289452401 569973149 408724014 923918101 924004608 678805028 585760907 213506337 591718394 359524836 637019491 987668096 590656685 267083042 321287003 375272787 931722788 97700842 560914215 595022870 34815579 799595562 789874355 890197782 651865181 471556883 620624110 343295844 794132876 548781082 387711515 541244670 474456850 203596219 874094214 252140502 159351062 783918595 182000921 448194524 33203306 396298887 433732354 177175250 971905522 515067958 195696146 164817994 250527047 82544036 393858864 128616851 716133405 281648776 485188027 235639801 161515872 898052396 624306288 545850711 94287550 419698764 42565895 258281711 226770398 283793398 107496852 474472259 399813580 911353062 182415107 812744104 940399263 807534122 889484397 352589097 650514587 525146168 280786892 706099073 22249499 718346836 748086761 85178181 975141165 270843424 240788795 900462472 567719285 49322423 658438208 921630065 838831966 156528781 61654398 47493514 163540793 891973882 698968425 443545566 540339019 497519238 631030565 504600384 773801282 532734059 443532282 128310659 485852797 245960086 758277808 319104517 806661254 745467781 209111548 828936601 76537890 930003480 782790131 526566232 172531397 4921432 97681978 367477708 456301697 323911949 739963769 782606940 299999090 409225053 214839757 122743797 624573866 589506019 620754813 380791227 53813737 84212913 669851384 385759003 822558423 100858701 618260269 310477267 895773718 654261164 266046266 969139647 408570578 490856338 741946591 803440010 225179305 508841453 304818496 676744371 780123349 900040545 442008451 121270593 582614987 477840523 516971185 94633289 368661847 331600896 748546063 650376794 432370419 168891420 705518462 794116162 863809831 846812203 558672202 240555693 728088408 466652336 1390507 486684668 818340444 259283620 243507380 288830115 651476439 654065789 466154839 892354444 118080353 283836514 561525246 542999886 92273174 18913693 840453520 345527879 722681039 659515806 724890933 970938935 909014536 870517172 839553336 673722265 35070346 62654529 22429524 284856740 975401070 605876266 894222923 268970133 491065050 786892653 554135668 481008224 730394831 631419779 929092382 384329950 839976807 864258876 771307411 538436756 446315289 513973916 158108123 790142684 982227498 879440046 553838432 331962923 608853518 194305087 561681241 495512099 489627101 147625122 123441290 783251235 510915207 466303160 620796124 331928091 453043547 30212587 767373523 965688605 725560243 137218740 185344189 858553278 761382307 547551938 676396907 440665607 681916092 375927479 631475415 72383518 194620732 816776350 127574163 698505020 111079905 691206506 982317613 826460617 310697904 549726021 236623560 734232983 566143100 713094308 354671519 177875118 442688891 705583138 942556398 665347063 499139728 304203392 774444248 509081705 929150962 635798844 185618843 934233896 150836669 910411578 100229969 727349823 832646325 726942358 354540350 647799446 543390745 410440238 891740900 58982757 563811544 775302456 332919697 183777304 618725974 963553331 587725079 990054867 595063374 248821014 281635477 511514232 644707739 209932697 374130076 142204871 792930506 191020120 773116337 748451101 75013066 902799791 985004430 869194894 990973218 644271124 938022141 867280379 370634739 260210334 601019357 341801787 839109334 37360324 935903553 522714257 689846890 28474267 5632690 595300213 289419006 980094300 753684560 948897548 433344083 796070779 638886830 999217315 12588344 48331978 479657770 985848095 422772237 333080005 197041912 43170317 376257824 401159574 698026507 830978129 985717575 176197894 781252281 199699264 863108930 736353107 936861306 160370188 150933187 492738837 402314594 224602374 21481419 683382834 796821198 268227865 886112197 884337415 171322087 909053533 326106483 909945977 139453012 125232011 825953364 722361466 851254721 823542226 831449112 921833669 951060582 791152991 826782448 141825358 751956794 417971378 536651519 499536299 806701268 411503618 786511581 878557255 587215465 370639896 90765101 373167767 681928575 210129206 654096872 646851026 537176841 60303791 565466032 13079556 211822857 961903092 475762000 953002654 509972910 807458926 572543526 625498634 733909902 250938152 685042456 919171980 293555043 265847359 658093625 578174552 257587172 762532075 996703655 997469286 608513904 586261560 60403250 638658438 508578971 813925788 958450264 413180963 803203189 45191759 401238291 472004004 313734097 930968983 913568799 627751427 360929847 347358781 782682123 899623896 488908966 801488525 676996379 142582647 563548531 550971323 115146064 465055302 102073906 90885581 961628973 144737612 602924219 181066193 184226699 759053897 543031607 465255319 322666187 394849923 339740652 916106761 644292786 288124639 798084406 808680982 216915888 196760904 377812097 971900537 988056122 702997964 200027685 182630441 946277498 579262654 59686262 668604783 54432592 233325635 742947553 850939851 133289009 64602108 809773318 784567834 410636075 362785278 656376681 67952555 918199725 386020663 24000291 642474002 403041181 301968799 771963952 803728466 812472072 67939148 732728331 207861321 948686363 529716161 159861565 674731000 504104040 596873151 557513079 245429227 105284492 119977327 969654736 575268246 957023688 2794400 295477866 949896680 272529110 563814201 755446829 554888644 65005689 200936606 440386504 868156653 828742577 955246414 9862472 382607555 312655642 530251467 426247576 325724282 718796645 561543704 758749220 881983698 800318007 520818294 628897546 351296166 624773976 86352846 345958457 605651401 671440401 699514501 723202399 100480187 904327580 807291202 351376828 760507057 4613897 209223932 983096036 842623728 382944663 37300794 468949350 404542993 790522230 506621704 392387260 352579248 871631698 626421191 616944872 827240002 417952982 195556634 252271084 478361350 708315953 894995947 419326742 836399576 559374009 891337155 489407375 662158461 161426954 751590537 852964603 40025468 5689497 393421651 633390838 136042068 226734319 214139779 945922241 372505052 202956465 605243849 694919109 836089479 424126108 687256877 175803904 51191227 416520128 431653105 175952961 628465401 343862748 991132238 854511480 249423368 942818644 973196340 898536102 668621660 317482511 939187427 294602288 246870391 272661970 12633097 343567833 555023151 883514321 442087710 325626771 284336566 89960421 287466435 50034526 90367099 875849999 711718362 273108559 192451489 400059788 199291755 717325419 845437645 939663221 738183979 814914896 122230899 371401774 140024883 17836042 956528661 340156243 228935300 22486077 131336618 597896092 851803278 763773569 669853430 472349533 879021732 46859663 414009385 356076581 543104173 701894278 54691213 652497217 1532150 22858574 185350704 389522824 715022780 715831192 502648212 614330673 530604869 531680504 465213727 510156950 742983375 560090431 193064627 707687321 751214048 688501747 601065972 527628801 693694135 217811403 582395282 962842065 79389473 331716853 323361033 736030365 457462715 427484224 779656414 371122957 697633805 467804125 196671143 316376652 551129296 146874575 789717391 623312662 47073225 561707821 568810780 622803525 287498246 416228699 692925470 876288139 339987509 580873539 113084087 706080144 38583484 24617336 946816323 245588089 319372083 7742285 263521054 639214318 212233136 422343963 799095937 334673224 808813782 44041851 905223699 163195329 137274532 660408424 390832292 994869497 653931982 596806987 508673788 29719321 566429844 17426300 489935210 449787993 860707704 741377032 746201178 629625338 808670414 845832721 943124481 732265249 623973270 195191740 97097680 954273827 3497865 962554568 330517542 389239293 312905973 647158688 510870871 188950217 316034551 509008932 306596436 192486581 177320239 55521632 121677870 979992809 9454016 594610536 799856757 80628782 704584705 612156894 180659695 993672234 189301118 545200328 48121679 600611931 463674223 806024587 863962576 730405398 316333105 165726189 259854770 133064281 253405664 865564514 578299466 129459044 149794162 607307918 729791531 255371585 183028228 50210121 640447653 824506507 57365919 141221403 225711957 188612279 76747665 514135149 459327693 617918624 675968393 218725901 79124016 349878368 901156778 683409495 907090555 12136240 138078044 289769793 322018025 264488929 537037063 551925745 455209744 637288627 378884809 683194829 138196950 924830128 705755552 232418803 106893591 744703930 483832105 111327164 919498222 176143236 825593213 246931423 598660204 629150556 107778849 890321362 957111640 30960993 906384617 979474804 476647713 964326790 704670214 487050614 145639688 330311653 528916569 543076656 973571859 470897335 620991747 213627653 760311073 535043468 533320344 509833108 728455472 129473458 238205490 565621963 246492858 431829315 508678088 275098918 251100264 906514317 422495930 899724097 960336115 945950833 378860057 79188540 272300852 911516534 62817537 505944458 736931488 611365397 347137036 102866896 650566130 376801005 35476426 731698608 33172596 561990095 192463941 484429177 786178794 570684625 308124128 448189709 230717683 937106594 55210896 607772125 907623592 686845258 40222309 400824877 414678201 914557822 502934191 231943430 973381066 89731958 925084336 708313005 932440358 866511872 712580014 731973453 870618729 919493202 39781762 910003594 162175644 199526841 714655497 494688715 452920735 834056968 852326355 576745962 919800934 86172882 715967618 213533314 42993797 765864217 379023818 762513118 980767497 204834486 846455249 513398971 920778279 62170310 105408920 268291139 688573082 466012792 726150153 578292000 534474961 311841816 11760279 366425271 156121322 653917170 806841939 887394680 637510040 785119970 606168999 831442301 302919276 826991062 929898350 740295139 586454586 21499274 866116123 240129719 941167347 386319542 539736064 821872945 56526059 405589738 120231450 218509488 387490499 81362737 143802502 558045914 155038602 196219790 433570802 579687452 139068181 118744649 180374392 781871040 996833511 407392939 487751317 3869886 985733021 809074840 239380437 188391411 288521200 461152736 710078877 395595736 521759411 841410844 65537722 981734725 942117834 147945905 692925780 959656091 470528093 965915473 733762152 837530124 237911589 485164486 138862700 684434390 764972214 378393918 32963249 871969788 914949827 843047893 179746868 203370067 671142638 166463760 997849185 325990128 674740740 478199367 132559093 716230700 34871489 248265702 897526947 464590655 9542434 730129736 183940722 233009936 993365578 211574824 254013867 411200092 891974037 933013060 749032897 933362911 14504291 658774048 728917428 210393487 981120105 979078333 15923205 880899452 433807872 34712601 125893701 604229241 280723824 772155428 923500378 612459250 877894536 159767848 132719785 568546614 379467926 883652697 413717508 744782800 868080587 635313541 438582996 709876318 234873337 632091467 869709045 112390452 640491590 847416430 18153653 328911197 704705999 219870143 255784283 694399756 831601760 735487171 934845087 751549572 446387082 671001336 399816586 990316191 992343138 803418146 316910076 672083624 101846853 168985846 669171719 365694155 9813942 786111497 913952497 126923594 881373775 624010034 205595932 56836821 731621385 35683169 919285382 705716522 778894780 109786214 755286161 108897685 132599188 968622779 292984990 4959964 401018825 269096213 115791012 306401904 845547910 444991783 892362910 103112131 832525350 576818920 342596375 30995171 618391279 452618723 746247354 757736062 271376241 801316 320597067 268978168 854682274 419362790 836315872 49202023 742615207 15418270 51565476 711279734 658521838 810780028 346991766 856225112 306414915 186467602 915198532 519866261 169834665 308435592 382426603 163020220 272232003 578941730 391788488 884432007 612255489 193412624 634482939 567356237 747294640 209767436 621834814 86509597 660227971 293147392 306478657 228149502 240299964 310934614 878125373 662415782 790021967 141474127 27568647 632133643 283569621 814179924 879560785 123605020 513664957 208669486 124048654 968685686 252313348 188519631 502764168 916418638 773484503 610925146 849280869 889847979 789828763 560346964 38992061 240425599 928246708 557135226 719026965 511251747 567387439 831573426 550318425 25200350 359329739 210556783 167020111 971752230 565671565 998589362 494053629 705726771 806413922 714130065 6343219 599332012 169253720 537838799 425413228 451123298 112999941 450620752 346244945 5138174 226766817 451055141 319958951 119972707 549263674 565693972 89831075 711277732 38083604 560563820 454550033 486231649 632944952 473662794 358942130 920785337 692531519 841746931 166463299 586504282 675873642 287199478 538595960 272356579 569250112 75252863 195551618 968972088 872030002 910136734 415667831 324195370 784508061 425481347 440401404 895220790 763977328 960181837 153911392 600307505 102406308 902005945 963841592 614260789 335235112 251698670 893657659 180169297 445286253 986319179 700314864 453604850 782414490 301446861 835388135 481869075 312765622 768997059 42705556 434212820 372107035 588234778 524180101 93682929 707651148 300422336 763617447 937090239 255447373 342286806 469408851 435359415 661804952 941485294 977982517 527482362 593292760 541027924 279593960 691804348 564197951 364874431 750610560 162291216 621915748 342943556 482738024 406568171 625985103 699425502 132123646 754868224 89963033 504108637 720496072 584871435 755471540 192578423 346898974 266516796 662643814 953945890 410795212 444035666 921981879 220995704 41173240 183000907 816915336 70331629 338823516 123123622 681294810 546271757 35105707 516849256 163168979 671434804 855046147 877782192 711114663 422547045 455395124 915042698 983483144 339178131 598176263 140140749 844458208 350733698 243671753 118942010 48744018 426147699 904758498 260490558 249604887 714376017 302325373 182889585 747142454 700458259 329672686 307767157 573257752 761983350 951884144 970644219 459480133 558543913 296158964 356503142 107082359 256086035 238662026 386325525 726187932 428294345 953653281 139104820 999286501 461738743 180565011 755527466 292658567 768374363 510043769 811463829 901639895 560054714 359010248 48160222 838724128 480125931 22200307 80689951 675828043 406878275 601862326 730579572 388664904 99307847 101925575 431656888 481136409 448786015 341194498 123466355 10993101 533912289 39077696 796137518 678786469 262916865 21376419 781199012 562754606 523449587 432214874 932363135 904512745 994524227 182218977 986682007 89038308 984137245 1913348 365243932 60080430 27892326 407180476 704289287 403377842 355019181 649683470 983908543 969071270 762656209 164892529 662249332 16116782 385971951 43303895 217970311 443800950 101173595 710813286 326395555 401110200 623769057 32423010 33117068 429493001 758667396 530064889 769282010 208224052 3864654 745035174 278369111 796770355 399801024 861279551 429739036 279869358 102140484 100777039 909131394 427029793 391655339 526435741 905726325 642135852 764395515 977460640 597008699 381576639 87244475 674299258 905454243 831017515 480845997 901127040 755508660 35722258 33222532 362241266 235093752 903499885 8137579 113806524 290487255 400212436 733570893 719719894 729168938 291176610 887548065 745677806 131036547 9663782 325369546 335019928 931711338 137058243 265481405 253542598 8672442 420085606 210175586 298685006 627673000 675298087 547378871 490454703 420016589 967573184 658984332 349321501 141785640 333939313 349198462 648996257 340608321 870846947 907959716 902769195 64734614 314319477 518000848 948722925 565800790 244109758 469463594 523406440 795895806 190445851 574557980 772875632 670631764 565558190 353281223 333041701 4353304 320135123 428351684 170193306 570852728 36320020 376056392 101667444 261781193 643819014 540481285 289378925 196953057 208679296 386856350 228221250 883090379 775308735 752520165 939646843 744152220 849085202 869332862 677598965 388420783 805275922 323763974 300423468 281698755 848406171 32783490 231858859 556986119 895934716 325909533 995917024 999041485 883824868 952647009 169654354 376589854 678568911 103194977 650954005 155829026 213631604 78170354 81545320 843820622 833192938 335506472 640592732 244549494 489628946 807688615 177468422 445286357 994118779 545876024 660401435 279816775 932630859 619347512 699649862 352748904 926491378 366716405 718895046 92302126 503052132 834110570 234944044 639579885 447581222 233756966 82114409 848431466 853281033 449032167 610106068 52824121 672842074 502405811 845302898 311938263 824213342 494240827 83347232 857631153 246507246 757492574 204918991 446131174 966147126 858295608 759951350 50300619 590678747 910683030 288982869 492284010 851706849 807544793 28745226 927010214 475011859 202365163 438577017 852084838 725703914 235809839 880928955 257889483 30599329 426092058 603875626 196026667 164724812 231861376 545358302 657932484 312156794 130229306 625490459 303550012 461723193 38302648 182211242 251530162 819764085 537532775 699758938 365557937 547445913 729851564 122526590 530013881 992915580 941742578 131280681 81519595 795343985 488789137 14826768 636653287 874873165 439088398 917997996 334274348 268088450 838393556 837081267 504551162 629517111 924365438 438471204 896293775 530437596 534007215 794092720 493414848 649449999 477801947 344719557 296733305 817611951 887257365 409526374 106270741 513392141 148052276 820413331 475776259 153000116 700657594 684724592 682219763 26750340 654141250 210154068 936504754 832864175 833844346 538400646 92534249 690493401 211494992 912056560 429037024 249041482 975830321 806772275 289641436 928642228 156319889 833338315 716200464 747567220 433289353 431577111 9153141 359587057 752542378 460709785 432197135 431872413 282775490 705380781 824551884 124506932 688637684 400888126 774414308 388765883 776742780 542458929 436677166 278595576 357905668 241605958 672789457 579258377 804298174 126920715 588713363 525159335 783318666 129794912 129030722 51654600 894829713 58310588 757241747 538586575 466952132 778480390 823720758 713992054 365349462 372082205 132968122 709846039 588464165 343803987 212323311 884284783 619631457 906220650 221320079 110546724 962062997 965734106 589885822 258549546 607628921 431071061 648095614 658137393 226718277 587641215 426033467 384546922 985876670 595866659 103112533 728167343 859703640 814377552 157156924 451695869 148365303 979173218 510853933 387072555 677058164 580932313 736249856 152600220 760269019 923940818 78304727 940474013 572503214 713158578 158349214 70248736 523394830 754654396 215737607 433190004 263863581 372567235 951309748 649950743 172742504 684066197 507484738 330474297 104437689 180824972 683138340 513539083 535509473 68390595 155178821 2303851 23494108 842983502 132035136 50624462 365866855 46629901 421487073 514525479 1176353 231226796 751577728 425607746 759803653 15021627 557146048 648503236 64841847 584793535 146229390 44250757 5381091 22213084 142063597 324738203 376607804 785830157 66638605 283144816 787571731 548951008 835878442 411014108 168141757 681314115 172031549 648108923 174458090 922236336 172516158 101923955 606819640 871770271 327690667 379304878 382130380 401382515 134772924 748660477 857860324 464653178 9975179 209418273 503821910 7616297 398066620 36282438 692344575 878495683 212408697 524476500 580082838 924446626 572641495 529833103 777756666 147200538 799930928 304244273 51008887 802480033 815060572 53344778 943439149 402241808 525126211 777427762 253657930 883486768 587019229 501012983 832628782 33338128 980655127 643480860 771072358 704546665 967176335 588905922 702880510 264431128 651902525 735946744 753828154 750976900 44788892 644253529 3828713 791759170 397888501 26754641 1558199 624992597 600291293 886257280 208343013 470408297 383206749 578447596 437466127 522647906 391280533 753899191 408906631 523215200 561016088 772062035 250746144 551782339 430660059 954484499 617179314 928540547 305761954 561985245 827444616 624950198 39953203 990763812 865755476 369716056 377551030 392845366 436524920 941529246 270357475 510736850 495794131 457425053 366244325 858754418 909834696 820273705 280658724 909719112 281380128 235544995 834164689 22702300 912581478 445955671 655627514 988086530 893160493 957988867 675168324 658666908 664992787 148863585 567015955 76111531 732020389 552347734 939002688 863428250 907743822 154589887 84590086 252533721 672598348 614324695 412529514 946699163 276060934 265079168 51868372 526597998 60570187 341774482 350934065 966691281 311553942 388882156 317942781 504048714 398202105 595151077 790086789 126526583 448502178 335792972 306812205 255482379 15777911 776415859 224139859 645054110 422014160 390621651 121725286 26570548 563505927 239797719 770478837 838342567 736594680 612966560 686301953 451306060 252745123 801894943 822482495 478292667 517215944 896287268 316849927 72322409 346816521 808644455 354003588 20731475 296146315 777578076 758894677 876870317 395269456 267874158 42542164 43924332 477433804 80002323 256661245 382407907 891407320 910444510 261295726 483787771 565387492 616873557 755240179 682255919 968889839 282047343 934432579 820315810 854368067 308953481 131797498 881547436 237570953 335816313 167781092 29966594 652093519 550875 847575664 545798097 319933265 631443774 366856995 801228794 184101761 678244068 315658126 850343433 661785560 122750647 46254306 793775026 354047818 429491828 374802133 643381675 833374143 83251280 249744063 240000304 318087939 729398354 398511480 613715485 579338206 666172545 885090054 71430672 255800864 521762393 335353536 743683368 739698946 327940796 554280636 471431340 612804046 230740731 609917280 577687606 293141233 565119501 464813241 498195754 754995685 944152186 448488173 835516791 442716713 920070572 542173194 733614143 861541125 569792415 303955341 688404864 956767929 515765005 486295572 31066384 179639311 278434790 363793618 962914226 816459696 173854020 803999139 987283055 48057791 393737511 839022936 743399251 878281062 96827334 718496942 593340237 235777861 651036170 214240217 290522743 529913099 954641461 541708300 739402242 597986052 322047064 491181821 201047988 952536134 795042159 473737475 611465850 36451572 356256267 691941778 22469454 345762820 69764690 627115114 583335150 766487085 926127564 944251769 98772796 803557940 499639402 937765154 768304727 937061634 3734650 217103044 205889425 345514294 168832343 664170745 691991821 142863447 65524284 385545225 417652273 665010958 914877662 191637252 574808482 904993680 580804889 865294485 587997734 613117547 567030778 836421389 314949748 167501244 366804428 314633804 761729262 658453605 378771819 276305400 491607412 941377312 671425472 900974246 85579891 678642967 733272683 739645586 38507957 974275690 144374580 118998267 733269363 273888568 311913217 133856185 67184060 90170675 832590149 46717216 225361293 935932222 698608234 596190587 810972648 967475729 882111597 296529693 466125974 395371905 420549418 187629245 640115580 419190216 607750748 360972213 942142098 359648189 724607560 810367202 172943261 866215748 76083475 329870911 256158091 410467446 166643451 768509830 565174417 579418668 626184059 699113233 479213088 419118637 868250752 1681748 304354836 390559071 565086818 378383367 370378131 882012994 357564909 81465650 510095066 442558085 233067681 320948325 197879553 180094990 439306169 922119700 432116308 18918376 76172770 885875455 998537653 646791745 689195674 245703498 134983350 950535851 287235652 985469299 106111581 878620757 111475428 952888192 665126504 391608867 551283803 674711580 249748520 290276695 560326176 554304442 390387536 48235853 425341916 737175324 41371416 992710668 971602970 570780450 563256861 694817210 299707191 24739955 423810674 767130400 240784476 303053594 170355603 757831660 686159880 476663396 8235210 370704736 397416046 738679775 909528572 66335745 363003812 467316464 71811632 430556546 299233117 840354941 521745202 251860614 292185217 418471179 860042450 695026960 385302974 140892398 801555316 518798639 231912144 624024839 339293553 683733461 778903033 393795143 955103879 291327301 169489518 899589930 69031278 601408442 28368905 370645234 288397250 949098147 136048922 90327312 264966088 243494658 368694919 201471234 192384504 575947878 763665662 876274254 344332528 292528883 398505425 524640174 970125332 135857622 229034942 765830528 83357702 542228364 578104067 341848698 905582247 753477820 316368787 417085924 236952876 141299963 566767524 791660147 148043832 905432625 866633862 362658195 855261803 77398712 341607698 839632779 521497689 339268898 641070438 401133368 703215169 737592153 517944355 612079765 480753048 238627162 340287992 826035911 704938372 459993852 166655035 845875109 242763659 469687931 863310673 834863261 527169147 230829995 890990572 447940813 587841911 565392948 628699982 290237273 68103315 334514957 174542420 477220768 253624975 751624285 417473794 256622075 247480248 165949277 667966094 671231884 414299711 983324218 16691278 170167797 336661211 596009738 390447567 441168798 116584070 572543903 732412430 571549088 557208231 783872718 140982544 424145059 907236580 529354834 621091731 348705594 175883353 707130530 436586597 131340531 912393702 542985126 735493763 756540189 600748756 615817637 346260214 346521971 599412067 128352605 867789679 495506781 234441294 605073710 575395716 352148407 580485918 622251361 142178376 307531542 528471745 707944658 300880585 41610973 255120087 887132615 377061755 17994069 676589856 139700966 61106211 29327915 586861204 4098958 283153214 264127591 588878489 914504604 263807916 914232111 517357220 764395162 119841945 848278257 205172167 87677838 545109322 960250732 879205848 595181181 872688209 668655951 893965422 428118831 649399888 939751764 891097682 339689157 494257839 616694898 547711254 756411395 341666517 201262648 378857280 970057893 828947957 597076368 898098966 767251149 735291764 954872662 687910833 911430530 787737851 668952622 947831799 419718909 830489281 306522882 708102975 128911252 173938069 859532496 71378883 885024152 409531204 565985806 669935105 540286036 321207974 363622796 466187215 336752974 669449724 990725843 381133018 622807510 719429319 950394317 453000078 876879707 416107682 408255697 305105566 152699833 492719275 723507858 220131206 627299279 78630959 749341631 587557896 635183444 965451892 568515347 791638370 599408215 624566386 3720846 489720637 776732517 133314683 872697138 3953031 661759359 475819572 877807863 982211056 457236281 840663836 272755546 68821125 666201803 626110278 181398955 254844231 393103660 118542750 361288519 556534572 831726301 957759443 13683068 107848558 663875117 498092388 579452269 704103186 399729728 115782397 833428471 403814148 82015031 724961983 129983386 318610336 54995115 438356111 221724680 680997450 811244754 302705918 528312095 494224355 185634107 26234319 198977221 714637504 504060729 153819188 364202096 140256236 326626536 826440415 391156063 8538427 189054118 331452207 890587415 512042314 620944427 630986137 166787910 770094149 545080087 954171208 705012463 90460043 857618718 905049976 971405645 602787897 964399317 902598343 767969870 713876720 54022340 54045591 574677539 224471893 87070613 871125382 944829121 648817360 342932009 42368913 979434078 266781130 264751159 567498727 302678842 488583681 291454552 981669329 310022922 666091033 557249522 247879796 809894583 715357909 375325702 850838587 701870577 612892230 40623330 600472275 600297558 80368385 189955454 14956391 148398932 898709911 174625005 149559372 391074142 364701811 515187424 781122609 421072761 203819722 891233952 719021206 682077750 512077040 931749112 962447554 505978379 865472803 452711597 731720112 99767687 978532320 849988322 927844593 794844006 291398168 982734985 821490124 785277823 80393992 134828977 701965983 88600713 232005865 790827759 273944028 841073547 683301914 205116506 730866197 75177470 705922725 749808652 341003501 63066866 857748808 162904210 996470138 597118991 722107031 102995267 240633035 112029558 156418046 793663363 128391225 776357609 869549855 393633364 143808640 835102194 533579633 632957430 834318148 763242483 754278153 700540015 311553297 450843493 644271788 492976063 990459043 933355031 96069648 543331710 455410900 372196288 182774554 828071545 255224120 165173984 4591854 62368422 517511881 596585620 732277065 671414716 785175902 57289796 387234772 712205936 877053067 609335666 361552323 390196103 426954128 881648783 483060350 865484159 381673898 51269047 689861487 726662939 987626026 50139506 810239176 905056470 183184549 842300871 308363785 817798556 908123512 804697041 363331404 325497506 828745971 701353313 913889274 325712253 631901881 901320439 302871092 179940023 876701482 222057154 656089348 949591853 86796009 671353599 172246696 154684892 417432800 898418468 964304163 258538601 291142936 198261657 614880978 592110036 282564673 744271792 158288772 790339318 682731358 314204326 911414719 915541245 221646188 379224878 777767271 230201694 443989236 876987311 26650002 467709722 685994689 927292476 237836344 231334630 698290900 569670833 725875696 71705082 541464578 165385829 768708120 63596094 226014298 849575207 433362999 333605958 949389384 433881715 263471181 92301235 416295027 323999149 362707062 133001788 856733076 293451342 241565288 703853934 600297495 133528242 164833131 282721525 276495639 141574301 466504452 871201379 752537824 646020677 640147077 166604490 833628572 480535350 299601341 353175221 787224693 753597008 349758863 577603890 436204737 348022970 371554233 271445704 487408507 424179652 361095604 329331576 629722446 665255549 497879738 495289681 830710268 822707335 891468238 961659530 468767805 400182702 475939352 131088961 767113758 892823501 17272503 548528000 416113913 893665969 529689366 50555827 816415061 398714936 308099598 103566962 147123154 224104668 957813337 686633917 416130073 861551319 339786773 890993874 41212200 772713336 300196524 985864720 866630092 933920237 233453075 924259612 543351960 849653936 84747441 431693229 881119694 422663224 285136229 866845772 352370766 742975529 880573502 241278981 473517022 398298133 795757457 644785901 693010518 724427599 537284029 194973756 192077065 492007172 527234018 337985772 368895214 844781210 877921865 340124176 376623860 567147309 322144109 231628268 125550929 724893396 51626421 500809645 641750309 529163020 640300006 248504778 311318260 82891123 687817653 865895427 368890219 499389629 349716752 958064832 698964354 390936390 974413948 326561311 611129906 867960124 853934430 623273370 478785386 242762627 931673262 421400529 392023274 360735817 935533322 767480687 62103882 231540151 182787447 783611066 461668243 42144004 916159605 227432163 945406913 393512232 476107060 946378710 586293652 960389905 708885954 125915909 900952029 72938599 792805714 895878102 329645626 192665567 777561761 65711543 737254058 549142288 619316051 266354195 421184558 595838182 249388324 571504593 605535668 998886649 308939283 742031159 191396080 937446140 386783075 169994995 168497693 368961470 456692866 138250464 910393595 991184394 215619001 120067016 664306716 906253675 387725574 10554180 169643877 935273735 833485028 52872271 79482396 193134484 38602028 893058219 692153976 730364932 167016278 325945782 182597673 962298945 5135696 548683074 49151458 994822471 532831421 50871240 768956629 378835794 710187201 343096280 824950037 805459407 651418311 696241747 441682103 232657282 629495932 256852005 127525368 927325244 633470525 383951414 590767298 560250204 817857758 180810657 604372634 740148373 624140261 474565764 538781867 503397595 123231924 275249950 133999029 296648912 745573596 45412073 932016717 606571738 62970000 65279358 677838717 994212178 443730586 902400624 385566758 898346391 771140719 857638585 955389734 895853583 745704662 387877689 282486963 688151652 774054965 119865737 860480027 120584115 397015656 399318373 413756722 463399842 582012322 955846870 685930325 665543451 185594159 913548351 574703489 81467503 110987336 282325869 170863097 657429009 633947997 242427439 189329262 752226596 794573141 572171014 574289947 24541235 258109276 407189366 909854618 31125196 953288325 242508700 710920668 993429992 982951698 326989548 774913157 446031355 613826441 50529104 33674448 667801200 33481587 357825149 920560993 983449403 14827348 102935399 953624345 236531887 332600554 677759208 635238971 778117118 162037580 523790681 985045565 333218495 280688816 507474045 794745633 799906725 25555258 503615835 967353717 965013873 701477286 724501227 447832175 900187562 27297868 283430407 253204200 474258058 676182064 784463728 121185676 334949791 543340566 553519287 275073765 204553519 490052204 70268114 351027663 213392052 305412665 37453525 62426391 116863404 730619096 45278812 383097325 104792076 820948194 715375968 669665195 616859071 834611567 915285893 933240712 424701723 99353127 229527243 550332867 62079120 969898675 796807145 610274983 53670841 986529586 347282705 697334029 265766464 750055401 564163047 355092606 632193300 760885746 839738957 531933156 809015954 787384763 404723014 924685326 938671560 2444412 3604149 607630467 220772978 537289878 906386608 326953855 952521162 329557366 344602903 271747288 125016149 437150997 931521524 907088607 180266396 403737196 463535437 489910533 601378726 121450446 115097199 653566636 97953514 173529682 34011896 972474420 13069742 309675382 534463273 507643118 978411578 720718672 887730557 912207957 576549003 341290944 170518288 45410112 721665409 847477042 143757887 11309648 43411443 673203887 268577537 424218681 145515146 440487288 261277698 324474887 293088040 874574349 447681388 454924888 644964479 645718923 395373198 973590724 377242134 431980787 788933056 663664180 590494868 386439169 292229412 122011672 725541169 714335963 256486002 665782658 880686777 238913273 360113372 521628834 831509441 340920254 290749381 595453692 111145794 5561766 115608773 510906291 501195672 757831183 86198411 714050286 752032669 478233601 806762962 681769234 550211241 637022840 675692321 590822848 455792397 185645520 143142692 920313811 727115551 242245377 296670570 655973159 657006904 780936054 797082847 996639146 622384043 733276645 32265678 892216294 420792878 892930523 410385416 818678039 443255055 195337619 989202425 148635273 220354393 600969396 248542591 30602569 782837578 512694511 911990970 816929982 952973372 231588605 946670261 99029629 328622017 214227345 281135867 272149526 443643512 959829162 554061701 80965750 707955281 521000710 997773476 420827525 273569962 986231706 80441132 273981895 439879416 792313947 661630437 868816632 841264623 150570378 68116210 736122714 592459744 69372869 597186217 115411855 104624530 978718929 303694234 502318178 832281135 379064380 210405127 873468036 212442423 735153745 145418862 693250912 18519732 911638078 978555645 825429110 567105710 29980380 2270996 638066883 359771645 752263288 430925028 135335800 526590725 550212100 429227103 625092206 164686480 687427547 837967447 59859912 4606859 425511909 404878569 191793468 651187926 847967812 491571106 155214379 315458295 529429921 844850851 45395729 894688704 378343246 290002409 219526494 994068671 401060215 957913036 40980514 751123345 872834892 470024904 165375176 557128628 675811000 624498066 569391662 989098268 751168433 645541708 578519437 865171004 861470503 929185197 719307775 326191227 269258361 527730205 19841437 749612322 2071893 912028536 204587612 609280738 879470002 778773352 279802054 695998677 171773858 311591151 745572277 324287925 671294064 540654208 103009076 624058122 122837994 285256724 522124124 251695472 588561453 32345887 108470594 3645938 424701932 204741750 970220155 462531491 684604263 268264864 822545046 312673689 411629512 480140144 487311476 564527107 549178989 553628647 782640394 284256026 403438699 722089180 724814204 176452034 377413387 879120489 582029395 168887070 203146839 779041043 451720800 125809794 205801243 563951415 526937860 126125111 157638820 174192357 772375018 898987423 48860942 932410671 523101593 608224874 439273426 954719472 798589670 206999152 912604505 439903892 347756772 36335626 477598201 972394924 812474161 768301955 962801049 807761681 822046062 961573551 335190112 124588770 248787391 885898114 174885858 786144900 986548299 515556844 929739701 715529707 762650847 291820500 256163043 189418918 860046457 255867940 647322674 774106185 887881343 999165273 581520384 624258787 350650707 377016640 543607877 865868083 315358485 709523170 605224216 448634010 443225574 48045842 818301670 197102259 550157658 643059702 342613670 604637749 41793838 804836700 701740378 820057058 895822428 373342862 458796349 544258819 686261106 761560052 881098834 565386142 261504390 136031332 910326339 833012322 572871728 77530978 342256847 318418172 171236233 645035898 997280844 977795199 549681819 788842210 895768723 607530101 251671181 676116687 124501879 743899461 670001268 570241270 179729688 212229778 481133072 277625725 116914817 463676049 456187578 96030201 408682802 41129690 424177198 80797302 977486773 799776983 265844849 880819275 754366322 19437184 959676671 917167789 938870496 744136983 870973214 91703256 547427801 396414028 833167934 73373665 777928949 312823206 106311349 550802576 728640109 685547276 253603521 790927180 320626936 434159500 107624179 283895465 559347917 608177288 474914596 957543763 568543198 726450502 900527240 903206099 591757666 365767859 695521764 738317286 508082310 362545045 621968466 546135105 210738524 580287781 602166189 303653969 276548226 189623371 824188836 64640431 531027155 743321009 295437401 305575683 580304652 11711018 864627958 490456277 613021654 91704927 589246232 272446979 633832346 239478575 440227567 44245713 426593779 393327771 388448731 535355711 47646417 344252621 572122327 178219539 155422705 45395964 613424009 801416841 751366488 800337312 961300089 486504670 351804084 873832390 851020584 479813966 644700695 186675857 563874102 15821326 396903282 464514465 516494747 381225393 660125948 118357182 815712216 964510829 645023899 199348707 632528757 152541541 429635746 490200152 329498250 887961036 931072939 657814590 60529678 668723821 876353762 158738607 24236849 584625007 300500377 750984471 309193580 112726776 283304439 824139571 854389176 361797132 354141372 56437143 892682855 305034544 172816991 262974842 466791004 330046178 919791314 748500434 949529191 5074109 118726898 583542948 407665854 57288497 429386648 424589962 551165152 344599371 473602104 127987960 185299878 262596294 391131709 999960461 755395028 200152798 184530460 890225874 89269889 122080721 284438572 50096172 367118970 157253680 39294046 61470124 598658206 312073609 521498655 326696162 849881089 217446573 162387965 400985142 214475698 49139175 564832591 974169828 884028934 198352697 463186546 943607447 579272954 767001736 235169058 218334304 887547706 462445719 301613063 901745 804704486 292547541 105458957 673197425 386752555 376401211 815376718 220452365 252193113 929677178 452376932 448855025 846065540 618786459 733272323 501923625 576036376 227847569 863177662 687747049 134171633 90374384 811722780 828407139 251231347 596860690 748683789 298243054 799865121 800342873 658747882 94756746 724177990 230574320 617044400 585602801 95582627 966959773 896819827 613463746 104026433 3556617 472322828 486766142 648712777 978806795 783489341 938231667 139111208 569874756 872015035 323111041 678625633 14862612 633313615 922571337 926574944 585634551 691485044 874825178 185111861 324521043 232729457 718767620 389271624 668443576 572150120 845193266 874183171 58886962 174264823 983218500 361809787 861124972 790601694 828533193 600186782 476143393 947780742 411156935 155915684 356401654 132416640 1785435 934070707 717467464 938977802 496831602 326719852 944364558 699108546 480412173 395665424 697421506 974277790 613577173 383057462 2612677 215272317 382693032 403813397 864276000 874687002 613221043 78372930 345510592 74583594 906680240 258684062 590014166 863923569 482697937 133450273 934589517 577915212 472287441 999546830 408683553 616120215 983336686 164751425 641627695 487445531 620334585 901839053 644754586 207345300 323231717 380355790 354294118 275284303 663422375 277686523 323353499 346003859 231061498 17366991 361762971 384867277 104516512 552964204 846896035 760087356 468106842 396840232 228239049 633811653 890010880 695754406 924708230 910531153 385750441 246592198 31543252 643119892 672545298 551208333 295366313 602572818 134856431 536516249 104351008 448264217 585581014 683424075 706155277 250727183 458491136 738455617 303140537 848146699 764607591 977776618 544565591 45885294 118820428 202805754 792969526 421095319 106690972 546235044 422143200 75622179 974295003 12219778 573890286 104630739 916960290 698388207 587482231 109386118 590100504 317925284 920567771 96156536 433840054 811074196 730671551 628464317 153619412 505421636 605392018 500773505 625078661 763392060 713097436 750887141 834441404 892508830 686606453 867591766 360199142 706529669 516216372 975591112 73169810 810258233 198496863 904123575 66054977 138745907 980044619 95908755 977073726 306873712 745776423 153269199 101573539 795019194 602757779 88767331 200247583 230405510 539747109 693051301 35573139 563654157 280521351 112478428 878510418 805776282 897095383 935163065 446123984 866686224 331102978 737415693 254747671 229955608 923614282 188735707 961700072 967391120 128756245 417739752 206998502 690278845 666523700 150959563 814756982 745976919 246723613 467043025 639913666 572558419 505887868 697959819 84941890 845063010 531389525 91119145 438704976 453869027 176311289 91452240 107486258 506615133 609462466 791488283 727384943 468900871 861740708 609840785 567506249 419670109 864770147 814173233 823439733 948888724 803879010 657971509 768981000 183580371 126400583 789453879 451343030 282675621 250808286 631398085 761256514 266138580 882509280 54247252 803164693 787669657 775151124 820816805 782063164 704490926 696819985 461654707 201492447 314004298 861101828 151978096 841850116 650390523 636078650 224530700 456799305 18452591 875287823 162505087 580923262 323040967 779541655 904376516 226766572 292439927 360085908 606340291 673945845 90319966 527298449 203332788 434546339 901137796 904858075 380171380 65017663 825931323 961888459 638546028 831383587 285207493 176603719 496897631 896154551 155082295 213182869 674631111 798171635 883989762 121307946 651373774 447036245 592645667 165694455 811775220 180855149 977650091 303458978 59131364 959888132 982648862 914556049 870316619 346599478 104497980 685282781 932324437 705772615 563626096 84686401 513051301 31086625 16921796 717644688 961958845 335262862 997287697 702237597 162488998 563078707 419189320 161481701 542148015 76421856 387369893 198328134 965524255 59401541 636393259 86351479 583664987 331728709 595910412 81757628 543609460 769857023 335511481 901136443 240900386 361934569 599392272 833810280 53792301 41978853 398455182 845768776 321167242 335820812 23278798 123088664 874043309 189026531 62922445 897937709 112716612 344109255 657153705 155683925 508895881 614759913 85926560 454022196 117373839 692080951 121146432 641379027 960537164 580231760 75411767 548674703 797236434 43815772 297495118 407702132 295466433 207201765 180097087 168512043 62760711 412810282 729643463 164589410 993532050 856899804 864916880 207838411 661146856 361202532 931500156 248944377 367201257 74883096 707941015 118906560 634739911 703113154 161898940 161100449 638121538 382293734 344188839 649352814 919783677 181719732 3876470 951474369 805396678 680627962 391183600 841891858 109499783 593176065 715798067 11351775 526015228 141918444 991912963 469336042 909932793 473598601 555148710 515192430 26253581 269864215 747584412 392231528 320893762 935401448 428138254 458653633 490110612 586442064 433006442 516428321 696171570 124394449 581637611 60273384 326336956 643292782 581361757 497932915 423521308 420813144 899657979 641898458 467377735 745064002 990501405 528380035 66403063 52063369 625873319 652660620 521146756 954232571 91330639 541773825 899738694 38367392 842239197 15544686 170976262 228222802 982018401 294548563 566287962 893239965 61283572 603256948 104955396 686400211 273942722 556874047 553896884 493748069 548892903 61333335 755326580 454309870 627414234 669895407 615513788 997338549 845752810 993607837 159093900 279268398 742157686 207253690 937743802 958922643 949160102 856906587 70327474 882642469 251593332 180051525 621669115 484808019 348305170 688320298 752166166 639324831 373055196 908154691 887220073 538333356 558419224 448974533 418472816 486131596 235632417 478337217 794975533 422944445 650779427 917899864 753165341 953701511 619135282 362841767 614354287 39298047 273143801 222246636 421939237 652151706 911515620 161601826 31217007 286283155 196766237 787001606 705302482 541608319 37169454 670376736 58383672 679536625 544961540 112973644 446098305 220333583 231057130 187382791 2650402 603302459 576393556 617125998 436492409 978613970 809224092 430505575 209981903 780298173 159407607 592568825 957167038 837087971 381361514 989882486 353997454 278378668 989852021 560066461 49726084 945623951 5555590 746446722 344847170 210238947 952054182 618186074 989063252 376437747 153669683 126092568 476307678 44381891 287603887 15712588 124852221 801395139 843183344 329158911 402587338 979663556 303861605 748122653 233439939 495720645 260195662 248019363 364747212 415714655 368218751 76594346 187056835 929453686 964789412 886298703 29867919 926652166 78728928 556092303 960272950 509154255 248395569 850765503 751551901 94110648 31820587 322925404 619382584 860105891 976506525 10517218 628213320 34769778 865665156 129979276 392258205 344367938 168182636 59522412 863097211 519128505 682764536 904569514 316957631 650314249 718467822 226288037 935874262 860992535 525063550 452119671 160326062 516580738 985347688 264735019 939855547 734887424 966893258 406830656 910172930 203242702 276798393 417616604 794173506 18626717 468781875 896594096 686725796 794937083 283684293 884853046 355788991 431115827 702701372 848411302 749147510 527326248 164653893 862498998 782589546 322717472 351845404 618755203 545858290 148429009 130655593 318138089 426892419 699989326 284046510 627927890 314085827 599791378 923709308 800956015 250127322 383158770 850600868 694033102 177968244 451389249 693704034 549328075 286608727 561087237 280598750 775890677 681368048 226023332 623555575 292172458 170255681 453505290 233921534 307577208 260616588 807841798 653779051 728553861 687484048 671275210 14084518 850032768 158543480 980981341 459398456 291900874 813346416 779791044 184814596 447457320 950831286 668301277 276577433 59311931 8312080 347601275 402904791 508573833 656412891 411689574 220546086 644548770 789753581 296586744 757972386 630682271 385309179 900503915 540926678 867080401 958781357 933508642 72529231 152444001 972813228 537068572 106151511 806557352 61173169 880087252 793255505 647672577 674239052 191517860 108921941 731339040 935061838 115938909 668998689 410476037 845363530 422387775 167088083 459522175 274523645 574823457 680872155 968844322 492387435 232479953 693739206 221700802 190965205 589690849 428982593 603294275 241375375 96217286 756201429 909172470 744785031 325183651 27409621 694751345 273043009 411207960 998045379 259147592 826501894 811557477 939957503 689301981 411762920 573249109 241009650 308819116 991535579 152910281 510334820 480223687 173901612 340043500 951036553 839198260 337428325 801341715 195589284 327334708 384084330 601733756 336606180 71354125 674195199 307992063 197998188 264558397 920731062 245999425 897845077 218103143 618885168 882952504 56136185 521482523 26562756 481192940 157405423 739642850 629989249 718380654 354794223 214865240 856289108 206947998 112208491 500438623 403539328 640201958 384579280 162580164 104239896 17817227 291011599 659120239 719128314 581229999 733725935 290682550 495829628 682390448 379445290 750634438 386901915 830787704 230667964 855088125 23633003 189352458 867965320 716056460 304190205 677621831 689975974 761919925 469945251 1012030 130127785 101662446 84238316 539264548 570500462 564415639 170088125 935281329 851910315 470718969 655672405 116430401 609905180 805629573 187150697 800753957 20928314 322043456 562881640 816630137 945033198 386544373 893270805 241536669 149187727 320158181 491949895 538941001 5357461 952767836 628475312 213321132 200996052 993691316 759664959 325905931 585068321 913445144 283259954 531452138 409079842 744561835 487080610 647440296 340079046 670958243 59321403 424905412 692739213 392787315 928671682 928948568 678171318 9484666 747475312 58032212 511898949 670848318 750040987 886857727 155384480 754233528 32784019 917420964 743608129 555732659 49114764 960412127 921745446 609797894 793712876 473503161 142369731 283957739 487594883 114608414 49362420 136456780 445143022 460150983 870341454 209183041 518813993 475728034 207509693 34957171 188583164 962260825 948123299 591604414 317426199 823164739 377920689 118947025 421064205 886077678 345609221 779182500 968747132 847672504 18549497 359629178 754722429 985995255 78466977 373580000 607255905 408455030 860483927 686241508 934351167 412250323 560628963 648040499 415037434 113119166 840103762 480097351 92553251 250374515 612683900 149373604 707659913 110060599 358940484 677469687 863271734 535020163 766093898 592396457 256979210 127094576 301110199 936286421 261155523 144769565 452537654 331758423 547748671 851678110 309701166 978132227 634481547 116002342 881894857 631184887 780406233 856625843 586642512 426241359 477661 703287570 779822043 994267288 581543506 475948966 439599425 327031828 946300160 271198875 761486069 397926804 354526420 926140787 610371848 897898332 688004370 740160334 911574818 112820199 866476669 662732053 586574817 913798883 829752145 822529398 147892420 336157091 364334059 298092238 248622408 584811754 382621656 454681684 971090016 133461958 890928999 942459004 359113843 2550240 722891968 243577846 918855968 303334993 486408970 953755151 164134785 473557217 832046288 541575105 934705884 789528576 708292295 967316304 143000604 711513894 919292515 46508869 15392058 906456118 170161248 722524626 236638972 739990653 511619820 504006260 23206085 127383480 544313983 586501118 817238334 239019591 404875875 797623333 670079077 865103956 202891305 451476793 159089226 590173330 683097697 252533437 179487724 441329140 492630610 105664416 690819170 556517002 760909772 22337699 350789654 425656432 742701674 700968096 783199718 295938254 826260929 290645216 900251683 444343199 706218247 970991964 481011164 220432752 981092082 145437490 579330934 1770665 588474604 859612443 104966244 820533263 160926177 344253246 253712011 76521710 840244298 882255082 589510040 264162290 304859852 757992854 677488217 259346049 914921712 61728108 568291202 983347149 977386160 16681029 715537496 940755184 942691867 884662892 451586026 794283245 289477143 905052746 991872640 654438758 889972151 780165041 531292698 823386877 671266069 864557855 361950138 493230462 111311210 392642688 270958355 240390631 788851311 990262367 773147985 581668306 210334767 533828371 201851724 746617449 758255683 80230742 171875781 643638548 329873219 421886773 320299543 105257063 475242872 253141457 76477077 718121112 967709000 744029727 400977081 704071574 216870984 794630897 222424042 639306589 243311958 441993718 376738432 747730433 350098480 357486637 537629001 213471403 652293996 675974359 366351299 412693426 146452981 797761962 722545567 256922994 126467772 256138505 102237133 756665704 137437697 891737959 192868019 738862057 139225681 730505374 947771284 590891343 633281410 575192696 260586066 73131912 488859143 179409211 538725595 894907951 831677639 667180481 748102807 927391788 712261596 840374746 235636375 961518276 571728469 284655854 49003576 31010399 635707620 870824019 618061088 935694532 999564502 509687564 277452761 606105245 904265310 920247111 154698969 182912830 221412216 182701427 184858672 827543747 708947116 961894025 695843893 400811012 984509060 817029222 616904455 942584287 162597313 122183256 548652663 747312161 213057409 409271308 895082330 73166261 993115123 561657712 57546742 406390794 820533613 51434800 306154253 836932220 997316093 391929927 955468253 640880779 131504079 281047622 269720494 739696232 912009777 637754529 383128130 39971764 315405101 866206931 791197773 67647430 470766207 337956243 50338859 936746568 441798543 383542364 891677409 549912921 512351043 299482721 820525298 925684678 332811347 382478456 900207585 314368173 817442472 814516702 327491521 604511443 753922416 270247491 868281198 422504908 2748425 912402133 725273897 514039846 486654782 637477679 412594482 499126769 801181794 874998696 158225047 806590466 629500345 814103234 258340009 858483931 443737564 339488973 400332019 979949524 595107512 9971045 692096873 387575816 666252835 198905586 27849176 259732956 182301346 190861851 346996561 708269490 360908039 187569749 832669096 632673077 550385586 324954755 49464842 746162949 790236471 311447462 810406922 894168902 735828844 559773156 210729117 187895742 100460231 572680368 447744600 404671275 783345026 684914531 659510798 274444696 762011369 581265137 91943553 123845941 339498279 132155260 77283164 15611134 851300904 784524584 915693839 165364859 405710173 87444390 885110809 36339902 435074701 84325486 728099790 213817164 615643845 270107429 45715185 885155548 46080173 744588636 640277151 807813319 101781025 620069904 644596153 819280016 143250771 284405687 842153779 197630896 985683844 921032573 724679742 730200881 420208338 515408703 435397878 46799789 346729478 325811856 967607992 15154679 887687299 842683968 830816031 15424994 583969068 301823508 450497993 253398862 816596199 194437082 534719739 85577885 486205703 126348413 782676488 336845763 790275355 954496819 466931836 379532996 738522687 812999553 747023078 914180415 169120871 965112166 542225255 366755795 401749475 61373936 878109873 118738341 24204435 588202238 388954444 126255725 486696227 921633786 430678943 233916118 209228861 35143517 177335102 672141331 888803310 711485519 374511237 850901629 393992486 989373052 49479791 824437841 56463119 912972627 126422737 216707178 351098732 507419313 518909174 747540949 88788413 375037589 834908042 441376113 130139068 412020178 275669229 897182326 891214055 958975044 903597171 206390032 149754283 43132359 655335883 299821953 78691021 938614393 257184027 383600642 573381983 28422590 339026537 69217256 507901194 437010839 604707584 64056224 44937371 310646192 816948923 734086240 563513231 783115908 989723535 524590828 263470391 179365827 605140258 427080591 817739160 897571967 124555534 995331367 801814630 48800344 340791768 574024098 192140492 137947938 53368906 842454129 932356207 704904916 817917003 203832281 749765471 104570954 870986119 66906693 865788240 257195300 895275255 932469326 542646119 993964305 112684217 584644775 289560316 811345147 570948116 94249879 510070058 315848908 613407774 234211569 497608247 255976287 113371343 95177848 926330362 285002097 752512219 489801353 866074053 752701467 599704112 819839413 344586888 336830993 396209633 446775732 237975328 503643494 894196668 387413000 292999958 231418631 475075895 755035472 375722057 717634135 58881150 142189851 364753527 108513172 54805730 277607255 543228722 234407834 398802819 819128270 903029402 199176797 75471713 710075896 676356966 128823516 604525961 418704064 426003597 110396294 895402150 860582585 940318125 924705542 789700968 244137757 934358062 958482154 609361327 966692144 560858270 409231912 777521355 91600616 830557879 941490645 705806723 55244884 937640505 980425309 195755170 617050799 401573599 362347077 202051555 873034494 373200215 573351015 272407038 563722176 72874299 592409962 50339648 827029108 806125900 797789133 208261376 955009903 171054131 692329267 336262092 985894881 480117728 495290220 910631972 614298940 315027623 959949569 8324225 84418238 614544536 685362339 186454307 591339495 825566650 690165444 503424358 253983944 402148433 857811677 342184161 411040982 717378892 571958446 769688453 623875982 263463 884673746 997981658 362576892 314134629 39966251 982765546 126061098 739746568 638185186 561731718 360235197 103079308 933508877 50515923 797790677 680384609 377739367 816946046 461377566 749566882 325965576 422867186 306484081 719324886 174790831 868464959 505048421 179145623 375020154 385672133 449896635 453225656 492454270 475671360 985174364 88308301 83807802 376116576 959628853 96659802 553304798 679824527 61950315 703075771 434183836 533028056 795673852 352751363 272070091 105579784 303613634 267626900 240803713 476963312 809325448 25435835 833471517 56792822 952718739 365489069 870451310 626127764 104350510 801898939 521262562 294975468 403036365 180227928 353532754 576440112 225636614 818054643 448789877 225077725 773661788 494695991 422006619 299986825 123562743 546664390 27345449 796552952 726423967 687344159 54799629 456098046 826370741 855165536 76023152 714755626 793321984 55819695 255825893 866088190 252204944 323667095 45132447 787219551 27225881 872889592 826078606 813438110 685070447 655775395 241377202 85653301 47422942 341329418 444746526 146194006 214355901 643749504 482502972 737260280 285842082 294352655 791738352 914534508 806857718 280159606 907103206 90541948 395051817 755779609 142014643 431751244 887993291 486368878 284375967 733050687 674478874 506829950 441105920 743304306 30638937 143736782 770118803 637592775 587302807 825000398 996321372 308135043 210987503 954152265 338964945 454112086 400835192 248211362 240996407 175952155 424575440 551107645 891940038 619222775 168288943 611994359 103516190 405090091 35912756 454709687 394185642 540588760 270854597 505437105 228799253 875998652 841495597 281700864 145431962 238154426 202562370 482422482 277831694 733346340 543720432 86955602 938782623 452353341 803157959 984624996 962816257 748753658 583225695 218841713 139187381 435811405 906615408 735664209 533737135 156603697 149696448 559779368 567386021 51234537 69857553 795909107 461542396 704561087 282596809 206739828 260848155 886665573 640209043 223170426 372410266 869297189 754472501 516497013 198423349 95110231 636115345 673586343 88531907 719446905 500512175 13961273 580317635 630755494 744651867 645708396 121934722 934067232 963474630 951007526 281780340 121558180 342949433 521758397 337924180 495576187 24393929 886292064 463087684 650157004 24643783 257941660 394341434 216596524 54906595 963885192 960544366 839190661 201028101 66091378 226455240 138225142 100145072 63260083 659850760 118308584 880574710 208869775 653666830 336574520 145916389 599499150 261160563 271071342 668291035 826695231 114797443 325629995 312993097 369944062 910136639 95185463 116233317 381915763 244300633 778256001 818888917 413320136 87206520 690037490 212828058 43610294 524871867 419711555 879208123 145260643 842770680 109698957 198663406 740673457 93983438 982193395 129917327 752739903 622996503 420537547 336297702 453881885 725792423 745174535 665371063 478656568 765644275 705726511 976142079 378010853 13298103 750598703 785661718 399755514 609356758 643934997 676880185 229224223 544338888 289642290 143429768 845749474 279356332 183215622 762177950 5945811 398589723 231641761 903140502 306222879 256239690 286992418 696815070 646013142 213558988 710099100 765806025 95357671 942036435 821825189 962015833 168519505 174708565 428258089 66590484 181867348 499174614 901730190 564084572 288634689 141832877 871001279 989546356 396379019 960076144 286997776 975705955 353474996 431479961 709425335 430807361 748225949 522324854 795314385 747735773 931357659 937376328 47507771 305928090 84475433 620371219 391586076 591723421 72562209 893652935 644153167 316286323 888409015 838851510 245454741 820664847 590361915 737644541 315349342 54295306 946996454 186894156 918710496 774969807 624180080 786164765 51398875 497329857 275999136 384972320 877531075 755044945 799428981 402796815 117908988 180560149 47195542 676157081 204795673 426561112 66305476 983334722 412322254 394063207 709127588 930485183 715140920 751221586 970232603 903340583 699380960 943770530 579921812 99055675 288536056 729502452 934542411 73305745 236020495 639803103 808965220 665602642 70228097 902450054 446118248 455950877 354497847 755899418 350548101 787811075 441566191 115567173 642621292 534613430 37078757 686224435 548348334 445981120 501627561 818569301 238390623 520761722 720236862 532774298 485026019 301084924 321360229 183425225 668870759 63429041 976942553 955740691 943909098 465876563 384244211 712076728 857174324 798984410 652718072 888165604 765274320 682189989 612743477 11283933 126900867 972786365 20883771 698347357 450828368 622049931 428347673 554547829 799066885 812094474 8691813 103181900 264262146 290968685 37300047 339094319 159002541 52422302 225422393 61570140 618368030 90925420 635308884 954885516 323075396 76454313 838205007 100407385 728941648 102833320 730597084 195085646 625731829 348042327 646152210 876604322 317412233 581895130 338881826 704711579 958360609 239184383 607656841 524897454 567029723 213271880 25206073 10322107 886647585 480506734 427559042 390844826 742103110 55928290 642499839 249834708 704729385 726440243 32468139 488958084 673752137 84662401 681947974 295821466 929226593 101714602 476986352 577744130 424833730 181149261 507686594 99631309 81162812 978372630 301353505 855289103 93281066 130172303 591345073 715406093 229853444 882865359 614893972 163225492 721789917 124964257 888302847 115017200 525851914 85360998 403122990 987689337 984952167 736726309 13312275 781858099 435716541 237724644 313679546 19221601 289317942 561481085 693485252 430401335 248305218 701950232 982466517 368656552 533171202 131739008 495898758 409443074 116278483 887707047 422260950 606425247 166534273 680833008 159575979 768794156 62172981 712793270 654668193 329816845 468684198 606573227 75070919 8713766 38966527 86523407 144137935 226708587 979815913 267232401 620547203 368769320 102968201 644392722 88603855 955559092 479279799 795892630 376267574 251521466 17217718 148485603 598585850 89721944 299412347 685912656 234817980 812908095 223617084 599845938 81787049 264392564 437833283 932082565 810937191 128141051 30995959 619326023 226976341 965560950 402021200 964054939 930855625 267199236 857760160 525970082 410575890 938487068 262700083 644245038 397112953 683226634 267348336 987672773 50169747 804245487 331939379 947098026 415442486 886856175 545443559 742011239 837449224 897350056 361304202 659291380 385198243 654473302 739065289 653589479 404575996 321921523 813634280 929124779 617478490 430535553 871153026 81394928 878961292 36277920 176088436 152995186 103348176 934228536 770771186 841250508 636675364 219790346 662048917 514152048 120569949 502251438 353205224 730139550 279229859 295182777 689040635 626035576 152640253 774590330 267244287 629759599 500334500 930682895 726023947 983232608 544479766 907170823 463190229 896553157 102224017 363014195 952651616 3456326 98051482 17593760 136117082 891202923 624118459 861110775 692959903 659827486 809836093 570810945 551355798 918256412 747097991 820822017 927245944 408649762 495977638 448252000 190690791 538974728 242705131 610433737 430442567 901951631 181311945 247768544 45664612 764004745 549338388 749184062 256686749 60732725 409451290 595830491 209239680 124953117 628784617 79001966 890003428 822626193 879344098 477852004 537380471 126435558 89317081 868427259 950372314 508764053 756957930 166074651 768076321 544136800 427678695 183152120 4154897 403552143 21511173 879487283 296852026 166413476 885902265 350785180 188143586 858956973 312980006 808080109 522965085 525671847 776941466 167373813 496621315 181301223 654443659 937026333 147232763 261757852 237420656 427233976 777365090 654724210 270214101 462573804 674493437 944670645 299024825 555708708 384861940 307681710 477952525 462775411 764524609 873058922 290876940 393337116 769439857 458909840 417334571 869570245 258084772 664183427 155325371 587822057 119548620 794556567 338887200 583977110 892418137 131701257 794922150 390248026 364331619 825534305 220892559 125908365 305111211 832385005 856687348 969814840 789574336 726383408 986875331 453161957 742761644 56575835 188165016 55556348 871383584 517794835 939002653 903300326 344481817 307542827 862137841 375938845 811811428 611565947 468108262 509510885 476278862 426895913 999425652 995171890 373432468 816666482 652126601 858220409 457826142 521456635 956077227 734218379 199256305 54938893 803928188 269997310 33777981 235078828 178371478 122499205 693838660 438156342 535443983 435562781 191771752 906017875 611398113 185650817 707807067 292169713 555446011 912009509 224887409 285343169 17397403 287079045 913833593 684020951 794832273 588350994 512176323 871985908 111534652 626550997 970861406 652495824 901433744 71584399 180137590 871595740 229744288 61838715 728989491 687961998 362333273 564494473 574659237 481700100 201833586 506590129 966163330 213417023 656116445 653426788 163418423 234520726 466223693 155899283 666144920 432253102 594745855 16952024 345901539 657695934 444802311 240871458 80050509 553597532 676922545 10167209 657982283 53565371 725548132 761017788 675271051 283387628 344918920 434801979 618351129 917643035 558063179 762605339 129700109 697662852 18842831 283830612 826193025 880783062 12568707 715598060 102369595 524972429 914223157 672537862 367935557 145414500 41265926 345335034 726734343 702992021 366643361 234063893 714525187 261950223 56831169 548272530 740533367 210682347 265616008 371979727 534342279 527056639 862466781 136521751 991651526 516839690 730768958 669205169 178831813 556243337 246226629 703518279 738062937 605360347 913939850 399308179 70668105 38463958 451462428 690710885 224173967 890812530 17404458 381102756 312161668 947296714 135511546 387237670 418618120 243969538 882943844 699047722 731823103 506452034 558382010 205561767 664570435 359843986 624741972 601119921 848169431 352339718 151407988 445940721 452675595 812161033 625867684 595367579 246740253 491686343 728746151 783277690 424710446 122265707 832889559 301890684 393542743 822712765 236084009 928928811 166355432 129276639 313072578 94677158 900591131 234800465 312840688 5670953 639559609 337174936 425515396 400995100 165994176 894120575 799108966 19720221 262138608 548117663 859707589 466563366 665754495 634084413 881153685 23184847 896291817 437020859 199887796 195213076 330676774 431294279 124534608 635964622 979248444 42638293 560642540 824713199 3008435 81600786 479005185 518742003 85106092 423406807 820462986 802433777 588896374 798590853 575443376 43520337 556621998 293344570 587670235 722590447 439636730 184316412 153545123 542416216 310135493 671028162 985310001 553995104 892505783 98447516 344202900 821699067 829631425 472867660 701986090 207736995 195990129 811770239 931959304 39046053 517714787 463037945 505591596 76402585 407151173 899379751 872042844 80869348 295655538 286408598 770184289 837270592 447335454 334481938 332098652 724742018 933149825 168952691 462504798 327556345 844759116 135551980 58154518 266077913 511683915 536515758 658299197 462834830 861390924 468360417 976540002 661425967 851345943 417627054 352548788 615783157 514443333 348027761 481555126 269351821 586253122 166102426 398983652 50102565 235200801 673805598 589486146 522570136 385860821 734178986 994146270 369361692 468628750 757769331 936944913 463452165 847917302 46824978 945149112 123417007 80698403 878885114 518532340 145566994 447065566 416402738 927282187 110087158 312781260 223385405 342607439 405312533 924127951 588818240 140372500 346350544 515943422 79622549 573798393 211260870 75726214 656241787 190659731 121807592 465845514 765307202 999890423 962945432 394236 99249987 63199106 802070261 535575140 971208176 353435886 905645660 292680234 918131885 513413104 957766296 911632934 940336975 225962133 855291969 702736173 711244218 198444656 529058090 951474142 487557095 867897259 346494790 703014321 425711539 312611347 918039565 648561710 291971478 546489601 999216811 635934766 45531523 730732049 268012866 89645198 485910620 138249375 975663949 539822114 707766344 249345015 267932395 913494132 182867546 962600687 30918282 942585854 148171041 152807273 743606785 313282117 737109467 355237844 851343616 770780295 861696104 307032535 81112189 924038934 283316281 775806173 159657481 112641282 640828071 201738305 155951915 754237792 712171197 483694240 802077284 825692826 676243686 166523625 987781351 211384722 988111243 263140317 205091491 248212698 439996985 552964568 546032991 757800562 286861653 902612667 113810029 270722803 167827173 66912787 501076206 942237009 621449788 332327160 634253039 499274654 938967751 154133306 489314759 302411826 525416955 257947423 759815497 746108345 454463336 996308057 861935825 283115843 442036195 101089314 970428961 766863221 186534285 876246454 329632083 485624893 873391593 862235588 565538673 802387724 986443350 102617558 830846171 949385545 64589958 32415925 701856218 54589863 858527856 605056591 231792671 126935732 841775964 526211650 741925484 731802655 112685078 68247096 751346931 267061153 552415476 699725870 436057908 304232908 242638239 146580708 968142659 553385909 784339746 317032803 711006649 435799144 698182329 302531050 470790361 957215308 947510305 673140861 96080507 330380561 228907855 29248321 209328934 629663915 74135641 980895880 958878685 56769740 790242029 870094335 412553850 154891979 574627410 978402074 647966127 782451731 573435762 916869978 358758686 240265429 355898534 964026934 199999737 202706368 334090161 772020806 601900249 333121974 379276791 110973121 347271703 278453190 412310246 583714506 973979016 279809788 35262601 565880920 231222118 41665973 11057333 279206702 50304575 713841631 786826126 911093185 692607599 250117050 607127566 628727705 236030491 707783122 375988035 568358009 454180375 286431140 786960177 903749734 219970566 591299445 707161116 840114001 853505827 888119721 787593855 191950216 378618518 390769494 609977274 612183859 288614591 576225877 927599824 319857531 83047463 925564470 525947498 446585065 137655617 112166499 217557689 888828819 73483063 554945726 130022925 785752482 113202473 531560774 491789416 108382364 849757028 552060179 575077428 6997442 801664346 327687803 764262413 440903565 904568129 885781518 203501029 931609686 674361039 180177860 872030627 240601326 964397143 409612378 294877339 969723350 198460541 973843228 540118743 830890287 625556741 483246624 374460792 994207048 186390012 440671096 745560272 415206491 438605718 8683303 611388494 34961259 43247176 234178035 328171550 424179154 33041169 962645967 222745803 581334776 319026138 783900828 179682411 237281538 192951207 26500935 762358002 47418274 278119876 529777114 985982688 478908783 119933312 385346954 897864108 19645971 306303674 383427202 382987901 430131076 702986090 716355471 484044619 56665529 920052542 923215550 232803098 486495109 850797010 116422302 872978214 507609095 154643061 399304142 380404181 737072835 74135838 683254845 377524375 394641550 718336741 141939124 31834703 867337426 636680265 274297827 248119209 71850014 182110240 522947866 433867916 307329786 945994655 248516878 681068344 266370983 112855674 166348321 603305064 676060287 552461472 430846346 809659829 832378642 229226120 730584101 145871815 12612135 230672702 403224583 902021535 420627470 39205476 990527251 198812269 253116860 960500879 199180490 924330706 945604449 515620135 909468221 903868281 700607995 782051405 97074184 668613671 435844391 917605050 390686846 482223054 81219566 980465670 915814655 845657785 256367888 289533711 823805988 537861856 859044367 461681224 210488114 826323452 356050372 58379051 323309051 643967057 314561679 586616911 184807251 508390594 12931150 415678759 658887958 46187480 450728608 696403268 448677045 328514664 764278201 335889188 181331760 548405883 19107825 66790568 545934004 781915091 365118853 48988811 100406886 611585437 772143834 499998984 585844829 288574792 997213187 790572635 947285752 886898837 148823833 266494438 120990255 398917430 526834499 168678987 2163359 843288206 965567470 873732169 847015340 776258519 22416601 728026007 654159205 291390151 359935144 877073976 416075713 341820915 693634857 968232940 163115155 326922750 974937577 819498204 104408024 744919355 909611907 219896357 364711815 760675212 841097934 276374456 505483048 56310381 512791774 481084271 673281480 491604231 833739290 230782050 343439725 140640554 636621373 622554328 139301947 648877923 740367869 564633694 343377057 378262085 667640362 94739293 537451057 713676105 857410210 345991432 322059310 690921591 912600290 943007765 794308078 22641340 388590861 401324114 648334074 91997956 416102119 362989574 130407260 483776131 618031453 345572522 898884805 658688076 909562165 91220102 465063056 660321778 889639301 717729380 729589605 865067873 198915277 165231194 267115331 183372290 520929628 249910267 133741642 86537094 456570379 371486129 640325493 554181390 424124391 433921855 76816561 74598863 287511237 870113233 458016931 320357890 868916740 164567899 240701976 581992090 426983940 737416821 611161454 267670808 844694628 281327032 286911128 636127703 184554493 9219894 967339914 723437533 534239844 135527460 443815243 99405498 618486190 829028888 623042181 957303312 836827368 772271405 748432944 829607221 82057683 104281348 255011596 629795500 779830605 337671593 237003278 452753174 251605565 303180273 46419555 890992095 626844141 182825497 229508870 788248624 900210447 174458020 516160672 169454176 495821352 443061494 450916369 703863017 14006858 325737851 550175181 762575193 284871738 262140352 243431802 703702070 438438607 948702452 209861587 847138862 21366054 975946040 230101118 538798308 685393908 912973321 845791939 199462786 82401406 881410187 507337954 357138705 537664351 341239022 798000021 891989512 978087596 463736674 47891595 999255450 897721658 247103471 260875175 729085034 391013625 486528490 154734284 646948649 538683599 195358124 93958235 651775970 562709039 353384733 389661414 49916653 820091163 676248766 593254470 582784514 732698051 648085488 748002436 27876622 668974402 688127721 324602999 106882960 231323066 398974364 256752176 132836181 270729296 655648997 470881266 344981994 507593744 30490125 447399391 862692985 635666010 149754072 492170132 169167508 113104398 431485982 123136447 741810637 837982178 866945413 330793867 802142708 294383940 105413320 100772537 221869012 662070683 576585522 702734425 135460684 843232990 595818187 997454255 414317248 627030750 809974692 379086740 535590307 455574402 976708278 829271679 261449822 33508069 905614223 344099703 953375633 950545003 462493284 330312901 18639087 403892572 628038140 758509196 683709328 212940755 47998599 292728619 264708861 38413671 706683237 561624783 514248699 410882885 969136865 488479230 829322539 276539475 497019130 468287701 791012245 664977027 20012183 823234444 255127134 426987717 175728632 302781678 447158187 700668908 667861256 420519065 462337940 496897312 672592835 34205533 305045687 303577151 591308355 741474434 462207535 926118648 6735569 472012893 455507477 294752735 434155053 744637548 870152695 193986886 320928599 597595557 182340230 760370575 675565595 618220014 644945535 117980639 231200887 124344846 983894147 28592977 580842732 120968655 848341513 35750645 177024189 16311112 272266536 58778070 259051612 152774773 649722858 823476290 910505496 644593500 355028240 105692174 868466625 176528551 198900970 361688643 309216091 462162028 353270369 601962932 821117217 407528767 931937610 419422576 405845347 800674180 830651020 61484034 413357087 168738005 374043419 988653226 43276414 515056608 875387379 385874436 286853934 265319068 515967205 174178165 314817872 763511237 627200394 377058436 415340038 66639034 727894532 446792284 468622115 724609550 573677936 5804246 646421361 469205019 564212933 533459478 193993034 439233561 219480073 451574993 38229328 396312896 425333740 466721293 161401684 846457582 892822034 465271445 240074454 46608398 825527012 808143238 151261615 714133939 481962846 194533560 538702631 78276660 758231489 550602752 14727494 914365204 720869471 83233770 216988441 513575651 962779803 365262008 475579064 97702697 360581050 766788332 864160609 336574408 305436987 778938847 593813651 813044931 271575603 634671212 112952343 878532495 44844601 527640334 157893361 956153321 920232458 715949783 571375937 897242976 755695260 628176946 372960301 238855441 627702131 64778650 748844756 822239938 177218586 508041453 761199373 199661900 432274636 439299498 343154735 784731174 771216614 693073930 663454323 705465525 168938362 568613685 541226249 90234954 687992126 962431549 674880736 649741276 375881112 841873261 524969307 574611595 230404639 318125301 656373995 233751445 87724432 45264410 720235850 899294540 640551012 129940350 294216725 996970069 114148527 997350316 742038676 303406938 694041013 185482871 851630743 394103554 496870422 110807986 995696241 811464498 508472189 684085411 329478706 958887094 948669105 121416615 699744802 742356862 258616238 19997544 858230104 306904903 598970734 894992066 633779447 841397978 892862551 234494121 570500626 899283151 861460922 945275549 871069583 702109750 637035521 124322221 155664795 87748212 152124506 977639953 120445152 187604319 573166874 672475885 303175992 908784130 57211593 352352461 806004312 426250152 549713400 330203802 931770244 747188702 298370389 185805961 736876451 235206061 375160892 279456567 53645045 712828480 257439222 607480830 206893250 630075963 974556964 887475893 671036456 263973873 713534153 273767473 191048678 400252647 475608629 597448580 166656838 346175488 632466701 44569984 31583441 209281468 18299989 3992308 616631058 761504153 775669783 732120448 388366302 45082747 352331773 248435859 876069745 994368077 768671300 664175666 544595413 742925130 633683357 197490224 368965122 115661251 865324350 547451091 908645775 863286248 911733909 450493759 88721549 25913932 506946711 571731779 156499582 154163065 992691760 964782310 529823842 541133887 969424182 477465785 420144018 887697318 947404885 469327587 423145969 270476184 884104600 720885483 968194160 999098599 486983111 195857040 934121541 428915701 902646962 240779204 500393159 392998918 379311007 979981383 92713306 340802618 757791544 41734596 492281449 945071657 280861329 749228822 301567810 909094049 296840748 978161644 716284126 254837432 972699811 29456828 887755166 850470856 726769003 226480987 634221276 36473200 389424763 662472058 336862830 733528611 578980251 270499986 711454154 94694350 695336012 973826947 785824615 585333391 642702428 822819753 43952755 390594994 483097666 156005454 752664734 706948925 538747698 469197292 806591095 196178057 376455598 182136135 837684750 887406046 539914006 946946892 505187347 215133405 869771208 563169082 384582235 140678548 966463484 584565943 498604092 377477927 610410045 380686273 821123412 706238781 612066663 995879612 377574166 742703424 778692020 842615543 587972246 817580804 491016839 738838898 171185951 515794856 952071038 385629622 659890104 344982093 901814475 300974844 860014412 681610279 982575370 368594509 781420000 399317533 56917344 904829578 748240056 6457812 949758429 328603041 529005768 909159864 311792693 164919218 759901958 963313159 466491518 137402259 22635976 828459718 428448205 881423640 495269184 344427410 113182610 295667920 516460601 684654746 860486512 686269247 390224743 941539472 374961514 897417174 912146563 122820454 988630410 466874476 279863508 664183871 853328722 844681606 154672428 599052227 810543110 657702959 251684607 877788 589987618 400448471 76041693 552881882 738134475 881926249 47652099 45164352 928895661 15119681 896411391 752008002 546452871 709133997 669598576 46181003 807644727 906314542 551150002 809533749 841645366 718954775 11211394 170037801 734085229 9124240 72748580 720327538 690568297 383535727 155645583 217453122 69002338 45599420 999958949 136345327 111549060 408548026 878649095 354020263 392277876 90627068 141155826 550513395 608114829 918511990 619852696 975912391 120021553 734219114 963020175 191364517 828836984 380741996 689537232 721404395 149029571 402865855 294593181 292816015 290824556 690950647 854833559 210753809 67374634 784085341 402490211 57426920 934928081 619514612 597136019 418911758 358182655 542935413 910416893 49854476 519719883 532001752 93985277 778054597 390658648 326875879 101138108 431779839 292601566 810195524 772612893 956611520 799367066 522644708 273270554 633744623 672798374 942193452 630567679 67543547 902140085 20101530 632712058 181429966 671086420 699816734 595147059 298874058 441427806 395568579 127534389 575386281 78918973 509009933 487706094 620500863 950812714 689998495 409453202 785006220 68565775 841878896 799377071 25710339 137737893 267601750 467141604 776823785 511046415 310324575 715386349 376242373 98489473 248611223 627980872 451876521 8125204 404826991 336902464 856898732 101527233 254260531 367366559 895386887 546125604 375952450 117907196 942110877 288671150 545116482 295730134 819377830 176809191 255578507 552247039 104418256 693803703 45136924 661540141 546619229 564431698 714270290 299135287 565685565 904106004 883413270 356329853 978136175 237838291 448920926 306146379 609286640 196993273 549358361 919646165 810547975 330264184 806175704 904879773 95022289 384013892 789017000 756025895 259682393 387965722 617645617 109715416 403559143 412746658 264803588 386713533 636516132 476577961 1382191 728505985 219783355 372066626 861122495 263570187 136871095 717053794 329432366 718191204 941070110 326288733 256531381 236802480 465389317 158936370 637223732 597948597 956011274 915920477 795450704 758009602 203461883 407622569 548161403 163933058 660914816 878280240 855642772 634755232 441462008 10508753 60849713 496411127 669333493 862537608 777941499 885631039 625172699 440128101 689527194 412016176 225914088 204196028 438753897 12764802 409023765 899910762 82579544 703540414 271003492 316980482 43197648 766722553 751715470 617938529 674317491 640017234 958329056 187068332 248386263 869755522 368764564 6401048 95632953 245492077 537516609 976025966 296508911 631621026 996669403 734208123 564626652 897610787 784854244 342069474 318291132 128066956 761441419 821153578 93765952 275641149 798658238 697532445 763189198 700618318 910563256 626536908 229112197 448150500 253814724 141747506 723876149 40771481 276748676 634435577 396215702 895892378 973572820 546776929 560261692 961583055 789116886 967263420 658044168 241573546 873620308 489693382 716816615 949908382 991466448 200577323 556485131 323849284 853258147 7906475 902202180 411932156 557247953 585139306 506855439 222640962 779891783 630275093 157480592 722001282 598487518 596883979 148049704 428944083 970271796 869855367 113077137 902795820 755140609 206420340 759713431 623292195 992345583 335919520 800601151 888139743 839524408 195525300 712110921 459333140 898318954 732652040 234483973 438271786 503813951 274321464 260296515 402937145 83371007 667959238 991991270 749396490 106263115 669275678 459126444 409768776 733784524 137678089 911859121 88081580 938473247 295079331 243915263 995610769 671933848 215321091 985043182 728768807 19658209 682962167 881440769 961678610 656779631 48220827 5496404 880508356 853379400 305393984 276635873 362920693 641528978 756038181 952573297 548477111 155312897 804501806 481579969 690955982 238249955 455984586 397433366 525597393 720883008 736827456 505981975 38497160 332847062 758014798 851697945 474662062 84531917 584135210 619759124 912860977 65815806 849569300 81534239 44969195 846702975 807946659 515148629 124314317 274218458 275496699 594789591 900281439 211385254 528335100 442662748 949392781 90651083 264503900 161242243 406802490 632784227 637667387 651597270 574055385 812603566 342648391 953926018 935460468 405331882 766493510 384848386 1137651 496878982 835759568 657762834 956372664 402356965 139324215 14790646 628045705 368537945 660948397 307774618 394899198 981941457 793061059 449622294 888304606 608969369 639333335 278524249 69809911 583451441 357586453 852593830 987506771 374675951 91210933 979141601 665777666 489604890 797456197 123208337 708539991 855917606 515522483 759882529 32194535 137755244 774178024 923613821 439068376 50439708 744294173 45957959 950852035 309222479 517895088 227877669 732979014 547550265 392844728 385740434 710116441 350453387 33791402 458526016 497096596 395909398 882440694 732378242 350526384 853508943 132103093 411430725 411357879 185730248 891629563 183589483 342602341 865090986 361969515 42677201 868612470 355275562 606430758 188618473 22362991 277047799 172458319 696450170 759709067 43352124 975828729 574985700 789048736 758280806 595375677 823492209 998159285 802326887 907006332 884624317 885221381 465176036 972300678 682979948 795730936 968497564 89989474 667154697 9299591 477688518 810199578 757365887 128361381 465975923 52956435 622820333 726806517 969460582 831241643 538210748 355068735 43211073 823596695 407370065 33357401 427780100 364602521 766389045 137738849 34344320 415945661 480510583 665125262 677389824 667275404 760893954 496278394 987698473 713293226 430376608 378175091 682131384 865871689 573731464 665329845 920076241 502202094 695343901 871748983 464035298 958587730 618168178 469009062 202488922 333790507 528988632 695000716 678687425 800358247 736365451 582830240 526934678 297358434 186133274 883036984 727688466 547215119 203357656 769972968 566001944 775765988 857365923 847681015 764817519 805914865 571507030 487956339 101621718 21903079 221670451 721196319 510758817 819202835 408760090 307820463 663032497 168089384 633443517 555726147 990824324 752866067 515101297 749800541 162139128 562333969 528764945 444166102 87879567 331837872 346743510 926375071 407136133 663269339 219597602 415573802 925123549 624624411 183311820 977970940 341272799 486460871 904835308 587191647 330229701 423321248 255301634 717995581 145193036 595354579 599868743 963246198 286842249 7020027 842187205 431405069 853969822 667445517 8208439 703690085 588922993 713333379 337850990 790889407 840633276 172723579 23446243 56356054 783956213 205363329 773464380 146313901 388868409 839995503 904407445 110869865 272461576 320626501 210640601 763520562 451127361 320508545 88355210 558175951 810074285 267092782 472105484 225103628 255331279 308356997 729085840 442999821 994814814 849316166 57497037 248537086 382587458 797241240 233252070 191257718 703251703 179855563 545701413 606665751 169023155 380568676 901991469 497529178 877331338 287204704 807061302 876938391 407060834 641288499 323593281 290169021 503614504 993057590 548970980 889615651 49464693 739625711 688600644 354422765 449735884 41257352 839826965 143261966 807547883 640157242 855717266 705869377 734337234 798448797 339490694 368604327 710677462 523997486 26835832 671749681 907508224 647723724 742986170 382011499 351679976 355526725 494168442 554055721 542278316 60710235 3308012 390917696 694107639 917608022 288287320 993052571 517013109 188411710 854863966 904838379 420909551 674045246 18303859 632308489 994978542 322799906 683862728 280343123 960943725 438535568 271289098 227339583 409825764 205587180 635696 758841738 211104554 581524229 70883808 652250794 716667855 921569903 132222859 913388496 602431461 43668957 500103319 407470041 447941724 675752157 275205042 693662214 121814723 169045849 186152016 61063246 142907949 41652042 833802575 985050972 185688152 771473888 432074402 749510492 13845834 195927792 733446911 982577831 761889707 755520696 868484487 349189332 683220775 465141032 453311314 991073966 774389243 867131432 51697250 934564962 684487016 774244842 232122606 809017057 411813585 126276028 459465797 876022875 7714806 271079751 826013443 617125141 419377241 388159105 812867296 547399409 438003157 420054628 350129826 485594979 20925076 627229011 982475747 796547969 738195642 842777004 287190712 740431414 657999736 122963450 411508220 5524224 822155294 662843485 135954982 742421850 484475968 851324711 796065351 691372184 373210438 588435511 673872712 497296388 455197762 114497075 671884250 877779946 103109941 609203852 915000430 365478522 80693439 397723399 813530187 648025791 399539262 730650310 407953466 31908321 99881102 445547746 888315657 149078221 763678567 999993784 646999006 869307960 510495000 345759077 125468639 967020514 56554972 457368647 151319808 736339423 198844886 569238256 752053900 837184787 596088585 328661296 65307190 65334750 233346778 84982047 753612864 984204051 240908545 697986497 673650710 317396521 758090563 484906558 108512116 985652654 151100903 287947833 585089018 860270218 691543169 961922491 718239993 819019445 650172913 204896236 951584228 969950361 393731202 176870087 441067045 566139699 809838842 250592786 689101314 684627697 792207236 818474400 337253151 992159850 122686759 820427289 606608906 696175135 985112927 340797592 417360741 144710143 79953255 523580680 752795004 63057365 871879818 53002844 616415205 749277859 130981350 368890582 501205364 233687621 448018780 475447762 818940357 699114965 82839312 874514376 47467153 948478027 707695776 770846815 703975409 168322704 116596366 202174547 900767936 552798997 660657714 112064876 266311974 385884410 252736909 51513549 916899431 314209232 141523391 611215149 210326668 842858572 169294104 186408369 385833636 605350311 788365055 25676895 43078483 979230749 89238582 618752900 446741867 457497204 532909617 855267959 902682137 535194597 203358551 869302104 151750143 96495122 159776128 565943375 971173858 11021275 329226399 894361162 715028051 257888170 43195339 662735031 442484215 188862660 730160188 133381678 746527848 919779183 561392340 349605050 827009132 117248535 442048264 573255138 844949638 634772164 25678562 28425264 147369052 345731662 410591569 544488587 992184018 619472136 223843588 600067508 236776416 463321422 183277908 702236632 76844146 889196962 598692352 889163827 95699957 852605698 121601070 185187648 917510583 919007181 966752931 72976739 931282625 613501695 614002430 922348172 364465989 541967398 324927056 346212928 203986301 975474329 356508271 667261970 826252725 521652644 525530115 853211455 780748989 359344905 253154867 713530581 305393885 530950980 554723401 424014745 860813346 699129701 16706084 570305235 344579974 940792887 303781866 896996477 252398644 498811866 536163954 162406641 82244043 416026452 684505860 575922465 53925524 635877412 992294340 23977760 928382937 82368590 83816456 531327364 595118827 762768445 892706737 661088394 571710867 937980492 953824606 994550189 553238583 489412907 933989052 686531468 352231652 857390639 242202900 151284270 794144677 143401446 170093329 739923187 326494018 32394001 549504755 182392823 741175371 989945465 410181623 578368110 946155700 378321047 402976341 575068372 968672247 580928932 407271069 148058763 715141845 413751552 690601460 480723830 897182402 774661719 141752991 522732566 842543810 668991286 363245195 394403297 314055612 258703810 612875468 113172487 298814085 651613498 361155712 469420587 319503155 531623239 665834667 679642157 55355287 728867 470720976 872730783 686237977 764209087 524857635 632054383 54168692 1179309 88066245 672619615 936686833 312501770 222863539 228441598 388419695 178079944 770627145 481192096 539761859 407341708 720616689 899628768 214255906 201519245 761093222 835711436 554676800 105840372 501368017 755916331 129054342 317196384 26456619 104488228 364266700 751044562 401593341 733156455 115049917 28766539 307076312 269587650 122301690 237886131 386880035 908556038 448787018 101156278 192212399 35085112 758509074 808578970 573681533 390363653 335847445 257804544 133045038 845766595 613664355 109193292 876312508 36479385 971064702 389525743 529286748 420203580 934905571 407276828 89321664 251526131 65118517 284768912 786721175 873597735 478427540 693741122 904584132 951298469 278739587 441510749 35104355 842714980 149879895 975295726 524384086 91683374 534006942 791464350 797482637 98749350 671577411 416006790 240517546 394550240 693880582 710989246 94261692 448825956 572686539 125457836 232704127 87161003 256655358 378184493 935436615 948295728 383792109 583462255 653346949 518108884 57223075 769390965 372096760 848696593 244745328 476187688 19290722 806259988 409187183 841004578 380330716 536328169 643153267 156761172 394746748 517543181 185565557 723691532 515407314 113219789 502165620 838724605 163987826 211255511 326699512 955464247 771620114 424898713 111098896 806129614 893711528 189120527 57430674 878481455 684605254 145369581 142099898 991661275 595990051 840065749 788749786 884342332 806253132 292846299 882926595 696083566 673605631 730999835 928358220 904556091 923686529 152701464 839533329 575680656 807333239 371814872 422862217 257290330 964060613 127885609 810625425 435782844 414241817 571078391 112721317 937717968 732682570 572235284 795909806 519028425 768270343 894549852 409539850 39602027 885494634 974094888 342834134 736355688 697458703 829548035 681923630 970498464 94561951 840996324 891791550 82795546 477038859 397023635 871555871 843875751 181182327 22058827 956206520 866876068 861461822 686317096 594550382 146333134 972305373 680776403 382688565 10596665 524346096 390940656 263850323 860062730 440551774 653903032 169859820 640803124 530486621 375815398 924684702 938290191 227247807 315736089 165608536 9025046 776301082 641730025 376100654 781594567 721359113 556122952 139740755 413644547 674586315 721166442 695061680 196485424 551218934 832999808 124498357 181017521 272434478 979506433 788584552 355401824 65955684 984752746 816613177 154628692 749790095 409265245 973773345 360924593 55199650 816220048 865044598 657747563 575401201 653685665 161205248 44257209 718086454 453685336 337178740 311203444 598914455 576392247 372680610 354530561 877307192 367896738 812793900 223847001 831168948 403250278 497398470 112452336 32662975 236007333 335212816 101845444 260819233 511689748 380817542 163391930 157203513 590637852 958235354 221476433 823670909 255534496 845347914 652529507 744653286 113740188 931376506 63122759 880179022 285073497 909227832 406523549 993463599 196259237 313108954 782442024 949107954 174360311 238359883 740182160 654284348 537585286 459810242 910920439 22819522 2909238 739702840 769667467 768595743 796249411 133112236 592689265 364459720 317153773 321058073 877717486 15384116 588081223 478931602 239927777 360762716 527258198 550439996 770871651 525080691 957393172 56401626 440860855 809311239 157889179 152732506 977335698 432060112 186212891 458991 900046678 757072164 681679875 118585180 94089220 497089552 970255679 207883668 647978942 528419813 90905169 958659077 210151076 679140099 275772163 931788457 89464904 83543709 460836783 262219917 585938066 808631589 241648086 77404450 930403120 269368906 742609831 163293532 294261545 779508668 440140613 552022056 71571383 565038938 136793339 845569841 329958232 777888030 271474141 474279288 728035410 478833540 769003228 459470192 522378097 510030979 882345192 325969191 550043636 54675517 51320882 308951343 819001336 962660638 44755256 933821838 826144166 967627524 120569943 342105196 535394735 60329367 639717461 889286986 925956341 823238871 791110590 51982416 233284249 631061753 804443811 544316735 952604081 888414380 416880072 207757576 208933903 311095535 410909875 170830434 376132795 805854522 561773666 287700698 374297305 604075082 61190201 156785130 712567963 122557891 735537860 751838216 682108429 661457527 145450971 495002456 632074589 423175058 871836149 801599894 990480013 727345826 669115634 394961913 301036885 385467842 744753602 727554930 685181283 551198639 741389157 908635458 498429799 479240521 934785637 771260287 523154774 886280441 933658062 455513000 487308014 114266573 99452903 394874401 635649040 73291496 876908381 896795527 111089412 910701294 529180360 88912279 135465689 271544647 51859220 70988311 27025498 350558357 319864815 400832836 886771712 921146130 334171524 224835572 852353469 778848641 216062715 480889586 336506764 377286818 503531747 976849879 795051630 814248674 91151393 682738645 25812525 882943892 478891198 52521961 205854194 251196591 90639882 158135108 133593672 998031608 883728072 80446588 64859172 804271790 873686909 363691776 972564184 404118201 477599498 877610293 522107122 657694138 17690812 197239608 732124308 291749139 812567589 333710373 35508378 631550306 394581517 318183856 984110667 708293339 271219981 605920126 516096295 893081403 375132543 770080161 351977836 79340516 686779930 850971146 325028173 752307899 213475031 968162484 624256565 812810342 767931106 10944361 182791786 512345299 571931438 670726458 884836040 700023263 902805167 332085834 624642491 311709151 941413743 392629676 88210098 240797335 87334675 562144482 170554446 31174482 569325049 152194175 427047138 583885557 985883156 845977786 380766167 225657681 654464327 691820355 931940426 728950875 505301221 930260204 689590679 435096887 521532449 602303772 811415066 732956437 506932833 352296112 759421164 921291922 358982638 217401366 421860484 495886031 910670554 508207010 799846985 591702789 512343055 2804267 441229117 671661142 173187242 281165717 980821000 330662927 705012064 900055819 884428014 270932874 793563739 711716662 905035018 528157084 931281601 664016658 478360275 296402069 172337956 374130745 964641979 67939287 549124928 655685363 321361219 612300270 531058770 288853182 479169487 252373383 422241803 860310778 720401965 776773932 540163795 188192638 103133977 768322121 525464895 178633576 576372976 667763274 389596748 536640886 831636277 542636896 789642465 158300523 316514209 321029265 534082387 953954302 161026670 750296500 367711817 908954002 806823251 416524337 434549948 395115069 518659033 965538605 52074914 387846817 497489870 181763186 268544338 123319883 990858053 29625888 557999718 111973459 479638236 619811626 776139170 399920480 355855340 484138736 441059512 589141023 704945579 731558360 133138641 179628973 46178837 485344334 312184637 334018053 291566857 289834249 318611602 93405765 314464267 120617965 685011806 914716932 652766211 489183492 954471280 985654711 628647213 371487203 750758019 819327358 516806772 79483600 4159672 989655286 999129415 770408088 21129698 754387953 849523176 107505305 318224510 19723867 663472645 663534347 841586670 306249346 731760771 558196031 306149993 77492129 331900529 587492447 33521898 357614578 274443556 318206261 679323348 409192709 917172379 760758589 572654241 47389170 164105581 702225959 103108599 795020518 882584614 953010573 279346309 418232135 115217584 664378213 587277918 312096947 246858529 114483687 106141550 918338492 857911925 166749402 115297291 73537338 617801934 662639045 918526545 21035829 583405646 126504534 387883196 241959557 835280996 11870400 967126602 637514746 769149516 463951195 254682422 175036150 500294489 361233832 373735446 926025600 584349722 495355046 156408415 337054704 636682133 556900017 855182602 819319181 739010298 502020465 936576344 70851356 728824167 227259694 989540159 304455044 353074625 78368246 973333044 119158878 789131236 209740283 985870020 907143239 768926277 949073983 40953361 75861428 950360876 823101272 632962153 896418640 508065817 632786943 233461641 604620545 793527630 548570352 886298603 182170435 927819920 520289138 655549688 682069490 702131118 435360125 715191461 300650217 198491932 478069566 880532625 106672221 56987139 330311578 455252750 256657911 826036150 718166842 71882113 466728457 981273798 662161422 184563881 824943888 952592426 807782280 3114193 976168006 972608658 527549915 971697881 112766009 76466094 630888129 40560787 222978169 135498108 821190905 146149723 232963387 188861585 251550288 421941127 658394284 221531245 585411610 647347689 364471491 362948008 556425991 199837085 324589251 760517719 530255473 452593754 374137852 341135974 252525890 905964959 415857605 769347224 632682560 854926462 649734676 459147747 50156350 141415155 497840230 238235677 119193207 479563181 373835473 993796410 372695497 387966602 331497205 841204412 390234855 352230486 219315181 708218776 700070906 972114936 81238683 348100473 201639480 723682568 476676589 573229603 702287332 401077983 911625015 722937635 15205587 289800543 181418049 389185163 79431661 86154316 420646320 573115869 786336023 348897843 441075207 790547495 458717013 86706924 177600595 459480469 605371280 931455359 378698710 504367007 655898876 468862243 363196162 798771954 130626883 515387048 784827079 165085993 228371261 916322581 86305757 104653464 901302465 520552065 387755701 943560838 551131136 738657887 760141988 879560901 766141931 908258640 270994946 257840963 417121401 303898292 651513540 61085933 605936300 919319714 736156876 248156992 509981264 365779693 122268355 560647896 99533536 240266272 299597654 274099394 65217955 769229682 725674484 724667567 435373842 537682727 882438003 15249995 308163753 739056842 649437840 417229425 526073641 537048493 209501571 108926598 629476113 379372652 366532809 455457325 456596051 819981441 568175733 375300075 484006219 627151976 195889375 250563898 226058147 872350563 957571664 50956434 611978025 188974888 57199294 53086747 235268587 310811982 731511819 67717810 777615561 543811022 230122440 912139961 634329591 972837674 680346509 620980634 656449378 760656506 731461737 504274300 525023830 121446673 429849938 801931517 469209358 907911683 500400464 130328459 211932761 329095899 525080171 445443440 41567353 394569559 679968118 486120989 15883976 110759859 895832754 812022827 633949956 966771122 869055918 919602514 551112380 306254338 601375315 692975501 748575776 29995477 407033245 132313886 826147491 812442312 270454604 529710841 707996933 110133852 646002735 293988984 243382297 172282952 792809693 786160821 686616577 373541985 506382915 298017236 474558603 493361313 782339064 430885587 741978093 33690041 548345305 852369479 590051035 896750091 465628958 747436712 453238203 190692425 105267697 258167168 891687550 782476215 260420146 635392169 359516647 847218695 981567301 773321180 701755039 23464186 213444457 948765776 902452071 938148956 654117674 445936076 271630668 898819245 717747630 55665155 418168837 979676406 959943165 849990050 362524845 24751762 470111174 847437242 205360488 181994034 505131367 486934839 193566544 609299796 744512871 679888645 313702705 680338194 895820590 923018442 980432169 139408351 389065134 110631622 808305564 880115436 690955265 19760001 589987058 231372760 988859901 648252854 925496820 155841751 242412299 305609429 514282741 344138146 559844764 91183491 878696113 740537911 487480140 623633084 408369149 418312869 994019666 174387223 287187355 424760966 136381592 849152533 176457787 810548427 864769036 660677545 856176370 140500874 573070905 981475068 959607765 635178283 362704264 885733118 521613175 233936098 661141170 27777902 72272962 767111551 953203292 14965716 720027828 910579095 9345614 977473113 443224209 7849231 765753620 659877203 22592677 527330572 412760329 403744899 570447391 836290533 282522743 825323787 820939563 454203740 3752414 178675300 68909233 871255717 807922650 562512634 3690176 233962669 109233360 656894198 860343550 814793324 892026615 723320971 422704727 699875893 769280222 527008455 474685975 285704758 939696091 486384681 702533416 739342010 167996438 403392815 723451604 785145304 397100731 43580981 841077431 324073166 235905434 874189775 297009758 948945298 175605284 498601874 750190752 457481953 655311563 790188619 499109824 691819038 378763041 831558172 546645148 808139748 349969803 100128445 845741720 260376346 246572138 446416461 964762724 900383577 656723943 952946532 81845314 515036118 2121424 581770121 243454076 273092224 237254855 960529079 738135258 530242312 68051171 922524517 741187528 753942042 740073250 990922024 890719333 472405565 889060696 968354736 156909086 79201107 678491583 23461228 463523523 287074594 312529818 532258549 64696425 271185723 75105963 113717418 785302639 930831730 694430529 930681798 113260910 176055869 496184595 891967081 742440343 81358671 650368351 315300082 68321406 910472902 609210743 539453703 787970635 239986816 610792799 193055292 901754465 269256981 870714585 46908111 528125290 980026805 599558088 706854355 172749271 519198045 581460490 321527221 789001995 905180407 709660915 146104943 681382106 223197391 468270049 321574422 960262969 697639474 496080487 360428607 346338344 256343146 465916020 254476521 925572110 900985747 772202900 228360779 342431629 871360931 232165638 734494425 493912801 856885584 980220830 753172198 790634344 869982759 526744347 818870586 790376814 480300826 907238529 134766143 165061904 75362392 784012105 903678123 814347668 15528598 550393636 497557657 364257332 302826954 686193206 925943389 395085823 601412262 608929369 227563396 846919526 411744607 11321283 146218876 800874173 49048662 252554382 107090446 716168376 215034331 646902990 996807915 505414898 636456416 95788862 573606035 959314659 105156849 522856357 551113499 326822200 660303720 915983702 61942238 966621570 439273397 211595324 414726556 175391777 890543427 281116731 280138349 288505926 640895440 631657877 636810657 638879673 35146579 558560406 835051833 141133541 805538628 964273586 511012819 261414391 862535103 879279923 119773095 848241715 882276365 11522306 154675648 660466280 346614137 846437630 386513561 40703974 484562666 235638580 501797286 351633874 430010489 120118033 191264692 765649221 66934818 101007078 385982387 408428648 788540945 603027280 269938564 610487263 804953700 653258154 305833497 345649963 515027173 945218060 142196139 166876695 536225311 756090047 880701704 748821728 474156031 198406735 513872588 455014077 52000094 488110102 373994839 592501743 761400498 667836039 626085863 147342257 95701951 195010786 778043216 347459903 934906546 912234396 634068817 350725487 912767385 663799301 298441648 586362371 264238409 987707091 39162511 432952582 740434414 168448752 886277990 920969753 964238510 240988044 784778678 889411965 701913774 640309519 325565384 859524154 126742984 469574197 255551114 833449353 235525454 641988417 21352049 502653274 845385175 850755471 420455249 852167962 80456874 192247304 309720847 625085409 216411844 621211441 107819179 332466147 495473408 416428629 707022022 409611989 870152561 538314474 516892395 864875882 144037009 462105908 162857901 833575162 451002678 240520208 224302448 629849606 280329725 940593823 459640250 841084684 748993561 991615222 535043140 953127200 691777785 271389407 946336166 546465109 789804620 828747698 104302592 621203771 278416959 661981334 76511767 431603969 83014412 353546858 191284260 247728547 316242104 53901721 814462366 49230297 16576038 830335560 98741959 813142724 250121760 499843291 429343764 113369576 169838042 611213553 140405458 129895953 652460260 338233816 605975697 612293930 441051721 111806096 571659280 169023048 76837493 831505855 430761721 357992249 142194120 173565460 998058407 949385801 733520405 645642731 585196737 450161362 838731858 264245840 725595900 572512021 14312289 49591507 215795233 307201072 933940597 292729833 38865739 91927837 862419974 763484824 756956793 616759761 334849504 191594514 915681116 616600373 343663682 107159471 233386368 37265724 951318458 8461408 625863335 240030324 390439043 347485411 168854489 892369708 54962955 176328501 700523108 496340788 453599131 941872668 665668729 338646472 295504758 769233195 719909693 903090745 800611070 932020208 791922172 959416439 763570837 447826093 851400636 401727711 447946338 760346525 318359115 996673865 421749314 694528358 845525757 139822440 301478246 901485161 220427826 230999124 525787845 108663566 554010093 913603374 776615181 863298652 117179874 97802436 437634529 124805342 967663405 725626050 905090449 483608474 993270896 596310074 800016222 638475767 739562017 188704564 280678728 138171200 914653019 207684352 947750265 657931436 521171010 81376214 595006610 400846035 470436394 715945939 558487527 214454829 445653416 429466119 798385379 122013590 294127602 838355993 91667079 201063225 682948915 345243579 629915311 978587748 663332849 253625143 59505545 814968431 268320615 597885694 340681496 247450275 245604209 798368432 235546197 323251993 719396382 297217105 344392039 170326275 968611697 370415283 292567251 454528676 18213469 12282069 676789039 355002935 159324228 251781251 292467478 977636558 439546651 85332438 566965039 306797497 404146178 542699222 927761024 157434130 316747445 112234817 125435955 184408377 705033776 742182411 727999886 401508695 963844025 628427304 797375737 591848883 878751117 651306687 856588974 120120413 487393198 357672437 763030475 576141314 913096031 164722480 609322624 648927874 430014742 819593709 90893967 88047287 380210553 478190629 115595600 171455815 250494172 15667567 13030621 962064048 937994977 6498910 782434287 795635081 6617759 825608216 790161068 71838212 970721607 980571508 805530649 895494454 341935998 996962930 682428590 38997075 41367505 969509100 173130691 739778752 729096594 506868448 607648867 383478775 422126972 203777466 846946502 430689137 513898358 228122818 562730428 441622597 469358732 879245497 682353847 47972066 208647526 555147302 675534818 265352472 643311910 163997824 438660947 798114787 814182270 859797135 899791978 659464392 197125402 176978939 430852160 607049744 489405201 858441310 845392423 453295081 650609447 28152893 237802382 938574299 370371891 609860751 366185595 241832427 302535672 375527708 603640267 193110580 125150196 349381682 937039129 60235376 353663781 251524398 35140263 257809172 605886780 922662202 742980166 163463994 996864133 616403972 213029695 552115757 716977899 603311190 937095110 329701191 654729088 940010234 332613902 558280200 976533190 455136184 446376730 907821981 781078961 682033570 931516023 963465339 277699824 477252250 716591543 940268479 650247091 863835198 760488383 858787941 436917493 214808246 803118569 5610763 751787181 561191134 590440894 959534173 379830242 996733293 254450485 779992335 112835999 55382204 178007083 276903725 527774033 453183608 895335029 873784219 538851514 274195058 307192404 787054443 917146627 347444883 989886028 551474304 200403134 675635454 874409304 746186922 232406162 429686270 440053049 384853418 803474073 729637771 885158139 507884236 510461779 658076295 768029529 685178876 569784602 475165910 521532276 20065707 634133215 680141369 529280861 634517785 207746410 346333661 115695752 846878238 68711958 744943998 779801503 984212077 884597965 617366858 692239499 653327792 944459765 135230015 126156116 186218943 819129112 537910934 428015270 724156820 298997744 811819896 441422049 12355781 345523730 320298447 999998596 181157342 377000050 812753871 873146980 635886580 158153324 190888404 76777643 850405661 506814823 224144087 255731319 167800614 259410221 9141912 822435374 907580172 639533381 388664842 861921256 550973893 547819394 282303301 541385450 157629984 316534705 286179836 671767783 357035130 21305151 538487227 572466560 356786055 194718944 661688064 377416605 846934130 612799849 955661287 959907102 877836196 612543513 208567638 813826721 612117641 805531754 768627819 6301686 264827201 146498453 348860361 318567294 527006427 67312250 866088252 273878444 430982262 712413803 463678379 664554874 899804518 950673476 387149218 798075938 183537353 684902196 661850610 892553006 460423647 942064977 461060815 843144318 90391632 683048924 15895829 10790493 710393938 542412053 424923359 897148554 495290989 511719232 474698381 14664262 703351343 126615400 154792056 650376984 937881729 905617674 732944310 680585394 714391360 830683216 875359360 178421931 381598040 712184565 799318699 841812473 661936198 431616440 369494456 981782247 21546829 209326634 457003975 714745188 179894227 889130242 714387499 752484172 894228698 888643467 21575544 205390492 316703995 980844663 715618778 701436217 263499658 739250602 229541216 619198109 179984557 188753948 373178869 583180472 404732852 268453682 554576573 618715349 597216372 458568793 646009056 342144804 625662734 107335162 393665894 117205989 961530951 516646145 114573932 532184726 885611429 18010197 519765140 998434175 820096713 558923636 58703464 10327627 819426800 992262868 864456550 428140301 759974562 287116427 699899452 594610585 418701019 830789484 715929753 368663112 839684495 759731439 28291429 198925997 146215782 333146396 965546468 390998987 608155540 572202484 948357385 24858861 738571348 628586048 583494934 560997574 661615845 185575878 344004015 436717448 406792547 676893140 660390549 730666130 711124928 817943270 739297962 7301386 95948984 162786418 775346084 176356165 251572444 370492322 454699317 389414418 377740859 576469224 967186573 759869155 79632821 134731194 498628993 77206482 183264316 837408169 720751626 749055644 945568227 719149021 122005537 788908654 563952638 413363520 308097013 695533104 26833951 978493810 944749581 206392801 196657716 981276767 297309801 240589570 364011648 147810264 986151433 149202313 201426652 393285509 552982068 988328457 397950393 773033144 261565706 508657613 293931052 589991468 803903116 378970668 768306074 213838666 45271257 114808759 319513517 198266494 754531078 784801564 715683013 956497230 335643034 975602486 43066786 611926689 536999874 917015335 840326599 89436526 119521903 882371964 539898435 250937627 756545799 887123363 773117021 380906661 298418387 239485412 441168543 566376384 205854207 328152459 786165852 786722562 286585001 941313007 617444244 986218517 440766708 333060207 363993140 352915 761474071 533111950 421088287 616889478 15645284 363059751 667640025 685800438 525277359 410536673 801801946 959269860 848995388 359992146 729641409 307807262 592431742 897971292 904403874 491283101 167100729 710742238 361383595 671226844 239933056 399834549 476707250 697157511 344675667 608750298 306978275 640093678 131017097 775865753 469784915 175934358 641827641 733794503 144322919 411004638 562048825 378260078 484507859 654097648 724741264 932607091 529965126 446490741 27973073 838006858 968335698 95179650 799759608 701103019 230792397 804555741 402284858 271104169 790724324 644383665 594436104 658959771 919554166 503183673 269878986 391431047 967223457 765157044 516792082 918534929 240933362 162307531 881148234 766475916 486900845 600438241 739122364 314195188 857748672 129429683 60050408 502514413 835930693 964016524 395079237 520590223 967330829 828342698 606402802 404764847 844753465 201059521 324457996 237147468 76547761 628998967 47146476 176507433 200415841 504738608 49213596 813253824 985124280 871942974 940840390 793790189 159001483 879602845 598531552 991545970 525835089 44166137 929465041 123938110 684134592 526687987 620162678 455699587 808693834 637622341 225653281 818207512 489926758 918924509 564548307 917061312 696740725 161348309 587595099 354750582 774039094 552297139 754788237 903476052 165183204 824786253 468447998 131213117 70641767 276200941 620566897 870627843 874912165 642265281 372224991 386845397 892652668 115680542 654670784 853064561 820160887 318624394 571065410 280476433 337410447 129316106 449773789 258923051 131793601 360412401 49292991 521860458 666120445 323191536 721501420 461747146 386521530 869029889 136706192 535309343 88666549 741863181 24167889 765920806 535135163 749322253 686080161 772560617 68184713 738383961 60010039 41052959 233008370 417437264 222786890 988531160 75633903 702930849 761699429 745608160 725416308 899373724 111858464 156372642 439756808 696451272 665052289 388481832 395160394 248047995 402626053 689288548 651253287 468125019 223582233 397161957 675224752 249887802 27672290 830662857 655455986 555620247 439901730 891421558 676326997 422611634 23325605 739107323 139324053 418094365 738613362 634023921 148748251 561940215 581795789 860430358 118644092 431960333 773264214 163513503 492689635 528675835 859578248 273364974 266192406 218886465 240429306 187602762 767954613 42891079 148006877 876065770 827078441 452381854 244993531 832089527 739767329 423268795 309233965 440020925 788053410 195610396 411739947 43604405 301378177 188645384 25340715 767075360 67743873 592227870 419813666 805160434 816831637 607109118 479908717 366637947 889371253 45080393 886493015 992235410 986209359 436050494 653447370 428522901 204646044 721072227 718736462 504882750 750619878 24304352 908252722 84560672 847114185 526959147 730208314 322114615 319019126 101250972 288885380 198881630 76203401 116457347 134054712 897738752 295234177 730529812 585373277 66545043 614034914 525360661 757459914 14073544 297510251 253871071 31470976 714064295 936843926 41738271 679965585 228827799 361684889 943732179 13964410 311876472 307673531 412927435 358598599 617655980 19953218 309452705 426435927 219246081 405199867 727451046 348061162 551495317 766732467 296254594 447766356 259186529 647523594 825902884 781061748 854729083 366639723 219618273 248962434 623149674 932115574 708442557 834622927 496414137 368926918 646567271 32198256 410867426 927386345 891379927 890289373 636396963 589745684 768113135 348641289 217039471 681625586 466035838 823079307 358934728 793712132 520981594 68961889 222618382 701589977 909621073 278373870 954807332 247334478 509306830 800699551 23708776 488050760 760924635 758694469 314793767 80992012 734852932 880347688 952600240 714399881 163479779 670290473 778028894 38223563 263549072 275756677 405427074 822405986 101360905 541547955 273277029 563142685 952644526 894639113 311063406 387871789 686542992 384714792 38824767 999797608 261321784 76150198 507191212 561753605 222647284 677365670 298349332 139793477 136622338 926629387 142076657 906549904 68472792 558061692 94508160 157454377 484903697 46072393 352588009 517833402 187751979 261208891 393513468 916529868 37298394 759199085 297443382 814793605 712716750 235615577 672572540 919029870 498655367 295864596 652260433 600738734 633323958 435830012 898504363 104308312 164841948 190169369 540363766 148277739 425231732 972571888 835152832 315483998 252353234 751511856 56706050 183343977 287587636 229448790 535691933 851751793 370895992 13417194 869354266 623667664 388301172 225888160 413052941 439001030 593973376 181149374 104329225 288604414 19008117 559969278 930594211 865389647 757968489 636604100 917272446 813858558 695145160 1997793 105374326 488086154 694236926 377310736 805427263 366810450 207889730 397667865 570534481 364412067 696166008 407519748 637594035 74613878 796058812 289868027 979425920 202073536 646150248 582221279 826620860 575236004 642576797 162037163 680700424 529490697 451585081 510103763 296758943 286337348 846706869 165709325 459723050 71901921 296849635 96974482 462912031 131477603 338260711 607825669 233951262 156684376 800826264 219226741 77447082 402923324 708636441 264279261 613805684 107516850 319560161 566748788 783154694 253994243 401939075 710843054 210272658 982376967 177504563 579756637 816591086 236388600 885195048 506805636 685261385 452638790 740725510 136373864 270752236 406037409 755610377 931860077 562771714 376103013 342094110 211623583 361126992 924668377 187138192 81385262 79575893 401363024 777431269 912908553 299521004 482332187 765345558 286240301 792055153 981598156 702640661 811730885 168034563 971038942 341596282 607091276 558600548 225508094 416086487 628364439 525557651 610403585 861925246 59311728 742787969 523153364 315013509 321116898 939886773 325372317 274493619 680219131 874689719 799235679 389210709 345929830 594303638 204078779 659192079 280982420 852606851 991103331 971434757 155086279 372294704 424792300 481515170 83249094 333878264 464362191 742356983 411964808 74358372 919420346 47885510 22708073 177296883 526790138 474871804 396767855 897000861 246543614 932131695 635717525 334705504 830477150 782364950 567519028 996699721 600144286 848441520 889022044 918577895 654246454 653556889 655495453 137357760 261750576 108161027 11988230 121242348 523924693 328885702 409484370 326070356 64143455 887744656 356623417 361597747 647892619 80497266 275076933 64041883 411626652 72836846 10803685 191991859 915936444 12952964 194408550 812956829 720935991 942585310 55484527 920887402 895040373 753630517 422918214 867225279 808580487 217263492 396207881 754913233 880227991 788764087 672420062 330993281 31522252 153463650 806108958 38529858 474666477 450477776 902055711 760267167 184808912 877123893 207780970 393895133 519280815 802154431 828180295 533943004 347774731 59299322 888051203 6293734 642765849 502643093 218997003 632069602 784140638 925208464 462530502 490549080 108319901 413265695 688188810 708473037 952247345 914315586 447973412 949714981 352294440 736950875 580404651 171795665 208215305 795571535 419629042 729225462 717910756 257396187 184071418 761758114 162613581 981331742 526707592 276788372 488930102 618352009 909047115 915608910 271684247 978454522 835505640 401788287 117435644 888270369 580046632 921307659 301343507 882088337 555599328 568917289 155828475 942005816 142455206 92541067 983708217 125221247 879478818 449098542 944141690 29913285 793651507 212044617 955648836 36583487 606924999 181882722 674075399 330956304 949193311 51551451 577778843 200467349 467894335 779108660 170640847 779673087 98337834 554903067 560343834 197106853 260211591 521054204 580756834 184490635 130655253 326627337 921295258 136746885 481459146 17247517 351620443 296939932 937546086 762227955 56675005 117664660 827683740 884423888 799056356 923847557 979089591 432434225 355384159 888070695 184081248 670468459 404080844 122352788 726173507 60753958 950899849 262422548 220340984 407597652 481180445 617374968 479952922 585775110 922416141 260400329 854066085 673905009 919123033 970990958 375563867 586718773 262497288 121080721 877898132 798717020 202011861 480277257 556375442 505671414 460458684 690413738 767249298 856502450 724983994 695739712 602169444 397208674 233612151 482175190 853035654 714049034 324132416 818262841 398366857 876730331 788168665 512241319 318423708 408908000 482727078 303031183 637058118 834025046 922487311 929712053 306515754 524211165 548209679 900319120 692976555 362716115 787524313 745579839 848137372 989749042 13355252 247291466 266401856 707556887 226126966 202160436 475895184 525144697 831841140 867054287 137559379 22873019 453169384 369692170 136939056 705714664 464184805 391894955 3182296 274787129 538346849 697182746 192405927 486402816 214869358 608590211 643871659 886653723 777934746 478900551 563970897 891324125 721365628 570374117 828341076 644561823 55248485 181869322 332622470 440891211 484781949 319870106 674033571 871092060 867549579 151958132 310488553 323954325 625565674 990823709 574698335 947173316 269704034 122205268 821631690 172986561 301212068 480083975 983363819 683217273 21891690 947870570 75302519 473736854 4014370 856482271 155102457 580723690 988197594 119947907 522965579 53916266 231034270 490197749 234256729 63587285 395650457 233357943 497526777 677837841 635515505 312996827 734197030 466081118 878380130 277681078 982218016 405026652 65729588 644394448 360842194 519366768 279137937 161232585 180186904 691706360 515555682 307203147 563855299 11359669 286931459 856545091 860443242 60631802 309672550 339224536 651369456 115828326 204614755 663847929 18964846 533790643 280789351 955283711 435677943 311766378 935394327 994978156 338916084 211604948 44653682 732425994 297263207 591421913 186482512 120954352 458804562 684828498 66120603 535183023 614992243 455912410 459706877 669844565 48021001 800405495 304347013 227600416 409625657 970374768 129112295 58082780 492869670 955901005 951644712 317083431 966278080 269910150 411024328 560457217 699671539 197737116 78611481 666908555 608603884 238417371 754207525 545770062 830552668 772587678 203383308 233006093 524631216 337762545 40892586 209773366 711802343 62335196 478957497 677166619 761810021 370742890 225372354 525068495 549166941 510800272 855461332 964694700 715674878 154211298 733416962 525522596 642342302 600612915 176564101 656913049 672716093 886357889 816674604 682385479 404255586 26108063 869965673 460616119 58918121 774284108 460814374 306860185 339867436 764724758 812909257 942577730 195763085 747579688 537257715 20017191 511940390 225652371 538523963 656558167 264177360 833173783 277596741 785624488 810437857 237777873 458253280 679252283 81023748 42813704 329616712 264334132 346858164 577480692 911301872 921937438 856405602 690263006 813777845 464772396 881456922 325856208 264522591 536896418 265458255 689141180 483918498 58961825 987389778 117953592 36592783 777853182 30042425 214307390 396159017 93432196 251135059 950803778 368451499 450280192 73693230 332737734 812067706 644320324 650065689 926633305 490460458 982311344 231035882 259547276 168393107 906698961 925810831 744597665 340459187 342286416 985629055 454255067 112401618 109605616 998104356 190370620 427540507 210675082 364154315 317049314 389965384 122951165 811995231 777642871 634998957 406081236 163387838 922810852 318251587 207344730 560961668 677059405 486710674 455423207 969322235 561034288 257302618 996601210 212974972 687892961 716763034 941904431 814220760 272665212 417653467 280799188 244492596 174130938 250874135 596366455 470563026 884186664 559631637 732850991 677690447 915332262 559019059 967428595 921124239 94327691 351617071 243399456 847888958 920048843 710232307 572242372 161715098 630664626 403700380 381981398 27989644 109654374 485546556 931295620 11288654 259401917 322603701 316310985 777853139 56544296 628013279 40241963 238323021 278562066 708006312 423296503 890592934 525992532 873616662 492369202 506107921 195264708 806791236 945822840 527234963 387548597 962302202 651864076 399613085 830606627 50083403 309769782 511847064 992717493 215254144 263954051 339415178 979002927 571095922 296343320 869279804 621166949 865581265 433301817 794693120 127383852 557270828 580692161 885987643 536666662 153210120 168129215 614881226 605513205 569543710 811901419 698337803 421259038 777986393 321888341 293938798 388519598 310611885 548095289 566589034 284984936 772344386 742376635 918377045 327071670 172588957 428537501 303467324 288788882 888577011 510061846 336903720 264449040 14506748 694112519 805735096 850195438 885094449 951224045 960604934 486402603 227067371 592711438 102218100 578743402 432980216 984824068 5552383 932964316 787350920 766025913 139819992 213992661 542106449 529420300 729709818 535467558 156640512 261554465 314906655 94198026 713116502 363298654 360688252 468324510 533277491 372712831 799702473 391244521 82280119 155585903 873096165 628848124 767938373 191671149 977699910 243934818 804939788 881431851 538139915 398583933 712707819 298968151 691534472 675598625 12431568 913708821 574074445 327123549 320236048 856427508 397611706 364645581 863345594 589469489 208883537 373089843 118664655 894303831 95840801 691005875 221844214 423517407 289090534 512198753 674320996 626385967 617278860 639879768 498364356 397857662 808006875 672715469 741186449 828465933 799970050 944516183 480892339 631519345 49639557 936928311 510879 267802233 270934050 774649008 837329756 643679816 569918771 139706975 44703314 617155246 743121807 82901777 126425585 930425508 179060462 395077263 993427114 956040682 872422064 828098083 145184942 744007685 359974204 76180567 621818533 781621913 949669679 149415802 693952938 891140216 129766216 1867499 404046930 744105600 542916856 905903975 664858629 339759058 844093215 156397473 349002469 939033987 104883771 981064470 564072974 793055637 927886349 733752664 383610413 136974041 320446774 103337914 402396731 27195387 841188230 516729240 255847803 924496296 365767205 845390626 198770538 942275236 776571051 590005270 62743521 982154428 484723584 61672529 543885339 272756004 513959912 514514768 697834249 633961339 493766665 76596984 678599575 106231731 165761602 445099496 198952313 556526094 788266936 307010149 496002915 761543780 791171531 207425528 308766379 388767839 620532864 243712344 901985116 347472851 680891611 782816026 925601715 532471625 440597596 483017068 901581923 453149946 886471304 259200114 912947051 25567435 511754372 552686828 421973731 591020854 37875309 228234916 164932408 420590158 479004858 298929552 557557084 279012560 110463550 968518482 149738778 552697568 397592565 724561878 862439345 146033588 712614682 548465578 418564574 207968240 568994933 773488949 874596819 423768966 572955246 580398302 362208590 529653659 14898462 274516552 445935412 956139322 810965481 631985069 551226872 763572753 455942645 301815358 157986980 220178933 942028489 938931322 583634390 844403389 597598540 719328167 454433859 869758305 400234666 780730362 512449764 167619770 627093784 175106235 721207882 714860476 150688834 878811963 278664982 916400206 534195028 18330454 304107562 194070905 229055821 775087658 190283621 447582017 209667703 516829179 676196666 501945558 819182261 192376958 614012637 762107628 879209119 216125587 700167823 759016559 104152822 775578675 299915218 491849840 472690837 423001629 455804656 519255629 308426467 928424069 232189784 605298862 216534012 946382091 774548875 366142125 690306084 80457170 579302969 977132424 125413179 105867363 276849722 555770754 92520062 743758200 701513245 986168035 949644176 155303665 777103108 158452871 622145413 810783366 138125430 339601361 915857103 956678821 651837620 689056277 874703194 191655665 769606396 555395865 268896334 730780116 294028855 171895362 524983946 336632350 494017555 951162504 4373602 626630803 654242520 839426378 73710969 776693668 884862530 159178273 69792901 111837667 429461076 754231801 477153190 459959542 144500703 427205369 984846626 320516358 675884661 572135070 276402359 316734425 50947755 888949637 842920112 482019673 279782481 154852232 233945264 325466244 31321738 357551626 132867999 15106386 585311625 109819323 872531408 689241505 9230860 53026935 268144766 110385334 194064960 680915945 692511723 720416965 994872658 936424037 342617493 756933869 422613404 185040848 160926288 597147171 45748407 70360264 71734908 184149322 907142380 491611648 948856934 622813785 79810017 925658783 935885020 484896980 114691542 45339718 790041800 78656938 800402704 183742195 680076472 178379622 547487443 805281458 759755753 898177961 831649292 348043331 39936219 173234548 311758593 183438675 493910133 708747229 395493871 584564884 59601470 751075569 170592513 920395507 818104524 180582201 65452970 418485529 427913988 417187171 333238097 787954889 844332875 139360237 836590681 417498968 665697698 797532034 907381013 620978730 257449331 731261450 427205030 265156468 667651138 343808835 774513282 815331325 457277959 25651301 610535877 216183920 978314820 26723212 451920762 777012534 148972397 802934396 726818691 412529915 986422858 86272425 433677463 294608918 139555277 879548592 972429924 801239304 995682166 969538574 662175863 709529673 325307893 639266665 970757752 636562219 856271485 475713673 610193118 893503808 63436190 586377776 174795082 325882115 619140779 686155517 139029854 995025114 401640713 532682258 384142458 426127980 54214253 339441637 572006028 928557997 366393389 493750337 21284072 74142746 843289490 364554451 897231380 354639479 97411891 109925446 14352094 858457608 399125295 506995005 897375734 167765847 438806492 814396751 24855901 936427653 205267673 205926757 472214176 468623616 97845483 232304656 410984048 161524022 372501998 857392343 814547416 132166877 632820070 789283530 417285579 775547402 739590062 78560321 416116229 796709705 812715562 900045635 930770857 269523063 361089300 843741050 310616863 71257454 172670347 32415424 474395200 400002224 924810702 541603972 911247096 61793658 18425669 663235645 937518213 309604800 678478038 923454406 818965024 680721033 775257222 767247906 968774804 985918498 573842704 144111771 618936503 68855290 872149665 283037659 129641979 615476406 3511776 183600963 855980649 67027124 495012885 266255470 598197895 258782431 393084329 102890610 969972363 971254371 479437233 572226068 969762142 340154390 644294910 88839189 138864164 702320857 891211322 132202523 803833342 636444959 269176805 333405194 810669749 149645323 875952672 673511495 271827576 675969407 148716542 220996083 186032282 364735764 697505165 460784473 232226000 230372650 784549070 219827590 581687289 746930761 677783975 841509842 738406046 255544048 477517854 937898176 409751368 330860821 785705776 981400362 619147184 535234497 530889800 611632864 868132157 312754445 461043182 686149276 529457424 794037995 225325082 974685617 798814726 436404152 282569671 911706903 739365027 781774288 715644702 17769197 366421077 253307101 399030004 367445327 344860644 77495097 304263155 594078445 390908106 591523141 682372630 933198682 472313580 544123042 503626080 123745462 522001515 927289808 700735403 646300030 79447861 526240847 140622692 788356870 476057573 199332348 974737217 729991401 571484321 272460418 820802721 230889735 202269513 816797622 930489706 964820029 707528591 35885345 971868973 582882977 13495940 150393018 809253336 601536695 25166798 830726167 135686478 448697297 322262840 740858826 635514169 964786758 798231106 301139284 775672508 979491128 552716326 620827595 78764830 221996450 270606389 978427543 938707978 88884484 880050935 965773577 541704064 345216423 870076043 425969282 316484777 981869568 991680881 984200475 310058409 446475966 80563551 712631525 809796901 692918677 590201008 887632329 312695052 495729303 248868346 631424015 947137611 893826651 940141645 860071850 674085769 265891181 826075301 441819394 897523158 895075360 39080399 776515112 903263589 930977392 248654698 737610196 991979755 256273076 7312246 448441529 738601299 160647694 512753558 44303075 513140966 811274499 653041686 765483748 497875664 275853737 707763773 609247394 890537707 796137726 693235866 408456010 980682707 307249556 965166404 253707776 579824236 5069011 331180232 653165574 145716103 66356209 17307181 777538677 220302823 605952579 615516018 291800533 367060418 847790152 414292241 761464170 61311927 970555742 992891015 999444454 544608328 415939554 489903313 843322723 717647749 500156570 831144797 345024959 192154594 340738903 155922866 226961795 662824685 365937072 349685555 378679477 520850845 371885976 913576950 759997534 896172616 740698206 175449486 595010419 821681913 103224837 464415539 672938979 159451578 509274518 452993875 780321665 279822899 854398523 819129830 909579244 242648697 79359664 695078658 390481869 645797581 367008838 811371356 971230845 735747729 42243236 175481671 397819948 53421361 432949062 550606537 923506050 481586984 831928293 734531022 774885293 72945769 922508468 549241106 707324656 690764423 499442190 204952078 371488026 43155331 438615691 369828060 523767292 534196868 238631232 8814549 473668531 768060552 949142541 756908967 524632122 11502937 939010729 995960307 327972753 326802312 313726223 929044966 59859812 535713711 133900225 747077916 932988523 339394500 639082487 975389388 856310334 441765253 357192011 265711822 167123650 249000122 3560969 596831412 187027831 299109914 856095387 949815523 255332874 170737198 864977496 20290706 649671671 645049966 363802353 220515977 32437744 217597250 206521121 478415470 266550663 90461617 832045109 288861200 645553236 747397264 276962967 3756487 821364122 953731870 169824090 631280914 327539599 508290557 511133667 753063864 158162337 85172115 562864996 439636170 138790706 158260962 84894669 515548008 533656087 821187031 744646270 468335137 344927191 885434102 867065767 308069485 860034481 471085877 615906119 805270509 526196813 19786501 148747005 700193849 848584874 843099891 42977181 463528289 910732941 818176459 861659941 867542306 50634758 938956197 942316351 743069076 780781679 147717242 457461534 979818936 930605310 660990229 389631737 255559228 175056540 335922484 99136705 827799352 249263260 322755401 860038342 30472139 411645877 512772778 108042019 300063391 769318512 981842286 986281337 844638067 778409227 913463314 60350516 866691365 53937499 828612702 200815819 127340598 315461757 809849839 498092721 807056556 776755374 960300846 17076596 661415238 532832295 654614855 134796553 414309748 297882973 68024596 608045364 567771034 881036860 218468761 302678869 740639932 299530782 142971710 120975415 102651241 784121141 156033083 814576184 639249731 78819952 952707911 129465517 571687411 417742773 142435606 817742426 609646878 922517657 99177792 664187752 296812523 406545576 363201314 659228754 208944347 984929388 330104806 927519988 217346940 396664057 67120627 889272948 722061389 77747491 346436178 609521943 729597550 902451224 205184951 429930119 719459429 662473220 385267252 335292871 947961034 175813109 998462093 22617182 101473073 302245899 638399484 610328917 296552076 582564771 842832505 330999202 354874532 665167416 183862450 223262027 282008261 22254568 682573734 401990590 444015359 838752789 470801463 978167825 876283994 737187312 747042526 352110837 704595554 174033846 715487711 189368781 370348149 767862222 695828698 175558694 587215284 788491097 730256662 999119280 552658850 175411155 460626829 890444517 718109615 614977807 612501602 545506079 630405397 260814862 108660774 215741902 964281668 340656123 135787583 274950584 907481149 417497930 213168041 34602275 266293326 216735669 892884063 588856360 493051710 398118747 939654164 852113661 458055525 146343875 372484960 962666563 626815573 581736835 907347073 735213659 942813269 584757726 181438442 30980511 222315810 89030788 277166740 335668672 603961590 265935440 325268160 523059591 794642601 980849400 40092893 579213099 772338464 412700476 34129533 376211188 536324934 975236812 687321015 304112860 546942729 296948583 119147002 29195340 204693639 474874252 968229111 114195858 232242150 428272768 692656026 201754562 377435183 46252091 3937928 680044241 621511818 98189051 427730102 823119920 250907754 155736113 989903128 407926827 135445372 254022112 640292935 759840502 570432504 247684334 605398355 399583340 982770586 255403755 739229661 229111651 693928201 551788610 38293864 740637673 926953439 803836211 16886340 64138518 278855488 86963585 271300193 531500449 163206796 451106718 42970622 56650262 930514373 70199307 660667780 459181194 59474247 707146190 521390093 849822380 521151859 674579368 828972598 572477326 558806464 345837236 856956456 896611230 696771226 620373674 898881615 204642823 815528860 535971681 13177655 646034287 943510631 701320737 835106775 740719012 32563246 31070101 362298184 100119177 525066725 717244315 49076924 735701617 160382426 391719743 20997903 483977019 269820454 975213634 765369192 602394804 281170449 278860201 629348457 523988206 570936253 674232140 374313231 919114489 19667809 806350837 694960876 547189396 120945606 712433526 257908403 100594398 977189252 88313421 524883481 585004563 340365623 894306057 66283298 919376534 683447055 705920889 489805398 111041715 920215073 419922328 699828103 479113169 546624340 546208677 751700423 408802606 148836652 816530270 692138373 421765566 497105278 606344546 822047531 599745264 377465704 104393574 953153455 252352392 302309335 351181508 150137176 464253931 263416035 453790728 823907936 216167434 281959625 41966601 358907525 744912542 511383438 316532254 325088287 89226252 503276509 70580787 286518744 466800048 170007584 283607565 499797433 806704479 804706582 244716964 577052738 224607782 496946252 111960740 638207303 941244183 422464999 941631519 320020948 417232250 70968725 379397368 3264116 778468598 280596410 395652711 900235931 25148666 786062982 751631663 739360426 408762039 472874359 936436509 321776972 39194179 915866113 939541187 950147178 125752638 844392655 783016092 349065455 572493083 404533845 772339312 819454207 686226869 485053265 227999 811351892 14571760 9178308 885544536 329322835 444562467 50094680 924161059 910264095 382686116 330183611 522683621 531474067 585129757 715865572 670621603 907853532 316101559 847256157 163744494 135434875 469738473 552526024 79018401 103216161 167151015 986714911 726767778 558188214 721108750 752042835 224132072 916789027 504064676 315651240 39661761 744859524 819635700 694428749 997275135 600026337 911071701 216862581 303143432 30250162 207730932 288696942 675216214 874454439 172599415 795493978 2611039 302167797 215293634 255316882 276335516 864896972 925580102 706447908 94207770 911024514 39827449 839042327 58611856 807505115 716439244 52673641 114693439 719480835 498144893 729965690 559676747 158589561 591210145 112434326 118215063 713600377 894264382 264645296 945133803 444494367 135105697 193941230 832340556 128350958 513677214 372179085 236179770 47391269 152090336 519875057 800496805 451594905 597488494 675252976 685607444 511767523 938652385 616364608 885080466 360445176 246987385 75639240 324092502 473865164 373378140 102624966 347257259 692116012 611930173 927236184 747997332 633538093 894371431 322452747 462448382 916788557 915523359 706903157 76484457 475893118 418806063 647517644 425507158 362768106 24360158 528783137 254707055 525400282 13019681 665218731 649269796 475737931 636053226 308413730 412029459 364622162 108217243 432614836 804555806 231762602 408527985 897458888 631575279 591437367 246242944 500536170 398923534 767560314 640343962 855767959 831785904 930484181 899821862 638520957 976705664 214772103 278143309 242531339 619171167 813114591 367690474 285433209 57246223 108462189 309308782 637832209 951034760 415811388 787384827 564504177 197929585 590084334 57647606 919795598 779858302 254239301 151158877 383951364 708976483 496063650 201457637 382597506 806530603 535907496 290188940 922630170 242201956 454380257 357700585 910797177 244830749 432548507 62813076 655025353 183040523 94468233 151057382 834467821 485399570 893847306 608689503 174243499 533829744 43338648 180984832 224325364 580230596 280302313 16440440 539125548 294358115 387286072 110433753 498608697 100904858 724904346 129871224 752605842 668120827 689875481 798057394 641956009 254970837 168329919 881202499 735966388 806627790 890958878 726427872 22022870 217290658 354505819 359516353 427365980 493525680 205376827 358126679 211353410 745711704 623113342 20804213 195535742 295865584 129128586 304245342 350537988 439843348 401875883 546396596 344214464 9452037 348029989 600729463 630052860 482402950 945027425 699219155 491874569 500261624 726188515 65920835 852238857 469583258 922844257 21738983 584120444 758643839 957905807 537316126 66985218 543645747 409608732 204567429 175729763 179286931 228168253 886326280 180839688 470599967 525006512 426650217 962643382 596450262 435821858 181588036 180883564 913245011 758238778 404564694 802755489 268308698 238913918 85390855 326657081 442410849 654185190 743532185 442553466 185031456 238343393 666611383 364135198 774954278 403022025 332691286 400039559 213134069 437474577 730220912 89988435 55109297 620408610 268470472 417349400 535953994 861188896 181403808 115731558 538858958 348038639 379532820 515960683 336316713 38066546 169463460 524937232 875799567 967568677 924570749 559812643 737909833 649877168 247529710 854052193 628178448 475409082 25806040 475887159 406979919 770419275 42371192 109913037 674590987 136366187 389110438 591860347 884155097 373274382 869447295 943728453 152576464 353553067 601346440 6331919 508274741 342213941 75521987 177628741 273783385 500819543 42239133 911485317 879181183 972413871 683880913 882630114 487217920 207736285 304321258 947660794 655511922 130190148 545714399 598895379 822416274 561648185 820047589 558731990 157892008 982408032 186272008 58913789 897241033 673970104 259930011 588040451 519055467 627385361 460579226 343772078 367758340 460943844 454717272 786123567 458142222 428245007 250648948 161433820 709106538 6429800 696091176 754072783 895570428 957252383 155166900 431975362 308351049 279314746 438829089 346204486 371179707 711269857 264554333 784217023 881687757 792134961 625886132 706950394 360150400 19246676 524872708 773064440 299917499 374888276 281529910 604774796 765104410 397574438 407742487 411032462 231258526 309542238 774075169 974320707 647474627 706107072 975070575 649541575 418021748 907883808 92657911 79470845 627758915 341851581 422455234 717525514 387279596 257820412 379779436 243107567 35675524 693177984 249632655 355558397 840520739 938996516 62244648 375912571 778484976 660913127 490959640 395793549 891148147 89896875 266274335 714534176 868809585 38019180 890967340 792730066 662563395 718348519 126077224 424403440 426170076 393314896 364900987 288741604 721958318 745392236 106691118 55622011 532925801 770609940 784549355 614689363 404796976 116781101 265625809 323643569 115615540 106860479 838721754 450865434 790076915 5118243 468702286 219387064 130846518 240868172 124300012 347437194 278872614 385753198 643708173 168133131 6402450 936856529 284899785 603041887 503778356 679861846 127963445 492253114 342022187 103474745 660336533 511678548 949602349 489330201 484545369 918279728 57019227 747339398 462331926 383366820 558318086 165093754 982367890 325679266 105950419 790424101 762723061 372614734 441912735 435025817 240252260 441880180 402835355 184720176 124957109 558466983 985629037 486185918 47742832 800854577 20044415 379473119 835222829 650304077 879958846 475188091 555792382 616431158 75243973 276692346 728806673 195445023 992315375 156845700 513511209 261645078 314316477 820370013 317247291 580395852 986147621 480972653 187123181 271495146 448596666 415657194 464087711 905707538 599071462 764995361 841268511 635584735 41304001 137219194 35305691 900263688 836020943 459004623 739157001 916991378 55687650 805280693 42820811 592424378 716577324 216370122 136574869 851552512 924910709 474880163 347168947 917075691 8499892 340238882 843896624 698813989 166752904 153203343 141081177 10182372 82114597 515309156 945643735 679834660 913399980 881155031 654509077 154551797 10567214 326507108 355250522 154607111 395959363 898317561 545164997 618394762 240648460 268931117 528635608 731006705 837411534 472444839 471923865 960838123 764957642 212749523 117842467 381353124 961894917 232306597 31064406 959033766 697977559 673288845 592731003 598496434 881500120 762971595 140064792 802343073 530719223 400207992 825336060 906289805 27909770 27647046 473164816 333203816 329289463 191133209 983477160 66176269 64803644 856504363 108067086 80620705 708972108 28995028 975476919 14056786 780350781 282001106 881627020 584092476 481783502 827670224 501592753 111763748 500833845 748814268 474065540 795743301 953556175 642349782 859153569 16018690 854040950 335598157 432963200 985453462 892848421 449614711 652398970 636461661 154897626 737667147 906893466 566385604 370173511 81710729 430762474 548287241 627846642 294118357 204914557 311910023 244838536 531971143 506508625 180780585 146029728 276111735 690144093 865816420 117362511 988158425 931157724 760634236 848768214 463133418 341968570 832537098 113032312 65366521 819613757 392860721 689296624 861721490 939565146 463878335 702990179 683535865 660375853 852727028 485463488 268588213 544588067 870250056 543574094 618162574 584387895 987219891 890256766 242610596 423999083 10398312 439951999 305843085 601637657 526810049 745001556 169709703 522708901 713362841 869289133 707738886 671079066 450157311 769082791 264172585 527100050 412561299 736870159 231846186 862132232 712397404 459858286 311611026 881770384 85198773 760035746 85700575 426615685 248013880 641268264 881085278 905092963 445096765 937212317 927129923 332944334 664080547 475895843 698725425 681248050 37218243 403936906 537063638 997459907 301891563 861655759 348747834 803585450 504157859 492137693 278802253 984622114 449674873 161218151 280248949 294229604 706817666 688927822 247357484 82745126 697555244 215984453 19021592 160164635 376506809 898869778 364941132 829861583 112369773 894827076 28869218 382676550 906766464 906671498 72069874 766105598 322558592 992853099 4084297 299512212 509200360 136636398 359817964 105006501 907246610 502470775 4502436 814174412 703525991 669970248 100292351 312522246 293991099 712305677 706280157 949070479 99724872 887931869 201344566 364220972 610880421 930570028 428176792 888215701 448033263 900577942 581981686 928205723 689098402 141285778 951791027 76143018 704170260 215637353 949099326 406137775 718284389 217197467 921840296 804105788 593935329 909648528 78607960 372351164 773464482 750353415 558603523 657828374 68858010 718425758 877861165 447522107 499159550 452638961 869126018 153079958 394964335 717067098 796922346 71592087 482147657 243817481 269717246 290957268 412544149 611052784 670619243 633234847 695120279 787629687 71028887 178673807 515041367 477475661 332651601 260986214 437549904 127411194 346139793 414393513 365773246 624749026 532484170 967000886 630416462 935551509 648907806 85707552 352820690 228481039 862265200 194638958 951987397 863556701 103884812 390503382 530868047 294099981 22407264 561229902 983674262 375798573 985301145 241935303 965341231 354298514 634435364 29285378 612457447 162352684 21183119 338968784 506995321 544871145 577838624 841849209 343216952 582122554 94081152 714954861 261329205 638901811 352480822 176593862 594476653 667388345 567048317 208652801 421427163 322914685 996036194 772771167 483925426 512760844 388166810 125599311 410598514 691517001 563047777 694897421 818315920 723550636 843401763 253350800 550374238 585868766 970832828 164346105 862220112 795633943 192220968 563599531 556607133 650554768 17027362 750824094 79098378 576228785 161758296 3946600 813023902 434376490 510760093 677187384 283438553 388005237 820503222 970692422 233518044 189887690 124444682 14218530 4823946 225582431 702304434 290600039 31254984 771399894 647111626 801352242 943194051 620513683 415833503 166780722 929762163 265190822 983128222 165380851 206416014 482697964 231319691 40854668 431613629 916276133 626844670 579221210 568973299 544151831 509559004 301444105 331628982 279820223 893124765 930986217 766881575 553847229 580774583 260867148 566782140 127901778 693181473 202337589 519925801 591717756 887636786 65058973 416044322 685741349 519670075 54437734 15535468 185930088 745540668 884821221 949328592 168095214 798247488 292872968 954093068 755278798 942914040 644007721 548172540 169629366 797464073 615487988 2223284 80514794 583147376 619463672 936121033 929649651 322691119 404131011 76582016 14461179 71741560 818661016 846329239 144359796 47921673 815838462 180455042 306597065 86492693 731268936 653029138 466887351 651070598 218137190 61450394 160849354 449202886 621153651 940005807 161648623 143297767 613240300 767758188 833307260 344429116 7861137 336435961 729636023 566428923 774519744 861477825 712674317 245371261 877322511 445127338 549163731 157683476 378430132 44809742 727685243 411981822 411777812 63192323 749344492 475753165 949379544 37455026 394911955 982988476 35950717 785609638 52621497 460013709 523536630 705229696 20635620 279706044 565262785 404386605 171966940 331121065 516689237 743489877 929003977 272685704 534148672 624031920 945666998 583802377 513170980 598385538 745022074 448157819 46165571 250749558 550665669 263066639 512346956 197728984 907270599 641646690 84586487 422009175 439277233 966600114 181629534 968224142 721211073 569763126 618185724 470082311 660080 903353670 337008571 488287079 551062315 45069068 616383537 813694736 23580370 657587670 974818116 161659891 257341296 115665445 19975006 467112628 978809265 548262908 448687066 625221094 100288259 311883943 127291425 980102250 109556751 985745550 763498905 30209357 808157472 352630181 766286751 367497981 116203974 298353673 995527277 25694697 235584301 71160037 472888621 94842962 345683615 995146378 965830462 524544675 91450845 768869737 873111217 737508478 512729404 803841612 929592843 165337620 674609180 308884336 445655591 121621041 701448069 549309718 254812897 886310214 261097302 427457599 719264498 945146073 897270266 507358010 771292854 8175766 222819246 989569073 315950593 181917004 401931901 556191483 732431431 876738394 504954243 746217852 916472099 828761837 297669948 378045814 939642036 787703146 234467599 755833878 638991669 97298774 741025874 910168031 281306089 972474961 939467667 995870505 622901052 591503878 377859534 806916763 858720562 894627776 442172042 457702819 572611582 38122559 151134473 625731211 113400721 866167301 958256717 62253215 786307012 27871206 310940818 235776490 488506014 477201154 54594868 443455882 921410986 223517383 698434221 287679724 736213689 674696319 488532295 222957597 799656477 303534308 141155339 893723991 17738638 628200693 77502119 927939236 651556632 186449850 989016594 332885847 530668504 645781772 916725036 884399961 592282229 318890471 117521659 739248579 738037972 519993603 395005640 809743378 952503425 545575676 76856073 374164619 698824586 405720892 833902313 344231918 844069463 232096807 613763364 579571739 273449345 814199724 35580697 7269994 183175488 917826573 359526632 105099718 614707975 802724911 449687598 481385532 59220650 375272795 306373715 435525158 356484245 391489500 437423137 293556164 616452393 383148617 169490124 888275875 519480021 636501999 297680291 739092725 927407734 687068745 15477271 340606690 386710288 533681951 768035105 957012037 338044363 556739037 607458632 29970147 619183592 924799660 898714328 710840656 63670740 714132545 309676853 565219507 39890460 85044392 59146192 724060161 503702800 419425324 462630168 84054441 907822772 893879284 381188525 108793573 470051053 748601395 415791000 364275911 155956699 791931460 935676542 345292041 338360909 111912644 335434614 987716267 575693544 221656777 874424510 854804521 513088483 331852312 913035538 5169317 675389061 780339813 714502836 596881905 664023484 99472668 247683782 750313910 943995471 726903468 265688926 503237157 677622564 534911732 423707742 572777072 934581693 758659183 92586101 734383048 247379606 588235299 926404104 472415477 77049914 11473389 506052394 590688270 57703643 893707749 1731675 918670071 722487696 478806594 110047521 385468382 495316072 175697968 567310617 791857150 208563103 723413774 314026903 605166005 573769682 470495429 789120957 274959293 397193619 550763106 820475215 280842802 391960654 33325210 953329563 214368165 910375589 344823443 243897472 937042267 313820099 110998166 312463537 221602540 682347575 109834051 998943550 215093001 584074372 500957900 323571272 19230576 538003856 969507937 712157914 966315829 678102517 271743216 162088953 417556861 727483823 80478094 723067983 891260759 765753838 615427121 993356533 817688184 719366373 456948219 125691610 547425999 643665177 78845737 755313373 671989026 865826413 264853513 607443025 17661910 981624203 767683503 762027695 291164445 791012990 604519847 289029231 311854461 644192379 869586016 494386062 563161598 291915645 314054719 964977650 892615369 329239301 643273235 968502624 777495882 787028526 47467334 998895736 410694557 252272515 832101791 729918523 779191337 590346250 42770028 983714837 910040632 924678619 217865578 105051919 772562456 835489088 722857338 897580444 215141928 472858248 913115374 767077492 221577936 174316421 401358894 397582891 465301089 60000856 189198564 427320428 954643290 410944192 443666416 362201406 234743089 505656164 373754134 603824987 913088330 623733076 55383540 631877675 174537249 683335431 867641640 920591328 600763418 460304004 745871439 671945416 863604550 419647542 349279748 898718561 15624882 220246296 52147065 680156071 79320271 931282384 251319174 726472810 614585994 379276708 185947497 379217302 128220094 325014283 833376669 178345962 511331470 185277459 642497227 672234235 841252582 943960421 767170909 156787511 852024294 233196829 584666980 36006286 950535611 368208887 308981432 862077843 844669147 532562904 145957766 57076865 412595946 857363598 679243793 284914306 702308027 701180073 508418368 209899745 463888571 128343158 802225637 931101141 663522368 204920642 754210172 531279108 266799090 917747743 835502034 974396328 564323769 561202242 641348345 45113592 682250784 111608914 106478111 720806437 736056171 44324513 989026024 277300827 496415005 534954403 36400389 722347343 620278446 963600794 233346815 759322432 967072291 430283118 392346641 429315276 218800770 721476388 624004896 271704491 178758839 136721517 64358038 798503414 645094562 636997964 698970939 746051910 190174984 381577992 449187279 175557776 657522155 760224293 783824440 790377961 40040248 296670058 761948402 893522213 956341998 652243261 523783121 213279953 575724658 101978031 313895346 184470507 837945742 435254626 898265591 533972366 732381211 453181808 351248706 726871943 314013492 956882158 53423563 942337824 378054432 581232360 282775761 362893029 872385132 901256599 199013057 309882289 180374154 955532717 14710541 293508319 898128896 711263419 379217106 604030601 554797715 875525571 286712059 819032261 200438291 549169636 700123307 697023673 652228965 113822234 852165515 253129352 641915897 858400878 533503328 700231939 427604522 86766589 138780230 222481950 78759882 570832437 687771639 963087011 294968580 771061631 633388824 560616274 838988280 89738597 11320920 55718390 759061973 952799624 662618445 22479373 793242466 519243014 433142659 776082077 231657011 802913411 656293115 436902068 7539062 34504300 355574408 313277826 584844400 289661734 486172815 652194276 139069368 670819698 627851042 786777400 101297364 749144460 835551487 474990284 759054288 315671203 337113619 814654663 637197970 39703949 619130347 240843249 625752554 537010203 157131627 838698196 103689885 822489502 219802932 245245558 813147788 313285583 418799379 974198803 556405578 118264467 31402787 934127431 262392776 552094714 988284571 407576780 182155719 740858791 613868676 541253731 458445514 117074479 45897736 704856592 979580106 769395342 261555635 381629214 865300659 54892935 78544545 599575851 884260819 738890892 738093721 481295462 62649391 205960911 373346451 902282976 724857601 823770524 892699226 341877480 708787329 964995568 16056586 222918842 42638349 75911501 423945396 771962371 925006348 15734791 393184738 955986397 470476075 987379976 718488899 118672149 66818846 670204555 462582149 245703453 128395350 767663829 594569398 616743252 670685296 156964701 472860108 541715933 94827016 748709930 754826091 554245781 897407501 714786644 925733980 936737686 904206917 655063932 174795458 335091331 505256482 138287679 736956462 982844076 373306741 37121675 865201860 220970220 236742067 697861377 645999182 291898464 110349093 190833188 315475218 63979550 985398834 974618415 611725536 488912964 252937343 55130518 928048932 336507043 495688048 535629521 594966328 679505101 130155434 112682486 879737924 977754535 277069696 867694557 41038321 923980363 150929097 140826935 382311834 94099026 964853674 223707579 320342049 405383442 326828377 31133587 758783715 283397839 991768310 281937647 130190093 296208169 647414862 606480347 443810691 6038287 234540877 707684156 832875405 181081981 31034815 371673596 546611260 109272630 527144858 784927545 290226893 643991904 100677123 341132680 716820862 638583196 393085990 99701666 189876167 192143462 94100584 543130868 35357017 937154442 413317633 334521056 355973099 600460257 693148916 806090164 355274624 147752537 197757235 127512165 446055372 619414716 986134198 600012512 72171759 509474382 98250033 563867815 61502869 309269861 62166199 654418782 893875223 963875077 592014457 537818743 169351675 398022280 772707048 876086 47020331 139568338 842302370 32155961 795344361 79276268 366258081 945245866 694400767 762794444 57341172 859035720 337578677 538254270 838379042 828877275 237753584 837283146 53375796 298715788 855227491 560995916 686263637 711066862 472051443 353934038 500656648 880475736 488696260 474932886 588925824 955231035 544156056 756648464 49620874 150426042 861319809 666745699 165359103 721730952 114074416 300391867 462316638 391692021 299192246 863845843 539766934 744865745 103335807 443535098 979973894 61578828 639141391 418599250 990743752 718974950 859423813 192272412 789527981 939296932 261220466 683093098 453243520 525972834 832566133 157490561 318129526 535584573 325941165 625495886 619607851 422941223 396208193 703042032 145523810 628455830 292009936 807617377 61598359 340693609 422413876 666664870 353964345 509976281 41257209 194532489 591990886 317646866 86724960 580517459 25681276 493826208 745635008 604777474 3771768 147598283 511616103 108719638 483577018 336620397 601704278 956878237 334269520 718368753 182792828 14175472 817944144 896603547 642085848 778873626 444528156 285407495 318442590 873111696 428299909 114683064 345017749 640040434 550721682 288178719 521049508 655206235 718416358 173937505 845094611 484540805 189249482 854628923 354205816 303870944 223864657 981195926 660159150 645647591 487625456 141669665 989651640 43899373 8031536 217877170 558257889 330164311 462172403 820454192 157735633 703092521 966678932 626502811 948190264 25885100 207826603 822678625 529893571 710520127 255864195 2078638 182131319 319749484 906604317 137645141 229448672 976616988 856629342 998501051 598954171 714928887 50396547 696121497 540154372 364771996 248547225 531702135 238985000 552681680 284276986 710340157 878881113 472855041 587564674 913274958 706961364 743282256 721530061 547738158 249536450 986701811 882441822 762115291 969579709 812555761 228527467 888822744 397199440 924821824 855946197 683989103 554145921 658299207 659030180 608102822 339540038 524147068 471450462 693567983 495233587 977094738 51533837 653068124 531466634 534920221 256699764 708617747 151811631 518468502 96749919 531337375 257183966 352402638 700214196 199906309 510489372 200568550 112418802 666898940 659144402 219587112 993149964 716175820 317343027 628556817 956322975 79499349 949267028 331379004 179332148 874386776 368473415 525576799 301177053 84088867 959294418 602503488 670613771 622886211 329256788 278885429 3396159 721989931 170469942 326572490 372087496 740013080 315550131 643703828 408240875 429330416 523246806 479173099 302193828 504474904 766183789 964611404 506803030 727589037 733403942 403348718 466014442 679914363 971790044 228450143 66578812 818337255 59626480 400828430 480159001 449743523 819418578 813945302 20765135 600912263 765537300 751523382 666143728 139206952 755839884 732426434 649798175 223555647 761398365 553992035 979083205 434091582 381148139 989772908 949115895 203102449 787731554 85083926 786163857 751542786 99824170 95590447 931590154 147647434 801425335 949931984 674108016 407070247 341386809 530551081 165074465 718828191 673139760 157249372 621839934 275849835 659853272 530149987 575036708 141696397 15288094 318684229 919234016 681239256 345312332 497154398 794441146 108217118 50495220 826226447 504748090 107961550 189182508 313381512 102329977 245318024 405594121 994210099 774990993 920113788 628526999 393604780 421009602 275806017 151482324 352045135 688926627 126332471 913286316 542910967 576804733 800204815 323111065 178955630 35754606 301771769 857539570 103060175 625951042 686252314 911405742 144308968 494539389 610106820 282795125 79699952 527444738 61332511 724476237 842325812 655703100 536730022 945653867 613543968 21180074 618161216 288328500 855876173 827578638 984620517 462832976 464433434 830878281 722722959 891693401 176491006 952715418 643938586 224723800 49607862 476133699 358285855 21825342 731000519 245791411 452518779 940892875 922130577 149244519 876569057 895665523 374156330 2280987 63580324 51293710 407780145 543428920 97550815 561427439 735574513 659513793 379393527 418151061 775457993 551546009 116500732 432594938 892678129 18276838 446507321 767165776 191672684 662655861 498716173 210269757 493419791 550822434 991104517 126496674 126093643 121422078 308419490 818607252 55707974 319239958 893414733 37930251 884235515 853311720 394422463 669655843 343569551 977666028 699240961 478571328 241371457 646654232 661878074 293104697 455688893 283689246 140838213 152378606 781178787 656985091 407553051 318728145 941329761 464769597 783482172 111716798 993577061 954259551 42356055 259563283 993994155 81270308 24124369 312647103 301496826 478078859 942573140 851847189 973025964 330137832 694599801 799134051 195010367 282092269 693390125 563399335 872534401 492285684 90998471 636528013 136007648 219244430 962699428 86258042 46642500 420065242 522612450 244062073 585561289 635085537 167687193 785470795 365491432 537375945 575193385 286177629 734848038 704466520 743386962 768763075 658038752 788569053 189243619 925657338 135859807 185510118 165682644 831216116 413877214 730657770 629355248 533132718 265604567 111265611 429558580 619483836 41984089 235758546 824552682 306179186 316739621 736361323 116560832 883858570 73324443 818283681 976146031 185391600 318881701 342133780 659566490 705682575 31260408 529633439 594640151 967515510 91187919 327952478 758822541 128350719 802546336 803581897 562275208 636502662 961137843 237769274 317591015 916092784 231798408 375064592 5218369 464663489 163214112 155978630 106582271 275022485 232338824 118150894 242381764 75262064 34752182 443502077 72177979 488941794 738236673 483879203 927438643 474748548 538364034 910872402 400562173 489454621 963808106 594773672 469875042 329850905 791497832 889282880 480036770 422037554 847281235 352418387 748936548 371070424 629792056 870855753 455821611 635641172 156656815 649294687 644452930 856400348 515382334 552797852 817363121 33825537 865801718 482585904 164457648 249665253 528331295 437040771 637588733 719247561 595868918 340294865 444278519 440602577 521830711 650182567 535222029 935363409 98747256 993317824 373883777 75448486 568563440 294252189 738547868 690389405 947971145 84931171 970150766 225567410 359888014 454852494 474413356 729243161 389728433 15640845 369222744 147833828 945967677 326275572 41120040 563786602 8084578 414562730 209382526 336369337 84622160 314662301 255616607 909359470 386719266 409937901 837419237 719695182 675165034 600334547 914432927 12199318 35639258 10942759 468763335 160714227 453458113 803151750 294749036 864948489 974543124 291489466 71011165 23192009 642552351 398126700 880299873 393450201 164569012 465714671 715287440 199094712 289168769 19756473 354861217 599636165 865149350 878161649 572541985 526108440 237516347 247078460 212218995 78657259 386584634 924712886 714464121 739403109 765536808 670414038 129107591 466402181 947403677 429502863 239545183 826488394 644891540 851830386 576497808 781913361 778104330 929570357 869584955 713423136 807099324 845990067 414421622 75569609 806343677 319537172 955322459 958930219 231507762 545358465 257713718 105816304 991398874 345274969 925698593 414093698 827304421 548040207 30476537 727753996 137800942 433522326 975523758 844253012 208007525 843944237 890626677 103145847 644487417 482024557 954296400 100003498 394642493 944710453 367386360 726295054 752400363 740011013 263692815 319340000 193467844 373854669 792365940 28702718 478633660 769031920 707201095 121157824 634171204 340136305 647866350 786153567 866531861 847725545 196200207 866608920 567840306 110417010 813161829 973926526 703567581 351818618 577809986 227999418 311052003 575558238 435041068 897235374 203300684 501441142 246829535 560026997 946013937 959987223 823383366 516142650 815855852 976248407 603179138 424320320 629100824 542112507 385519510 163571118 158473671 134779151 815759365 194384073 288271394 739988318 593279171 289230002 171761388 189406471 151579126 916937795 407901682 207035782 118613372 537642147 217562564 998974299 81592524 664713010 981743352 492784825 815605889 328807659 700137890 302180161 35097440 850093450 714341344 534928303 442638187 415034619 860320391 851515465 855391062 709126284 517278558 865026007 581607152 17277721 550701007 121134852 165368592 341469417 27039351 501687065 257947531 26872296 139054344 528131783 727411607 945231458 843290225 297183609 126696407 348264774 497770282 862114882 430368917 543580635 71927327 363252038 607060394 791470735 109431039 794983007 886180640 800091491 302308187 605583017 347266750 849577441 105112601 990515464 409341483 819857553 782757453 390030545 731211368 34223829 367949512 729289820 498025818 979522600 515308562 567683896 807814348 617519990 241105434 233707771 442031484 616511682 616042698 813386471 764210923 936233085 467340924 418411386 367147112 802257394 834667452 184313144 607974398 117614224 885316266 808899498 529159763 871898283 420059249 545662701 652797097 884670251 167957280 32557687 529516045 177623947 119774111 635793542 533237401 464433138 910358026 871075357 266569888 438807346 979823724 71585846 366786480 321073951 535160296 500139980 109497866 728581000 936725514 953346518 254418556 325173672 446384096 840024709 494815485 919971381 674322025 942297488 547937938 708029621 825665189 416531521 636754569 251389007 646105851 361895430 877495471 792107474 219378334 919260509 983531682 920438919 73007261 333972622 99002718 646297577 65761644 404361920 752357051 570482718 921928149 97369028 24659955 123448165 428353597 315073443 922135114 506637392 171763550 480464914 755029354 423023959 620438678 693677558 535252424 926864889 49867326 233767069 776655042 51922421 993452804 273979499 110103972 255031643 315356315 872293639 762286418 90164604 690166936 506408436 456717977 813149425 21091026 765830720 69652731 668243051 973276464 765563254 665692287 293716804 969663911 569350597 226008981 115514229 197266790 480918869 917406025 354820401 306309505 67693758 341786876 267676773 334939927 312819346 821236131 424959064 476778293 878725267 160351837 144597854 893009684 315668931 865096758 824513932 84075318 356011797 867982363 728715140 165542708 264433046 576530545 967560120 268952772 281428589 869861208 332724597 870409165 656583628 702115791 393016174 53259849 698722870 40560565 848280316 687942734 158924418 380240539 356236370 244562821 729931870 646227584 956020182 733841205 90191201 675053194 903633160 93463546 400443859 153794367 32985532 303704154 776630453 43288947 921256747 593208094 466689778 174845277 898392395 259442413 203374163 615168338 910732656 496645914 366797119 187704732 580555358 578249375 619953659 755343045 347698984 996432080 358502147 452064054 589801770 923551587 247920685 804580420 524729094 683215864 348997878 608429783 613416543 141453036 209008040 907144887 353810671 593584373 220887525 820181491 108813780 991272826 109149029 690234312 911117287 134282380 109103865 83413026 466281066 688231585 124462260 138834894 185500749 516003135 429053120 817152643 12186586 640209099 341023646 293998407 960059831 5643776 999825487 300165458 313783976 27837207 630647292 291372749 213546882 269580383 514098754 630876413 199769803 6422484 443365277 663856824 465062353 654372170 368149269 18103125 855475218 622728886 664473622 842807502 491455604 733039911 295504096 747015683 603028962 601221877 540923760 782600331 349240116 948365547 473108430 763015829 876468603 648451038 92986381 101380940 733028249 790390439 778352170 646014424 714643394 185858163 47164797 616607913 677726936 9831174 711579730 875548062 26026460 531980633 86112840 31954708 242724026 558226737 464637097 824016181 21801901 559627314 126814618 144540112 571813836 888487569 89810890 666040420 494162555 793634066 826371233 32494883 383576890 555265421 896550587 924563519 410745749 106296453 608962730 145312800 788889084 960896596 467922801 190083654 648202961 719631190 777039921 567529836 874192111 773299807 816257576 458643824 520896673 762689427 194651273 660091726 239831687 348048905 547070041 657652207 682507202 76537498 926679087 181361573 230092944 244546715 542173208 453472681 108560752 628341833 262150572 205551435 974349465 795689069 819441159 607262678 276205164 50600315 183383924 620457522 872119098 621578441 117306257 380668169 648525015 769336456 824503015 805784556 863102005 794934661 373128162 781636382 951802854 142269503 764148962 164637141 437024220 670412877 255141323 793867049 324828734 916068815 459895120 557202748 142300644 365116207 301741044 346889503 929428967 202629371 476503583 751054769 63607761 97880059 112648308 209725480 993521412 485010494 320221098 992569891 379265077 593138076 672872985 546876549 830086973 824346156 360161884 336568218 620348563 819920634 102436541 231235737 53846501 944183609 975215361 679279163 202949745 880316025 737775477 99535365 658723030 45223988 662870430 251941650 983551821 618642552 916836232 486416791 876422954 974689853 953125186 83320743 94160995 694061484 184110153 64295229 231034924 643976859 787537468 495566606 836559858 478636207 610569965 504451466 756382102 133249735 675094394 818037169 49458959 462242372 735490909 799082070 545013762 289858639 724304212 174799054 911108955 390677857 456655358 580553735 614298102 675256010 974663877 13879444 336843440 843195219 186334308 309014103 71720737 63345867 9482661 933084481 667607625 567273545 683945608 616843874 994630547 676805206 514767911 456435667 185708996 842198016 303498001 758676683 917481747 264839772 628577514 950363622 49408540 428992958 892357254 957579887 807220575 954391766 594695931 592113457 702218330 884514084 16501188 607718681 923108198 515386537 933051928 848154960 911438865 637458979 604326845 100980532 50865075 865634664 892650181 476256751 257526510 985738239 476243084 288887771 62640397 556338275 212029357 856357253 424357591 32000843 821449265 183916475 428464502 887781257 32994337 237510740 28463533 898232719 43951335 838557151 932132770 933342164 112183644 48725103 890521039 392212655 557830645 678478601 62301239 865651888 546793653 227480921 119603541 67192176 49080056 675871721 781798139 911280436 253152029 455177870 36259104 229217615 181774087 931778087 389771090 225679077 909580795 625785160 614410260 184739158 211006646 200248284 344272132 402781485 266871400 134370858 536363106 35695884 324703601 47646761 801864371 96009030 976361985 200291888 214079647 5786507 572276930 382384004 891269639 189349804 360751943 92142315 250399808 881586239 711851551 919229600 759804776 351883260 521043603 803081570 929076294 545657570 551634373 16743869 327820854 437716642 466492946 579058533 862518458 683340333 739468400 294829877 250551182 695189858 933095149 708277082 244144376 950345388 389418259 723615005 415240599 593742301 23528778 674293044 166606332 180086670 245127032 552341579 67469476 349238285 876493361 765869460 109452964 143662853 743699670 934463019 695923259 913122441 181882189 1850496 231086097 809148500 8818937 651869365 404507796 343602703 137583399 255416035 333588329 706722496 986965142 225223489 252919061 940102826 544022554 346052682 869122835 968119648 300354975 149212275 378307926 563486868 915058994 68378346 429486039 500646300 243516189 830267149 54502683 153332729 656181077 559303274 948276302 425510373 486903510 111623629 515070035 632648734 360583830 735364840 676683320 580148787 775119941 121800089 489395364 222803861 184859303 492388110 300055434 767534757 394499086 503310029 847088183 794861066 288116816 3269676 713550763 2676700 91213855 566117909 293229488 234558949 378829963 737545605 158210030 875511838 396655302 600057365 780733737 822489148 141428376 387122603 687908748 178546447 665613810 378784526 739438710 485678518 303274830 568631584 203837664 314275795 884836669 732101306 597795461 337362869 696839541 812111835 275698388 48792823 356274325 157336590 671267543 678236608 975743754 704134801 649289804 646199510 365859306 274566252 266395195 737405571 867418296 290372887 663425572 291098103 461644220 707158922 101490385 203124553 532021904 347817900 146147573 946842785 489570966 56449172 945408665 165453000 295584721 63833104 619945315 172490474 340170887 492100013 380829064 273544296 967916697 237397775 270816006 42370740 453540261 957230063 706209679 669753884 957013389 162268609 289521965 771534702 272986331 941003958 122829207 813258066 671877468 553399275 187582452 289954155 949415649 513983193 379270525 363594254 811520992 524075431 583299783 229098462 417274318 727954245 612302173 149318670 951174962 559572492 78907656 305320044 526181274 605209307 244680554 124502395 956439739 226017349 403472748 437155448 465616183 830173007 672725934 571977426 762155236 748584346 988398737 510519993 633926152 427073711 103542918 640053029 897259029 752599728 360330599 198444737 764648598 202637715 247076879 248841455 128801534 264147938 848018731 620244202 807584312 875659525 640085043 507403204 684923740 749635408 110845827 580832353 638629962 793565167 184564262 462726447 65514114 31662681 822776329 478974590 540384301 756572239 89042727 196551384 252420013 442002739 332495016 549593187 611376444 929586080 269313717 161744483 349173910 524603205 645025931 176167225 952430157 803150299 799716764 681547286 295893304 627547287 884153223 610566929 312309788 329438772 223347140 603210386 16953749 781183366 835982299 327981080 783031624 417716938 195284420 319838247 431667923 983938161 200169956 606819704 378294102 134588986 27410266 633474540 778546645 311182218 428622803 920030857 742878205 335493611 717196790 530652269 742139160 348889723 293264719 932391296 370134181 726641331 567908225 58419725 398822490 214096665 528082033 429283406 744832633 604629839 884293843 448335365 894262251 470528675 385376224 355548775 561132141 264426853 481045677 90229607 652515536 724614433 74524631 435092180 386007612 608008712 814648151 991288474 946908091 530537189 660221275 932769937 149263492 471378961 704683256 673207282 474987178 918816493 846196368 340848985 56245241 809420666 5754358 239592208 528692438 839283264 500138544 55580827 302230166 804494189 872806007 603831753 543782638 80556422 997952877 564474143 314862813 95609841 264825741 178612412 185527572 460925628 877931522 298747110 747171023 236015374 928142073 649763744 449406089 891440301 500770182 61095861 206948562 153599228 892913569 984574410 945709778 607592611 931328053 656598481 14556999 568488456 752024866 962569332 426855937 719129885 710727310 505121513 896974078 49923501 238673968 869040675 603361722 755752101 310246523 145289313 932320521 608951482 341590506 79280612 507014423 123928808 824357265 968841620 288232339 524017736 970894414 856838037 883480328 335235492 684634443 111557301 693978235 989836714 928339924 94823988 722078585 777903341 678252223 171950924 910092712 756636158 546147853 504120179 529918377 746808690 842261040 477670792 572989473 916295841 450781941 722030755 748559403 820977071 679605522 539794060 247956655 824714534 474541502 820814599 123468921 767208114 125964511 170236613 595578583 658254628 20606891 795423637 739776220 97524377 388060364 84497269 947103738 860050154 340328899 244212277 723253750 256366671 134326891 690392214 773178385 216719170 861760243 406890886 969985747 627895425 830172354 869879892 115699865 800825615 90926702 322994447 564708562 410967190 887639070 270249623 830554669 271503129 89311541 157170902 714468998 339711508 310953557 702957310 105598565 565413442 919553759 273382677 170407246 208567602 250976509 933454902 369455758 814576613 973956760 639397293 332038128 578589077 668366706 972304133 580811098 163101824 966465128 698156120 687698280 853292579 586065717 774852883 227822292 850131682 264017450 100834713 539251399 904261037 958406280 431621623 933172588 284633492 445520372 81329380 447483179 433188481 462354196 881798396 784448392 624787550 293450355 138429272 374243764 49964859 672645787 303093439 470227952 512730604 261525627 836448 189659576 80264890 545294461 819010299 855550982 968861607 828993798 331265571 825527653 906395846 143581804 404965248 504986364 723822452 821947536 678330769 68869446 537456126 142511141 482415600 913045943 533283601 769310596 610520267 273591548 174464402 907164986 268274164 735629001 301868488 569301180 788869251 981297338 799775984 154640222 765806355 454965681 968493931 19833660 636536824 303296087 543150082 912267603 775164804 620406816 561883790 346989368 928159180 180238901 428312504 352031133 939244280 918075655 400846175 304164895 34372713 48309826 904884842 682727867 225600901 703232714 704125351 957014629 813685201 583739186 594705887 288573766 224709778 165448125 193863981 955170682 340322178 273806505 173244362 300832296 502383268 697879301 185775881 68376193 335305928 221523484 554652207 986199239 780248239 491007792 673924114 222172937 367292670 604635502 30877419 336345840 649862824 375699700 42143675 436144007 647980544 597652577 571465882 543693053 799852124 228764317 182910240 457922707 881916700 663770713 783030335 282758745 439659562 908763791 499074105 554397882 97005818 977030241 172461044 821947470 158527481 768239898 74765096 482996371 237845358 369720424 142446861 114074660 419657830 772272071 586017254 297750645 947240096 528316918 212522192 811479935 284012452 438904238 315586410 230965824 797072605 161580351 156370239 751226068 363686000 65769584 607962192 69407939 679301955 887260644 476195199 598788011 882851335 482743253 684837272 209540467 617235503 596237929 220049883 723315800 764995723 20390864 140460366 473574791 505360115 50987488 408938000 749814775 623831633 215680037 304707388 94158257 778292502 39811347 132089930 677511631 344102216 477741814 145680433 725803551 621086143 205388735 531925015 106026744 775775858 853307306 974608865 422855979 541547301 435614487 184071248 600236992 104199770 402751457 769474912 585837709 26545245 228070159 238829441 421890929 379722692 830546295 238465973 390758193 580928520 134746634 89546643 775058947 346596753 35625012 494287480 738336133 356650742 431767605 850631210 870008261 370321231 839942095 481089273 24374494 294664695 373872035 784959350 773290634 32742794 973079392 140056181 303203844 932267736 571533234 732250040 854599773 369842653 266724282 705646507 512646839 110748608 613592554 509195230 867704904 947668555 819845576 258792101 656505769 341309931 550595849 175075279 39616288 103374221 128707640 886509005 540184170 953074933 657657077 70023604 264019817 843312056 823704010 487604906 479253351 124638018 3516444 555595265 85646928 213312013 452522910 543699476 904210840 610558701 993175179 390875802 778693555 976173845 36157836 46946009 185520937 696059592 376300558 587631270 292202622 592858107 633583106 680022545 65532299 13042119 939218267 815893548 147898019 889404322 95966392 189369171 301724376 315683383 40658710 614759736 73520338 316736871 113219703 380615532 561764348 323368454 243538801 104058949 804737471 293574191 288271448 181747450 162412477 42505473 262039025 209499382 821477267 662979546 919660895 238068415 307880598 783650605 165978818 637875396 174556574 421239628 634247092 944905686 722658570 100961322 749880051 982200882 237168908 732508599 716978651 689135083 543884655 34854032 915363604 696751378 199778555 55598805 669399322 320119362 88655366 655747894 81754527 683424585 521581121 604845757 747142175 569789081 698142302 836037744 559783780 851593860 556338675 719807222 725325825 67470678 277310333 949581953 602607996 236939066 962330672 53623598 682883047 573393174 799775904 369133370 201905638 67886992 521642829 267348396 583135143 945489435 19512455 971397632 510085269 669065497 930305170 968004341 72262425 952083320 717942176 341840940 375265001 157911168 613810947 399433044 782650685 416464089 647620121 414368455 917254908 275968432 932053372 187399500 597028992 139792065 304447957 649427489 723020592 396782161 349020356 929527505 717650053 379874573 572181171 292945083 282822558 634111769 10101814 400217248 567775363 719035150 224181046 971901807 459691307 481832038 214127996 378781238 757788477 456407976 305784034 807028914 79063083 47046248 107268699 517432971 731020563 757163284 88735711 398838100 660102142 159214163 190286675 402525635 75823907 701351309 863511251 249147785 376618607 106145386 746137244 861372870 617769808 489464500 9723659 830121012 559557697 380303488 460075611 621230557 461093157 771425619 7957913 324446442 90141516 816508153 618029424 481437231 424000268 896716739 740734867 565002818 958864379 530960884 272512812 125983599 238862841 473604649 912767455 44922684 246593425 129467945 512740237 527935881 39843685 164467524 598639142 852251135 412239299 181667582 970340044 730621546 928278626 723470754 106372545 728907492 830150896 773734895 482002043 15861332 337066994 832862207 902523678 742209138 641613844 935485376 703225265 139101251 810325187 582792734 355291083 412455855 95270641 868458742 385428880 491150804 52747213 227444848 123678607 165547133 519237004 890091431 627689101 112364990 21243293 915260239 989193954 527788652 791796540 628095457 400644904 904170370 195634028 34067770 561771211 601803802 318797199 233324033 590959848 344289038 615812633 299061177 360946604 341042610 392748469 824183748 952593933 244768928 384328090 784462386 542117418 298958014 545792788 190103319 115411422 954499493 311272886 527998112 435849606 747456307 481112388 819904416 841948855 495530889 94140515 228689018 378192330 216522269 147040501 537369124 894331277 186700759 84015682 786014150 616491241 570934931 183293043 330100295 579677947 392958376 76761817 671909750 647523530 92294081 874391869 126061320 954838918 31333152 612031581 595519166 384820237 907283165 182331679 281547247 647147623 898535224 746508971 774553920 423937967 930334891 936011234 642441411 449436685 307377238 147480072 274148567 641432629 489017289 362567920 821108778 143182411 106044356 579553546 858313884 259047248 980538292 444666267 147353419 318703180 613399665 760613237 559007589 290478526 782102459 612275591 987959499 647083354 136335537 491304309 806331482 624963967 643460617 645451861 567768907 250012464 858363222 304633945 583546452 339885937 346544410 805306880 6288783 46220773 69118211 946162923 188345973 117422618 546401325 577060684 354647752 254946675 515582826 890623262 848194541 604982337 797269305 994635110 989203918 946100274 510296162 17256165 73376602 103869668 972249111 353442491 363330858 423364545 257559836 365835463 183310246 367093882 313732994 679573015 326981146 95897217 107906697 694373761 839015227 700406150 965797334 3723122 733474434 931247966 498314305 777284122 22446944 627723394 240742823 947735331 630297551 506510989 433600796 18005771 225211639 891412 639546961 407488423 19562758 687052390 980456081 165963202 804836235 379938852 99407754 838931128 475913167 75939310 226329537 738017151 432342498 314650674 29442424 745717560 204544962 339917966 642197600 518322565 902025830 802199676 771689883 211688829 368230704 243127832 673309973 744934443 101841663 232355086 848342494 169891575 585227823 586804395 764469164 972992518 592291671 51875840 597042125 114398263 389160395 368930187 154960230 9794165 908937492 59010326 136914195 779137422 940928133 862695004 973433043 633174873 859203469 439909352 435205573 981545639 630174732 229012162 668413531 532322187 57453399 737892231 772023320 888901757 781458514 739388965 598791645 69866226 524160156 579812668 35772556 561035898 711437891 525385186 625468825 904854907 374271947 82324286 566796100 999845124 196106571 22582801 153941634 184043006 5269084 900532057 900079108 988389230 873031153 713059452 347106242 184310213 479397860 172401198 590076724 401026318 671760506 102616036 956477455 339384170 853056614 39359946 861686068 349509177 801792533 143137073 648287058 327728013 62966606 590999497 441777532 714839231 841062059 289117723 988699639 884346866 303209814 164281707 669839404 375641613 161566845 301306638 984230615 641868581 337187360 295222391 546587963 283606685 962898968 458773897 929508515 520229477 55739226 27329595 395999910 866276345 908835564 136900317 194501919 423525369 456625422 529877026 992170419 328686732 73544754 519558320 830601921 702906153 980728551 374807830 686114971 236038041 242895847 608931179 912988836 182456180 759037176 162169998 734912709 341403960 387295059 128780866 133270228 404657430 249167864 245384176 749832361 41995528 453239556 251067946 632494253 858794310 483904928 979448728 816388304 963176320 795425813 749717921 89884623 880620168 881785939 420949906 819965539 433353578 940251451 711975767 622231486 486584226 491496859 930051923 911208663 261977061 843484715 746984348 451290453 447947132 627266175 688810352 603667592 843172589 297323624 116650017 506036384 241192897 391235325 939054000 584667113 984791390 702950903 751877974 315712035 444702692 255884202 870221916 68719162 442762069 364031424 642352486 417456194 547415899 287305178 558692631 537457008 277114703 581644492 477241800 222183308 867170188 536268651 489705694 186511170 177212121 563268072 411763835 506063310 910359053 864154901 313681864 628893004 595637692 55079614 505554297 622957371 469618601 484554797 441105899 530200965 780466939 354617237 264173395 491858316 181047550 965619843 920241456 194545355 771612077 969900772 722595328 18629593 35302656 791456949 394662425 866266653 232794185 149788091 793381303 856089380 497985185 926030405 606653723 907246660 176937884 954588586 642781612 783593435 254816728 233643611 931008477 560824463 315246121 176470497 345093789 736547267 820316926 518702699 134444265 556860039 603953432 607823549 988064628 323268865 981510964 594943257 8766168 212365414 200685670 298905924 848643832 808415637 493344188 263175368 113705343 147410734 125354389 542357771 682978757 89290601 943588519 566938881 678218265 541394849 292636865 27357370 129224763 554316906 265780086 228002706 863019070 987803194 974761234 101608000 333240884 776545366 414001843 321882598 643426073 553944568 433969281 995194477 888723324 740290668 769132030 307379612 652238054 550756827 77980523 697523470 1430751 111259919 106708754 63935009 679410758 202878923 303108984 391064280 890858890 500080953 373633785 500139972 963045431 383508006 197974395 934749708 866819997 970348512 511119454 976208419 765818673 557075455 19595680 736642072 464372149 415701776 575850903 104078610 527656228 171899925 828765008 11107871 111291980 739923672 711629168 835942395 25533757 562947725 389112579 229295250 704109963 991404680 47910262 914752933 189108983 121794234 734320226 794348839 678033780 198919877 226139402 35377618 979788790 635662496 54019878 493538767 972083136 966250210 601473772 238923723 727649477 163924432 10543868 633926853 713022243 44983015 990062974 319402570 306473271 49889270 221890046 166038678 558359469 291315786 11535690 533213265 818222252 464095698 448987812 862981199 323307448 648918255 285111721 66672371 777248609 818267055 765670826 119308395 180770230 362636395 467142692 569858775 829651018 355423729 794618827 917815373 322953709 225411187 600848380 526835804 829459560 392935023 792121290 858179258 347535216 262131583 997874389 945876723 106604469 411492972 673921592 365399325 514959911 90445391 469829647 950631928 298464954 523095759 285731484 296546705 178469766 291901689 842436429 784830991 140729934 685910774 44322129 931761409 573691920 295249912 300889017 368764437 166375652 873378025 413754240 631939720 690594165 911266298 519520651 263938931 162854574 327664420 72013882 960486953 804646699 507240477 483660663 347472176 366999140 647712366 865448222 754636822 577405858 650012035 522129658 411220263 370328161 447385726 964185875 766972385 528169882 803647861 706672948 626924934 839266804 645032151 411071557 538818858 366106126 863613858 945603496 788096387 973613825 669457809 948522120 618858947 90054462 887577402 77138686 4591353 366738398 411063408 741828122 397692389 970394889 249758925 182242113 303643245 886907393 424489417 589484789 131866617 989415123 687293523 707982457 85372568 764193350 249661582 541781736 209683072 637218714 863281510 432810102 838556797 397187757 190827822 407015911 271586291 766830792 707505325 409974379 635955851 130433436 832959314 799631178 88643520 759946438 160752789 165271846 961585119 42612142 333165513 588050446 977900343 452013852 84542691 610591712 397482447 746299089 546120346 923746822 63612196 785590422 883364974 958857218 907373418 347615956 723466575 969776892 92212312 970429425 587458228 48989025 505892494 440130854 333387736 845129871 487023245 921111974 104061241 684024205 858417215 413984386 24572177 900187760 111321467 712716797 10389755 625567169 673134923 68968743 25609137 537346907 885832682 414605251 210339760 887460469 514212899 21122338 549912115 314445180 532768403 185731953 474971659 450251451 961540072 103872575 960918720 204244602 930854108 523322549 546545159 301395548 927112555 150098604 127414896 71201269 611439852 915135613 989783061 843211950 611874696 45223079 597708889 473469701 967310006 882884927 265868771 149772169 945241258 899168829 275952156 309237195 201463643 951899135 621487333 763774693 338522512 535857270 455236455 224538511 313187470 749848225 451387320 537303596 557851322 8482338 192665058 63259181 343170755 977104724 511674611 942511336 133648834 654058046 54920485 950743328 785471161 447665742 847663352 11631183 250350824 729984786 32117092 482678330 1304758 884590588 554608722 885466327 459103979 27245380 567486194 395290751 547425986 713194951 741824752 823965444 477398347 987085631 43393004 864523310 471241826 704074121 992934015 308825106 843885866 999205353 565123828 450681304 123596215 450637894 579896446 716354806 39763562 703395457 986929319 48938082 423560189 857197538 31815067 976575775 20177833 792648890 55897692 505436810 105971243 233509743 230196232 696226774 230381747 561562154 789720052 4584504 378981952 104367632 980165758 534016734 82555351 13662459 336439256 786958397 554521846 990701271 172314880 215079871 755935755 647451895 489050088 611480210 313633431 158768885 706419880 525534133 195315815 78676216 237161915 391625501 149646514 623379980 353787819 231013632 453415804 431410459 165811675 235313885 109261213 488680431 394891341 901103616 476162336 461388763 791912905 960248331 989269781 387269277 952436978 800034858 407141712 585653371 326731717 245358893 696207109 383958469 750614931 305430563 355389243 690599353 867304779 533786005 17615275 485115913 919125321 175573203 499787641 883418239 359918557 952240223 812887339 129759158 796596926 566320633 487750045 557840280 386729601 347824891 797265906 116780436 362327630 898944316 437542110 536114509 20907144 977179508 219722288 450095521 495018625 907031084 157169260 268019623 352509755 612454917 603857733 564607189 532359480 855803398 90493812 484349330 843582563 318019079 792387341 632588032 565927417 500319865 200323207 863906200 210757660 332272683 781552343 110410819 508291784 830458734 327325847 136892091 291746769 965545199 787005943 220332751 952089575 836263706 419911611 645783078 869099589 153955558 685373380 951770519 111627013 666836831 561824877 717265653 347309496 269777277 391647667 900147766 13393604 988973401 743296641 474512128 659073168 466853784 451439003 353542046 420819714 126004973 634299152 376454838 283509170 31918705 337419214 217059287 971304707 975180438 736086043 736211881 231048363 606674883 398153497 676795652 51796513 504866739 650398436 41073606 975461065 666307215 471272594 888136447 806305988 188576597 151131496 832847662 480055967 753514103 116361218 598229701 890678277 291043375 870582579 29006323 192414483 560017423 150943477 539963213 825896619 730670874 610729358 773907583 685490142 702831256 119465828 780728076 632560897 106886658 420433340 439603771 855938396 468714608 500592328 607516676 103663724 635291468 365234176 815075067 824341513 483713873 400986045 468541281 105519051 252859457 254232640 529897806 835900603 273011350 486242579 173134232 551648847 198270254 530693715 754007330 4373431 419983850 137755117 872964608 334786851 717532828 139374624 70079586 619973109 44599805 471691135 716588712 389688636 992929353 314288988 501139959 911283697 321250631 469787469 634474600 386237610 727293308 254321834 406507198 859328698 610909889 278881587 891118673 339085813 355714073 84287768 674097031 202683090 22109404 526557453 937120567 814557897 383818572 510905340 38817379 504384130 485308718 648405566 81728215 905579658 995437047 979364796 955837550 544120413 628663275 292081845 869357856 128962542 531697211 528517477 145060596 843706536 348687588 450450149 75095501 67555250 280557652 910052921 20116155 448945906 265527100 814802912 646470300 40971364 678575030 447076437 382474735 610431425 346963847 340197599 184849457 769551258 710439904 686114959 123144047 824907398 616896743 746197961 152739248 339439525 315278416 569074672 423904190 176447179 993255876 901375304 920835445 185029195 29894844 123835577 538191525 907869243 513011362 6868701 446434212 602666899 357724687 879867699 136250931 221017212 769157021 899924032 28689488 332617214 271734247 8532711 191780833 392053266 645551255 89722027 820374868 814996494 686847616 243292015 401558140 11064250 289288560 294160875 149462558 403866768 604796625 594762245 452309997 290293747 475021761 921228504 310160138 892039830 208113181 92179348 800171028 126729821 583450073 466985773 520543582 103587650 19877974 974513452 185587045 939482823 25840373 472332974 53772571 829832745 105527906 796650259 597883836 189677128 342828895 805757321 683083535 421565771 983185173 153175572 738710724 746008082 944976089 249957957 22636265 172653721 796807910 781592450 704256088 600015055 417541816 693741487 224233730 777782816 571260702 641547673 804009871 405613534 271049598 9044686 14207490 490055450 258734066 959834554 606450953 951225118 729394753 615481760 239981117 845450865 391632413 695585932 405965982 279278031 471153875 789182609 634640009 54934958 647370321 538285151 37541897 633538783 663694735 803631575 360025170 102866747 807589018 711814319 169838117 767190029 981771412 738250623 1701297 346903563 712897099 95293376 308657845 848167534 42300897 577906376 323280742 885345763 617336269 62797181 144486024 213431891 168249207 653191751 643867167 73239197 840903230 628337066 612927466 256988947 943458124 357991977 537032342 171098549 959416476 597785292 481486647 802422242 136688691 498207079 889436458 78037666 792752330 153596569 290121818 992122269 841654531 967686411 394699236 99136836 171417247 983270936 673802442 221365811 479360567 619442842 493673863 129756220 377975 643105743 434193095 459667950 606528834 384749679 894344635 571319727 213079754 235444152 264615517 75991560 568140431 928289870 832787223 538011747 711562275 197408968 892135368 158039818 30403107 29682376 826547662 917039984 158015441 119726590 855727683 242020054 145621373 537033118 489682591 709699192 317443738 363985681 822896072 509775694 101181089 682076513 296543717 742259880 497665242 689221980 546514206 547903192 546233323 523045344 860086655 318612396 412513901 214413439 738990137 694001092 161021135 672315927 770003256 73262200 664264526 7481841 185104964 68745164 53477322 340634480 10592941 857453800 675259023 31737607 154577487 992034811 345436893 943843318 109353568 927447845 418476879 977034459 810876220 397260264 542881189 380794760 190987362 342443071 238947077 903613358 245733896 221714243 606781333 435280187 498024967 586943416 86297227 194252383 523127257 77687978 484711353 161739232 363723093 897334344 196877813 989932465 916880293 781799017 667630864 915022893 152333652 361317422 381096019 33848120 320961127 356769184 927089977 490949247 403145661 311134157 499868512 270958866 320021630 756869399 562625261 214863006 562312130 546604543 379221576 444718459 336022125 752252450 332694280 69052387 633179402 918091506 366114161 959492588 729092663 921248948 102163949 686923276 961623140 675078301 856546344 20191916 554192966 519407659 147988525 64736315 336931432 668276967 684475841 200178146 153940528 543809192 26856432 432512679 668355142 905129035 351393476 136728572 98200995 862039179 316091591 887509859 194972398 3564690 118015941 158005069 692464848 726536668 363748064 224601508 635026126 30273982 975577915 104662247 976827828 483223150 314248017 518206560 311906079 867092763 859331483 567639417 449367940 885269710 92793663 55799158 831969107 327403188 886789919 520677094 592083870 332143162 42130073 88623165 516489475 638221837 587957569 232272046 900375974 819445124 950461957 750766650 240630295 313440855 856530747 313913837 678322852 524978618 854599370 915986011 918514390 589787075 324762644 82335889 555118217 45983175 128203277 334296536 479926179 344179680 968397862 544366819 720729983 936150454 91089233 712897441 78624150 425842407 802303359 707794812 79127750 188420570 757707293 688743974 885043673 338196403 483870122 997564524 514856410 795596068 340962360 864557173 617168810 578795093 611675047 329330384 890242793 213552883 146818030 693685266 313424590 885180406 518109159 750186978 903706118 144552257 102374536 237089674 365704641 233991931 109983398 876294253 338761556 140226987 936259476 324127671 473530473 405355205 823706687 284718642 775076047 815783559 451403697 317865209 556649 235925635 145510640 327848823 117652424 287679858 229621874 852481440 261769376 105034426 971832846 976821025 909956288 919405599 662492583 551483368 991165967 375141651 510154928 764398469 860564331 576281692 296055586 681822901 319999299 208622049 2435192 578243290 914530790 907512430 100871012 154362175 943449113 361694565 225314169 602168906 444695741 951273916 948183847 948335183 788503794 476904863 190178754 528808080 59751223 748588197 459107228 689595353 82702093 379078877 136460509 184434109 437562696 56842863 30932151 657267770 353087931 88369083 172146311 348861106 937021254 661314063 619557570 901388879 579763117 537684910 717695524 156543432 404271405 53896444 892814011 644672080 983627459 991649668 427473140 366038361 863860270 397171981 783134757 199477979 553923213 597904620 541756103 637167898 586568997 268904367 180542284 880915588 243227544 600992757 923633043 693596131 583003107 447043513 691163804 605199387 432419597 374061670 719602144 98859377 859242359 741488759 574777809 405876821 507576128 280313636 920747122 563223898 195292937 80770208 514236092 157007494 643554024 835761478 404081909 263062073 754032875 835961079 749694446 23710814 688087541 789846836 480046045 354751352 992317406 6334967 563771931 773336315 994181042 941618684 112841078 789585601 130306067 775859980 173403851 657076182 942130726 712699871 729113072 34185550 805416989 476731231 527960508 141059652 456510790 664514142 689208109 686960659 688597564 311381140 575338153 79319194 653286779 364007522 950669451 33670708 418010576 1121572 4079967 768836526 186375150 792534590 824322251 544561469 81166726 570003986 883983854 975165652 159870943 159976710 522155901 544477402 380938823 486389488 986031692 905544051 851718410 593278752 454051147 563666649 479482122 571026448 835860568 129290653 723482926 136993664 683787275 75077710 196916118 740363107 423629114 946887475 616689042 934471621 251209142 600477433 124041691 700685962 504155102 111832433 523995803 130152123 778917918 478380013 321940685 624899033 89018426 233588269 529248654 409666969 291379286 667509107 151969245 480981765 601488506 399042623 56452693 7134536 2469540 416477604 105797559 37496189 685501875 53822667 628532534 439122407 837613854 511272335 922494725 625598706 661190804 199609845 96324012 404423934 16581103 174840210 465474151 749097385 295019959 847902823 802804607 777843153 175736402 973349699 233608849 541837935 529243513 48657682 945908691 515799671 742679622 236190257 435482709 419684954 904715226 837997049 979088947 830137737 599642263 632832520 889661276 164932171 694579380 334095332 437338047 945683964 474850231 714318336 56637748 112315396 563473041 339889921 706594927 204141721 799857366 443991049 809783050 213122424 772825383 550520614 277826324 290401815 46448812 961138661 80261983 881731821 483908657 131708248 440320174 4010557 552590251 967704022 250479935 158602572 210242605 667411321 294443778 272048291 356832986 636934491 554760247 780418954 847360070 717406578 327768587 253782165 561231687 270696997 3101665 64360903 14139067 49618637 365063871 916179599 765696342 556297431 677678854 587211342 225630233 812926839 499537903 411248432 143103692 564059236 135141625 968275291 925530589 839623710 657582675 70645059 284619472 930462306 847464951 538746603 17552882 552974451 881592024 546704551 832714609 33283247 422543570 917061701 322237536 789173796 1786342 137205624 36297541 531722146 903836711 935949473 759415722 20257394 207749415 205672656 145321686 471768306 631241076 554361267 293997495 18463650 479039517 751907859 528905141 327604987 310769097 879752694 403918674 70648134 600363036 588385312 542114035 752181878 602609948 197195724 50507553 286126683 817874195 822989602 674009443 617123815 848836279 76727515 75994829 262383140 517426111 872638689 298562512 981814927 856939086 905981126 22324431 431373876 638083129 620235654 927566148 546241931 556905925 444215470 500523158 247285221 725857317 992032095 445563919 670886700 11496603 118710230 976399252 453776895 72457345 438412270 567239390 820618839 267244109 56767562 893530430 697509799 674519952 196666947 150645916 531069442 245831509 906112110 632348803 874960903 184548481 453008710 856279751 790204907 766040701 329252339 520927052 124732227 383779257 706932 933011498 111337961 619726937 3747092 68817535 792848519 881237213 644012757 28126142 559262222 812655076 850350219 361590652 435961998 632784901 782202298 772570145 592975916 848592021 936160360 517257316 301751338 582693924 133350516 544000582 586749263 159849146 795110414 680515640 538005585 51038935 817827540 912120409 559721134 836651400 566450739 751073884 17446104 810930542 151557147 141843028 418612491 941009044 473245659 893222542 247143138 680819696 679413819 247663984 193339181 175616399 214594455 162144449 348715650 574884463 525804778 650449422 321343232 458317988 99509414 513269705 343667755 332754064 579280793 192492808 330638924 593398006 23669007 547524173 81428050 269461024 270484267 589451727 86404199 362644502 423155960 488096385 44639651 264318233 333207553 145128253 507618633 473534012 98910868 649223290 238646059 935520200 717942817 844444139 826534592 701225531 856939086 776399520 999360964 33457101 293470729 488658111 490876774 489670151 460582150 291136939 530027937 66091256 375305361 328000629 711738915 961770343 192027255 719769331 67996327 386045523 57542159 829782021 464343588 208198273 208662232 952631763 745384847 106254915 329250795 620816217 120505546 625477438 278368010 718534207 685445667 470408633 606263534 252117813 320139861 317852778 940812516 566859958 403065840 178711241 779122605 126599951 674391726 666027422 498159895 185361186 856299759 452663680 733951372 692685459 583082958 699185957 531564130 205170962 875566840 19738614 562106612 558924437 941196696 641423762 256818923 634692910 145395906 266444518 429954528 475115070 103574302 890423567 375889312 94874379 321936862 480449899 521550644 852326458 131350928 577489661 431276599 165506789 924286939 434946167 852755313 369504780 891836903 514502786 931744933 110059335 669122844 244358121 868210720 551843687 762257476 661038609 414395161 940864305 110375054 535802243 257648664 556016839 645211450 709100071 732117140 238419606 759262301 395260263 441261000 578706672 691275075 367377601 849909940 970635946 621036677 449626961 810286638 473643588 33244985 450380533 230401317 591173658 297559181 142292676 637914991 178587595 866788623 199479467 35546726 753310507 936149528 29263189 720606186 99251222 561413434 924580168 423330875 261233617 228493199 594635624 906900160 148142345 703989063 1998460 838007466 982280630 341928760 705035057 249242869 225080692 562145210 193379151 686512887 237627766 322416999 888453463 530756212 545218953 820309237 86385567 268755163 687702347 437178295 96992789 218512475 722502648 348406854 78553823 750145170 979844592 646654872 729588925 345200308 270409751 578427724 892341910 726152265 320410311 214848552 979738095 507585895 315508250 602972834 692551400 974057105 398816424 184544907 649607271 624334434 693229331 699793726 869196529 529670666 37759188 303524948 627394653 730776580 403091110 598744677 645241481 403893298 429965160 649080615 365192125 32299531 313017482 522362622 877818565 431592066 813565158 543724255 599554989 83841017 329159382 632165507 879387262 49929658 726483492 821292209 517781426 226382285 890490578 601065467 505541460 904124151 728147145 918201533 506323694 594854582 636661761 714335080 157093843 734287778 953858231 367975571 761738959 260279592 711006711 609005273 918458798 420475990 970611577 587953814 657244466 622294091 735522846 939799915 19029595 587816245 210170340 306066351 240525027 411031079 17305567 327529547 926361993 950557276 606255226 786501172 401682850 226765488 785498003 919496446 325315253 262124259 562124897 533732835 524749677 782854077 600226131 80846415 850006876 37372182 673352684 814031032 956203286 533156669 347574961 97844066 90159459 325141359 990035000 977718275 334366885 169260606 410702986 837239065 569615845 382402423 557129710 213308696 60425845 419168573 622101892 163571721 31840533 117546431 399645113 219196969 987853366 470778497 70657408 268747537 868292182 699305646 895815130 298028047 836876757 273953075 391948299 821413475 549379404 955051945 172526874 348722901 291270965 603861262 51814369 23318942 635310338 555572699 203750237 893436396 527782895 683706115 617803531 693876930 657946318 493495310 240305973 908019725 983115786 153305040 294893920 312928333 120476882 453560361 916480058 438925200 193525134 700484091 996023330 637313983 278901133 80785670 291433787 717814034 884440731 980797265 673545131 355768579 841792382 246549602 861592552 370871867 237111554 612663815 985734006 236161065 306994648 958317216 477419464 742549816 288494811 310063790 396259171 295966344 267835278 791858733 87697886 624989444 755122878 101224140 538907440 490424760 538654505 980016120 592869065 500602975 513753724 603491282 28199118 408294847 318330213 477896505 253987701 608366724 951643586 697258446 540958228 597869726 573414158 252233334 294622021 85058225 512067227 42620301 12486249 447853353 367941753 204032402 491376286 376968770 749404462 422231912 905261332 122738386 947340835 156709304 926378287 395258452 246715044 637965631 459437162 857684190 906260030 519686709 720457735 558668818 720391607 135637561 63639000 811025686 803262700 137993683 956696464 160303392 219461557 432019959 334480408 72962275 278825606 875543692 841867395 114095462 964179824 515055653 159186749 279643774 313342054 778830964 157149255 910821905 945634076 627457837 846971044 989824975 787911185 423304393 589227997 336951838 634628087 997397490 130233102 810337105 366925044 493114533 439386446 321368701 351605329 383300646 842245849 831710194 888818285 968698843 105393541 883038297 844234733 117842541 313963080 580709195 488320001 138406895 594347046 702234898 730599323 879738759 418291775 638295089 203678338 247518580 212592671 206480198 42779757 106451869 775188717 349900587 139829908 484170256 109721075 650342498 601396272 269373799 910948178 844840878 932244846 899973115 871435169 237010475 574086912 364217428 138113502 576500037 694175087 989317780 756384818 753469722 496604269 974339853 276385805 635813409 103089828 301050503 744452460 633604091 18870196 716045554 791852222 740914754 639874288 589908216 531286868 610572780 796712928 113352411 72943787 171378418 640297118 841813429 40766538 351170894 268973168 99857639 444126279 743802907 502600626 889023490 516279141 719187675 220962351 971251415 750337137 196984679 652908526 292282917 779521215 42145673 961812647 383292946 858626446 614727031 137932595 125406317 134869942 503429415 305867684 367019400 344362265 564448504 262154547 88055913 266600842 168230622 641029977 791982404 90667432 821185838 685252895 679513125 634720086 241298891 741487679 221048854 349456465 942405127 7157739 271521295 517066031 625611342 189061092 440419792 793498151 572843656 584938296 696324392 822114575 609212802 92479344 435538982 599978019 275804258 745484325 649569302 151066024 128117008 188943430 90815094 264572647 723907235 759735854 767205687 38827831 746472980 283813528 507815463 684116523 68004258 514021701 102049446 180631610 165970729 66941292 993435828 97182841 49998280 12726972 816519378 245142167 767799918 370248063 629201962 70142723 921086085 971982890 620518557 774412943 723693052 368871308 798473576 229527834 940228679 848942327 305885458 825925370 356878010 105029030 976489430 528529376 829492044 668854298 130926429 288285043 299357825 329556642 574884291 423763332 748570361 953589608 977657646 593816238 263514419 561097992 293907714 909495287 33501338 77913029 974799527 850485851 444004154 368822043 891522349 652217653 862226932 788162424 310004293 565558993 217402950 715533578 563696436 400033981 266519748 852169406 759912918 887776130 210467268 787544897 195384380 745952685 220541970 905215125 973876135 194163094 285824825 151690457 426993782 779147828 187415924 375823466 207738337 572699338 515530822 575605048 323010304 402512944 497725170 381165701 983088879 696007850 633169366 15058997 531836185 183570237 498109442 695169387 250665247 944443610 93924157 527535074 930505469 308035345 150745781 456480583 788429020 838729914 718932033 740384962 643857377 489308601 262727022 938808636 659535197 621970015 67185368 775394781 370137407 449103855 956556516 241000761 118200326 794015713 572914019 118504267 142600664 447700125 970421525 857524183 494893697 362453005 45314630 57799302 287304291 102896905 117599838 25134229 579365617 33572330 324870237 188490218 393716087 89113141 10724073 124562573 952364724 36136424 699779909 334853608 51181546 671341109 804059979 877706236 917504489 2682619 72483818 181825852 935782202 292658486 833219745 636126661 881457095 461828595 775773283 481953863 872014558 773728574 992922939 985388814 441156920 646023085 106910884 366407427 444014500 219323597 616769135 519792967 920092105 359469892 858847456 249091961 32770327 153953193 268575506 794346793 81151386 361833877 627870656 403700636 339275142 784508141 456636410 14827120 569341377 724489052 495170498 957516450 461561039 158176397 418599927 249303683 228758609 213751767 694485611 533434970 624911402 442035665 814619771 667500414 547593631 39106666 59268232 354035790 160276364 412409731 803108771 190987079 751941161 363482688 945756935 904059020 108943122 11399666 750376812 698857428 26396681 464475657 866420404 602076852 233360643 960391804 196377892 462959806 378059050 349051086 643244678 290909516 654056830 605414324 312306599 588759466 730529894 204548267 53645430 779367939 501887634 944881918 470385994 926842734 769509201 322253092 221788479 537633560 408410826 758224931 592190536 935931503 744093287 410950906 667640586 651550568 781634547 28595440 445646348 604307292 170500016 934392693 129567279 67397923 851543414 948232241 533336221 623333942 345316322 252211707 267944214 256590618 571121152 468472269 526550409 950071545 245023075 964952152 998299147 844790769 195467935 142482377 469781825 322041286 553927681 522885340 187751820 903890324 424811819 187042895 304397577 167559939 487730953 419730926 326828834 378276392 598728613 224071765 560225237 827617595 968573327 349095436 262855735 278785990 614167918 563200386 594014136 764970654 53213434 632977666 850227086 268771551 673199612 872665875 296111679 460360078 936890137 962132987 903713980 167725441 322874614 851064328 811545044 43057811 144583788 321780142 636198500 93827650 810607001 127026991 90257370 597855952 876658809 142485403 56837953 804847855 235912685 144517205 296280232 685803870 626348244 197027511 170259746 137898509 963236822 450149718 311847667 370650738 687345160 498682786 666264339 110165754 102723058 622904414 389905078 780326899 905041624 511257775 958170589 413604493 235513582 556630713 520808744 804326064 66941657 792239516 77875059 488405917 605789526 390828667 801096509 905268296 355843249 872160026 232858073 60536634 855983206 269227217 257441263 552399614 836344955 498748714 871891063 655271232 309231834 183204216 216438324 133754301 957766811 825864071 631966867 956705783 422900138 79708436 772331495 111051351 476537130 293850442 274489398 562559650 999054924 312445646 675200848 702236271 192467299 325372734 854790639 223239052 789505479 510463406 383351726 904869591 287922921 666907130 320446789 216944184 102956817 378363717 187274730 102152647 520387079 161012224 944108599 947045184 859414373 755333484 812877213 685725997 469169182 784303332 632137257 157791099 802555558 604204137 983176947 479445782 552740008 100799481 800808281 583072479 511712781 832710617 712616942 178657958 904485504 179405373 363006469 780306454 394342910 417790670 627278537 563101461 528384027 55493964 611657212 175885261 334258219 813421914 885073058 244815621 824380488 507022849 709850281 861588058 178626336 305412778 825441928 703512824 422849325 186514402 111584213 808485079 429421313 382263645 482818375 347288251 249811849 876958791 821531660 419085224 287246523 155780371 511146007 529204493 717693828 741653708 907412993 533958497 966310317 328741119 918907017 342711842 577826227 851945597 565954852 323178061 646544371 840654093 577710332 951347917 254528028 685616026 93094567 83676034 121827003 88201579 129036552 903175114 639075995 683289901 559420270 427405319 837669652 179430544 126945907 758713126 822121578 497368890 186251326 92425011 966286341 45469194 240053756 22747944 227166964 520695420 365190719 298789832 272292467 961351341 791782816 692793969 611427270 605584830 112522924 625655136 792585549 784414016 617758704 945992889 41027715 529947427 81751309 15138072 446160558 206502759 298145485 883263363 999665101 966882233 656594838 349524127 975617173 653361148 750023647 967525724 178329927 50560430 811163690 490218912 239673103 418755703 624750720 680462732 481027484 619395193 721490054 383799408 439352341 758747415 297079828 421944550 408724236 996226056 330916865 355939034 725420474 593902074 325824963 761957956 656589107 440023522 344621919 713461247 59987831 258136645 83537173 225111809 141750523 356526105 976093537 229276835 789378507 419776556 258240277 894022172 569593461 314486451 725836931 107308938 175646894 784074428 240188355 808651095 548913174 969780992 151078490 744904768 43274061 344927981 670945595 460375341 460990761 334089575 317543304 7914057 290697296 74050866 395025147 462510222 852282624 294660424 524255305 810396552 588326220 352876566 828829772 469117088 314602519 396338109 375465746 862748747 590930653 895993316 637745566 697512024 201868958 548441342 410189835 517140950 455658481 886183347 430768947 366297352 340567817 225509406 528432174 241156001 498702187 263973371 33647170 188923772 943455266 594977734 744014201 637712001 771859297 283305657 130558802 236643078 512009445 116241969 31644293 775115482 39808563 406825144 404749331 922863184 803246871 431224003 508129442 248326645 249663584 443054600 908440726 978453014 725983622 930766222 119763739 468256474 354597786 247006790 634802887 873228096 236190251 906612155 180891938 22654534 571569363 293146089 970915583 163319367 350925462 20403234 383606712 995622228 82577208 877935960 224560517 638543121 115288699 944374167 473540800 30352819 312493237 727068170 207618389 200128359 372525217 919578818 968486102 689834037 953820770 349107938 237980045 509541873 570602024 228285414 129703112 614238113 28778819 703815381 120951300 57554256 875971016 618132310 14143085 512113825 264426755 297937103 21360274 323946279 759307424 948959192 255602292 371574082 260062642 323544530 665245721 937946333 631971384 815975939 758472487 475029613 153636790 3534606 867860854 609510574 584539053 193953335 283588123 866687059 620887914 184993049 583274880 616643080 558956335 720443984 784203499 272720462 883899024 944049883 93490683 495979216 712942009 171950911 885175589 496589971 290077506 314752844 3936585 149899521 212128941 708907703 187731018 357669468 373479561 992511353 44938407 297674155 827722632 219324257 856241780 298282961 949098881 256401751 410405740 634713370 366317249 871018556 106807456 907427075 211261205 120633703 69926306 999460105 306335084 525449320 194775347 468075156 747042864 81277135 901718225 332244146 215371347 429990979 726030600 793766344 9754206 425897899 447969325 87377107 810528871 364376349 315769225 711070812 667022921 361753347 545210189 862990241 58383273 123617308 463786556 182778066 422252416 67441310 544562636 494185514 659916952 596421086 266983262 973471936 558892783 861979953 313268501 97272395 701771953 513846045 550140120 983555358 629420302 747926430 433835661 855566829 368349276 743086356 467653865 308606377 94523849 39378458 171417136 859045945 449663314 322850834 986856157 263559276 28527629 839899949 388598207 654838394 632545304 362293423 147251820 306571290 478164537 766411560 903560253 391097352 209138732 886833256 429762404 154779576 500611559 509296850 992491048 56107354 423606143 54022194 192410334 102636404 614681153 509953364 363642268 325658580 334994138 599815654 770223186 262517781 419483103 130440036 629961687 355478494 852189872 688257571 410944704 441816482 383327469 76920377 728084072 115454306 924314067 511806195 562392065 987190483 430194411 973221969 917798355 266895260 41721405 352862249 359234376 5580134 10394525 35034719 680672836 404886046 420626357 306499735 453469871 529610421 846020911 181773161 294762573 800866518 268408170 650370525 770720959 919011686 634614877 39617282 190812529 160034513 182427666 649509499 90758608 814806055 659564786 691052987 131077063 456811192 954200940 403300925 48035522 466019884 600577759 652748595 54638537 894990578 395688391 143785602 942329342 109901535 39078694 659516097 41099079 744317180 315525883 873095185 82459352 575091798 199753218 257863620 307562752 142469818 145089375 379191923 501589275 469680793 757091180 349218465 764985392 332189880 569035515 613840430 955931758 884349610 729563103 35936595 805547966 152837479 552401325 875806944 404683157 45376350 396704241 27045567 233648092 549082622 766941718 341640387 326315663 578318255 312739803 48025000 681045436 423891144 869242648 153801236 132865862 169220366 768643368 436689697 993871065 656706488 961572800 347662094 132116295 930727532 159921270 522941100 357034580 472630318 764731353 748976046 632755230 66600007 579107684 272287838 678015016 717554495 921824960 983917819 949737928 50873895 743828114 501323751 287075680 717921764 614107813 825692894 675812270 673056277 825651572 83863887 649093833 355174823 45036319 875914659 992847540 809604317 673132540 558279775 426947244 113290639 615958782 534285484 80536483 734117133 959012023 19300004 577565417 862670412 545298536 696800760 169199257 955247583 241216798 706295649 650635292 897935398 517548346 531005335 312298260 226603322 986962052 476472571 343130030 938295328 193440748 336126557 315406104 95761697 852058977 430493825 601103206 354987179 719144001 762880084 59061098 831045333 11620744 182734883 908076019 339972648 467678603 968102260 742911704 658395182 284068945 776611094 815237891 762741200 646778689 308060224 853921102 736284015 868542152 993995882 324084112 630494332 418703144 919641150 780713237 543490934 785917710 84581050 888475189 863933030 216226932 828450781 802427143 333805122 544493411 856903691 623699284 734212898 12026856 218164553 192729742 657448152 125813876 213181508 136837087 142905814 287055957 420794379 832146711 929172344 200140784 709927776 23755900 377095216 98946923 120550307 701635588 124703341 797664380 126092631 308726326 21748219 410307323 410820252 362681118 80312785 691420244 343435111 333514480 444424601 969068337 602386318 770739993 667685934 121628200 304375216 867745817 675697539 495297758 255462671 929591333 238607834 393159722 261003748 12570358 437592641 132090752 124435537 146918066 994462513 677954951 581760210 458391635 812813563 473764640 264812701 911844935 755106864 753802308 9488729 833301564 274119540 40203845 176949376 589313041 502809693 290853374 916603259 112181031 643536070 691849058 935956681 354327790 644303882 149797160 469052392 517497735 971438674 601548753 5973459 152882130 216188010 898732110 772217365 411829827 407213705 137405607 998563225 358905430 675500552 569683684 837619703 396423212 611860665 784484286 244480917 228190591 253971576 414978361 148389844 926575354 828494846 697357172 681429279 74349044 830577125 723651446 474977209 306829731 301885824 712302643 148952541 360293667 111162163 656486247 908434534 109787688 674511813 425599255 620542709 523484682 122368099 250707980 965038336 693706544 73059995 613372854 279223758 313201382 315733143 921332242 490783784 364744450 101867171 813261476 637642688 956667815 559557389 135089339 284907343 624752047 588018574 248558761 514935375 632201308 871127925 984510684 127349081 690463710 72453141 33922451 194219908 787183308 752786786 390738019 2416301 242305907 557446929 901823670 569439583 88199057 74811733 135462122 811978994 662670152 286132686 521045335 202913251 383186415 127573557 636629885 112045710 951639935 393631847 498614987 220719596 770733602 845940186 907864719 326072853 779110034 739705022 404016767 184779545 304276384 931288225 371832484 456962292 784132287 765612863 995110114 954605671 151992835 423382702 813901294 813833631 83266443 843619855 984798831 399437582 346069300 966457655 366202796 4415792 704008056 369208306 977241050 983168942 636851395 35464879 965426311 184544039 542153656 733236288 981581585 494827618 369670599 43132847 11799047 892434663 59600562 713754074 902551888 37444566 109590018 346254115 691034856 910721309 218113167 52955800 38659929 593908073 933944083 180796263 450424203 396551274 940860111 563640144 295256142 14907858 411686725 13176126 353675035 515042929 140337503 341124331 668590408 441253809 637072066 872129295 940613537 84020988 935152404 394166575 578918123 434558616 126511647 797958143 228723620 822873520 73725195 213188580 372257916 717273927 640257316 121590490 382471262 745446072 602783737 701128083 606522078 508233282 242329633 134581061 643964504 482088271 422907416 983012746 973858852 652876188 280812288 301342996 95750634 910415017 769174536 862135728 931366847 973290746 767470332 257405141 181760209 355800848 541553278 415062160 660066773 841061498 669602927 830345285 756832146 961437791 850337527 756535039 387103235 213875129 167171174 108301358 567530409 550848290 652088497 791005964 555391048 794362415 296141394 626324808 801135684 545560637 22793533 376628658 206823116 878014777 246381473 78045808 782909708 482032359 874423474 890045453 344449291 469028614 700640675 336495290 774803348 819165483 315747554 458154842 10336368 773143684 429844780 455161493 27634506 249300695 212368620 668874281 173869204 205341951 265454560 606009646 985590067 24582876 819438707 34707887 358213865 622265392 634685557 838225221 108955484 967261766 345884966 383807701 255096888 572573577 70138353 559509617 85314034 969373539 46749994 338941777 624708004 806197128 517409237 642652335 132936949 552866442 993696640 115344671 344377624 158559753 370620393 437408803 746046317 377354454 949318912 521293454 621999646 196927700 371830549 14000552 477239407 207058210 232750434 738222196 77500525 410694615 257594723 50981975 23089128 249789462 897342535 883629506 608626030 398371455 758059198 401346746 455533496 685761891 792396978 290081187 810912552 317638943 260001639 724699462 445632064 21284994 855503054 689711404 109572567 420851461 971898333 279989989 271508245 568824677 641252065 639579951 88101486 323427469 294710114 979434700 894691885 365560850 685405545 91216363 379549862 680256634 946556606 430757444 706172031 351998010 585554025 784349042 40125526 243262250 54505738 314060451 494300559 335839315 879466921 987823471 352236218 477857800 46582174 110779294 730540873 666605550 906238559 383990048 312908581 867855547 572161353 522476825 595948597 587408283 479527875 465768118 553858492 66092172 86556666 541352731 78102452 100975373 953878934 830687223 881438043 925702586 563302851 645832537 879099278 491739943 630022655 100345536 572361638 957926644 942179488 79303285 857074674 369612262 921562099 281169113 628465357 642501522 748887118 651761016 466296123 641430691 451178033 149487415 905449894 111127052 44589588 248692512 652947565 808486745 760203966 697330688 187704403 551104850 368554161 995880687 918148563 931404542 164322080 991255174 227862361 528318894 150846049 395718227 841419256 116400073 622125241 491692058 831190185 97495107 660642244 229298900 352456295 488821383 874679979 428783006 60216047 324216356 698746967 538974730 353193991 651437784 199329002 616562506 44347137 607473784 931436909 850334043 627100833 585137397 610647890 520253997 659032025 223075781 910267496 366117270 10750136 699387797 520786906 55332270 980660138 313723163 792547547 511658318 732934305 387983343 131213201 59225923 239736981 468444568 139466103 32998090 153535887 780857415 677042184 366644532 870741026 892499497 425022943 756908886 492583508 312222252 568810466 704050113 760266383 489861631 23792564 400337643 491785597 783928089 789871781 472394849 493416153 735456015 248558758 178489407 270381239 344442477 29286124 832688013 797180435 199740612 916138649 699802873 419056515 568992032 844697409 157271154 531153515 122875691 431109891 881407228 583907277 772377884 748290996 798206541 554311873 915860324 110624519 900929698 927520073 203195411 978327012 339489327 452156117 518255102 255274472 18548763 744235572 874098294 503103391 293492359 283984330 674423718 707259500 589519642 407704291 452510091 993904890 937930952 257705581 153304469 135262791 808363501 981092513 60173122 52375199 358758261 57177945 149372455 9313879 555328739 292786730 850930302 698271029 861105348 956229537 615286106 559774682 710036637 683922550 760424852 438356640 899890072 11400223 311601393 926865402 701544597 981915558 331222977 62403853 693425832 144305895 899214558 318920334 973363102 919107134 229470168 85150731 775638896 769088799 723300717 862630529 250915781 581888640 903179774 181896984 512514896 494969183 460255732 355923109 470795608 853587259 252927209 702011971 40774512 504318594 746376851 460333139 136468186 185517143 907295568 674736589 918120536 876298155 223789581 320016427 643196729 616833174 978536848 945998738 552782801 6555254 556029704 589612127 941003721 773145971 626284887 480707566 4139898 817069002 936582658 293829233 570091032 302816115 728268353 579589918 7312505 477287571 404253248 383512611 693318248 48792108 75688467 458639386 955267890 725622749 516845107 634567071 563838854 105230650 417665892 778007854 950344067 727502127 194164580 563688549 925376750 329353322 987739485 405518212 198284144 966860331 128048052 792933078 121113704 301569291 617470248 699894911 101563699 569581102 768211768 846700762 318148102 387894144 516870415 392819639 285031736 954386352 836508174 447301817 775456937 134287084 517829606 379018728 428403876 883037130 616438757 464305990 274077658 78198 147809798 922720506 155339146 384046833 94964947 334974388 278288982 717787877 104903190 537418294 676764813 193426460 133812015 327571872 927233746 485180426 526498105 781869926 360168867 646923178 805726728 685045096 889265943 779698315 247522554 217330189 273973465 627086446 247782107 916197179 888128068 981589648 784190973 35926863 392553362 599866034 418292945 385018868 353465149 478738693 342531568 154949396 5903098 273016315 580182910 973099310 186924253 445362461 904580269 955718846 461799424 514145137 79943443 549453249 579339847 561938835 376741485 212444551 277003311 859174772 722362511 720786271 897177776 209187556 985311211 56052378 304408107 897146027 965232913 714652956 709064199 928460091 361291393 150778008 421946740 388014354 940030423 733776647 69624624 138819705 272684915 488790700 759025148 695577526 452702316 153223559 967121577 394206573 327693293 242535115 91180832 438743810 73990265 482426150 577583594 660952611 771114034 172983103 524099592 99599019 473404367 246073579 461731149 158044248 301260584 520968040 30023385 552747874 963509007 139156717 779939350 13282177 157407479 627434532 745468892 548099503 801896314 33196884 337028910 963283981 285316466 660251768 5784399 170654487 241890294 476638094 501421359 750595401 215872785 994708514 19568617 591453193 660885774 529809049 953939441 665716464 225845225 300222071 518131354 703527041 223430086 345371407 314123086 610936843 674393053 44455320 53778540 984747510 190531937 131184481 151505955 557050977 334835701 741447108 908529019 754564823 493375888 45212544 552554098 983253476 496385787 611513285 753173770 550534371 888172781 688500796 190605328 305115884 399687569 907240244 5919065 719216231 748350417 344693547 69950374 452958522 31598394 117022456 915145588 410384577 117473079 324346759 727082615 541079124 661513885 524036855 472913870 538515787 290039245 695110434 26677741 81079983 623910342 898506987 547689759 573024732 385018641 795887207 903151818 220594961 679696719 311073982 790728299 514937022 725423366 80647626 723535590 558852632 211428677 24177947 83425492 941014765 781355133 63260289 999888763 828934477 669123165 227551429 936774972 530151433 607658088 325045382 159926408 859796183 973573089 469924459 416053992 917627660 158856151 916834796 323656827 68827955 549268458 791751283 694774691 682432549 876791692 399709063 499841485 982287343 966175405 197510814 777516467 366349331 2481685 311526846 90232536 399354524 506376107 426768282 99917310 339023529 205196160 6537095 646898326 233118612 735125504 936789253 14670370 352174714 703682018 654386164 293564185 558197556 950777019 329602737 883381232 194486345 686828082 955583712 629034959 696402957 953383327 734876135 895655445 375563890 970990045 517170770 821623310 420381604 103631417 962518695 318834353 913283908 192399754 407957564 753824311 112701178 632192063 840437119 643637573 200627704 72505805 366414595 475744895 491608667 893891809 356324511 9722797 848091206 199923655 461409862 412421313 882238924 411705354 724708892 965316425 617778936 373440226 703421065 948071014 557648542 641947835 253171668 290527342 901717715 202452223 756910102 42247437 934957309 941015370 664997539 789775368 985566687 527871457 461077417 696542118 1635843 197067598 269989503 839674546 239411880 778328453 831002098 988097969 314084774 454293186 958661763 373779566 630116258 505626973 280432349 825714958 896253457 9020910 420324890 785060607 676716112 798091598 559472205 777300687 349515796 977500869 208259368 190126833 645064145 179150324 456107403 441203218 996823498 581635741 619748271 286930127 853595369 710962407 743584873 29852187 274802331 213074332 300645087 439206668 290664266 750424406 376636304 863493147 785274623 207669650 589283927 218984915 299471409 988835262 365608463 532065499 47517147 313498024 429897032 352520683 661376344 133927851 198645627 609959487 544809368 109735699 193713554 757297088 912967541 163091041 583733858 816572688 100795573 247383661 296806820 906191724 469371749 382184820 361739489 84477643 142895956 471514132 301228472 612008572 43121004 274298264 394296161 359317773 719109282 346354450 26606417 324295165 335937187 414202166 391700624 355665810 485963620 605755197 510812773 308397836 567806895 906105778 663295144 760566152 736263360 134809822 479505208 370914735 924673504 730399202 684319759 526714082 932165880 743923498 904423619 700655614 330618969 324277074 723332653 778484311 667996744 330537544 307849939 436643957 382439504 928508418 76833179 184752974 248868044 196342027 488531880 312470192 80997850 179951563 47146397 743879326 470096474 5102781 792479183 793152870 232103567 394415817 87498666 38082107 577002686 484383087 657667843 527306348 225532064 104789976 910736 561321115 461521735 544947730 808039604 535722715 138473647 409979584 810131443 662715739 270239962 438407399 428172906 379449215 922702662 392598150 567411405 321459257 645040741 91479041 122294319 965568166 138336945 544000812 512725368 115530354 303911504 43123309 997974167 598643982 794539417 87107673 889045400 715128158 647233859 242277924 848464813 841900015 799992410 907031887 528586943 390657355 821195842 605736723 285302261 524021656 350677026 516894753 848237018 112990079 462248109 545629807 10793512 758032677 83404705 642723786 777141041 797440340 885795305 19820583 806958290 128514560 340058819 91822473 984504420 572846227 640936230 304982195 807356361 660345286 363507416 437301525 77348052 751494200 533159368 529624530 606477954 984082816 341730961 823351614 350140471 797914348 765914081 984234092 199260061 88441061 61250570 352206831 103407078 496642772 876078543 116638691 997514719 398472704 443301638 26107394 956173470 865200849 651825067 52404978 333975565 859472775 962673842 925124376 852805902 357625814 219943814 414155492 274893680 842661836 108107315 208063290 28889811 444164646 988016860 575033806 247823168 812479839 940352990 526527192 155210405 771197806 689088961 132031959 720462296 113369098 769614066 826397958 824543772 986627284 361561347 411309911 367490732 776738926 116136657 617164657 751130972 451264003 19811860 611159442 445569879 513110968 195425194 943438021 332317966 230910408 925155046 115299740 450922972 597410654 741377387 865854650 918793005 560092124 956843379 552035988 26180298 37713814 426685724 77864567 573620677 89340248 611227702 487027383 103608816 16398046 926368813 182689521 188941554 894816467 184246871 188302726 615996804 477543953 354962899 415707560 209634668 847378300 507243119 694158222 872584336 688774875 632632414 149309828 774872350 653823165 553489296 960050834 991080707 798001910 301251520 103259196 742981409 24442102 143668099 263497332 436824079 515083704 453809913 722764921 774542537 566905197 179788598 604393507 229256199 737820373 310721488 827481069 787210430 742072450 712702401 633336797 127268173 673092029 221882704 395305183 225413814 520601611 830218612 327333319 691617770 371175888 730939322 398869124 871725245 400145260 78224011 598534551 697869194 164558410 852377326 553717571 423924290 156266384 799914823 970673703 438793783 133972375 813970623 844202755 713238482 290077501 699311509 412079108 842698314 109524006 210049484 310929058 324803615 888749580 41846691 389345146 78025041 686646927 901706052 430128143 131425087 871182148 313847487 58797846 741430868 445668858 294130403 32035655 543597965 44694939 498507635 796251609 526978639 12303269 486547105 187408880 90008874 929374136 170629317 476192999 976306410 154185667 406333445 865692838 66627564 919909193 727180825 139724597 466988556 611276033 255716343 166013333 770196190 995480570 926809703 782357287 144727473 617917886 143257696 197218177 223107672 669919304 141503180 122848393 926808502 687099025 595155966 981111353 620974754 96379242 667569668 390461865 341838022 923981475 984409386 251973289 369337450 377613813 138105960 950221267 105604079 27009898 221581553 428608734 825447395 465107849 35081025 825035339 337443026 327055254 496482044 472454968 362801377 593858923 316695433 134570060 702343110 261379907 265395198 260759565 76136627 365181584 461970861 758251563 84476897 124519619 997038617 154934631 916634576 401778620 111716039 825610356 641274954 394552711 789920469 953381323 21660619 734558362 898138676 473111513 864280762 30871429 579458649 918879297 334899151 356271352 515716352 762042433 985356504 599963938 853989155 993699649 148193760 490052814 293155046 931048197 998737373 589129868 722293507 581339266 194826567 973940559 330063591 171501300 406972731 712721062 691872205 439929811 512121277 413786647 931297920 283829981 452168026 901525717 360534720 85684567 838055705 579629210 305192071 959096038 393282280 605522363 250138710 157436809 59080292 122222875 620975028 846285161 505002333 495376299 628306422 58180515 167657381 164822011 615338065 185040785 850453170 701889793 162965204 103932684 702225407 866691536 488015648 410183266 629940797 819570104 285512539 469703340 885699204 478717794 45515399 936382596 440675145 117784481 62981318 305983040 273004156 637601660 14535029 737150425 810660015 187004433 960586831 572084172 336555113 578630000 377320019 632221247 347647544 774356193 348217093 647355861 6605094 758698268 58993252 434403082 629808709 60377857 11966078 733647039 628181198 455688889 289812051 27887544 17303294 373478606 530148749 376009337 360976900 256183929 315538147 931223366 101859786 689539451 428075894 5384309 321934329 460311896 876313093 578207902 220791441 807798718 487738783 398342748 922521262 490364099 137191119 125731609 590498484 979165722 707422692 56748755 781477231 209957225 234922324 612843108 184832325 512341095 12144875 552158028 516523978 398802441 950839516 62348458 788171291 400169740 519002516 188484632 469113621 738875729 955255744 900572483 540980241 93729341 925675697 892790206 210841768 959401810 706168007 366121237 808528655 446303081 128663311 731854481 672309994 678521793 688713445 486228083 711070348 58174960 653154523 760909824 335047673 678910916 356153468 293910453 385946351 557745153 18844178 724807570 659344868 646387447 540116242 687787484 607512456 732594504 82767936 176229710 552508713 172014749 19123180 920638091 83315232 464336778 359346594 797989072 363267979 165581764 632673935 510290470 984709212 215579872 398311275 229544450 666705047 42907271 225129779 778119903 875910340 709374903 669553874 480824576 930456846 386034705 602244459 229012210 323653779 708711451 559667523 422030206 26388402 750649747 3240184 95447919 535642338 753726286 675639465 968035004 710968942 365007141 302833275 452940545 751554773 672141311 737409846 297862969 876942081 721098120 61153590 314713667 198045675 691082159 169467488 107201423 122493300 384489299 656476556 957783429 695785432 173738248 397294221 370234735 67049174 448356943 106313536 39003590 753465729 850111644 764066266 145063952 440145307 268564142 673911325 89728077 951145363 647759003 663508761 95834715 790298210 360246244 692786626 413565565 221886092 781943304 525583911 878542424 69151581 14636965 743459817 131513775 306961680 53143498 357310079 574907113 798021927 445370267 998063113 182588689 386895839 570696379 357948520 845049169 40009020 868005548 925214685 572056915 31284240 48855514 361935492 594779086 963017097 843741035 883184715 268232343 686825309 705440169 43975115 337719511 571028819 305412575 880073909 632702726 915984452 75695011 18375823 873058041 930612254 955370248 235177515 546843665 921728569 488061106 726870376 44927737 338978365 831359916 874770349 410144344 938627133 295617572 214185900 210588190 962296347 316918347 96683375 551816059 845933855 46080775 942840888 296827048 755282288 623680861 719708898 462559766 885560949 649791286 155877020 228388684 452059879 704031396 738708826 549704408 201676022 939035390 392120295 950539805 578174056 986051482 344235552 277666655 499822391 228135436 417260819 678955622 457361460 963626519 76203602 544351810 266478218 137564 134639564 73149121 357253982 152400623 421800719 148095586 291941575 877110529 341684203 892892274 192726839 690996726 329931024 14985910 682972042 345746270 903702712 967532702 627087914 371246187 619437119 678272265 921127563 671244568 472129443 842916830 58226304 502528742 592858845 971764287 486455482 112121964 628227443 863069250 435324166 448206721 549563329 781973420 870741321 841236068 317260597 619626918 210106236 640850580 498724523 245651454 245529817 452166226 210442977 642573245 168958253 768024761 341133965 704804613 972934429 261504465 983917240 846699136 200564985 219540333 468230330 12424225 173914707 42315452 11810507 435455148 601320687 102767375 842833351 969026327 623196804 11793273 939871312 426090456 728690405 602480916 439788305 725036249 165423216 664788511 7274544 167194460 654994786 971496962 174693703 916155702 605785377 373928358 721679581 308543541 135524358 858526701 954085966 931704551 653920712 89179480 522908797 624622358 690536060 745600559 209301891 79731479 28456522 209286516 390814877 159372311 953639250 632499957 841567528 774610569 166635106 843952809 761816127 242249623 714497412 471706214 894464263 710863451 135391174 315746420 849681983 185721730 574161929 130190649 258515581 891408316 910140103 61320290 7738915 893951423 26908394 56091595 301433309 261012786 318694849 227354420 538696516 207635103 305987116 286432554 361804004 737898303 165159266 702697436 943700289 224746371 494047134 371936932 263505768 448568362 745377600 189175465 36940498 370257687 434649760 281898624 414210911 959373593 68938630 761361463 32092173 580953670 576798417 838240988 529893471 481516765 916614271 997773375 256725806 523966029 23682516 590510415 735759500 841963801 643522092 21573449 11507132 258292909 165865026 452862924 620628827 645142790 526011417 716542792 393917691 48243814 486226908 808614006 276632730 253975848 346872974 292123348 957385616 765190987 867067096 577787082 242980342 450986406 663381230 163885771 698699459 8591631 999096816 505113328 844678104 91749352 29905309 312897368 729102075 921524323 379111587 355053193 433180890 60807197 162437908 278951085 222728845 268871299 328477988 283383556 353162839 619847215 248069466 321994605 313081983 41424266 298658252 941663082 999496243 150916448 267808379 448691403 316391163 486716576 378007797 955285992 814854591 998779994 525285965 493618649 160273656 750830829 204476629 675511651 368171446 834526108 568615341 421364610 696343095 501628677 3118280 265573172 519821842 463668465 75626172 843766975 28949435 930595006 309466281 573393174 691291442 710025739 191068523 841883668 377302983 735817521 60979091 383439210 737786300 67186445 851161237 10947825 508962160 277587841 593938048 485939722 128630828 738995923 357708520 764722956 288400424 58851501 821499320 435119553 598118790 786827681 753886641 870317332 986694888 470624614 532899890 679624978 885246382 526161358 262195986 158199366 383013731 829130794 521788331 29589797 128848029 243545797 562643094 533319990 113013300 323880257 935078575 325522101 33505294 710167679 197628376 733153462 33358502 357100670 919487458 799978163 124250426 154972597 678839533 491072601 91300151 22792170 775131635 99093353 558783095 309592611 710390849 844019734 596486247 323401182 920962608 437932659 420302851 207545053 590629995 782937986 774698194 846635401 690651414 844242617 227027757 117150798 92764858 346808126 691617297 153661896 787872006 101849056 673149991 132982822 259587028 152448069 698422159 516597808 248824130 468777542 327395059 106293644 750902323 654339074 771997739 306533081 360166418 666702874 537245949 865045049 48101539 933077642 79628423 69436875 904535690 870241323 541862649 990443730 711367738 342662936 440221663 355430752 693922977 791437231 732916369 356128277 993141039 687954193 355165195 466702525 722844501 601672450 996613792 416624930 634767890 221270209 244687558 131467308 713879059 719202216 318466313 775460479 603266461 607972800 20523559 242677493 650248146 923043120 333753421 945292229 540446563 450029605 729310647 871505151 903201766 771017902 776749668 925951667 522236310 256766690 175258686 232484562 486817124 345122259 814694230 614661528 135082589 982447250 979641715 765763503 145034512 729823862 923822702 868229331 743144363 481059632 9476132 45213344 291475812 730077804 158238310 846080901 373019399 271328740 47057442 517695971 156046314 193949623 387640854 697422750 968156922 525352489 176185676 398914548 235973193 945946859 381105894 120910906 77941542 313126943 388686520 356553768 119986798 122900593 469258619 314887727 818503437 855233478 997892635 945123524 657108595 157801568 576428146 555598153 279471466 623133460 477638791 47383077 846871803 44845723 562538924 924199267 437938301 403287030 328607627 697297208 976508250 489047220 737469917 238061495 847843268 562785828 547919009 4881054 283704533 804005481 988156467 176257938 946816794 650105089 655540042 933209884 965703639 697808986 354367277 336699462 875145775 280658118 117318395 865666828 578243073 86557478 842871697 676462235 381676908 904338754 131328489 777735764 633192783 753035559 522904453 562242381 352617848 325152175 421432723 558892100 717113519 421377399 246741913 990800939 301271588 713452700 461377916 257521584 232139372 695097422 816267165 713882431 742780162 833362285 943282875 845864347 455247781 113332080 661305113 771157277 788856816 616256786 905900257 77694289 641901050 364968211 998398591 972708167 117828563 82460187 639192621 306077273 689488880 613265625 906101185 638678084 482381652 763251814 335091446 713077195 3621433 570275361 370163760 471220304 241294939 627743214 611190687 921835142 501610725 627808085 335819545 784633431 773747926 949788675 801669825 854396730 878727080 415501583 432575542 125436700 305737935 38417766 760921024 121064649 954269727 333533676 267003542 220092566 526852115 16751440 992247765 386825708 590105465 576904792 516207758 828581670 46551486 459576542 733363966 251505276 915481031 643967095 706378460 901297931 634035087 14388528 379290952 411383545 504585326 324480209 881192633 503557828 857935744 863125776 992689791 213319899 389454147 361478315 577197236 870615925 416532352 894641326 263700431 427391203 905853086 370651117 808744385 236073557 894613146 312929332 941704073 415378991 289895094 711902912 825882330 437380118 202193367 925788152 346160011 967523249 33455092 391843512 664489979 594909218 321482280 200945154 193393839 564953309 702008164 884144848 966325301 277646932 978920926 643993849 154878209 85887402 399309391 999962742 256958479 739144755 647737188 637825659 775437051 541059063 977749481 557041258 579597617 968917373 764569472 600187749 646776893 35283376 174165038 471595956 445789574 908120638 132834492 552944975 108667209 931616947 635783711 223899012 947840638 130882271 176357694 447807713 691143324 873331035 724245403 842655958 380513607 540803212 454121125 802182278 841097942 407653649 736187426 493643726 153239623 425040502 568283524 988600161 188839497 31725300 156151537 606868029 415089119 234530568 644815469 102344836 452687002 580725090 664222988 592897603 507444575 303537574 448904863 23255464 409097469 759060008 462761143 398812209 760562150 633916915 814466030 923088634 612118398 198382158 968522830 989623735 599265851 695563564 801166749 916440383 58413209 981028505 466449650 574582785 382637478 993962214 425222055 919901098 980586219 798015167 379519196 146722681 596763236 696985442 51531717 977913596 800893355 599352335 725133259 593712566 652169889 999071315 182230753 214819294 556053368 782991043 169794671 852658149 949915519 601183531 578896271 771417288 396961187 818348348 122294211 291156037 541437758 635693040 765662402 331010234 337498542 916771818 608598270 411478627 389303331 58021916 12136702 630679830 891469605 473167538 705899596 589642770 694412440 648989358 380751406 332865178 484646669 117313879 40595200 324129494 489783584 99297048 106072637 390670445 53656124 491115153 763283142 707983293 220996078 213112915 370798841 713879423 232352155 48377685 367920410 472750841 365608468 743089958 429192438 772545844 972647194 530075266 436114781 824061552 607213326 89282805 756813532 783122708 777588390 677087555 535376757 147351592 573649269 135356029 115452006 265368844 490989433 359907385 142833223 780420500 443540639 841227717 25453003 350393745 367369147 713101945 196925831 92056372 347324524 160598945 160063077 953690697 611171697 714771483 463085851 460986131 22388827 538720704 473136557 582209279 424631594 942558954 218885554 307948308 247093090 394549845 989017055 958647625 345554818 733395263 985117268 423899212 750490473 706931549 224270217 842797646 754041965 642107807 703268444 134205074 143397239 394764034 336358219 585442532 835936468 591696420 566171830 981305342 743981615 674310585 986485507 10951987 105010852 568517605 992482908 158254611 104493070 103293072 575132914 767550279 824628162 788356558 707802001 854499519 90248496 107105048 456631181 237181312 387048754 947510028 290620171 580955061 348520993 17901903 650947133 187912730 640471369 719827668 447615101 107011803 37140100 147745963 640568444 931066070 391376685 659640025 508611132 411133650 62320602 683027420 560921458 995727644 206692295 341074771 133750266 625231064 330576233 92127802 792949514 873734717 869836448 996411290 689744407 812322901 303358031 745140052 531209387 600406767 193774842 212346492 755991955 341297933 718628081 540793537 657904389 913821362 924888069 798590229 136395317 892062767 826402027 810361514 230191105 901233149 611750800 430848622 57645716 163090597 936444869 628209827 367889009 563118072 893517710 532267167 770693153 166438199 765275851 711354812 103373993 271731482 318384138 788582105 700261511 881702600 987660837 382434889 769484167 897943709 468338614 745968608 996059412 655977686 22555666 468077095 144555213 377311537 939547807 347144336 861395844 425721063 488859629 618227124 283747875 483134881 516897363 665225642 551183692 39148357 87525632 551016860 773763537 790048434 911085560 945632684 674041126 195575727 924402808 797744487 562984936 180766473 476753376 973826635 992765119 267822583 60897839 125300398 681898306 198529188 228771557 69147571 863057554 244305701 962912846 721197075 937033464 817551368 822239317 383077364 18139475 526527533 87494999 827719883 734105867 822055361 36895865 912292903 629474517 211338019 195665487 276877642 57489904 917669584 424036696 854976020 144609832 605169705 908610026 839902677 827901950 218083354 788603703 194302481 557738706 734090972 301282260 824508813 994194899 662660089 708965941 331269618 699408790 873887680 289400666 870555758 915246096 393180868 821120010 576494692 141676268 367092080 747777021 349107174 34137365 926743673 167893595 535591469 619089837 785888398 181498807 92119475 637473673 955772670 172367683 665502761 887735 937837246 837262931 757598011 269195631 95719000 981345261 211754872 170850230 306454865 507756938 769847378 583185012 906601706 756191932 64705327 296368515 588483413 504157573 921449888 203427658 907505568 14580085 815835989 607482923 549241371 961691315 734617078 217632025 569921264 529152669 191502210 191773128 183083695 510209344 652892958 754078887 816842056 652736090 664280392 233758480 363681225 595102184 839253867 276159829 267977190 278077938 477505978 700226626 400274711 649408737 197805144 190343434 108242165 222730385 929111038 963076246 956038838 894480148 226685841 402815471 683146428 948799651 324546061 283926430 468720905 578834314 655712056 809082722 953759196 451834575 525633592 210040313 725755488 419906168 17019568 104760445 779442088 828061761 151949104 847692575 265242934 723725847 422930400 113721620 677472820 721977600 763512580 27797822 95346493 284104717 384841808 504419322 897128566 337944026 928427320 333629334 998835065 87750436 353897747 531897252 338835309 976107157 534877035 601565277 152004465 805476055 108112900 173318516 698019640 552999450 771124192 385502351 330626169 597292498 85072514 771232622 770340325 872502172 250216721 739336514 942906145 222593300 661081890 848348677 331234450 886320480 586741896 405473941 979072426 606053488 495888158 962438762 948776465 529630110 504968544 958352359 326040186 397685606 337573598 248937342 722981830 421773872 462983937 409379236 69580522 864063919 401184839 57723197 401117605 992747494 847197587 24170714 306153755 720477589 44272314 567208633 100581237 332610514 199535415 732490422 341269042 288136935 904000118 54553020 5328767 894403834 855692322 735452134 236887852 228722591 711841178 666209159 641715935 59095141 929745168 985029082 50432365 224776288 932264659 477783197 966189523 522228717 728911963 923132818 681948020 592583559 660499531 868867759 769936172 706226762 758526482 188202045 624587356 458858724 774851283 216156994 167793326 437181315 478958921 626239779 147019161 547459235 339618191 936697844 903712234 891859886 811436157 592429976 567578019 221502085 45906621 938198914 422487177 151068041 944129728 665665246 81824881 451485962 342494195 612009434 919746850 461418643 79516310 695961701 161760240 193139665 951224488 231981332 881813250 851976129 656533178 808391386 208005768 776432584 465016781 52426731 875717449 193636021 115509991 54126867 715778027 91735796 90791293 595380592 123855846 332146114 529793828 815400891 74523821 881096164 100097312 829225317 103032083 337141931 98591139 304889218 479307875 360215445 821645086 204987583 685683671 949136194 42477710 941889519 397175625 897689774 257280839 435869703 600863953 535687687 908609373 716361989 380183960 131108769 104119057 328050586 901446968 22709258 237259057 820363695 754669577 635159354 996322224 860977404 181567053 527975838 735844662 393194567 773222258 111640942 992606358 454395007 103090515 507351419 13289189 989819888 5945125 148439153 829375551 903551511 612538591 593871809 724412988 625041733 506100211 531691852 187717518 894410807 649570381 32662282 21860805 961894757 725397106 118808904 220307564 750586322 551274510 497053670 656789882 813882225 404543242 146054099 913895001 345391026 456228842 59370465 8133748 758723079 614424512 284159551 654262127 17542914 723496932 779428789 358524046 555277764 102304257 455756198 398987950 717975357 967044739 655509603 571650102 239180151 388904761 792225143 747672773 843831557 644724696 677604712 274201797 933288480 505039226 941840779 75839586 740116808 554481333 925020535 584494337 682011273 468983342 912917276 898088007 198846920 416868197 367252365 957535491 431522308 28882736 561226624 924324424 229260681 636822344 404853224 620888607 596339453 234140433 144254462 567120968 551713995 511520022 302721148 757919309 932766818 240058239 362078853 521087729 657577280 931209153 62458234 26585744 350967338 681913681 201755950 972788576 729361991 516057741 690139937 147907831 529353689 837585661 726874038 79503655 608107710 756558642 627784920 842130808 550791185 40731667 565558569 776373172 803853880 645305918 600957746 632106826 253745288 936990775 497497436 50054843 833783728 877799569 170122222 29753171 837453101 521330967 876778380 962305904 250686045 378955950 997049846 800617812 547686856 417577498 352202834 979057237 244294710 7944752 622921515 963835856 834449561 176844172 378330573 123981450 743488594 759032391 675139931 756314783 537768920 473306638 676717376 661606587 313172150 62890255 322123513 60823771 148047778 513784021 230976845 951280217 782890946 367124992 374852134 161567924 660770934 458615279 422919341 472733096 222389231 527595888 288383481 857108093 753113192 3645734 959501942 799103462 291998319 722880556 119395000 37091032 253164344 511272706 12876219 853769283 658888616 638547853 70697296 308472690 843094487 80962474 559487299 479005104 880563961 338614625 602770221 24041614 642956353 71732600 430613216 863567054 707883463 244411066 522929173 718229590 920043031 521385756 433812630 19906851 557447945 351465278 935019685 657202153 818199116 378461515 823976363 268416338 942965982 609318582 632560405 514063263 454056474 523240781 118305478 515924561 245649464 699603476 601967227 447451073 827728416 617174568 872500035 826368747 701015011 342530414 815271192 902517320 222844735 736898065 257445362 20311051 718614414 515629747 175635765 739490191 898540634 215707806 29217240 539112386 233505095 560992077 983403600 204284535 560440861 158611191 980564950 158319144 596481983 425908117 643139964 373180411 189633135 443102373 186461835 183987290 352521200 356224678 599232415 487284638 639797194 685950034 389408352 241602978 710978381 318551064 902212360 197926941 705045369 289845198 805011076 157405197 770040141 514837858 106185742 556531850 453656808 30016816 840001975 526142368 453728796 657362065 514407722 838985763 830116932 26063978 230003119 6746950 633919989 252331387 247082962 839611569 477494931 314399062 792302410 629892837 823072451 816590466 688361163 202092833 597342165 435496432 532424597 474199113 119951049 656097565 554772295 298179086 651357906 525984300 630719558 338774605 591755545 451624597 599823408 186560268 130825169 348778241 211016699 831391313 491800239 466631692 512324561 824816821 512659325 898755870 89491141 758427307 834433355 837767703 860986598 979533321 391057165 577397130 295701360 258540710 965971993 704861970 655980382 746385617 160364081 123218300 253662543 368590965 387469684 334549746 665991201 827272353 59379937 540736100 366830399 624352389 792556721 689356872 665339280 258050899 171773396 296928709 671145650 978417973 409543648 185948670 394803468 687575069 354086330 899901688 40185188 915699943 811076631 483175933 317942419 643895891 500907386 767982377 726657724 262233563 950365021 825856507 882866543 690438818 397440838 511275997 541055920 69857237 476572476 260912810 855588885 403466483 679204567 526494142 80087287 279757791 325687849 90673345 275431286 578439817 193636426 336861220 115791787 391903538 590056786 482589994 815629046 982733764 203755788 933174238 251941007 87685116 4075389 569978913 987539396 377180684 887981311 861873923 677939700 11746052 792577457 706496259 857736356 513279434 728488917 815000379 637289214 829791864 784622030 974883648 214890037 190150937 199800817 356674092 37725771 173962130 136172144 296661415 615544046 452165736 58207127 754638141 925098555 846836164 60354154 480242250 32444970 941611612 114831599 979960066 321772567 68010407 571189932 424278371 889704071 426441553 215332578 147919954 979566516 965934698 48567431 49799281 46698122 807198229 319140523 279739569 711561140 444807709 943566998 767630884 638012527 333300638 357669486 276867920 828546522 276030735 153330982 298131508 662549658 533698495 627873052 348768367 599121518 278761913 941358125 824811531 696840718 712529016 890957848 580444812 279370254 574729273 512637563 372821801 504562759 559403781 46876120 467105417 130019892 173327605 706860137 213427603 216252482 946550491 653789734 370468197 167889740 701780447 462625926 302207045 617262154 458928259 861974554 369601399 66314388 800787887 566078055 878815321 304612850 185035695 129684474 882228083 247218309 456599092 601996011 830571546 629004435 949615730 39425679 734765199 673000636 827515633 328944931 438245435 558727727 933469264 81763296 435477481 226924554 582535367 532622373 4452703 855467512 784469815 456990428 452129524 913485195 442471150 354678028 435898485 930962525 544568429 519313877 562757158 68693547 946175172 869955163 708986903 353263492 540497457 346105596 177562968 879276796 866577966 175520204 402884324 807727763 137722493 375830746 993061538 756044563 44888674 309547484 600683595 679765542 540879850 872095071 787594263 16359374 960452869 32271286 667267467 762470893 876736969 77171927 785831670 869684741 77382521 860950959 744303535 545576481 326693495 681339097 288316827 663428330 452453670 762150733 194604660 167378877 595761991 606802761 849043960 90162160 634878073 999148846 625183885 842785178 712319589 158829 461838267 458557298 586826978 391164725 827327017 232594209 372856276 311775207 525181171 641542694 372629010 12543098 703202721 567821486 976541652 440639077 69962628 868674159 378528146 285054446 220013229 24655125 268142478 907802427 312369770 760866604 656813417 980024550 636639738 91902222 6299958 104532083 19218135 154518417 556648987 781735569 133345958 695305310 899530893 802540533 946916192 831246004 238021219 195246046 805270127 828462091 927252706 495269711 264081413 183965407 720287085 328357899 106122382 671988922 269894500 494001377 220880866 637469882 605802623 784431110 650500041 922437290 937942937 154269049 757589197 585922870 52719286 770313111 725505971 552426677 622983540 684680086 535272424 891479836 184604045 568944516 257507247 664992812 847505683 100531127 197505289 282811181 344759673 353771634 683606924 462294046 102123985 245645480 898623506 966651272 378232682 420398785 166517991 9722865 418616918 120304087 604498709 196259920 300599772 804443765 105014413 403419807 331853678 861392524 254221952 737808679 289488836 590105702 29860311 410021899 48818443 673715417 674024309 677965488 80812956 956688886 876395788 355701896 395103040 249799104 435745881 312803002 53322444 982107427 529823448 483742998 506263521 909917132 897177280 926756530 850214511 939698827 674505364 727358187 493903872 350730760 451768800 218862006 430429964 127852810 696491390 868064340 640249829 665116379 823558399 718204326 304374933 968193767 819964096 926373084 430898498 247888939 8917904 69842868 991438362 48793635 87013835 940017183 572050178 363718557 872976761 501320640 775694495 454718964 869393369 849116466 791984812 620819794 134948176 240265940 740587654 156941557 750444955 445921716 564228329 364542101 766376599 493268816 4144346 927659091 8538241 352359214 635500340 870363244 587981675 666830571 672484370 683574832 332994411 669949717 815446092 780856292 72979355 748883186 97197548 353020639 646516171 955157694 910584303 855080213 827513958 559631956 91129863 298875683 749386306 583982419 787306501 533483850 766477066 440309594 196625472 895938989 868489156 642308519 993249820 348633760 181235362 500039647 931650790 762477321 893742196 461081753 289478921 691653067 705554102 135964199 191472542 600236675 880765420 622749958 630531635 85472193 674166397 483574830 172416095 738443318 805980656 617185385 103545189 488533172 360554936 66022219 711235924 820768202 424736918 12599026 853277591 116111863 544359043 132948798 951996166 356183549 507086115 533910907 590781433 873672045 364718545 461207739 105726772 109337844 730818 414389200 645323221 997386068 863489355 458096510 879130337 520168497 411509526 119719868 475379059 617841768 341021091 791017663 446964040 971425078 452488967 453439873 587134502 158963581 251948484 897950876 199906355 683338257 661281438 66884078 417577457 2506539 18305682 413661749 170213233 447838048 895215783 137056229 126925571 345123681 951012478 294317990 669079439 440081347 499294856 276540006 429193728 898572891 883287428 682916665 864347404 831550785 921751292 399829853 716894423 640009340 843344545 210353878 998328746 459959763 31475146 118226487 135854899 116108496 675365059 875555774 761348064 127294755 10372413 799627070 275504447 858629006 162820768 734760747 627300213 300863994 840676971 67206154 720774941 91466635 834230190 592511642 135572457 329893019 794720706 617465747 155215323 572888506 474111211 342344401 402665770 265569646 75618745 109885018 925022402 792079650 96806678 995269454 142940979 459953750 428193786 561980462 270095426 134344139 346421054 678774265 114805067 526638658 788429301 165229463 563451852 822534107 696764721 227703606 383034939 969074181 328070869 68098696 671798425 619073163 794767711 710323098 830698517 21030959 985039236 199932679 994988157 737914161 323900175 23741807 633521246 79232814 207203054 471769781 36511066 631545353 168777364 669557916 336877348 49643386 371287991 93198905 99554989 436507462 781849093 796632251 216054299 455880420 239558221 186047076 907037645 307286115 942504071 915719867 6775812 435917599 721300034 166283102 680516421 657797467 808725617 490127512 972912313 131302422 496281153 543842995 466274972 567267288 449682209 383088719 137044296 672882158 339641504 466501380 461435595 305354516 273020383 495213817 282869672 44376393 778323492 221645653 393101269 968180297 762948266 746468775 483743726 500211419 106758514 898285936 95699905 744437652 157052187 162091756 835794493 830199069 58212889 292649685 244844101 163200656 575363563 552465721 313319601 900146400 810022579 412694822 475187445 891012754 773238857 943471564 255261244 989892917 719334334 777827373 178710805 695622674 448606472 186779386 119406301 39573883 902655432 365636639 713714637 522669143 734897889 135879145 977746199 835968846 832566849 987562800 303074670 928517461 636157950 86908315 774117439 538257579 555666854 786849946 353776336 777477724 798765174 924015279 276467412 140635187 613059420 685647525 735308973 17195980 51062791 179801889 843678202 71028112 346434480 974763488 417753130 42418148 254124096 396080956 756069318 866070002 634170718 643275005 514043846 964482677 83727444 121284171 330045337 712949282 169748211 981780181 979791150 301478317 947092232 360461506 160237370 486974714 298248271 525563731 460787641 162233016 199700681 846946439 491832733 455141571 152074587 877935554 394901873 176374774 930708038 615645404 604943700 747978502 377600894 275292367 612790762 924301341 419623488 93762801 818332762 805453965 350473090 55641899 131680804 452502805 757338542 134558850 507129321 679899815 90952957 853058542 582340514 632609633 473624764 123226006 203588093 464361455 579705798 905066948 299335469 35260829 855865100 977554113 218628839 84569374 465815120 610494532 421116301 997958569 674381391 480086186 213632983 172761154 535400331 502699370 503302792 240738140 325959072 281717896 941839703 666869530 360062369 961057119 215865903 591897631 430757705 348542353 775199659 697014987 988338081 850974024 824112857 557431553 967799405 897560009 541749857 195993614 280528082 921213880 973814185 119716366 333927595 466413501 681374119 742930254 474467520 335845047 55090903 577589305 419462973 44394548 776370345 169751441 19830046 529680416 169216039 464360120 51233876 180981022 347323493 575968328 900322961 743443029 498737170 599479295 950841751 253545572 779049788 671372246 477045390 899230265 854507716 114895033 386490293 838583949 239844571 485411479 999792343 913417398 25522679 94160378 711019179 341235646 117886161 64833816 471741041 997254595 17627157 289879491 931374838 350113783 475748938 503042805 579128260 663606429 823294844 32508878 424645271 644636691 891898862 600853027 952907045 879619261 801335076 409754919 101706688 389454198 189006648 576272409 292137441 373030384 757980119 776525640 882504578 878665352 134174272 667190485 635184878 992576917 210573080 800550900 384408474 175161669 580400226 754793313 70142697 191089198 821873109 188958988 835817622 463803355 747548908 472027858 708085896 580185147 308674130 224862677 91418882 417479983 358213774 551129222 161202456 727040546 348126635 343297826 152554982 121512015 46816137 718942062 657762943 208073384 378525638 623546311 426379218 643819677 204344640 964753 156905538 655095864 136804283 850361745 295794640 557517947 518726002 96825128 112378885 455892345 382384983 304571197 439789795 459165553 361283148 574078022 28983948 338296481 26022488 19697396 645528133 93222852 196854488 31969138 666780116 595269396 924651955 469616556 363056326 669402844 329683721 39909563 863736485 354271147 990928872 379760095 719432386 405440428 398385125 378736928 898525553 289311249 241684825 281034700 993241468 783503673 192383446 712273953 731247936 376460969 524646198 904762530 365139914 298955006 906224726 476967999 191488598 238804553 959981739 266966965 980515149 85432881 920670891 34833713 584514823 113718580 903637058 80804425 397554122 398557087 166241266 825073419 312829503 177720297 371559986 345846346 142031306 491631613 579780263 578116620 520027219 762390654 905844362 13865356 495185724 803168512 326109515 658296211 414542413 987735737 345035773 538587645 744703494 383662828 990006456 324676907 429435325 339244279 544783944 872655340 363527900 829924990 281112013 283569453 937014511 295512387 471197255 701357678 620292557 140887990 27624801 817000513 177750010 660998953 489758458 841122141 73741360 223349153 875093101 117454169 405649446 231512141 319812457 191764380 683823421 20088607 400507980 923251676 225554851 756486009 196312989 681220709 74362725 839154169 872502708 964898573 895585850 922237246 849237284 830725395 410480028 959665052 544074529 644189214 180666238 971943186 61760931 779563007 914867810 106010600 757199642 5363349 373874212 102920672 856344811 271691471 206565496 255719016 58367608 724895040 697971632 637498627 520963785 977642108 250650116 640174224 776516916 579916345 947123785 868644484 753163773 745954000 260628008 171184034 378587661 651731185 415051180 95312329 561764814 430730192 164703360 385707876 91603931 119476983 945681391 419441677 666211877 748259653 152899775 924320835 264954216 228168311 16795014 792775420 270766875 738186622 100806188 932593377 14432238 502849659 264434104 668944562 286474872 416398109 398492053 977389499 346057246 549105497 29653652 359912190 747622278 242497076 633758071 37826343 20344619 849005360 272833868 239058206 161697877 977158287 213070088 219483424 472699505 715880499 274133056 646213111 56363696 784885201 69885385 170627182 645258809 64360101 484558304 359469437 137273961 599917974 563083530 130621973 530005327 680478953 206342801 748888492 527712224 673726032 921214130 299113228 84979758 741366285 934078464 381001061 234200349 750762931 745781650 153711418 848643277 283965789 282401786 461873593 477621466 806272630 660202810 930534981 58417139 182057624 842351897 697799051 707926462 932044170 7374455 120485399 845160564 528331161 357607763 801982355 667905879 171687578 139044729 843984320 839363151 449014913 479044383 692076525 21080021 901181302 408109031 374507172 225444127 597073821 781875175 592128282 932266247 196841373 304754423 192553462 954366598 500245251 407475755 839708739 196921559 445146642 506489568 966556638 650596103 948397294 571323981 576132325 988900445 423227483 725610478 231520331 781798849 132391375 710930884 282593569 381893178 466629453 801394971 14043602 99737952 214041297 136020403 553727219 476284365 540061349 258659920 224814773 438818300 253407158 215142752 235199146 312671583 903885135 749603087 526037464 745597002 697928370 761218149 462277084 40754479 307124805 772520611 807792148 234256186 141470692 731937143 716792932 658596535 187289625 242424191 366819744 273410454 578768267 663358336 758399014 699534179 53879924 298485530 381350780 77652135 981375450 795458007 950774544 48566095 192589343 932171990 221155325 973212126 696425337 863831063 557896671 387658228 721132892 358770616 739082214 873232400 143843974 148886754 792223638 104420872 221884821 474279173 854605589 614304516 708073052 256386803 249833149 114620895 373137978 539501130 742565039 178232982 31505930 392281933 571762225 778730040 535230012 817571525 957954742 794638885 117528988 108315892 797830592 954922644 53299953 760899709 838453154 406482516 463203983 168702955 781250889 149227446 850839012 678581977 435166194 18293079 599659471 566994232 986494738 762415928 843167582 913844635 419350264 883423699 437145156 482396944 729581991 870031986 814777949 574244486 422921925 219294816 958083522 664541821 854032844 586860191 407994648 861431868 164089188 675502529 749481890 447992853 708635318 850851840 293204564 547605483 456188630 691276777 177641988 797008614 950297553 537076544 896211206 755176509 195842304 12374752 827669050 638904967 194996395 574200781 665452467 414567965 521495245 710603990 359070104 210016359 76964575 639058994 799499146 355797642 21963563 455567623 650081814 925053555 656588147 442364177 513847756 693955169 733935457 310629526 425600961 720947933 447339678 424528910 653613078 8303923 480556431 473770790 678475502 179310750 307361010 880943361 640034994 128741019 387513656 527975705 67390985 946110578 129012864 104467013 346479469 97671798 97820559 375152164 73749115 491170382 31307974 230905943 759331212 35461275 463710326 53348421 94981583 826261145 250912393 542662031 128030378 439436198 879212694 598931724 760275519 202144649 143946530 98266059 225907268 916640384 995574501 585034788 268389049 409849045 445416875 61065118 244772152 721588500 369746201 376032972 568174418 980186392 916045922 227890688 858620993 295431959 153513362 162128147 811213810 992830431 866811633 303491287 843364316 82918480 563053021 599621907 499919702 143654161 67489782 615020307 469590782 372703420 541960692 578006515 163204836 158492519 408889830 290145147 44381780 565768594 838131928 610738990 404499036 294240059 841484041 630674618 396653772 371276183 708566298 972117597 253807799 940920165 525951014 132459660 688488914 2873270 440901738 811174267 734946915 187748572 154228888 179403758 675191029 402643584 530699841 305778081 500268905 748556435 559987557 387256671 804426742 12872691 940976044 745891451 479174926 420184515 705750247 73617082 113683701 879830531 852787677 414047507 735887383 997004529 719364625 198063525 543022543 762622796 630500896 647474811 566900940 868402835 840837734 822145166 231670307 54333854 948270295 69249765 798208502 173537732 570964900 271874518 902624798 887392311 545630245 94950196 201586233 552536759 204317750 348582498 846138506 235973272 902051363 696476904 636792116 244641185 278941065 206595842 666397883 316915272 370936578 730594402 202049044 869002644 7272375 897173705 28040236 640945880 565080057 831107980 80876306 202050213 763091936 2729816 572500534 80876625 322874979 278789137 972840612 934252575 691608293 709985061 9189234 817460820 263299784 582552786 139416689 134407439 867563840 176140081 790755377 226114200 784574374 669371524 211318470 306095054 113524390 486029590 469050656 76874704 321976899 620056614 130864633 283280374 185156077 310921198 856423970 46579855 626710401 216553063 534126590 326692117 146537977 315063458 32998439 281161879 597799884 280746138 856785902 568779744 887196276 334354432 316878278 317005253 374654988 778786101 325854525 404170397 333701015 633681098 286545204 455754976 162569198 483220213 161619241 822185492 307283096 902824100 349465759 3224872 476403574 645915189 414816375 949406527 273792696 875546016 666738840 497425630 716081350 291695908 568595354 773968244 426755143 883813156 82140482 19941287 57560313 415108445 444108657 81341346 467842362 623857572 546935772 496074703 525915563 382462636 454718192 184493668 620882708 806612442 337408549 615530678 74148222 147605230 702439652 480702082 657202494 673674242 807292417 887207317 147422561 159856669 253605414 616685741 194727679 168194851 131607640 598744547 874380484 123888891 892142232 364193619 331485430 439589675 118387722 837505109 982773517 361827308 247719933 303566128 800463490 320085348 604131512 812279677 333647427 901106614 211219485 234741827 262530650 229218123 811220991 966239196 753328899 820037955 912788405 625840916 85617595 307836803 907846380 932090727 351041781 90805295 977812638 710463088 270877196 91701636 619864894 218070393 191656820 753157976 77865883 575149667 925124612 423243442 440258247 648580033 440733495 87280041 588898072 208267914 466433680 453186910 209088602 434127217 802948667 449114900 736577195 891442461 516829608 785497452 560002570 991550133 372196424 71188966 565500240 797789788 928113425 486148241 113131686 727495355 906233104 283377644 241797365 537319078 775177039 15475932 471546056 840353888 111344833 979493363 247593214 135776308 558086653 705759260 268110374 228642460 847483447 585659039 890247932 13512906 78569837 258577593 36721202 573534318 779741976 554517446 398796325 546496942 304603235 348991293 788498708 968315490 307536112 313866805 651865362 788459222 752299510 347071958 340081946 887463250 831698468 774576209 506068543 479830629 32790719 710932155 975555021 570858563 901114670 652123267 723484923 386120877 191662061 378432096 419697500 476246341 981084954 339114278 252734502 717039422 757370699 857010455 811023772 756293579 358042521 846287241 346933561 867763257 513395275 588925503 759773986 456626965 722047395 294150765 710725900 683041481 837042966 804994902 100803077 273220321 394791443 684583823 267935011 303199067 91146133 669620948 935318078 592733445 524053703 151113251 116769674 586525606 112274329 233639632 481830231 391357318 499669380 748151724 613132263 995287312 597243697 797839862 555881421 763805171 453067855 676113767 698770600 985583848 786310923 359528667 412890759 592512245 553993613 607307696 639119042 685718126 660058110 494338161 935290198 745918665 167833592 264849092 206284617 850059089 888500395 279144492 750563670 147292384 159904825 769319778 861433179 675020888 488475579 981220019 864214397 918437563 548902511 700001863 230593857 411021061 782927604 429709969 233190155 484657312 136103167 859444540 2781957 922597859 29701019 87772273 805493163 145598524 178126783 60464876 77029834 45846762 455454867 589919403 575471624 521651567 161044651 940511334 342905477 524657997 174115688 340680573 422645938 323533794 642078554 88244671 305305795 652594526 455389757 396449647 474007270 13070298 61881299 546532959 748117736 320862683 740831747 88349324 466459778 420692937 708981694 971693958 521390430 91938040 127953392 550015075 269984871 548945167 547255601 972587298 885754600 850623768 963665082 650868404 321503014 236080823 289737913 600053405 677127453 545251636 808307634 244523097 798850323 763848781 311482386 390436623 732690828 827638723 200338844 248336676 445976606 225320557 384757091 94411619 685143891 542332085 142496912 159033903 247265067 492244836 743010612 173051184 282480851 902764866 690811227 3633151 383398892 805994746 553820784 124094668 339612558 699166295 421698654 310391232 25804142 482328086 112646353 900262815 767613409 840781211 240176588 623102489 219694207 622179367 134584369 755827948 14901226 253832937 711899385 803914668 91931513 539323424 423884757 167099201 166868346 135131669 469572083 46881291 69032559 624259689 390386262 346910908 730561241 233221072 323976336 542822275 204979456 90090151 396585944 450293070 466795823 941450891 97832764 62319786 101676673 535315887 437548254 16421 691851220 144487003 994865097 834297998 902216882 38981251 498393408 162020315 294001568 332645161 388319179 806330532 530163803 46284272 450177300 74947375 54218266 480764835 208965568 456131839 864055745 309852708 149516395 660678473 484177917 279864697 891539802 698048041 955992461 436589957 14522298 9124572 559687185 622201398 496588356 698688190 315701684 167950479 327054255 636501360 601822515 639382958 401866190 378155830 564187431 925647876 776190976 696591653 679766440 702330909 327214921 194464050 408210292 313102178 678067866 566387122 441064921 301361960 400590209 586942641 766368155 128246624 592051985 698175341 891201364 420742093 237430306 495742287 863099723 686085867 524218701 671569040 128921647 690086005 545900716 266750573 704399032 81558507 311783572 856790004 73539626 690838931 502804930 320615042 826578295 21580858 782177658 855777591 129537451 212652004 70294203 489409590 96772929 182955309 916388983 309580197 890464671 901112308 30983144 497327688 474381694 884794105 37072900 549392683 775361123 276608889 513145839 412661568 764863936 103229550 523971868 323380430 868733596 394622847 413169393 974175325 721954448 279342404 81171921 752555616 893404527 313159462 881481176 275892582 870712572 42363891 718899972 488631194 101807499 976214640 607783871 696833589 980782917 535147513 634881213 96143133 504461019 359382099 49493916 675709988 436923061 889534289 507667037 956705304 75540253 562326925 887538628 967879482 160710949 424357736 28018884 160362922 430820336 425614694 203688173 363822265 696716273 998874413 880070631 72790502 122348232 254870392 922557964 594728176 608482986 835045367 698510294 276830045 4316687 382463094 208508121 537670267 301257331 495537679 904580867 371973278 629019189 946502497 188240024 586300264 644961660 839263437 288441518 275381842 264227773 832495302 185186995 459743707 178250728 945407854 946225738 429309710 482006626 317981922 891907833 547516108 343830632 976674168 640140512 282908462 536158627 969917893 43576562 551585510 794223921 109088500 922468177 196018883 847285987 695570266 77413648 745930644 181181987 366394318 237326297 508965745 905407414 228060939 940485688 520296208 298117776 250380801 51786823 790141648 383231485 938679543 943476312 204912878 671656135 369374964 814292811 666517659 140270043 514658227 376889662 163913189 256052679 572154317 679972295 261061660 774075741 596312915 479023120 476896652 381472610 757012313 974983651 867381963 141919965 331766969 139841746 84398608 182918075 738352008 283135881 951193442 330935242 186350722 752076107 321543874 445864224 755631818 619388356 426051742 76840265 484728041 145264769 155398909 52691686 300472933 236540181 337438577 658741925 82160546 329181077 81070577 931130513 827047181 724051847 445984937 471875298 742490773 170731376 482641211 102832000 60569662 353969431 29297807 36621707 110314156 15683175 752312586 631553568 389428494 976323725 12548566 406108879 332838117 745549396 827226795 942957698 866922594 573639735 854176982 995130607 930552838 535449281 605032294 116673593 113852493 415813842 437469335 536793909 857091907 798221846 315670118 887432673 957276425 315792856 756946422 313201199 485131676 380265664 722126408 765788920 29834808 558421389 981762430 3957064 478432003 84706891 50148104 121198272 16556075 115650355 968414839 564910095 822002049 111418909 761781321 29176293 388523706 55733558 438686751 583633732 250662175 470570151 240747961 610170392 350412864 411075083 221009418 724610538 524091666 394759792 750497081 401394083 251485238 584018688 453463663 719482744 997672287 649475243 983138491 609019794 73463447 983595640 966363345 445849936 990292687 184285703 504462580 792705201 611150165 907509873 646053197 395447635 393416114 226318698 919750452 401450439 561995826 529764016 756731746 804165817 489082080 249215622 215245030 467093231 124400215 945844393 547554733 474821481 348639648 14038292 691459345 371143702 916253602 765049959 968719275 991734379 880089526 682712236 885593794 126199514 347894879 413243646 859364009 718099904 682172897 842488568 758846628 315502915 345900563 440854520 546045292 751186568 715941159 977142613 996496087 334405450 311466607 521310713 900272384 723330910 660252323 178710739 230969950 239730247 702615589 406640674 415637508 152289619 791673484 847981257 769412704 256399602 292363015 924789195 247151930 881793184 736514796 888416655 431715157 475610448 100929049 771420890 381164656 552908021 464661849 743372900 599275681 591373838 779457652 941788077 404592257 466800378 218375905 224405775 356740578 361898059 229011425 539487195 3487904 421246837 760516232 550343154 406328644 392127743 897090953 41786662 39355826 418251622 892476618 361093413 81235502 540472437 831725467 496998427 222731811 263632628 986544289 796642383 292550472 910820200 482478797 989103011 371437875 934285123 874842300 158805332 713814129 525182731 897054022 196523973 918628502 557750981 734538141 63996655 549179449 172733197 271499567 961919492 648204503 613972230 375398849 956883437 946437236 836134908 392763156 499016005 278783349 637557664 581857213 561915798 176596602 607229593 64352184 625390463 795015381 870489374 644227329 903116267 185186239 620986245 96185845 874913984 341443869 133328231 592837945 713626012 431979499 190728920 907221330 932566879 253414876 364785884 464219577 962315367 138133400 221022187 920085026 315863034 306927359 43661413 736636341 688844394 471530759 348115223 741295358 703943213 372143177 582872178 432906444 196144327 280842607 971043939 409525873 884712127 864197723 598024722 268478113 275380504 26405978 386784868 553349957 935431656 319465247 327232667 137624497 202696074 372863672 686454665 43613810 16952555 747184649 425786306 824452565 877490455 515122191 443957938 669250230 609676202 512516158 653830231 925626193 823168109 456607256 805137557 48919817 32253827 291633556 676310705 914359832 876059988 68012290 440303574 330004981 89993814 991571036 894671027 298190432 209399067 643709179 914058898 874957644 616276209 765427704 363913496 655191569 786522825 44139698 811680716 101266097 977876577 836345700 111386203 748376725 666937229 729471379 756619991 387948592 610392043 792835695 906920505 923658456 59129488 468135399 210066141 825756171 477372545 141540843 227652084 39431283 437286970 56036579 369068668 991020822 689169607 266740993 546047122 320506111 980828604 9993240 772006716 749863386 96720632 838209821 802532125 922454703 76271552 246154948 339312281 262191709 887860162 323721124 784120763 658474816 831894140 378374351 711875796 627314285 374812396 436871440 779822538 798103162 516696271 386913922 483889240 285946701 914042927 762131706 527840195 630294830 290094359 242869874 843126624 451143792 723221249 792413268 839712966 340405511 483667550 263610018 834324775 831406423 912808588 657624222 568859635 418723709 111943103 785546852 467854041 979981149 409667786 61813889 462418006 343424711 741305315 593627197 694350944 752441285 762715563 555610019 455686640 975000423 178362592 172663763 252682849 94669953 333308817 23878953 661906542 8869357 510169543 999037956 9610521 731321187 211867362 95482504 904829745 639876515 815545561 23940189 745816178 273173120 692380394 54636567 780151011 888586217 319555019 451842793 669756545 457490810 233803858 383857575 836876839 671182189 398838497 38652102 962624292 561580752 624473719 137453874 941470632 976832224 686420842 822264264 980741139 846359850 435085448 369693001 76678888 415319256 858443056 356284370 692242609 104541773 500037222 485891986 905417161 824618759 763741443 452181724 625847491 511879979 747450892 287090059 291511558 876000291 136277994 133720121 187012741 378352480 324764215 31105483 843989093 200375390 441401399 757605101 447455881 246496730 739994990 735704581 143894210 244013160 334676210 670119844 967058514 618738505 347995628 446054707 619507853 602278014 98421213 710237210 738641674 820897216 408521459 424174950 633249680 74767841 255645462 747538104 874428776 694300069 406299749 814465688 200340819 451939955 676286571 179184132 426519245 60539746 575940917 926756707 314992725 53117870 245149368 460196829 923697722 682111476 950586844 676132545 119645262 805094094 592810504 384450966 546575800 763948059 850555755 604959590 811918267 272109 77565593 323652103 375418728 441419983 279713162 566907516 775624945 664415258 875028056 801289877 113899392 393832771 749227691 609876102 356952729 301233360 691722827 731267812 497948975 245678958 943934025 298236948 935339430 258176917 215867277 968108570 835479979 676717958 148533413 117666867 541181845 385345591 51985204 373945756 438588591 239655586 946430926 48807135 36553549 492413366 538214501 139864303 218908913 808594023 542897464 988762783 459380219 423347506 996380323 17176105 410677582 501622465 539158157 237926788 657343382 619245145 76474290 902124793 720170330 224712481 911946653 761545766 800541368 608005731 920129477 191491330 31504049 475674085 845197256 448617820 37210451 764852995 529317076 482724577 755590443 73176267 516845115 526702998 536911092 108618432 242600517 232587241 547134818 97193937 828315254 701974536 990873180 654672192 497377682 173545031 270396667 235770663 292684254 31341552 833570823 141166716 107369015 755849450 844904109 779452820 173654102 468187339 692506227 229510311 419652723 23843602 49556511 788029519 905694538 798263883 736140775 749953318 46959541 921521687 62293692 346511704 328745688 77720403 868653274 178719950 239140159 771910510 663672104 796831965 889621722 82424270 566906452 731662169 166693612 388171885 386669529 606747337 834096053 800030030 925706204 404526424 116271338 279799133 343824911 419974832 55624582 237963187 890439202 996753514 388253008 457756690 539707204 261791112 68439431 743752996 167001371 687250659 345260780 339477058 972728476 634425924 699817823 308858060 254997000 228290736 645826896 906972748 60738706 178446412 538796609 481148688 29106563 441915717 459010347 543734973 726548479 867881836 938707989 712567243 674534974 780383226 422388037 131979881 31134083 418796986 12331439 565633658 380091849 543920327 937906357 283288935 40504303 192179929 428499021 442803379 88818095 657890155 512127645 764301555 928398412 970259368 606547286 222367935 157084280 354482531 267822941 578911588 912793807 998393711 580155034 277552211 554894054 476778078 123895989 670411810 836234060 244954607 121629203 418431414 579580928 814829359 106276392 553886802 374079059 319833747 966544698 114399099 253984855 931745001 370613006 22350258 26482051 446611801 498270569 773588732 150925282 367995130 363393177 870534274 477762847 597908976 95457969 835213777 747688943 664030354 465673340 911072380 470134883 26489921 414868445 636825254 441328579 318280234 322642901 837899678 19699050 598132251 857136370 795369739 315547284 80807243 149903181 914886172 286889361 149929440 846944558 379149416 18884901 715306433 228054266 484990452 415912553 422337968 969819800 130528697 713733848 780946085 811094134 894164860 655650511 558445186 198868476 790346896 29858799 159320956 695604980 341446983 149798531 471061532 941215833 992722901 684868595 589178223 24519753 450021318 709539578 485824963 780270563 444947779 5586223 927653082 156271944 343513776 24849287 260668131 512083297 461697168 562958086 841248949 897276061 52047055 587192609 132700470 624330110 224544971 947298304 729893115 533473003 492179062 79196406 851440024 711519089 72770603 908929608 962602966 995594501 261782810 594152939 580491426 972189044 239770165 778704417 401764558 864306541 202958211 394364560 316506697 458000526 364116879 202610945 241356143 936137942 973870703 690276866 92260037 80776017 787120201 917568258 225120546 15322451 602251625 755301140 355493315 808394811 43373640 573052921 329622752 216071983 517111347 12362257 125707709 319835323 56551899 326877182 752248102 284242348 278688027 337687500 973042485 906650508 675233847 103276651 592755895 747982622 498118457 464408823 564828556 9511233 412147379 628569669 527518773 332123115 321180649 421385309 637507821 69329035 168911928 368540013 76347585 973618667 647786061 418777521 745987753 504748575 247156036 481888428 423345176 311522383 640356249 25138603 624206297 313011626 183353143 758743653 38698216 713588022 763612475 905026179 156593253 532850896 260518041 425566217 767803184 86986584 930420044 226727502 40789657 754647586 279096134 23953454 347044816 640473726 899729374 105687501 529339752 6455555 423618571 645673603 183790888 419440147 591052645 561789622 876314706 388643073 887178872 281655890 277490651 48661031 269536136 755746153 430457149 873047502 217603523 242434013 473519648 622734854 795463695 869616052 305773517 497034599 828497794 321312573 974118977 390381655 832065126 569562416 72755994 498222947 957430281 703092706 326878463 401836487 790156588 827267907 82089543 820658889 832031938 310731622 50860545 430497279 631218821 324901057 156015360 583460122 782241489 680845902 319375960 749849815 398943030 101822412 839496993 811575331 320538204 557042640 755183751 412473303 900217380 306943500 786748577 521005272 135921286 180834895 161056557 768162372 414326066 226432431 777124724 803887724 897553412 166476668 856612769 561797646 112414498 704337461 789549066 533233343 541167419 324335223 916856111 97587731 889952733 455691564 60302935 652602050 48961369 75647703 463044341 960422626 332289968 370191626 666549741 874696199 44903817 212016914 428822543 625554002 644648362 253455638 129486477 933552665 850030110 251956862 351220095 482010069 655173101 258861443 17887500 783197617 925955705 901052454 628052637 189450366 421950778 36013271 371543211 174789828 766167299 54449629 896630243 896154676 278120891 600984691 79710639 64205921 358074698 587310992 824026357 40569493 609350414 10669400 629149072 282574350 851347085 209762037 126183131 98499236 315501477 144796224 500986698 181532860 367977777 483745482 78919403 910871089 827313592 28864283 265671446 127445725 687211736 868533400 869733751 665973657 241727637 278572107 745065013 423826606 669367195 684859460 884653141 978022014 410352843 368233727 408898201 765175986 13592082 613821854 630247268 506483848 498112551 26889420 843730051 62900373 142956254 537777986 790963608 473704235 774967701 992090047 148041 464314217 845898817 801826140 969385210 88260960 739368695 489377249 463040799 323544673 556987981 860186665 295348505 44320012 243867562 650854591 175956363 527452332 412724204 206365864 729732267 357511483 316281301 347898434 455583654 847564083 79810567 23712108 808818229 92761695 858995734 497950154 930027359 339202245 545369920 685007297 986668552 385686064 787084041 889729319 888240226 311431443 410625971 500983435 858620748 638418923 500344268 720707706 390140143 559590405 120481435 252883339 134486504 21483459 146648827 5333917 688692368 896093503 104143901 440465249 408724005 122529836 10185569 31248333 285865645 327196424 343154679 92443280 27067776 214412814 632002274 48260810 436029809 187313547 790993058 309266393 103822043 137726731 195219343 986635324 778247913 921544577 824232405 782413795 18277635 26156202 973174645 4985819 831772226 694539084 864918057 351829826 435775942 900183633 953632324 887229153 678689256 416358166 21768334 771020436 800020934 671014238 92092069 340575996 443535559 886083802 300053362 737381774 379577310 466339818 566886843 532972219 362025295 32286608 593891208 247186902 791004641 983711040 198216898 375637952 648020868 69111365 862562211 520328339 653563110 946878044 944475513 891078681 96907691 436908059 476079110 197174054 894274140 274161258 881476570 679494240 416714222 713830189 416243614 475086692 109586796 328184517 508450189 90738837 119551824 116087420 262732770 827318118 85743285 903757550 617466897 682579977 583927223 639351496 857805575 825174767 221977724 796175006 785386692 98115792 686396655 478312391 691851167 953233979 233311140 805343458 177830032 105552508 447871226 524421227 734324063 175563011 396030439 806083708 15840411 712405544 208628184 289043258 700493144 989841852 132802222 121765459 83628831 384900495 752011952 440098193 316651952 543451028 869211955 904586617 869873695 676594112 684975 535663980 804258241 10204243 532667312 830555840 202851392 88130673 830858402 493692077 40551858 67338593 934938133 398873581 270709105 985314176 369445957 21227163 122849332 977673947 811645881 787514910 212737071 258544061 701614576 38335558 260384021 678616972 997407050 889979097 571458119 829737831 848759211 200435016 831004947 589962855 289000377 587937943 63078046 771811792 723216737 63168213 216831630 634320429 847026483 531513504 568349217 946662804 478504605 747843810 865289237 900303415 125320318 945087321 535148067 610361695 857208252 570134727 868426370 629686032 756577286 813979215 783585278 413892799 416180523 251725509 897620059 629340387 966103095 640089330 356480272 891023886 712478679 621559936 542181435 353826170 134087354 55255567 515603712 308662411 521729522 990051719 194974380 103603418 727830636 681395272 99306862 688245591 274169959 847132229 604447543 805073319 165338936 696215073 129626501 426933850 78007627 244186350 120665612 295198206 802243867 250654052 507720050 357919492 894684092 536394134 92904031 43947770 38425286 142074075 948268556 782276030 354108483 563901375 67051237 907668318 706421788 974677208 114135464 751343820 261745554 419660278 888864904 481846233 624806079 68481201 301489606 579741490 494568259 627628529 575897485 863964932 358737655 601394734 123898049 849708549 332637454 430758517 958835742 73816840 905081652 583075518 61969573 102448592 604445070 940710727 342490205 615552973 71270181 668340537 848138461 147451170 436602001 655117788 712180941 828755272 830030620 969886456 613161479 39976311 350109922 899246644 939652546 442484667 469642887 239366839 107939963 867570384 43270021 456420769 875971990 155933417 560578798 76159013 744496467 585568809 588491804 914472855 427375058 113568471 303182595 270457654 256322103 897141808 400808808 295623309 644494031 609422117 687002326 192870111 499899711 296966685 559305625 659246708 972266202 911389107 944950942 330962831 427983630 118694174 915228361 70752589 683263622 218271989 340920808 152722459 762575038 863393410 341438018 127972622 13986640 340582155 531066342 513201721 463594947 830114337 850807409 780982448 97185282 745326323 955633435 839665965 700026760 168488512 519986915 443614096 97303270 778984180 447241794 85996312 939088121 386961919 480347787 578137082 554476002 475486800 606197180 299678242 593190590 554198025 232617689 650601935 697689541 622716289 285412744 701209961 529809892 249778963 85962510 547984693 1518313 216416718 670647044 922565472 38697062 400517891 910438615 183940607 199205857 227240626 782146328 273850441 659937881 977879372 551274285 593278883 815098316 172375136 972628503 437811817 121995918 487580653 918669343 56489110 944974711 571437063 929234009 8205629 733651378 297487097 450653715 557321892 432320537 852760958 196172031 699611698 47093333 566149470 102868972 355512499 193356828 739553610 565505026 502567657 109761508 169695526 721375711 329843329 613528470 935926071 774312312 584623526 617151876 987234530 293605989 742424939 696788215 495076711 278296160 477475316 912770219 181706218 287608601 793061579 465209220 828091414 120697380 418823911 656178549 467526284 435246352 18555938 280379308 690692675 687495911 41935819 60233914 561853549 759669763 366186446 51509371 239580620 132464671 497495022 377845878 21853536 781699220 345871702 771900794 499802565 824468455 485058275 595621196 745021643 369252101 17145743 262421080 730846029 7266505 377195850 690914119 91118555 898851375 213491543 464538391 487284819 929504694 745261300 185784820 550965863 262273996 659066103 448834968 580884089 887987903 91147612 916891574 868366276 729456914 581715951 625194349 448876998 63059904 537278437 599989369 925995714 130756863 952461063 123958137 412457850 755839502 507197365 133196382 828265544 374953518 886435434 760253809 52557164 419149211 436422630 258760486 678917070 213440112 370438246 692530519 394367046 514146179 987239252 790417681 212058733 177651792 462442520 783545832 811792994 689425356 951639869 189484985 298035865 485075131 998184089 131817914 272404337 149125885 736489175 873097888 964259830 530696233 117401566 104141267 831490260 890740895 770636716 141370404 249861892 868855508 729428429 750114988 869656034 264965127 415129950 826056644 612651803 117628539 182058987 578795502 65380568 676045286 337914644 478596913 946632857 749980133 762037101 548979488 297805589 647326600 869697874 108608639 730419555 805911991 221685398 626852507 507932952 435551586 31520739 381085338 438312644 151708109 199600726 406558763 123995896 565698122 698917499 381943665 3799557 281510415 319649865 529900148 442981270 254011436 505229947 308412014 876858668 675114117 10065167 52876907 548624753 176813101 248618662 720346173 166800445 307709571 932333507 290389732 947044792 93105988 455515884 798324845 462779165 190864290 821495031 198306389 401627721 775296266 253514487 482868408 816656414 287436579 444776810 687138375 428986664 505270131 316690070 684348409 51770197 744208866 662704482 407068771 157238238 430175140 288666363 932737380 584408103 697040936 404589127 954007844 128627621 321246267 786637795 606250511 240538948 1257904 108054838 390618643 76118891 49912710 544129859 77139669 792312980 879457184 247975101 541922664 340049935 169669138 50536973 464638659 322207589 253637061 638318555 787679920 897410461 215008292 137959678 454293772 940923558 729614152 166724214 417261751 70232308 31271294 885650293 557303025 946199558 448485092 874039575 815622516 962105349 22377789 940048837 383210891 286518989 772673471 14179833 279206824 580293139 895921053 100766968 213747195 961314809 963323133 904681571 122688585 15026063 496958541 20809811 993655361 635308407 540969130 18049401 62636770 543377172 741137206 626900535 298567512 144602500 767202937 360674247 280951474 832690684 229569265 270631032 567184541 293248475 982727189 611229234 647196832 256009247 767996916 240193420 922630252 567825400 147773321 60005716 248913712 346718062 51988262 376716804 148368677 434143220 666477081 100663277 376413542 741505139 408587925 610167869 919184156 194529138 642868074 546138606 421773930 544048642 67489446 188843160 348514550 128854589 89833971 378216871 764600579 121092489 910694746 164130386 331630803 926820776 430739940 909712255 390734420 731313773 598707702 995637875 248168325 829627617 143374959 302941358 621215422 32264055 389615267 208359408 486800035 857580382 628022757 978219475 739266093 932232692 453818787 537624639 967753824 834206039 93078158 58316124 116324585 545345479 58999897 505098829 914805078 984565349 516167048 241126069 86670810 137543393 253824173 850496296 689163352 778274394 552911133 568060259 904833274 880074908 471465644 271886894 60828781 369711874 296185682 205806888 303063475 448988612 448395552 495646000 608603924 281323190 951926007 48617648 922856958 2753288 385264395 800753944 57352986 15229705 816699914 608527376 73141975 478269399 661304285 326915281 302818335 875187692 594265758 290021599 628036100 625939211 206584882 781002729 40043765 489771232 160866603 912696600 220152327 41805516 114335442 957068563 161654957 895405799 689813829 361217927 626355541 219894863 133307643 706171079 292426925 477707017 861016175 811679989 907973066 288348659 884085382 601207218 745383536 427075765 811870429 495134763 491497593 809173681 135846183 222597071 641525760 344475897 909494892 256723050 682338267 549954606 72337715 729181040 314080938 172988100 691583543 955997069 934879944 409227029 962528104 84870055 495053096 92700682 864476134 786826302 411152519 996685111 934070142 165161861 40780898 684079511 503828458 233019506 510003880 889120772 151055772 267968251 536542867 334803489 739129823 587738681 772207885 248772630 373577935 760303314 478470136 841833792 123957583 497892636 378902696 377302349 696595517 438203267 151981256 514365002 738804169 181183453 207665402 388076461 886949083 3985952 18345234 462773705 497751268 16830836 771413296 249666980 252679280 971584314 520344170 963711177 61439316 808980836 162222209 673164151 175596935 109248872 88435839 138220213 774262042 926077235 282732766 504890069 866770808 113086844 121411214 227379389 725864121 878182264 886560106 763139597 589230275 535562684 885893391 664778627 272095808 716591202 941306322 949452710 921743773 689930794 87524272 514464232 436824181 184454565 491843096 630339839 185023024 14537511 614590341 208967099 810565294 42437105 889504969 426043462 747281075 568844073 700316252 46912477 583319355 662301304 493240397 623720336 110429841 506490061 542203393 740535661 134394988 786517599 989563275 358805156 913617697 477584454 933593436 913309027 486712748 258939075 601725214 439394114 876674849 288052069 87699895 771141065 942567898 366689599 666581789 830715525 609511167 754048833 948013484 474323240 614833030 301987891 679165261 411037309 601607157 577200326 957338054 749277474 618436648 476274303 684424663 655491009 878165180 573747689 603588945 294789442 907098772 553238572 843152116 526551970 889621191 441693382 232610579 358721100 496760529 930639970 237072857 464914091 987656714 929628497 15011112 510394568 268102224 147981322 841089601 702050622 12382471 115968938 834184110 329049869 851106701 694633278 947513456 221715324 722446379 839499297 970386354 471436787 193956096 321248700 313087961 773802908 781996103 504463991 436440367 137741838 649750032 547417680 225811806 181680386 473167555 172694828 912966195 584617106 331236839 645260648 205401218 475890567 267120928 731607035 564471103 959654306 494469774 580239195 616907310 41817991 877984620 935044519 966200253 323339700 509177303 305207721 540825107 209540157 47449076 461432799 119568706 186420375 693614656 809890840 714609882 416095723 344548914 893251364 848010123 443008113 827678060 187826704 458663725 229360687 104372316 365751182 933655752 277613912 8701399 515534686 153491627 456210198 520651417 363916927 965634593 903457285 460064510 523310078 523016261 938555223 935276016 495170568 674514815 886322977 764061308 321624331 611401204 760502109 25126791 6817780 592053492 686075691 451943760 589391814 292706491 346710823 815970573 569787536 162432137 617563632 41795888 320850951 773482009 296885058 411098052 897719898 990194488 614755925 150778031 615337010 935434665 975687762 623929631 154756161 626419725 787913748 225746560 118260729 894424234 118690299 670691425 110040113 725553718 109907215 189040261 627521874 544557390 719519797 729193168 659477172 879709222 48235528 555106910 690954710 443672574 360499428 112208861 65551790 881357252 890126504 308674636 867116394 441973054 363749792 936406599 84464860 45347404 351901 870329409 162992903 74229816 372969118 300037151 654396357 750724262 125239782 810235069 378926401 702653331 703367308 970123058 811333894 651093797 251026849 374077295 731511215 776145314 543986542 990127691 959550531 482499271 818652449 39676460 109823570 389696898 39357649 671307807 71393979 863427017 80516928 11749524 846996060 122318561 326247342 585268523 501418638 735739187 347947990 23002210 230322972 652465256 278088956 870946028 107052943 872903719 579703606 629736429 588137053 740548811 648651479 826154327 19285843 439943033 285860818 489102974 305182176 150822949 13152210 565165603 880956918 592152308 33846965 429931573 818440126 628231345 344788096 990427913 143773732 830565631 882031431 306656032 121214822 326412088 488705312 833268299 648016939 964284382 662063423 645162926 984874716 629539147 24927169 465555294 54270585 618521615 585686634 75169060 50232285 697436424 927820775 721698614 569040425 320444191 308702676 94583659 586394409 516283651 192901120 868102934 151134007 904691854 540362245 615246360 396155507 322614910 439329999 503648932 402553471 274312806 543969122 394174626 549784341 738352680 481663764 279586863 198995478 454327828 290297012 321957503 414283403 564243364 516959066 307131840 997093478 254690415 944039211 31978926 455346334 624214006 639788635 441015663 684703684 517832360 651092435 449372005 504030638 636088558 558347105 618293931 299605554 515506802 388114154 850454440 662779077 656636195 352895647 358691613 626725455 768634212 18887135 930668369 548256314 298805817 625773824 667122191 129815555 536829785 957387196 310669090 52550968 463162205 356036547 802637002 123127935 568357189 865759772 498824787 735472870 606811276 253262139 392795438 203125532 761346497 576031193 468131447 936600997 619475950 92133495 651151820 379288175 239432238 464309042 531936777 507229096 679933322 298623311 270209872 604379592 98070771 310781425 421269845 87392792 15983876 907523591 696047578 641879051 441385282 645044020 245610120 945102904 441772161 665691121 213294299 934746619 970716342 267147653 817455637 362151802 978952946 466437644 524171312 497049219 573523900 110370670 153353918 545312982 394149210 110362357 703608617 431398434 599297579 434488569 627905222 613530369 837458308 809886112 153546077 491063375 565436435 575168827 737110819 998719524 193402672 297382160 393634010 372218797 705808663 270628953 786483342 43725079 75148461 513896578 634320595 803157167 79334008 309263728 714532600 754714918 341947937 938704761 663369915 813650836 126836037 726311072 388604617 346707537 906855393 436553067 609087034 477845984 947989526 769897741 635241321 257456348 744084595 356051152 136221260 996934978 957599156 402387301 18833588 778989165 728037476 152360873 157134233 687229102 784964658 480229629 942054678 91490166 984277150 344682567 203681567 143466474 803940184 619130903 320641986 451043851 370905020 141899295 360207541 248812955 584732201 908827345 879867281 863987298 790804966 349918573 61431048 309000241 538437641 680460189 903199770 341144539 320742720 847760232 623173697 590274426 695142357 546171965 738650368 924525652 279751397 184686104 907966358 816786142 587174149 205900131 527835019 343755341 465507946 718862416 720492913 347012081 233657271 479768764 104210758 190838353 668804515 192733273 956186798 221821791 205950796 215905829 855557315 137021821 442623708 656476664 252765801 94303139 933917978 449384979 312419994 152551892 96230319 510648538 108135334 641612981 219129194 792733483 462440660 672949844 489939379 857571512 508685352 305684346 86693008 480277224 784849915 973087138 322405073 346270507 675207352 247000773 773191731 649142338 89932420 794729761 280189389 892505566 110330897 455189251 352248831 400674094 963230174 734479520 915077344 446857948 104950809 221160871 73728461 950450200 520419219 991426535 625714348 507290468 142386420 289243943 530611830 811791866 584562060 267258916 825306860 326576932 670368011 774911726 660352688 394990103 925513457 726275310 14939342 984074116 413685568 123745639 936722140 548803859 511716142 455654335 110365350 387604322 851202849 905389677 254304579 416161338 544701800 280017225 861783910 164624891 748253301 680939421 679289216 733202174 766201898 340558192 174606013 396317730 440107082 673346636 712153218 925654684 407560959 468102365 38867717 300524223 384968281 240576855 75711938 31673256 796622909 984139186 742145739 699595372 537563516 172431767 579572100 403863906 869909920 486717214 704953381 252636574 271858600 519677783 10001461 279989586 763364119 678653065 530118357 298095916 605753990 506113992 252956384 199868903 98741594 536291798 435699782 629388788 165794111 25927631 576188781 282990142 319169153 183842802 228801535 881713381 915751990 211528170 138094523 653940418 395149691 9410213 395911688 505805681 75694349 817746517 539278550 152238561 719855295 58607899 147481939 121976432 513292897 471881410 497916681 257361956 161176590 316825188 900620783 791685024 226232317 349129187 623084895 128185741 698742359 103182425 196345016 3691845 74347586 853663835 556689640 288352473 294300207 708437000 513588174 554748675 464150426 749310416 21867361 15493103 801090251 701770273 206123833 645050273 900202024 578983202 51989570 178778937 792039748 572545580 555677012 16293513 212990538 671854846 487491810 660074196 153444508 210828854 377927934 968054424 736154382 305087510 585145687 438024419 781160257 608487443 538079692 847244922 792494396 964480687 823939517 650110656 782368943 692119861 668743275 414360265 964525763 649315641 765656679 895605401 136249760 433375796 839628558 300172150 566420312 702493052 614945645 271152168 790225352 703505358 754322688 192730214 82456078 331324632 884843099 211887707 802238037 631433652 74281030 296463474 427990064 860533895 196428687 995854628 984114306 491504128 451135558 891865846 412491966 332368158 397919449 793186346 573528262 953074855 38850371 797547190 640764243 28817353 17589258 213771409 852260360 240854699 178355070 305897080 772491233 179245331 460889443 478717485 876373085 227666440 631065969 806769269 665589504 258625165 942219696 921879358 276791502 569395682 50012149 380378175 62185549 655871854 484426800 577636850 367580175 835027907 372460327 566672091 97464769 564770574 321262544 211970462 14803486 466736149 475318659 382401169 954146491 626109531 172897216 448091660 605289167 64082890 320451584 162753986 183321869 312195224 48683448 425704663 810388904 643188125 682063925 534175806 765291289 370395463 378108964 165413586 70268872 753031918 280786927 554636132 220393530 72608610 672465913 661931050 193109335 738209046 523523157 116461397 505516525 739795749 19930254 130835122 741711218 999824187 937682241 543745460 117138791 636577991 804765688 677968310 706306195 873574546 166508631 809647976 446003558 754241346 38240971 566392382 168051827 154635897 963727842 427249438 88180013 245290413 201010041 382484017 230063147 532008887 561204107 829718917 60156966 746335277 859621942 660717758 229850811 412563228 294919118 876078637 37139627 606559840 213492855 760319398 818186105 333698626 845764072 831504045 328473791 2075940 455658172 5486126 155887806 458768479 788970612 579224479 636663266 1285776 646915545 228331938 180006163 520244378 233027553 259020372 908773768 460701276 543926150 334631956 239041680 176505908 14432852 287004223 76460174 752938839 360796557 884775723 321391867 804399786 326599705 528998338 311415463 655528794 898964646 703190792 906748184 683132879 969849728 377896203 401026337 313853404 379155642 822850313 951292771 305733858 56380849 710981933 709178558 347207266 201994173 302736582 30006287 730801476 650135941 194543154 471620255 65404635 93073822 988916147 687941347 330266463 104885264 976981317 126580623 110862587 169830279 950492868 289884182 632227067 509261251 363761449 166597370 842658085 619413206 763236560 127479841 931949045 718269961 352509276 493768845 761722427 919797266 984953539 321401772 798157030 269379806 970143857 932962310 856922780 35680577 136498945 84374524 157313980 977470987 248528327 945889863 894476902 130389216 365579674 198879999 795958227 502902735 592976867 483544896 962117333 194224706 9903973 203062245 758151566 830644368 546188967 987340312 35367955 746208348 675526372 91792060 332303268 191769278 906722924 484764679 904095844 90989148 325559503 597888037 37957687 10284148 487986044 844658469 870215972 54314791 248343571 371044845 248771966 608729415 859916151 157761792 193061373 4457263 434105181 352012787 172825484 105961429 334207371 84141076 28535170 762875070 193629218 901014344 749511722 422269519 423016752 755644366 770798379 757661591 349993152 498927850 756209104 94441936 133631426 145138132 929204240 378894783 561393585 552876332 10787302 975303898 639466087 65156828 546471030 136875585 232180242 415749688 913442019 995171864 749853709 557279672 372132949 656355429 756787982 424414394 582758809 647977164 173554534 83562373 731158909 103168305 613392862 963919574 992618492 625249992 280214903 188640509 676223079 491655343 699069594 554245582 44594859 122048271 66648819 966233767 584874892 723005184 913530769 845207961 749111932 582922707 237737580 412895298 282199784 916003446 144650382 443798527 983788202 390645774 358578106 962094862 903807183 154287785 919878547 267109583 883522210 577744349 271655175 969566694 940005202 332013307 462864321 232664123 320216954 313639446 268002990 291463035 838177399 503526274 662782922 756342530 786688065 18390408 321194814 108295966 34585603 51762950 786530649 322632212 292061198 518812424 70724823 831341165 167841670 536193472 772936857 303898058 687436777 417540222 104230811 385885113 620233362 813719262 454653857 234745414 226126461 614050725 727002854 729453666 757521699 874132746 353422933 728247689 602663560 270357763 453107462 187277702 940815149 65919918 573460258 945782157 125622622 828635482 208069478 800620354 676399753 513740218 552828273 515560498 287599353 889824979 56221653 533643095 837741307 628127282 726110232 958249419 987168947 485954249 976268920 639058562 193619005 793348833 51620080 837521497 741060472 490285840 260827578 724272552 976820677 469115501 536396974 471669912 645693690 538924678 687467365 8618626 971137439 915497224 222757397 652190213 512489825 899921959 785147060 26453399 38244930 185675430 441953735 379335779 922370089 430537332 364981948 818025346 982080025 910178218 875523043 315584590 229250507 117890629 865341770 632013454 125195611 518324202 998371691 452687559 656038948 406790974 435733158 516775244 812043587 171047283 257938664 599512396 85997992 463261276 492565787 6446415 124543101 627780575 168349451 31508073 98462211 723099214 661869666 187968777 753370258 479046251 256990618 894822388 816036184 802201644 763038937 552379358 474808625 224888592 745251056 556683422 398647208 718851037 28165508 469541371 446472401 408028694 998147538 814816914 853638706 519373965 876061423 736398357 346356715 496998363 559564284 583930832 186370460 542860881 439999102 545195424 61017892 212161096 899071710 664787540 861674177 169676708 183864491 100335069 199007316 194341939 463408073 370344307 498892185 130538295 642032749 71238565 855524523 263467699 654509735 345429731 533374917 324846449 824478131 867021205 607556884 512120587 503453241 894876524 989446454 668840607 958765681 937460529 416125854 686758441 349936354 133984907 226479209 363484740 75895497 680102795 255617524 222455989 244229607 336987824 958105142 626861059 243587182 832714270 825312089 327066667 148001352 832808412 894724981 939039258 795147169 736932120 5641916 342124432 455024134 169988405 531594260 468790365 457471817 406311359 990530744 656867738 211473009 702351794 252507109 890930547 740366369 824433743 764504295 672483592 309000091 857906926 304860090 807280919 8661220 938339988 632534060 726299112 423217554 996721193 408064371 721862794 444360454 62881890 120651608 16325498 741267461 587638869 937717376 391338418 667106610 773494537 588470871 639720363 334777859 818558963 819929144 767244612 126471753 574780924 825554907 534888774 742929578 28997000 689554255 548731354 58835110 886514346 400386158 914070432 7465506 233273696 471634634 511421441 279881241 833552556 126092834 905848 642810813 135702005 778652618 844801455 567963233 570093121 816791104 149719728 12678033 627824493 706264940 532402073 342613142 696932232 494258535 294848800 63429385 336410517 61521646 846063619 813099365 488962579 244285878 6510566 199976873 422040557 283296059 897720606 437949643 517870399 343460834 829226246 376679378 878604677 485800634 969865716 118534705 90073262 352416532 161790619 790896032 967098622 854371556 397468349 968740834 557470633 150194368 121613163 91258081 38704121 233034076 30812976 456482588 175531357 898040464 531132808 574999862 198330116 843066771 349306547 805155097 589469162 814181786 138014437 814062609 769946868 256727068 659045201 157952337 822772967 428684989 500745177 192566995 858125350 993224385 522341622 592259064 42159483 853874857 152321417 216257751 788398472 911802267 934203021 180426612 109800581 979362799 146465325 389436680 849008801 727314437 994784992 695862785 17502396 786603686 392427252 187920965 250127915 824038209 323049748 244469187 429211024 673688835 157398128 640538045 999275367 881886296 448797825 655333565 313398215 323789066 553380387 345469973 341458095 371976558 162658177 324557565 74155291 865944064 796418863 232495232 198767222 108447674 119685817 928362315 870585671 198038020 579981216 101105079 236451171 745733010 697901552 809656078 156139058 340886785 873085426 38233945 794831088 195052111 939781475 859604200 873094157 844230286 110361746 752009972 354099428 750598628 571370700 747886463 862232243 258194645 632409156 234617851 754895677 27876135 129893719 532365291 700946874 688902773 92500130 332557951 574036009 826563299 403338066 623173376 171095676 772904560 749463063 50643066 147734031 824249634 898245990 12534294 226788171 199163459 69747953 189338186 14035841 903226769 323314436 686201814 415286904 175123964 559130701 534415015 532781806 91490409 516795399 253964974 907581970 801318412 324132035 691839085 169757794 985739650 828574627 171358301 155881496 349961508 614035768 959058636 679815316 368925441 526900928 781732291 595253469 228900814 510687986 968241471 467955460 833581572 587628786 542710120 482171841 785331284 380073805 339361864 452167095 324546291 994638175 737922301 125866913 790520285 29005516 355290314 95343197 935059293 977643030 102744149 831758222 202516266 714612606 833979107 351482233 339233914 703638223 96750007 20987071 161108738 990771552 77056496 476479247 787588866 407218981 567909875 127244892 81734291 91409742 522856134 453650069 199332257 406708903 851557152 820055505 923117699 520083279 952390115 377131142 144382331 298936666 477444741 85790187 551692052 877800521 748940493 260741978 22961859 596210075 651056461 58094454 756458306 969838004 909502023 519078579 946701414 938077566 134011230 269670153 958372060 7558800 140511531 372302198 853953452 331502061 353854840 47902937 891832869 539220004 75752711 696548609 683487115 917669570 600623804 727914415 526185537 737593120 826679116 45325184 487784930 346121393 303932980 323352275 811944631 806778848 346517481 291480178 728834726 611319593 29579648 934610343 460721391 150844101 101100627 610069076 903281328 25351437 277708939 989754502 556309816 964029981 91286373 422437778 657858272 45409177 391513742 232871361 359020481 989534927 22195946 321643576 107418562 790791334 487463081 846880219 663385397 600953540 338427863 608154546 268175313 913817435 615527233 521227602 399471091 342207951 974483986 306425107 367323062 868847504 14338155 493445238 356633522 249020967 862405435 343765877 804713898 809941016 340493503 186529691 521364246 598027871 266948074 660045470 937183685 364685899 925326655 466791509 318436711 472650153 547239289 408553334 34130721 218603852 255911823 72863816 785364123 340642119 569695432 340382626 854901246 304110138 733711519 681337064 950084968 817105462 772644703 368261432 591075284 133760514 809968571 636139813 502455811 929379147 61439795 97040358 915223522 173466283 945579350 355996068 177267381 62289840 248528025 726639878 281805482 538679481 440358495 793598323 667297096 918779164 940252839 318149989 4208678 736849172 807346971 881153976 79580296 148960949 931316532 589073859 378384319 689051477 173913705 159555762 704384561 601566067 272919686 119311579 535826556 177609732 67734155 621533095 858859048 543107449 202165388 689842316 460574328 485952742 472843857 227779686 114315765 622122326 95705870 597135133 324601372 443840033 498862715 428333020 702837449 835721717 808538613 553346751 625255602 281440944 882166124 330735168 17668803 657750845 427108434 538369474 458440775 980540231 45649689 991593106 533215873 781075321 211776506 871326124 504464478 527086354 712705778 616288131 212543709 317028096 215365845 707015862 635593993 867785953 806542646 260145319 879227382 185093893 770312935 685849965 299958682 926175989 426906138 123333526 100382075 700353900 91510852 150948799 623615 567840554 248994901 203249671 798160756 119377202 723328475 552046371 431564863 314312922 612443766 763219008 11936796 682233355 467921700 474889471 731482577 697819702 207516126 985272253 965477935 383330192 704371321 901430256 592489231 224988634 687935651 61177665 234387494 387217332 177962871 769671069 971722681 297350449 524140798 671499386 544539171 865333511 304132045 574697809 834289775 674815310 241174609 839080665 663190806 5249782 164084772 213840508 219173229 224148382 789491832 465928960 274567851 991618258 846201767 701495901 746936947 144971764 128048534 336883725 698649606 170593283 97747478 469454439 411846311 824247358 8188740 825968903 96462120 558570027 404737994 873872443 157543153 110184363 697910873 770254891 223444983 477995536 216702477 565657710 194543997 963377745 104146064 768453992 40886811 227696586 126436219 567378729 660928614 556216133 685019539 757383711 848547696 613462672 230961494 917060564 259830116 763684321 435486514 438243507 86681359 14660618 518362855 661098716 979931533 853092261 73296054 157908424 321566416 264582627 695623400 153536864 92273612 141687209 450738803 564709116 30318975 378461072 29426975 513763021 120234313 396251065 300939789 970056829 126611775 308960606 703805156 883713025 622262921 451904182 246658985 109766027 367317619 572172909 420538860 236186212 438480543 409881507 966451447 937736479 959780397 130698513 638984233 442100590 315967449 491228698 545055283 521825629 390165321 496193883 156927368 231743062 976163480 318215485 315368806 562711006 910553820 1721401 98985930 897373459 641890277 525184609 217942980 497103430 403756302 319327116 881066085 573768205 362224873 672038204 253972798 705109033 659273915 588973045 91427109 155616484 984945439 325361829 839640604 269043073 91230343 912274219 774382164 1453640 815124979 918028866 557607427 202023021 822116020 864866856 276562461 53105019 935991161 868929575 514235800 551275610 470014008 225752301 140032452 583255486 10500229 65383535 768432332 657252309 508083416 335599759 548209675 239258840 302402999 480789076 569917234 477362305 743033763 643721547 210912751 818918639 472322598 174133855 570655519 217873771 869511945 986841148 417851020 790964201 569403998 253557540 1076185 681077795 750634958 599006273 885116573 344931910 732205523 266445386 509552276 152091562 774561355 537471224 534317870 764366043 297062371 588104572 673288389 494356471 254373486 864366892 14653567 405546079 558447910 587315393 880118116 180610102 151854706 242572062 434453834 194021917 664391127 967180872 554953891 687498423 639038107 538563383 917749864 472161858 563621419 733830152 62659180 396501679 328362945 316399289 608534744 344271081 44707973 611115503 495440822 946606983 645564227 64358098 997165023 203387244 937826139 326181635 751601975 159542002 555627294 992916182 275097162 90870301 274769474 979893284 40755509 69848450 428686735 397659148 135612470 610282648 623051657 425909312 196671591 146519294 980022300 918928169 339632195 947315733 855137759 590075199 863413871 936322495 141544468 778360121 973958216 478640026 918539544 474359369 367524775 360811478 892773203 151984475 230559486 977891495 889479571 709407211 370147533 638536737 137121544 199929736 712498478 874928286 328451755 472165098 673425053 597865589 221053244 1634572 917416935 248998685 54390298 5363615 320077993 956416639 259935412 551052995 445129763 675333372 660691010 171882947 582171728 349079150 826724724 36390114 514026308 25921428 982483159 211878396 817065857 124312733 347874659 879086641 62277028 105023268 506059045 61773692 963095866 983629877 661922613 459674689 977163631 654312134 681711884 175738399 600811314 234271376 418236495 817472228 835699365 366206158 981546746 362163332 125896985 21662443 4339078 480218414 272888523 834301724 779586045 581223132 785608038 256368204 10737948 395972489 973559737 556361667 418455060 348644620 832930563 74479983 174626745 406370411 515167459 756509902 554370747 520995041 537511583 211787171 624722423 355281984 535884605 509670651 726095063 472248069 268038767 776158953 222332257 189619467 247097922 994690422 354564489 790069621 894104903 604241441 230311742 880531257 106912807 648004928 969009328 818622459 395885488 51885910 223448628 175176851 407021280 975878342 585572915 894003224 357150359 935718636 980365141 756036499 504455408 270613862 648901556 834636740 767670291 773974658 250761717 734859148 951100083 526231186 775408 36132775 412551389 812049818 212754789 320943798 875525403 57508777 807783879 114586725 862361259 183698496 68778452 747724352 763748311 294977352 585012129 949847818 950991909 62652663 451210226 856213645 314118752 694334797 932652910 640935789 848791516 186265076 259741559 553296845 350812028 346509061 277248307 477047537 859242551 344541375 834375425 270459774 444995829 52101787 875217958 499328619 875140574 526192981 369474498 650308396 470434417 794217511 713297592 363153665 777435852 98372464 604759699 208856921 467990832 998273534 230565804 198838224 478860906 392117033 851944702 309879594 821764653 237541888 298116627 972608017 430284485 215576260 907920727 444846102 628114317 914769369 824809361 856299269 970593237 100755582 209096527 323494120 268490854 449321432 827616405 890039727 265038507 61571079 357043987 543880909 701393539 184686160 515940070 673656278 494837803 788046751 340587378 830743509 740348658 665009953 878253668 730113113 586201246 456284349 435663857 823017043 742966320 276477268 768655347 145020386 626938191 839611065 842813627 51961173 85863533 866189230 440141690 830607606 760298043 720124857 341543567 55068253 703422929 543148130 98336710 12227695 912138302 894802407 654113456 546034356 884920352 525753507 703118900 295651076 899906566 89530773 910598058 269263559 379356781 904898535 522946883 247333148 937174230 978299045 926955383 931744195 723294645 666211851 936044000 611695608 116530529 60801104 841073868 767336849 142154755 665843855 736411831 43173928 37616364 869142347 116537136 901140397 167321037 957553288 135445308 506939524 582711278 679686077 13595551 433154680 722810248 352744340 528158126 503274994 189634037 335168733 451370959 798319849 315128121 378910137 186523678 804825213 495271467 795463310 315185949 184598884 287715309 502126384 919175169 493543197 37173405 395068600 625431376 569359823 148301234 917307672 830980760 905703222 150430721 767044583 334091056 742543482 546533276 725718458 269558020 657496550 658810246 426658641 780057454 928150143 453842683 566935284 512103959 55212025 352138544 903662198 615647688 591817848 994259876 125465176 444387432 974754106 782531510 134457131 616042285 973901267 226417592 898775065 563153729 60113203 644032561 298143149 34225155 925672394 770882 381851182 248839989 536186862 339674920 524380912 303136506 412436633 13007117 247399616 15849491 846426083 702614272 714341963 75862133 424840427 540244668 551537887 781616042 267891313 161808450 938363645 664060224 683639653 346961688 253653054 3839864 861574393 919785737 374625823 682374316 454288304 845201497 691938776 224292658 640858262 164797192 61937396 588791090 692047839 539341081 704267730 282053999 230067555 379498460 543197313 882699839 475221775 377366115 871671859 888522853 885798490 873083420 42159464 179481884 731839378 900946191 624821408 418882041 369579252 283774392 671469172 914590884 548190154 594551656 939201744 236408225 150985485 82693847 382450418 901820099 257575052 248024964 599211080 107284832 566059020 103388124 181851489 821623010 44067286 287013440 511712305 452748105 468519026 627868454 216323167 558444870 321833604 845209839 795235334 353077973 8439031 600679809 678805795 971604468 50564635 178038446 909656375 647953727 335216039 46792917 79252715 98650856 682085201 742030984 753798962 136590736 873624339 127050589 705631824 991493506 210435391 349568442 103505748 962607938 633216820 251755060 300109817 975598355 17079134 805630758 599405366 68881878 555133877 557323687 551613567 173731116 820440673 136135768 520908091 337377585 463590276 997477907 840710991 214030665 420155328 93114659 436354368 766531215 791297865 717150783 938200980 848786784 274789174 301991966 936399754 499102573 601431166 767149859 790192551 233793074 387733398 771498517 481481421 468073407 146025779 608379289 756493781 437004246 876843546 369880340 836740693 517871409 725161549 569817919 804028365 922571744 118059129 950662019 921108171 855782087 167315919 552641775 946922119 797944015 482680877 722518304 64079996 681633094 49387034 792292878 470680400 412244804 856887764 668936751 252936991 679485000 535970071 278045732 927915125 560521494 450495608 589697355 439804575 359039877 455519739 245416339 84407728 269063012 862767313 221112307 130525821 65007708 691785604 982045321 889087687 846308539 729198285 808706822 353231691 680918712 540630411 912750244 429359870 926816214 131383340 846890477 955769760 848257233 231218424 881272651 639207898 464413873 713890892 189499998 94837824 376369041 241478301 535990456 883530045 907826145 542717421 420630842 321055227 111392990 978895960 711952258 492382605 399850226 480981989 284417334 4397606 566372680 955657442 389603105 287282996 346560443 468939402 915566771 615742258 584848249 954231434 510887891 92257962 629683509 864921305 869627522 639531546 964119143 238226905 175218294 452644417 661774534 62848134 784712059 770380554 221630808 105892669 618753488 113452555 990826319 789282149 755191638 250120036 930065725 868007043 296756607 6401860 64896230 499517840 551863063 552578962 251619924 569800446 226886869 902857684 384319215 195294388 348441742 703219775 111154481 985760370 361889410 293518268 292261396 471645321 509277914 513083519 403868544 383214724 441455346 814732310 279315373 316122722 851828819 520647340 187232283 148712823 337197686 396768635 506404058 616077329 388874427 207929864 886781463 27924049 915047233 974656054 43943624 772034305 480974089 418968596 603755682 562971234 732184451 558876951 752181834 180585690 551500374 248618497 96714646 411519014 743460466 548453942 26756598 655570122 125270384 534553995 343812497 164213957 274999435 615481477 560914823 138198103 99382508 310628189 509248315 377379985 846967214 861693629 891835659 202754426 130280958 848277751 155338090 626633228 816458823 730397076 834839949 934447192 688975959 872630971 305461337 709830260 509100351 487878736 295548364 703215826 889097096 380824154 361888657 423666597 840712209 405117671 504898992 695854064 52482517 892546358 325052812 87569717 428935319 703212284 283736869 31882507 374597592 818181755 565621395 469893564 57413929 129017665 813096280 168124457 990252726 412698582 517368067 603735737 202971979 951818760 755819575 113368642 438068910 425234271 145347741 358423595 752376662 945207934 477813545 370009224 55491769 690125343 409769003 330902090 205371569 152009984 28266532 480225520 572552611 328446824 565158982 728092487 5574179 597640394 259591823 331923331 478156901 730268441 970623141 446293982 715677748 611613819 530748689 978471872 321328263 668720982 704760721 433698920 52963572 538221025 445150697 343354406 888043219 332515024 189277048 914255359 207807353 570034150 71770760 764874600 670619685 58613178 393122137 999248491 762538131 812301573 951074960 18020132 682826515 159290566 888159879 550243314 483547497 715219299 734593383 761245348 629230113 465754979 870874852 996713077 63730982 768512425 650169805 479982587 571655516 410377254 523250632 499557205 135218010 557135563 797982875 462101799 838408477 144925050 79957513 189764205 855903601 761367475 150425224 787437974 555609600 942887823 455360774 905697391 276893040 967718161 421198861 473353633 380991529 879562579 638770072 295579832 41432104 201509795 413307930 905628498 843731069 935190161 520422162 138652263 291691118 386672088 490372808 768697459 266047697 268713928 509166702 398479859 123698415 913812755 674206323 46725284 185923676 530712238 389908478 68921457 150177604 205862799 73633966 297036858 31103025 105964304 463344037 593329489 591274956 790301007 613387924 720381518 680692998 478309187 818315225 324621049 974383565 44900532 651948897 796121544 698171773 657390764 346527534 978186037 248476638 187615750 843576879 106506713 760630626 85686187 818161808 61224784 692900869 473415137 917817756 32671779 850858276 789363135 640027103 142330673 73873745 124458262 123769767 387482658 425013250 620795816 822595356 183385605 495070915 203511448 392961596 534919407 200974372 582647636 438746886 233909754 44132962 628249711 64480457 532046372 783575251 926465300 407676671 687617832 426740130 749179518 328500448 696885851 747193274 313770024 918544712 746299671 111333561 484477911 982189591 141625947 420161728 60149164 202317272 344523434 986068211 999810170 392923954 832146392 170233703 562659809 625220175 841531981 736315313 682000788 948472997 545424265 334347288 826597308 210758668 736324177 955542519 424650734 521144955 576020568 6997551 535027332 600242432 389985536 323460563 83143791 153808170 285368241 831330108 780215065 914089755 910078503 255287977 745142479 748208828 132566922 478112599 905361589 674214795 435711765 309776032 788770917 256304098 312850662 662709108 545456212 322666210 987028651 330109399 997573152 789712455 602270193 102210700 596516525 568166692 209685543 775197903 115948498 259779026 798809753 623712941 218459292 129125299 147417979 827726117 429424553 604377155 470999710 37074355 850249176 493278423 161045344 906958040 660855418 831394468 941801795 492331468 809283437 912502005 751956352 870600658 714484340 668926975 442600241 77924835 434046286 433322565 266093360 57790333 676349467 384687999 124945982 868306248 869176464 794875611 91156893 508519388 44727203 441347199 485671937 293116271 30333943 360992879 287945660 124245464 865657296 863634848 48718203 312894839 960555313 214080581 497842903 674159492 6759081 863279303 461096407 266700104 568833538 679448481 142653684 403431038 918616443 427992177 826249280 474811556 805420009 915438348 735672348 850849349 444899624 952114210 484886463 517870637 630418716 767066485 94791590 59302351 202359052 989861664 831666252 229081592 553886945 888662165 700708731 910134367 314180638 689317487 377229486 481748462 190240470 365042158 387753158 477249980 821867900 470254183 749451524 627676947 148150645 748538486 979482372 687607308 223482301 403868501 367009403 629852954 101537132 639444533 317509144 279261892 851755748 318589603 389628477 1666862 129252828 872510116 380821379 30451232 440650389 400125958 701435845 336325991 446169599 352264885 209320409 671293253 551186708 576249657 253540921 755501924 74214067 916006815 532490184 999923174 501165495 13365843 365144000 987699944 515568268 656347928 475910163 464519160 552304022 94842614 776803918 742666777 615524192 580795199 976746714 968948878 116688239 328176148 626687596 988132856 972317228 326808220 255792915 335680090 893264905 550628223 982576856 222195626 517826916 723204721 412344885 387274789 37270941 299171197 952523152 624845633 218982958 950726860 158565790 517610119 222493738 243765039 857016122 203517900 367075014 316496906 273610639 734221628 520079308 717014 411848655 97622378 28450953 435528069 188174084 947818188 531551343 547822974 693856527 422799330 617734083 366474339 648084695 884210500 226894781 391752028 114268297 883422351 452519879 784143513 629334415 568436103 246583472 201065307 336302182 355452694 907018819 193121356 348611636 27703799 910067508 882126115 993646904 81333977 705426705 257531245 706833670 190505803 862821379 716922253 93240027 410437179 760986165 421075114 968471518 630700985 380858151 709388457 951420566 360485234 23655148 833591745 919310430 73460009 916478322 949719224 125438683 800642175 451803163 459853739 343286561 802994266 543248274 597258622 557997884 58178969 36258789 518617293 26933108 888497453 344174957 798887373 556806654 933324235 873503362 846212492 523332934 628870875 396814073 864119577 283246852 957260704 233023163 496715298 458469695 902311571 752835865 277458498 39098159 651869586 268343173 136007077 166420311 469604912 850287849 579074625 809160549 180642669 349095779 837326539 406590192 966514381 876908793 942424812 462343964 829922711 681476416 326547666 670349185 163709283 771421100 393382337 955061123 91039624 729736266 910737756 653510996 788229315 946910002 578506472 95252299 19575037 7373880 334517293 155446369 154639042 288000435 799255784 242269436 293783804 696003079 509553521 430862489 807373100 57067706 475795189 118787608 601966847 218978996 184936611 655915562 36593733 743331647 339080159 571971637 231126349 389276898 947792655 551551150 910933641 142515275 230032469 837966178 637212320 520381373 172145625 156375775 323611551 679490998 16342031 100619649 540494747 449909725 967633288 201198221 441276948 955552603 307140239 77041872 128850028 103105462 96106061 439392233 410426368 478810907 115560500 392933071 305280903 552177089 567170059 568075420 674016075 377167085 493261649 233217095 808338221 111490322 313436797 193921637 135669593 67687390 134416096 432702904 972585422 1679399 753612589 241915138 86164565 696716445 497307117 232520051 796005710 982910536 793861948 345956468 514920243 503029076 349111200 784805836 337944326 829770483 298193862 915777913 431880913 897017576 843388873 648067587 583340992 630916062 872040066 841497667 447540967 576191540 356184027 110119078 46498704 365557367 858027496 728453915 558661959 868358550 66175224 170464459 56435455 60013543 36972913 896931450 202254912 514012385 740331143 97022188 473902468 603622305 413128264 508789737 348575470 261228545 208006621 183593191 567112936 439321997 896699462 38094887 454122875 704582731 775575243 547728313 64461819 231211868 51850841 941199623 833249119 561816622 252943107 728260551 412029057 211751917 863836219 81518138 686649374 902842223 366419164 446121256 86224721 823799541 147308183 822320500 853180410 632075354 184880864 999664025 884781096 164604175 396077439 595470337 944399959 597342514 130245548 952185875 140703432 282953851 702548334 811777853 296434674 206372980 69628997 42199862 346364577 23128288 752699110 978949258 988766043 84111139 749414449 395091488 115116477 381470733 246356388 860727077 781732551 305469110 263735765 222710807 219410215 481969228 17165006 671936738 79780930 366127955 284078443 394307061 276795831 688531775 260820276 984836658 410399159 504410558 173250725 452590110 536821434 992955870 721092764 483953474 216638548 784549363 466575963 448264060 857737202 416463999 670547104 49418871 739380397 368305920 571477993 322393268 909212644 820425863 718949559 982751581 580989510 297568617 141922625 260889116 432910054 40957650 689909994 922034876 876570535 764738971 765199595 991493134 786714370 183058249 747014598 402394742 267592217 230761354 626495364 216281835 139589451 118350949 954592572 207904156 480120330 698311597 201607268 563625449 196078708 28001865 599171811 216407689 476652562 657757389 738883295 198747472 270057071 92398751 230227037 207601211 757341505 797916454 55224638 323837378 822089700 990515934 219584476 870580140 744755003 738865896 236859701 717179881 688336902 14108684 933905807 916272966 103089995 598391209 41867219 636959747 636483838 225927724 185465501 280889431 646802444 92853594 992269028 968613704 907154123 839960752 331407300 944542936 858681140 974334557 781143427 381898522 235608378 731658804 703076589 697924274 387050627 998674749 540293843 537802648 773505806 869831899 91267644 696647956 705687149 231463313 255753228 415618637 10788920 719211385 232148666 789286786 461614070 771302369 573468022 317218964 161643292 738010182 97634993 645452006 854603324 683107416 915417328 805394798 421690662 823365500 733247598 751800720 774276313 335325352 48728353 595378941 238301831 535067590 462821898 221779577 731972827 836683408 701633249 516212164 573652934 153028870 342942293 218202662 903080018 443526920 597863659 327309157 857027458 661367055 67671584 819452797 933004925 259533270 705947439 429212140 513856371 215032136 573109984 875048948 95324436 647894769 657106328 363095405 336290202 572311932 682736205 915922507 939922695 757162407 149673613 713579031 993823778 214977832 285689047 713827224 251326701 564412383 658392982 597362050 500529777 916797831 530098987 682815883 688242719 588158258 587967057 87482852 436991702 472003200 173836758 276136156 193133423 240613396 963104913 444411673 335950321 914369407 487894996 648895804 293631345 463374432 66174836 390646916 686342502 168165568 462333162 862801402 526485096 915062857 247877485 809334247 189048293 104303052 261315801 178152146 326810875 872998016 186207013 83179965 282725171 726649130 244314145 772319712 682957607 891786332 426166734 283592781 221102874 464346069 441920594 829567951 316904372 452592602 960000604 605098007 264365731 124972632 703512470 231597932 92805202 636728145 559541582 199740439 641122462 950342684 177635527 437890015 733493121 635476364 454438998 184637261 455025888 934352051 580723445 924138135 967295084 183504749 192386179 487801693 578384615 35208078 794002082 208623362 176189335 439541265 681799064 330081967 898234229 829181143 544519278 926917091 954071458 420724546 507919339 902827754 757171162 484298456 841135136 754246548 673021576 849662238 320038324 622338368 51992039 468292887 81148679 930498019 139814729 77985787 379271916 892595437 789736096 743445321 395156808 119748181 820712941 226894355 539600838 467805085 609922763 301204633 438065599 11829310 434274005 263194702 453054972 208394518 303329751 889097239 594166822 298439121 532563491 605851938 320958679 896765677 286192691 56590827 920009447 856504872 382992331 229257114 101836487 496495687 739833056 909401005 48459584 227917873 861163710 135593550 597495557 45692722 249842600 704505067 152414496 868053052 589729377 271132034 380473476 127908472 540569749 167661031 558007341 141693313 156217637 338931825 175773989 833682065 545660909 761154404 780760621 238894599 826282619 780082422 440310854 743650823 751330880 57670756 240563402 395978212 40716114 436066679 21156939 506556733 167187661 616960973 409061119 574036117 313655813 729731690 435468221 449850939 558552169 818706901 284170591 848182210 146073083 111512492 634425241 682744214 752711460 411624 613990775 425420874 298268241 685536417 881965806 623054271 707983089 268622621 946458282 251469383 645673741 809876126 486833942 100991460 965190537 480223208 833188162 487090024 43769232 12953359 790098488 768219140 594141356 369862782 421182509 853007560 144333414 866188259 29879690 794184081 937804171 504273720 465333024 470675632 626697854 742119937 974147263 599264780 709360133 452060107 366474766 48151022 310919855 522726610 449902384 83339132 684509185 614540866 501074706 103759852 612395433 152462561 23208084 99261148 40177933 647808234 766107911 649339654 460160917 728712587 331833535 822074989 653910978 134357821 411931266 196783780 342227186 55959081 940632739 565095483 233201147 371033568 928079303 72887501 291350106 340932885 894904100 179613473 747714116 667935399 757682690 433151713 595555344 611701210 478718395 891648465 317771814 554629272 298525282 179946313 492572448 826306716 935543 82740024 825926709 39041582 905705992 192527907 307329666 715292464 154402430 586038620 974659689 301339936 956122107 86098277 101578775 780440860 318861404 780718847 295680181 238634258 538126237 310313485 406134551 636565376 979747317 698330842 270328709 438405597 268945824 783127881 869242689 985642323 370312682 152912695 698481915 122257428 694963868 341336335 759823816 607087685 864866712 625684672 375588314 344734458 52318099 104302730 629462080 920373502 343891187 369121248 721480074 876459215 871597264 571938807 413637899 642661229 329573679 627269961 915122488 938177935 787894938 82666292 429977613 828013813 547101084 156972223 389664180 467200695 540641594 164818384 580513922 150014304 663053885 804521316 667037352 454886821 974491403 774278056 522947346 799378705 322460005 541948569 341123416 368078106 939946807 108360867 31915491 402157083 581488798 642105247 26179365 104794353 321867519 238350075 884096996 685644429 164111637 15377661 256071958 390387507 247149619 677613711 794803467 860013577 778235012 398264947 503964032 184796051 549742597 593498383 712996353 233008238 619331075 730952557 289378822 158652616 589753286 367353442 602780034 645267855 797890854 708736820 907453074 673250135 137861756 891499558 745981490 333746814 788920042 743373630 637173489 287635712 209390861 724667332 28163480 247808812 321240029 778494283 499186955 107814445 757864450 728357340 871013912 252069306 202424509 636153172 2896108 494170638 221649016 185917086 975230453 411930151 404933366 489474221 668173545 367107049 72609304 560561202 530979659 627578943 839846965 936743075 610058066 847649890 553564978 163430540 166776877 282868218 9835361 928339363 989472745 379008366 912025120 101585103 615976868 557977797 705782092 753294215 564319953 418003127 866777830 662962503 878298864 698791237 468474424 239214855 294825728 40081326 434345682 649474414 293260598 604209775 609710400 15129180 20330075 819518432 913207480 890354157 61604188 612102746 521920471 127204598 936770110 862486755 535944655 302308584 75055203 908080908 323275499 566208806 676354648 640962390 198423656 15760990 897140157 511457773 632603856 811290512 405147527 63105214 584731486 372438003 133154056 390735493 594054740 527571511 796542275 99597671 430921049 764117144 645285432 944141094 685500992 899451172 685050254 38559376 402097463 718722821 203694065 695697483 130823433 974579363 692985619 462249066 899943605 382714963 316318964 507881625 795062694 619241723 3830894 735006800 427018998 1817733 112316902 882926672 834514352 598319319 480926521 873245881 578204177 644110325 142039565 654249827 489495391 455664555 383128618 512851683 553069633 787795243 378450009 281671597 941425992 122732430 949503276 940524780 519200028 340618285 502474227 25804254 59084020 24805295 457971111 696996935 486561422 939302527 586331749 542648646 527458196 501585873 218067010 595353237 98534020 756529344 546440941 569812978 482504905 397827263 701388379 424322733 395622500 496026110 929868986 756306593 389529498 38972810 281148628 170197300 599187299 258908016 624192713 445988384 244740395 388495419 86204479 373316908 702256656 665696870 269191433 752872684 321475008 267927609 191005718 79910153 953413448 236765777 545506602 174077157 752032351 442133291 133603228 262567824 673902842 473111515 872418572 45517449 598351781 558862668 410515443 415921625 915619778 376986594 597242005 831730440 579221719 24898369 181510934 234916650 420747135 845955954 756944552 654755326 78015446 801195767 990348651 378820202 121281408 151362488 846858081 524569097 286278756 111158651 762293934 78334784 953835250 108483378 217946887 321683041 566767289 798719475 689757248 511235504 225921637 784076354 380336033 940691511 483125966 44842068 138330663 895154839 912362812 442218000 766137874 183630333 916861560 149041350 578951760 188327558 296799599 583683587 351329427 606748934 675073604 647289919 480170484 16961927 629056411 57715943 138924753 635990171 606033187 648214572 191858297 383256178 503971983 422301420 634769684 462279055 875178508 143643344 100502287 370491 603354424 640742649 891827382 961010322 220890428 785652334 269993797 772291800 452604546 109340721 417764572 243497285 78047067 536287563 588283646 556645444 776152860 734481443 167957112 971976074 994181925 109676451 793537286 696741638 19373139 648014234 379545286 524059308 438055694 214484656 764747906 482451425 303874360 562840312 719730896 788118744 585956758 51976182 56515578 588894942 808575162 656636891 630080406 651204795 5564997 727955293 402097758 891477225 186014370 46021229 612109702 622625059 553300341 2342327 597141600 336607759 76758412 273254288 854337024 15596948 457787320 103079824 144345625 437345008 195762469 843621226 543638716 421405219 101509972 34834183 203704481 838268100 219928949 115475313 438526314 114750488 390757721 213931210 498689128 460975379 739568859 114467482 889769380 682235746 268998116 895000349 837817896 626770730 925935566 391521164 923402030 100687996 532478518 460034291 16215459 747236714 875392371 470019747 568989069 544313602 132069732 358687605 711494001 599244510 631445298 635479966 195540473 506692657 363601525 726966776 796107832 71429075 352472055 288176790 465868454 460686998 338609042 357620570 428913340 735915828 669595166 358895252 945973510 368855229 788836796 28738125 608272030 92441214 640203754 779396167 943536236 917449495 278350673 270097378 234534334 329813200 979949797 768734491 150796527 763569663 525059098 186776434 311315415 579775136 610260813 164534759 493869001 149435307 110312283 713329149 347708841 195620948 27282584 351085428 623488857 894622356 142771998 931531548 483947408 371918138 575769237 643740466 348138653 197928765 855531725 463901246 374336105 731416871 586694454 712406418 982098114 497925253 638807541 579370633 7708672 576712498 21894077 573623853 187536579 924485810 633834689 613353184 655428815 395897131 84075510 564064260 611286578 932655732 104244861 458897890 896146876 912111668 869931812 393050358 502568539 848736942 94370841 106512392 566135383 921517113 664491669 909842927 2086790 669666582 184604887 764489803 19001076 644083915 551938669 600211242 861653992 685273081 774263810 770659738 949277753 986930653 676242518 900476863 698064877 766181296 288672091 732363844 739710095 846511536 559399329 438879587 777980781 732901217 20687031 985235731 636549235 304297950 585051224 839392708 53471339 377889909 953321573 355806077 470484711 835441655 215681947 890237625 582469947 521255293 592367496 271548744 328065330 223239626 902182373 495138713 384484047 938579787 322936932 690412906 286034525 248028514 102718869 896346616 557741530 520678597 64285685 937324895 831271296 850940131 533593910 909399862 181017790 773534331 795476727 509524890 586477322 150192800 852456856 352552861 624147216 348311531 854739705 602966978 114801839 221786939 144358639 123448396 26342420 352311241 827773578 298114980 877749208 442191570 545315383 731366640 306391929 496683343 971117935 133880466 156529965 678180964 235270652 463532831 391547241 698188723 568857423 202842436 522750558 721535525 873823010 509017151 203822830 205589389 225533491 157238839 135413128 795715474 798508063 992020954 159100873 916841926 516137319 753554316 431438474 409505825 164582565 136111083 216022173 463603193 979578743 865377430 933084981 16467655 626576760 250247641 328205305 942139926 653151106 769939113 953686457 774441638 889575626 520098455 23307558 435213225 334109327 34319845 689434766 526670688 125036899 621147148 168515654 552025866 904359213 55412933 513571174 445037597 56093313 222251044 26493786 978764585 972508052 495098969 428567253 651767127 253947010 263297621 56072675 814338837 348113854 320024356 677607622 538154072 538678844 789613231 342470451 883101535 939757072 708150724 79704642 276546381 139051580 106994114 158049337 496597851 8661855 453057175 444737310 94183050 259162842 668509213 595445654 302885342 576378571 988402044 391019337 987963247 709713041 966832852 514394947 337077304 539823384 404448079 641950273 361399329 869687321 382484312 281036519 465997070 990658679 637087026 660212576 148033970 685215795 620477459 263499455 594495659 517956878 852282903 144188498 985704406 54280256 820792378 496799109 235980134 317846533 817454262 192106239 468615834 358787952 625931983 938199244 887533742 847823728 988871013 791912447 284044944 967121484 118475359 783866534 62098003 702594893 272803409 666791089 419468370 766802743 93097449 212291029 377762148 167575461 869236739 412793215 735651821 433547790 785680877 272168333 678067958 516577927 731005421 19026733 900266716 741382480 797807032 666094187 976004374 2548319 43530794 309166125 812530994 297206159 437185508 960368736 556373221 264675993 194117939 311661988 290932880 189259244 300470779 535521392 970818457 961038898 632669956 972185744 479118758 683916982 10188180 540729552 937236977 349989093 454332382 689276374 663943747 429930449 269202144 552770815 961978977 34116969 719471218 55558243 31649805 473985965 202999654 971254625 258401800 74411007 134289950 379797004 465929985 890772371 191749245 753825586 360748115 100651942 882775264 125881171 950567985 126069440 538667987 944934624 425962639 329956191 108705763 284397030 62276837 381817271 947025740 73131527 963668696 706266203 333725710 573607552 428084380 668386502 356456966 546654313 434108087 619072142 195922553 849415612 862473621 54929320 916629346 946810814 724839521 648338928 98420144 634965811 393825106 132012062 712011207 403693169 789783013 709354959 979559814 244949682 683749546 74958742 530823451 523176190 836730205 967021400 406425169 388531034 132541310 427204789 859934687 214839867 929023325 612788179 572968355 660894594 692250173 671323787 791940664 56553379 417151200 698912790 194637864 388046718 409495849 876078824 142355389 327050864 847331870 108634521 516978288 94702471 586665336 279123952 112703263 87849798 682295068 107373024 22652059 204117002 231368061 469149889 255381970 342690192 681112431 504199200 737875448 75720365 243969890 492640610 71308223 689045381 164565050 472563904 266701644 667523298 573500950 966235507 864046901 128916201 160149243 585337148 736986632 918526201 321034222 512163720 830155964 409505348 348373690 941927707 561181557 717489537 313495441 492246499 164796598 671905785 963934677 894646810 704913213 888165323 152007352 757807774 906941077 122617598 290442480 792045310 867373383 526356428 406043582 175395825 826444456 264886947 852570879 274281456 775648453 95725207 8801015 955834693 408911014 749549489 681131232 218158422 183603831 24317715 793764108 594867424 429954565 611751938 712516333 157396791 301655309 526416143 16052163 933858497 725148989 360110561 972005392 883155752 823935984 593399815 650472242 801321573 947056380 419998844 474215896 204858600 935227388 231908085 530765238 214523763 672676774 914129319 711975216 913197900 303839982 925103493 416461729 364390009 143242048 392184763 901062149 296217601 137457713 41597096 598518912 715716849 738091995 855770318 384065574 753203017 550375417 936346348 782240062 632472385 851565392 587689850 649467394 243222841 772633006 883868085 980148188 945300945 726806696 352031261 580519743 13498063 745604312 914925446 411585274 670149401 628780424 425853169 596508974 323522153 712888200 881474416 802081321 312182085 68874518 495220288 753860428 26025572 229252778 150881024 180520246 774813024 319523661 200100144 200080956 295370928 611426610 914437169 617981163 758657332 780375340 772866763 527212599 829363512 230028902 829180775 342959361 413012355 498139125 606092842 704247667 871382681 501424575 945599686 900002877 319450459 562253138 66895915 101410980 691632228 789234027 418227499 695873409 212365539 280922670 771526713 593514103 366788494 518116476 648870491 486200476 611874446 48514015 864457004 235150719 896449842 459332374 428969348 185749396 534358228 553108071 982415901 856229053 594422759 127011901 347417016 12495416 277089379 120974767 135260022 943373576 926827225 956882531 610385834 36752202 625837516 51685534 713682870 440848383 791433916 13998618 217191965 82568295 843184745 782216258 200023588 999066996 437200578 842825247 120861239 859387932 662918182 294631654 845762350 203513275 239422791 390406788 206533087 271781784 570505834 550750154 656902577 370273645 69665348 639969788 628880971 344013865 535845745 222446214 304857462 987716388 730242192 736753478 380483417 178544700 9226326 515188767 358699906 19259869 718544499 408873649 187741111 910164690 231827991 345425495 569297058 351552096 267449129 416489975 186749859 678545603 568011899 827408891 709406513 460930899 511392920 800453360 344788022 429676052 419385859 190803215 869515761 510853702 20442815 904668354 427226635 683031220 660501925 81948386 946775410 599092137 81625325 959459378 576658991 868167512 924333281 334742924 400781099 233645354 508672896 234449369 637240704 501052450 293506468 519918446 772761163 177788422 662995626 491938560 498684038 224494949 588784926 479746481 464126636 231541412 427765625 360327638 766744932 958890350 6746430 229271803 944325303 719003809 284299217 355866588 6967463 879536471 832486445 894854212 785937009 33309199 502281650 448262693 245483244 225379162 585484416 657462738 203509000 513945204 759967561 83072526 364630942 152086057 74587985 118216 47969265 705222801 628137046 864733111 215902432 930546088 840369538 378201751 652854801 692605942 917560880 518279897 535377654 521889639 411592901 356332839 990494592 583123272 157392795 933770103 473427063 643667023 297957165 402132282 125621689 874755849 577372964 948564328 396613456 979010904 54227735 63286936 497617685 891206863 959040904 874160720 846033241 292059439 583805421 796584494 129195206 22651599 305223864 633430447 518921146 461907043 554350620 671425743 734083297 254095997 906951614 662204795 866071170 448359249 47579687 926548159 607747377 381603865 726704328 512463805 358646439 304096108 650018293 264719052 205304960 284227662 662464546 326168758 765540314 932511405 62195968 678223969 427875997 417021824 227988 185280829 761018408 622082830 932954538 483513322 729738244 480812403 508215762 719697391 731071446 80673286 230048437 44645019 538905033 712745598 457375772 5268192 227252650 386701835 571283247 690416654 603413050 451024354 164986318 801684805 328789047 505690898 650275497 741057332 395018494 598522990 53459909 131576619 423742540 378862975 262666017 36067201 542798280 587872765 851890539 168811790 789254007 7138689 290447118 797853994 209496712 837498576 647358798 685897524 224978565 389332539 541353538 475917224 447249711 976343109 526129747 290244627 899548970 511302569 729255910 56865241 713016178 804681628 690488972 342009556 7937068 612427812 9536493 822784715 259068660 462436311 332696411 307303840 787377022 698612862 98009830 81660661 137597362 753442353 354052675 116004970 688912097 741053993 728605819 886740459 797539309 80430172 359368963 853225025 561158127 395657176 934009860 334471982 910433660 850017604 379140230 449699247 974896510 128508154 669504515 52228435 681303338 474132480 752519808 68865982 393658260 628363009 716332478 619028078 6143840 45094413 205448853 78143730 594041973 467233802 866740947 7579359 192901548 510685665 682849526 395897915 903657996 183456003 306174161 799305379 252988368 950957257 346270653 69090678 322657923 261551020 307310358 101615617 876273756 291389831 605690443 665340450 964150677 604867822 666082034 746461773 525351857 855373381 754869988 185553402 667083766 826500906 199847708 407170472 464281472 777845828 25924174 27214482 790435973 229573616 463671335 546240518 938537734 52636394 530699637 780747357 822727168 569195076 915715634 868295740 753822804 145550919 738922934 745741931 891574247 110228222 483431604 758777459 443434607 826850348 969301867 65282832 163590872 505829165 294645480 302861239 418373643 532006344 866799415 483105625 76824229 24515493 471461007 608451472 510944615 351104831 119384463 986513182 949538051 499134450 959025859 124717622 271083132 956621210 459973011 760349794 102940185 694974367 230505364 664934787 19502861 80293269 949269052 272381393 527068752 484217905 238830544 115370418 191469217 713021571 151555212 861314186 241358089 501825056 916911808 302005289 99368355 718240813 743593968 531381843 967700558 455804877 890654112 668426021 879177271 845460372 952552032 234805711 901056388 200029564 940776828 713025568 623087307 536221306 875956241 634995763 695845197 726733956 103590663 249953769 253280787 990184354 754556752 997479082 970306244 323957369 374364938 715525124 663117797 576457336 986206559 641789395 324254689 577468799 494635264 388775326 235421878 897323358 447583287 123116721 955449507 947753373 728307957 724351821 341892507 829360936 661965081 276494035 951628104 108002051 696004999 306202199 758223426 274926203 916215438 599478012 702524198 812190983 491799636 811235257 626644929 79033492 387820628 178058840 822118737 944124658 825402213 491943137 325473500 939433850 612612711 83203310 334595718 682569878 737232516 100871871 73335706 107333933 548399248 747034514 383865310 815202653 158982189 273581121 681356490 595092900 55922038 895293117 180085329 497212787 805183261 139862589 695178444 847096147 810462409 847054031 21146086 165383709 896989244 899900586 990301864 452711902 648396594 120894 321095887 9213055 296021977 556928149 184096211 886075044 602191659 200657818 397614687 498945614 37515761 72955691 684820446 776410888 845925967 727854560 302494611 455449793 891265683 605051987 736960308 216446221 883193326 712893785 215248788 555887508 550254767 708234287 779230343 323161685 241491604 144536024 330109082 950766873 832297067 550988432 98139140 77306340 843933807 604415400 392214162 989493923 224679096 633042517 690960441 918222994 566744301 709859170 624806852 453873940 172514835 783767518 242696813 869585621 633505718 513108576 865399663 246182522 864060106 617336718 916971019 325895187 276770665 760182924 440395046 360950444 485718450 164292955 702794414 548331815 468362954 784848935 105073964 295833298 381532158 960479262 208460127 9995580 776016870 763877994 532384341 836937054 43129648 967679278 390437096 227812783 686780560 416783993 837543656 100453717 850033090 706548323 900651371 594381941 824447386 488202139 120427505 103903511 396340286 256865819 64084900 926656841 768651916 493417765 641191939 777830142 959720802 59856989 399095937 600660027 531277617 705445418 685792710 247771061 623103376 27467257 370284580 645065378 265965619 114154460 309087749 730489025 330163761 306398529 962717568 156592152 651758091 108746999 780758474 397483177 413583561 524451229 603832015 302405605 304032530 134916449 576598704 726525808 545653687 179384546 185409540 538728252 463944427 991806759 226251406 836590257 124157538 343100921 19924227 610804787 417582041 384679069 697855741 199855291 709350241 226004724 684044102 590890068 964405940 905902138 644397848 56652427 679615587 769830124 352380681 691788074 817228554 835378907 470443616 437744400 876831999 515756496 674929550 10038416 198715334 519912850 695337465 789239777 390294994 289461861 153072717 907836438 473800991 945955081 182764109 566431027 927046877 228834408 307965291 179456055 917073418 443505551 187962103 348917345 550188565 839107133 49883519 508103716 871468123 843750508 806934132 867463548 559621981 176334188 555872461 420906127 856519905 584302947 392082284 337042769 44460769 51430061 797176880 76349619 527907132 901347529 81140895 707477566 695682340 706096187 493019839 625441704 219778243 391377026 90865096 228976046 757170434 436792014 901377256 838097686 898000093 894328993 698452398 47008708 686108595 520641584 632490089 315525039 709937587 951060663 760863037 328704203 278495668 781465445 799435552 100791570 73287201 916629743 416032637 65912841 779268517 72477202 106167072 421848248 291452167 96364886 57390403 492909040 229678882 294321153 630582527 335295656 59624658 995977502 70364578 817994662 902349456 313636056 982609792 780835940 768914470 924486269 204833837 273646569 272186577 289241274 369893243 583682889 853220150 197783086 198249718 439086590 79375942 203263102 661578634 54384089 895407759 175697749 666259869 419297933 935716813 326346288 311002 702454365 398646336 962395034 451189094 474047358 658995084 158541764 824821552 698138958 126952114 739383896 956230156 588184831 882131922 887917428 231458573 783001983 237305406 893809055 944109725 587473189 745973871 853349974 497956339 214637538 875280027 147650206 54994517 291422007 902929572 161182214 266154550 270903193 947619146 857342325 342022585 278502099 217850447 309847571 320743093 984938815 778614712 958725412 796523673 160222766 329204969 711041338 337693429 986468610 762265240 725531712 466972520 840431723 892023787 668548415 974254517 431500408 563530225 472274884 691200238 740393521 708488765 305305703 875972953 880437094 551744669 368423436 545633278 616147487 783098509 231155489 608350551 533230488 446853752 797250594 186867036 477731358 958940982 899915630 35856523 917957826 27537673 732188766 12609038 423545649 505343513 55229394 360129937 762605382 543836695 213201736 672934084 15579224 619271403 542718349 178777798 281442303 828014569 808646623 100310080 976667726 349540460 985453286 564233826 64883836 262714742 993580077 806167203 566633622 895981764 553980872 907267865 673745690 668234650 311418287 126766770 790052716 516190816 447784538 904813559 839713014 20456561 476800907 450107910 313070978 982383017 467897785 32280801 532727610 118514473 233121682 452756867 561051144 637497709 579449187 961212268 218761679 381612201 85844619 43783079 514711929 395160360 427562278 927577700 409562089 605771752 711353540 390604086 949844147 436352430 855797705 251847011 463943296 269121816 585421706 397776330 28000793 962629882 757947484 833361141 447770095 224897053 187368208 175854604 899431238 58397151 967959556 785985436 265471415 553033540 192869809 460524219 244524987 686308103 779048392 852007582 624708064 795074623 483391460 481122430 479999022 798512337 177283985 667626531 817698301 413601205 663996503 147910930 359961285 443072412 195408518 519246321 366166267 895635975 43201273 975639243 74422580 973499749 962987098 204139407 505641855 993439018 790552032 165364492 76090756 941821749 284983688 630565028 489639425 794554683 604745523 767660843 771031333 352852004 688710808 283024602 604643330 345359950 95530912 451487104 87144169 650141180 567695833 484673668 879683635 160011955 150401853 559418301 728832389 742271593 289641844 269083514 490740848 596749420 366162080 96867865 984856076 291229815 727781089 818311317 540302447 413517272 96683780 598691977 483190298 851636075 784906772 300694372 518943323 234547175 98456874 340451582 306264357 995173573 208283655 435826192 388109071 267394966 973457435 692097499 299360677 86997683 350146437 180052505 323966884 134344225 406928821 626403418 130390569 573916277 818857533 603624466 530172844 726483724 321244098 406995511 327070186 387278561 160009012 132260679 87074446 52718712 974304416 305317001 308283111 649137188 814191278 846469192 534739652 833445517 273404539 121510810 980441733 956805962 469407048 497283593 344483071 384881926 245965319 916531293 960776404 313127725 629565104 360530022 346096838 882830682 417993270 281375932 746679780 427939797 990766774 558828314 933318518 392476327 490713527 257038139 307762584 392093966 694499103 161620747 420352470 982622058 556944033 514889502 919771454 551788793 981965481 673232703 869689381 74396390 852746908 464973066 97009451 78368415 184447812 556487491 381415827 155980906 582508988 211967815 269950348 662930737 767594586 388109881 817589235 735476329 952555222 268780007 786232486 442760742 753088647 89245755 132771347 684148031 284528541 273906553 578620566 230260836 797826652 480897531 205613889 229670307 430309432 967623703 376073629 285573957 754610696 621682180 548908107 513694860 257916155 420117962 494636971 114151568 312716535 167571441 798041690 823233812 717912696 424837973 658057036 67671247 271556278 164894337 873787329 241805010 727436417 228813959 457312111 638637688 430164599 238573978 966771038 903809283 51105027 214871327 307462167 786480150 578904907 360993995 183205645 512582343 419121012 592999007 368116500 211087834 132142843 346590365 116282742 469252140 268891491 53564055 662928636 970475888 392445626 920694472 976636227 684493539 328817055 807291102 682798546 177625886 64752407 203973977 112459734 780975209 990155040 787189864 422759866 883722041 742182832 549419724 342578285 528892030 697925869 884173367 534051170 499366588 809567176 393344712 894650299 811461990 965883483 923845582 308505320 37083102 439576351 368738409 815526247 295832904 1538024 923918757 558128418 870365289 305888488 641240766 384606894 835381816 168253410 393782765 642718129 250005249 736589657 564647453 527248296 847389334 509141477 450913637 937333964 758355834 520907697 188505016 798487295 814005915 507196117 38871887 775801200 966016102 752857659 112752561 779295579 805699830 48939816 326969660 111175499 406511007 677398824 754064578 863150470 929453934 560278819 72746461 640978940 368039645 986885187 803624493 145410963 503587484 458494488 490807998 757265025 913465691 57936399 420969477 289778071 937330866 63632781 993874387 860897530 744925154 119714131 795113478 543155847 129087239 774652788 2267092 913532713 857858647 931195672 485909410 76125196 493963234 975912679 912890708 183746902 442275549 699484424 50506257 454282929 319988758 757010167 963067174 129472118 542537893 296401708 879608196 724460882 494030677 107416461 937705277 682977853 345497218 343284169 269547901 171770083 948074671 12193118 771053695 904873449 69706885 705635588 384294174 841013082 76697479 763672222 444170632 890367468 435395003 157117507 685099800 979715602 569555687 899710187 714997762 24092598 243249107 324006479 882204299 873368687 639090606 758879400 697747461 572677490 870861447 537254595 10203927 541641071 220150515 406157841 907208214 689709275 526319297 50715778 855328027 1831126 604199438 966268534 425016661 500709508 283929809 676020227 919984412 351226232 262840373 186643379 230667239 329856577 487016365 102702617 60204369 578421727 130998878 824399341 124359403 660682595 915355758 392299298 665423439 64719007 187324834 925885678 567727557 439251510 182280975 161770337 548347086 558965308 208333854 906029129 908169744 527490705 262629257 275993439 486986416 141003041 154490034 351795671 869308067 123673057 98349894 773388754 530425113 602308693 74063616 859391707 774963039 433385613 113273245 685452520 854192939 942513250 58189157 136847184 780312697 373400228 339533565 892763412 156557009 916441786 384933608 943292267 222396670 209445994 854266332 80979768 161012553 849409019 935590321 858021476 4283224 430894648 80992106 303257243 89898773 26344776 444493199 475686430 310768676 360763832 59006360 58264878 46113280 893051369 544187869 667417507 457712989 859175593 37099001 561350380 311694847 560169895 887337242 454013773 816395011 404626187 696953834 593492513 498143597 608121388 873453549 180669854 461318390 321140951 294582492 133073281 984048159 647586831 593850139 87706818 152566063 604493376 152151696 960363961 337117449 720100464 356208287 829019529 494104453 399384851 792692176 279598880 952006463 918238332 702069048 79780598 107137512 299423136 956960190 697835567 142815413 852877025 860527604 62222572 109867847 287682778 327679612 371159818 458857708 717150334 391815674 96145613 429981500 218955415 808424953 724971326 299084578 803611595 214221559 86319855 355060925 219838799 676869072 75679054 819746066 948928304 218620176 266614118 380232125 831885406 700077052 865367419 731672378 742753466 397936331 995151718 119691080 266196200 868668606 965919161 761582719 649963888 615204108 517429877 156469677 28875391 147489139 856889812 512726897 768320270 470677723 576021823 873625084 715523469 91980351 454324660 153147476 60332461 552519521 606817104 669662933 851186193 230190842 192267400 234167982 529839431 616714174 697674631 5539196 269688878 94278342 789202493 832022983 930565326 139449514 730072177 788374873 473775320 921677150 5291244 414059034 116594679 595004009 215749018 831163837 969600827 201038191 733794770 851095669 883727137 95213563 21059356 534598578 45820886 793672378 526092838 650232321 809675642 160548855 748844471 448185334 956857259 189351554 271494301 220669045 217765682 522559962 344106877 209446826 653913113 261139881 935277404 904998802 600914680 838648061 774740464 477467648 127034578 602627717 868849157 18846923 73051711 76186376 561758244 578991485 450850599 147136722 690436007 830577572 423687763 111644578 340837297 339235160 79840894 340577507 933291349 632600563 449316133 563241362 850323770 969246498 114877872 43396492 518741470 683105873 814435942 526688262 465606179 362303434 760929543 987494779 909647945 423839526 292823012 977658797 9892910 199694404 456263367 730778987 5316624 2880053 107745545 442395615 168130008 844926993 463960185 441376557 714722787 570271024 649813642 40100253 508071622 102914349 913016938 869177738 127560743 719512597 589158121 833483261 900732291 202266517 443917152 88015058 920738854 194193917 789449330 57445946 949762493 83865746 761703582 822771687 547325857 804471685 697664613 288147167 813607660 56980642 100804594 985014855 459008833 173800325 806182755 497015463 921784904 580935650 523608361 872937065 211700781 647615863 340632765 801722642 501695164 777502960 167660711 743452110 36782807 186561590 691194360 464226880 397043089 998474498 536689081 733345176 308663181 856743011 548371026 651860012 369785063 865065655 353369577 156271845 761683782 390682094 354324426 818314005 938149587 513952651 678103730 605753904 849890849 199751206 761112144 802782876 786583759 217671580 442085233 155657174 301546641 923722553 344294795 192751269 222361669 448929618 531939906 83912895 983051465 643491933 542336122 949691486 457377369 908039341 992080545 156979367 870368218 120147957 157435170 991056427 779560 489444644 85450401 158065588 235488812 166684176 862866907 829677431 250916189 995663133 426341444 917370972 259367347 784921652 577858976 791589111 302114112 251027984 315529417 700841639 136791945 296105954 962381120 911507621 689919230 538935854 935892356 844700283 153765277 901798281 352294368 126701766 127020243 87557324 117381819 109275031 949547536 992057710 493616047 10072917 938921443 876251638 674868122 619997286 476470338 495936415 461148575 794440526 697584932 40619578 881576838 139312953 864324377 463794176 214921745 711126041 690036371 287993332 62007385 255835717 810146719 953340616 915927393 288459088 475860235 373453615 538374544 824228081 577985931 478873187 825386868 604657509 100071926 505013656 262185372 485432413 183802609 57470350 878126736 458906869 480723251 453304491 84517821 184132101 280813897 355189570 456922616 65494087 504990203 334835506 704582764 131297318 781883313 803155959 142731476 184956228 731408731 436061080 433940275 931827855 443132916 150877919 661033419 438358873 419578425 865523735 88742337 827395092 35855645 580898623 510636357 776765344 770369540 608297338 14688698 926212033 486963566 626570075 196633683 819629078 383718024 535897855 76826056 380461362 872705616 416727768 95857795 280792693 957903190 572633230 684657859 860340753 818500322 534948689 622014374 186506081 767337151 311970160 799167670 673147626 47793399 667998307 168501633 170019393 654286190 706821512 241730523 711973883 419806569 379089417 340791091 551405490 362056228 463220871 405861577 495242689 949556123 211499686 431586871 55312689 307569543 122491583 677989644 745035155 894245244 846381135 400334528 41210259 749470140 543141491 589800923 885307568 815843829 291448042 119468081 798974660 226257386 839579109 381642092 610080342 292088048 850755926 389873732 63780287 174196748 832500035 503648405 397407496 788965727 464184130 913370745 888447465 963738263 688302300 178296547 318426402 943064486 859927888 884374893 549757253 609079578 475853570 4199311 838828191 984167639 610769307 562880505 695983644 481311197 653941360 244480435 403208129 332773912 337521249 115740858 265639729 571665573 456931745 974746037 161809416 631829029 581098293 96609181 330146718 617499975 27780635 196140750 783845282 761320423 628834882 830538148 555648326 272256919 311327858 930302194 447339968 589922679 531395586 836893791 336211076 515056940 459065711 610048430 182083957 253611701 934060894 623595932 878937781 21206783 504671673 348751608 688853301 27450872 179818106 41577195 433732319 428765363 581810458 471161661 621544267 940500397 59597423 575266086 52112969 973879670 658300628 886845742 146343379 364512259 184164247 990550974 838170995 681456509 81881575 684429441 693473560 621563143 934116913 43601450 963512547 553443232 643851947 536979579 960969859 994228757 507529520 454474091 611585221 306267369 23858368 340754455 488521253 140527292 279047121 288419285 611103403 894838205 650531611 385612694 145125990 653500167 223474623 926437680 567377615 991051346 301159912 200632988 400772072 704149217 490278369 660240273 168413912 643332852 696428276 441951744 348232373 912019018 493572750 383549294 844923604 147151327 26142177 401452662 536047568 56306098 223008368 789677888 540845746 238228193 261370567 306589849 686273484 12570131 864214459 4417831 325746462 255028359 757304614 88165499 59408678 722893795 597636007 441124836 200162556 785994000 547484454 949534989 447516411 606956382 19216075 581990799 600353026 533973595 688359792 611829608 117219607 584228234 381858628 382242397 188818141 302155560 790509717 762912752 94838252 723238388 96920010 631366222 382666561 623400042 259770219 469288725 7108703 858564850 143156276 960212770 94688263 396805593 932020642 620745143 634883806 536234499 453055518 856116526 839230823 875355821 145892603 684935312 747787062 18639332 245659066 931359584 253043066 670040207 183023198 329814331 545534631 181004833 326397480 349997386 856541848 640718829 197029439 969718431 710904271 767123658 998146560 926808385 261494868 128303069 232312377 641753572 26900334 590954927 520397897 646011848 719468699 255355678 965752658 600159091 834614788 372352960 735081309 77628109 834069210 704827995 170734799 396937221 941445932 834508101 934761491 973321944 507990969 100968955 240367029 456087995 742087096 656167287 579677057 739389894 194909546 278687067 690358932 766646386 454531783 414559619 572509574 748016243 37277752 557369933 47194608 381057082 562317017 588959665 8341953 9340555 729786421 848800402 359763162 707416721 665744705 673952187 657647848 447274403 583493344 694250059 390455086 24581633 81297308 252105711 433439992 168032974 680983724 511825629 306829299 401222530 704854855 673678790 808859897 205538445 176752694 863682454 194971591 467644974 294283908 486103841 727867248 554223565 863426505 432981933 845165700 735045266 945798982 120997278 277249655 349190605 692352803 394839272 795101960 534996507 500217165 634566211 927083778 887478959 506282826 854492520 897490755 771690484 919605425 671294419 874632751 100800735 648686313 371509453 988421786 545788182 634808658 496132545 899397891 513362223 899018638 95382198 595791627 467486685 225814692 185040927 67250860 708276735 877216136 74833216 997606283 841106977 93116545 512817729 899117622 961842736 619545239 165671459 623744647 619731778 431048760 846993811 248030040 548045339 904046854 873940916 662358673 577949998 720412841 366051987 489465272 740634491 884256685 103964651 351954670 514236626 576792437 477272465 235768183 664101892 873823781 506679262 695197774 977838789 423084138 336963512 702839143 319041110 369600656 970950222 461849681 911066032 268397381 958508718 626383554 780573310 226336433 294888012 650927147 475401017 318519998 757987885 46876290 455937047 158370668 422817408 54089947 691285827 149014935 52817463 710418334 490673578 804364314 467425676 567364010 472416157 260001318 599756354 891590885 267450806 52268441 278184286 519448346 887763195 70383892 24440972 631398961 56626871 642206536 574143454 547635958 969643276 197831596 617683431 226404742 549602078 109723588 412005281 531500463 195580969 381450119 750884873 478931977 485590520 983344061 490408723 142042148 398354700 743788078 820106542 712430980 846386939 23043613 630384680 43258007 3165924 215601508 344728778 766449693 687713713 271342679 512324334 155782948 760892682 556118659 561305647 739930270 565440120 394548363 682953398 811164911 162392418 987045238 345198410 29342723 168966038 299046778 353327240 861267652 844559999 110564055 70870223 952824579 134571538 861653559 237541372 406524633 842269057 962911224 517840648 471359978 100129370 441638276 350351000 22366718 996805812 136476204 835131925 731934181 886077605 589596853 66703091 136386518 238930526 366488774 192961237 241289311 986983180 777065934 693157206 135111947 600202266 142795978 81056674 349554047 218101848 430788195 473308157 533156686 163571813 731506788 685121579 38744436 502779561 295009381 765986684 12472230 774679750 637576815 678036383 842461343 451945125 516663459 846364299 766717251 535155127 660914710 187246232 463467320 868753493 581656986 452878545 696419827 446733193 821425777 364364483 968073578 37820268 936223546 983341123 550089562 386373200 830235208 928051677 483068652 518298955 103707727 816671336 415695131 274029945 592123560 341320260 389047988 138113984 361428895 377221195 579999842 526820047 910225408 120691372 402515697 87113765 332234227 684090504 271874417 587770364 293722441 411458866 874149264 629165281 858839275 856631042 71091034 234481736 835315639 719070057 502263957 695125505 713295781 992517527 194736270 138197710 793433754 826929733 15642743 107318983 169953160 828482500 717728286 717819021 509645374 998559629 699063669 436096026 807638410 526556217 628039293 76339524 868717136 785195418 339627148 214807375 559664846 958372494 961865797 949557363 515841362 243468 421468681 779476739 115962567 872008041 99074734 82857667 980044808 999709386 912856552 134172343 696593559 15436795 659844760 92362216 6962291 7518866 626251048 346836870 106638637 222698790 753940035 235544900 160695757 165117968 472193864 39243599 48640743 483443973 317971473 543905127 810631209 350245140 861005622 822879674 586174507 583916262 698906181 355825477 822028807 505370733 993854919 748677096 935852277 507076180 623678156 718048954 865110116 662004540 639519571 305186028 524117867 297662150 221179447 62508 498434960 458679640 424332145 386267381 976066891 659474782 975894772 216254199 168453792 968217180 201977456 264251105 918715252 566906921 672360441 147829659 272274484 264417159 832672712 943230160 558298951 527347655 849870838 11794113 347533438 933984403 901953805 903320365 226255472 612041686 348798650 540196789 657800201 637884482 545021966 77812170 442364833 500705887 129765717 925770791 663531087 961933064 3723209 655318520 681459425 338528561 690235490 259472213 652068965 603588654 635040676 248013475 403902997 868341530 780224621 145949039 683574930 238265789 402754861 88277909 870643989 963751179 425362589 138298953 704745038 812524413 546918922 165584678 465174488 608812130 722618468 91022 349154720 421778442 738425022 218545919 52005683 972707173 638333460 936085083 763236753 486494675 886574298 194590948 820287348 145351811 508523123 751763127 153069784 844734836 126430158 729730013 764805821 710257179 596420520 201562369 767230323 431608455 858476740 748731418 410965543 789527485 738575828 355608720 75094018 167077992 927140539 976977891 813034336 775450956 305702411 182938306 713559351 689248038 264794984 381601216 249041829 721997525 98898634 703311651 647541019 622619963 56594375 558796897 828090066 900862590 491368863 903464998 257988657 564722477 36941727 715147518 592024877 833287850 845349428 982662726 55391287 732838300 746550940 591620694 690539350 617198339 837094050 216909362 911881952 243431650 632074458 10736785 851314769 40020964 808791759 542210649 945846763 817966404 313349769 455401767 135600083 241672636 168163032 843395541 538642008 302408263 789401837 941637543 368515316 147729131 677071143 555651622 332839251 185913045 818141056 919682353 341118986 394181506 61920999 654816510 361737954 53699858 787749564 233920143 920094708 683592353 159333689 734177298 51137056 775815059 348786293 273003165 200645083 169124014 236241448 15741076 261867466 441823931 978154347 588749385 960220462 159065165 550037927 115476450 191778663 195754635 419244858 585050558 702593222 233758672 314470557 786460612 243635127 127125645 798429848 829219839 440728127 357102276 551573628 993174282 377633985 304348107 198337462 912186007 39792703 176979767 529721602 322724491 816119616 198582308 103531600 371087249 233955571 515186919 874490645 755393049 964794512 938548259 379782370 533874979 283811812 763562307 211977986 20319228 800410568 598588645 850860688 594735819 747747969 608411487 359712480 848254934 761822298 926488961 964070083 140050275 39868038 432631550 788987518 792486576 322871937 445701704 71772851 392730408 488129740 8071145 835703312 94165209 675315272 701252991 266621272 184695761 967490701 297349460 80794492 483817859 948348284 783047039 744450744 249168993 633260284 860905781 964382942 855996511 899035643 641579877 732127820 541189305 216217769 676104794 83908988 924730564 95513161 210583250 546170582 990348708 294723835 897269808 561266220 213329596 956462751 876988636 923976798 374622964 625060186 372853558 62708759 783104512 819666122 288862501 234627081 523477424 16298222 239726292 601941772 933688689 47783058 942826260 229535422 41484075 860578192 245356268 924098125 415911897 220265758 46947453 372883904 630521831 157653299 856642660 978084747 115567193 586060243 315170698 94577192 712698157 911866856 89465629 704514257 91210990 947249603 373813959 228778634 279252326 478546045 610269536 485181273 586805973 159425110 12025760 961474187 356547835 91610336 768235474 783726719 125392483 233630112 481998480 486123524 509591686 120561252 719103207 271704290 516014967 342841803 145341273 331334792 324015237 88289960 11699382 330296682 925236270 723031402 150020937 367817064 648105704 829388562 924678069 797164582 544060400 476509635 317286416 555519714 664195683 794304672 714061723 872799957 287243684 372125394 314559804 21720759 374272304 384161172 637012317 656477165 913841572 992248783 440993968 223394681 421642817 813206827 430934398 965682860 150005998 30657388 383930358 456360943 185026174 488137152 808705220 162417993 582662649 185209201 815314016 219202337 633092521 244732210 271701131 38009683 46096342 580244453 726262981 162080916 351024935 910751196 891981554 140203007 68687847 135454469 142620730 194103179 249301913 826415598 709409681 521043147 222296908 900764618 39456829 942643055 549136345 733120303 118759507 220199024 903583638 85543853 990768620 641137433 360439076 780123346 968860161 339969814 506386489 296535063 869979637 161498709 480673286 303173553 969300263 763039183 171884538 123155728 369099255 945179354 860655643 281612675 207211735 891205797 476274748 793076344 909627582 418793378 286777245 946138803 209675693 61616336 875899360 950442361 244167749 654458326 769857658 437526029 692606252 921158142 220082707 5067782 415147542 248094397 959489001 675820039 357108262 59297861 780672310 877149016 155547912 856119066 773752108 947278591 114956747 337136690 159903351 995542303 666942690 507109992 505245307 21484322 853495157 134187594 238860800 178449385 168447398 319872690 632639277 425909359 500183223 371794810 927882704 824870139 888954071 765850866 221771537 130474985 928766783 276302581 977218752 692886835 840473026 688347703 497184591 415675437 692291152 261340461 945717676 842731284 393169858 235509208 280903865 500011607 661237004 522406566 425609542 617929032 955610940 388094911 331114364 811060969 417138848 666826826 200319178 891651144 843734200 758214497 365641267 317368093 772804965 224937159 435196359 865928984 68558118 821199601 516150079 338978087 124201026 470054823 521300691 793585689 610636647 351393785 776938165 317269615 413651831 730767711 108987604 238637295 20079623 456089504 975632941 109379434 29132467 985595614 544472997 745822107 350901728 865834923 275855642 233100296 106499231 145367195 955085234 283410759 15951849 65917787 242620323 576823102 309583921 441172746 54201338 823376458 913290216 732514028 416975431 833621571 273814966 685075566 351812621 210400389 878090377 957274127 944730201 843969800 376617491 911443338 203687529 106508672 214043455 673444668 322770066 360585619 442528582 108253536 167363546 152915397 510535269 74368776 993923739 606221400 907478674 289223786 580513980 839488761 540919226 516464657 195125742 73624739 687832331 420057912 610822560 343625637 643649538 927401824 592053345 72552909 664340673 970193462 157328109 243345705 85939163 90524662 697714378 123005807 470958897 267771994 951609408 554659207 930958251 155425604 471660498 220006053 784709279 788907784 199165624 462583741 638764540 740295092 263587767 115878463 672368291 951995974 230696617 801943468 59485101 696735029 233909581 844833566 333182480 543619451 924753920 422522251 99903177 438245576 297949095 739627466 388582360 127260130 793611118 762383720 174015121 964728112 272781469 58596305 841142528 70134483 784887952 736964703 708902785 360521811 504902012 725330660 522817672 220902739 968007627 387721195 918957173 392325266 6525533 990391611 925650732 698849729 239205168 20937315 641252304 260525106 575207214 681532815 154741242 467446804 282053555 955081891 581108139 101811494 703744120 725365641 330245206 226089737 900057186 980052591 255058456 705316296 729038530 301680479 493144794 633044486 527577562 316260180 661861908 352819104 654814015 533158474 176585199 251170187 2732488 951312438 414882921 766437985 558059341 47185874 152881154 826771573 771906521 390770852 369124221 425610070 971250764 41247165 372099638 136359833 768709464 798359277 965305451 60784548 511677088 817675206 210600559 256286557 398953757 40790647 105219830 848491397 344931410 688192432 911596725 474038286 14851833 605980753 561142131 89813779 380795540 264426187 359467355 824937731 364964232 845505388 967780405 278007212 543624953 262215110 207061440 43556164 141225074 995913971 557023948 308445525 153816640 63129479 751444077 488937891 813438405 769085831 437347684 108615546 742198001 417946849 774556122 693460301 942716261 881913986 577527573 148678499 483758951 927424298 526664389 865869455 354164901 290864478 341827380 440337403 243510617 786859786 96100614 11823855 608518900 953518010 387034320 79900942 175794475 64680443 856355618 456593426 204249548 450378547 970104736 113191689 358174407 147008313 450448979 622371969 216858914 201066751 117121808 464270375 679062636 969786447 520743547 738700232 285682494 462932592 375776544 80491850 142612111 426209567 805903343 482618900 366079341 220122437 507926420 99922406 867358053 863631578 346272030 613903297 999196023 13581849 453770558 98764417 314624625 255269291 318431321 939754832 754990709 992580465 353166725 368812411 105565636 990677380 752441875 694317429 319110832 377504152 789063790 258501214 17064074 83983932 763762948 715261132 132801086 418537555 568614306 461651693 710545233 165196568 490552899 210166136 903361601 610558055 140531499 832128479 799836012 469673211 219660754 729641624 366595887 822681793 65729374 43298645 805375783 287586088 869191816 817960866 949014865 308959358 289236453 448964799 209229267 724787571 679385230 360741436 173408736 975363957 111919180 716914804 165627037 669275609 806119746 966773668 99539364 822072567 39587511 982621240 941954067 297014755 275874445 60471994 674438972 997715956 523206992 394703070 548205381 483004780 681677478 727631764 658169953 296824372 295043142 557622533 396910251 398839665 375427280 410654094 273400796 934319998 608494975 249609380 80258123 643501353 448544653 57897758 603065424 590958145 239913062 215547031 565947033 287565786 708308119 450938853 596615006 213996602 771648406 275398019 884476979 112458522 780529101 74696907 870236445 628879060 104851254 757990174 727407627 739135288 264115292 397459509 662038608 440950412 662038616 670621120 326938055 923411945 871774209 832746229 295826422 813348776 614435547 915024589 816671388 110192182 104520664 962017022 420184530 343207688 785989423 824789411 933426925 390687567 252754275 299773642 273077028 960047383 624565371 955229271 981457655 749826270 171280615 617525744 393826265 536056522 689132967 58934568 79031270 714048032 912859994 372204037 494748899 690327622 403348586 811476662 873363820 468000719 458895355 423633819 50960659 788662580 727875721 208283730 929135061 102580086 675961736 241379502 180010170 473467532 388885521 849097364 283986927 259219787 535417015 312994852 401999188 448198321 700140335 233830720 428863542 662882683 260662746 898257177 346050051 727296793 700177279 641740455 500738972 498877933 972844676 585794993 4699434 446395578 570493972 867289810 388188849 428389400 519503157 777420017 146235707 593886046 884615460 837324969 336846655 417794734 288249750 403109807 52025487 870674786 113347133 195824701 686992632 404675611 522170948 93073384 435900879 436419980 902118715 373538320 95865658 680094093 493197898 84107537 367170026 461707009 363104033 401612452 855044174 147942246 806936085 273759900 611884756 464970374 836809132 450172065 766877113 170879479 682053045 151236952 918661348 77906226 15895094 638019679 711156651 67848858 251865516 381944284 187838711 189823134 417321996 969621697 325960628 953931143 985095161 25440498 877274251 971198881 697025378 73458104 572191097 155786294 314853531 773200129 923069051 154522769 896103357 439247933 923326502 109653249 599398192 992453671 645234216 159284887 168298730 793523253 24312359 186344812 65259850 376412305 845972544 511936349 671958535 702202577 876520252 252808755 159397100 981965061 631476658 431736452 526802897 472540335 508940849 278556881 505672935 357048731 457395373 831870786 910252312 837220899 208341586 691658074 182793398 935270930 307162261 622617154 94520261 31864304 690662406 236032363 594017482 700245994 194612782 397627303 679447946 699108295 805542573 686849207 485751706 378152846 747797483 838874104 844382162 195387136 177117812 429958063 969440817 355135941 786600569 516660902 394746116 774993809 654908757 305951375 290002373 733605609 892130950 867879899 719828036 69949632 180431039 111030041 721867010 153580551 297939586 81689420 292579112 655614610 465133260 311073964 747191295 686197259 247653774 341271624 616331858 927882579 931857814 106489870 642205404 730289209 109576491 231402636 389476729 216306870 518527050 292064856 355412749 433630835 707772747 225714085 990434235 669648409 904564274 232037338 514462776 676929168 442657868 563534426 977572985 150353661 634108189 633019157 857146739 626939706 245644997 596129419 6682358 986782989 508143746 709288712 875443493 158910552 656712188 143692415 633721365 948255082 261636448 65175084 867770674 561220789 483280812 269803448 434110997 667504901 953095986 761460881 736180187 716339497 371639236 176480895 180679619 261369413 879607137 84117052 841979462 172534208 956083761 811560192 181358251 794440027 502187347 763561501 745691360 779508423 607255385 398214996 453993341 67661746 84171814 648591653 169584553 51916462 824215334 334895260 592078159 580204173 968787349 237773928 839109876 795875527 424261166 353729294 815521919 631736545 238078107 754069658 627821392 109555824 883249895 179373513 344284730 681821382 308555106 256827571 981704619 542499381 669801599 328803172 852187436 919589542 693628567 67458426 869452283 153456471 934952964 880221004 303837059 771997157 862447567 243572614 15715077 618749820 504434376 248865214 479026279 110719427 207386213 683311842 65953598 918802189 344029235 348477577 754184875 461009870 15361908 327582102 267933675 883973334 718508432 977629834 814435078 104088587 947867120 148981136 871161602 197514957 277062012 445843837 713114210 441804175 301768569 637228465 559457458 755337847 351315771 936134035 715303504 393401172 310137507 230775448 697261031 315469000 841519681 549022768 42917384 439922649 52100781 675771182 118193785 608784414 631678668 462228873 268945781 494287422 652217647 375158232 200004933 625574715 251349343 72714323 391349506 81513255 221717183 950395044 189049349 839913320 490488445 724474877 757331391 510258952 614176202 932959519 230047177 630397188 417737896 590069129 809854940 384561873 140755369 924329972 590914616 862356530 36550295 833237787 323981707 217976458 857514857 953223855 980202075 406491058 900117796 280447643 407922954 860877634 552460612 664471477 48807675 703229896 907271676 936107882 104606632 478471742 532620756 880091247 395651508 861051246 879375687 295669780 224284394 38136030 568070308 397825309 471997316 474985284 287445365 823719598 667894209 990194631 644199313 397957816 40943008 103656953 140176884 267050662 593388544 194720410 382600648 56902034 787838328 486074261 927658856 278738873 927015327 732909814 927494735 262537216 585844866 394877803 952787827 870647677 29167555 326014445 592299293 91277591 562019034 349452880 621024873 348146392 466642598 663551015 558740519 301814733 980951134 92403738 887247181 210459752 739058345 194713444 978854056 105238182 511892201 342279620 198187366 430747458 378871054 528551350 770967869 12402138 773046993 103106934 224056575 69190892 85628992 228177387 509708453 535688012 438303276 444452843 446994757 852731650 422314897 319499610 9187658 835503377 418138703 523625271 820052205 874818055 285287753 774022345 400996661 251428757 647322930 97382995 561147983 927938564 411871987 530965999 697962913 135599127 968709868 292724909 931122248 50005375 830491345 66739634 727724662 439887444 165447970 69921472 495341068 268928385 889345221 586941963 64214438 189767665 189378694 225274089 903938632 664222723 356728605 408470382 39086220 668870145 303209903 30997811 757219558 616270241 150025540 109728035 658556663 962023970 147054456 292117359 232872370 590230422 619048916 561294090 772590582 950511458 953276867 315907086 902774808 226751797 901113262 748367842 956357297 188722463 496917804 393034490 902833534 161009658 815730510 82818463 53013259 617836059 993652920 861882432 878372967 920708608 933587835 793264406 839898415 632279324 266789065 236123404 518881348 839724245 186762082 633623360 295286118 71905492 75380610 869322474 614951480 54577979 346550355 181223687 425401405 218210007 105373685 891597044 458553632 30137263 395046127 306981942 458030730 942518885 733269349 416855682 201004535 830263169 793730141 775156550 556661724 250840225 314412852 699614817 64042742 70222923 803477107 790689748 839876437 899919639 623058796 853263241 389718737 19322568 640979745 778721904 394439119 946595988 436412185 726583904 694328249 915828520 406765727 524383814 310740972 387134026 296244451 865393653 248284717 512950695 875068739 350426408 189329512 922157254 361126774 35424111 908436149 866062762 82012301 472327047 275142587 728050756 233626692 341753796 842276447 213009916 905236327 100424618 120416060 720984281 87252289 39990644 327061235 832778221 520292537 23685591 543964565 638667756 240867050 836636111 117907323 785538304 778796389 359017251 899957152 945115079 382448223 190884917 998335009 93515743 984187512 236916988 192948879 53786484 155404139 851214063 629783650 346270941 355151352 989261342 959855462 362971898 192680137 851455063 389863518 69967522 820152615 856160921 138899968 474316497 350628306 241470461 698905594 970056551 699840423 895377323 52835487 202723366 59480439 631068340 244181519 800588048 487806594 223699136 81896816 534047679 145697015 820781111 975055615 55444086 44323012 735994171 435437098 377117841 410508842 441897029 861769860 200350879 359489342 473606035 988654301 715431745 97101394 757691430 754124027 393137835 260685185 882236104 131069407 932446679 637905547 168550375 28468606 628592224 225030447 577068332 248298059 35245886 191407514 861758450 394826079 836347180 119139611 367852576 37772910 607579194 987504151 602533405 791851993 325544279 466772707 581648299 988007970 683737974 690378433 817974474 430207292 103895672 777222977 645226169 865290800 303227095 657505553 168919721 588348840 646802411 170404478 824751601 243660852 996382726 460953720 104465922 419611754 735725699 493218015 246503458 372315257 975896112 733682725 22140435 728700201 725314535 834137425 352547642 218566235 913778862 797263922 611071234 985850619 61858896 295682725 932286497 352237864 456275869 43897075 206213351 967829240 187509218 120181362 546191722 623892717 26940318 363221921 897826425 626374049 246002859 497543781 104824471 959929405 832076057 441737869 73427158 478558271 477879831 587732060 71434220 579952120 239112323 657569813 223208462 411309772 857483841 677071293 477507790 887103480 712888296 918692540 558476398 367577017 997313940 704271731 377266926 479683304 851651835 582328091 568287194 429253557 224536665 740440023 626681723 329159871 141793509 554196003 582279870 943095408 489028872 633153389 682682047 95434909 745890333 885711316 260120238 375657692 700609800 187047214 358392788 6900105 673749332 159829981 534818079 311218706 371575743 845206896 157603012 664384874 827455514 264218695 146412722 626227988 633134100 942815807 533302968 873407942 572206883 366220853 362157011 442781988 269889385 119396703 486026818 324852531 791794590 709956859 640964801 366891472 304512643 516181602 605168891 176932839 793287358 616005251 188837923 868458899 105491000 344565421 320120842 131099405 835889609 507443345 665332300 299548145 207628180 757856393 909840110 727187208 248739262 821139116 685284715 56253177 965016466 595897010 122639423 95573441 400111659 193859204 155873419 239543710 251048465 495875986 602804785 262130870 477700742 760713922 82728200 504468935 298027848 532579817 937714781 66716586 62662632 366176941 79421754 976260347 687680466 714975501 869092622 387671368 23576965 482080404 666660404 51998374 978092927 8923221 840500824 999122621 304434954 885344980 606573282 599234733 658387174 992688780 189003252 340915704 320335015 49389263 119757534 591796207 957140103 310129572 444762625 878229984 405620948 136888247 124641308 286200281 109505243 440746133 74399538 251255666 671911261 595943013 343223030 632881998 308568378 126746323 690675478 730543184 14201189 812922388 644159278 82871136 963832439 704483472 871372470 96713450 155682077 648885897 17764771 958746575 655407556 244827470 14714760 429218550 774485466 239357756 599619306 925822589 693812661 18703781 900431017 146985512 914025354 466647756 584546621 87669337 887145107 893608407 293613436 350363128 717058137 532331585 423055163 37410996 785609827 560962143 291660796 529331975 12922639 167273748 200530009 941704917 425620930 599869588 967471193 473718591 408925363 541604546 709068201 508293210 329362842 785003367 472766008 330323503 709468486 75514450 494415291 907699355 50907472 62316308 408388038 954894780 261477067 423905479 894530617 899135202 434812394 993855937 300517160 17876117 994418140 862815378 911065585 109302159 414268036 883739641 150851282 407081833 219356579 469051536 161279713 412558348 484913438 819635265 312256889 981191103 556622758 987764120 79556963 347959347 218973827 641211137 548892753 599493517 477836145 921508991 62675542 318159606 880164829 869868447 459843124 535305421 350339926 165630878 571252327 845413277 998569312 902203224 852197563 296912975 254173084 669181427 141670839 243988090 910162072 598485822 187797451 68419516 69357238 805669460 756699787 665023680 610752783 951255619 529131585 263431035 311081354 637492008 355006722 339884261 587915361 345106527 556485875 886915315 956244454 304063656 693082103 555045434 697271616 887174022 401038192 143279598 680825692 910409435 233215712 363860964 367870264 72607326 851163061 593661273 867047734 112148095 413765938 608514205 250615434 994370060 211928250 598330811 994551209 263383390 95969677 331517121 795716714 337462589 31100901 147605313 617656709 131027805 630952433 449634611 193545049 358194320 466466475 742242833 964106314 837768922 574247212 348876872 647754152 517070675 795779261 684312848 796147466 27511890 87418657 977008774 688240278 832667851 526064513 695096576 628009349 176211769 514242199 58714518 654030299 470696569 738757731 7443106 63063841 7483309 217632978 511638984 916211001 96361172 929405975 492885413 400048270 858246700 216186122 424138771 230432985 753678608 98113199 125661379 994250919 119048297 305915696 73524158 424824021 287364569 118299972 820241801 69097114 931783314 930766700 849954571 969703500 506080694 6630295 569289202 593258211 557057998 217459068 827372969 24142203 256255759 806990251 645552160 657518408 549806618 310390214 994280530 818889164 856873250 213342826 105224969 462693424 458155604 589276900 573212935 980495314 344822938 939908018 344602441 934077643 360289002 664459639 955412454 379271341 578273669 463448917 403744212 177698169 977084013 546901741 845900234 365599398 594687938 615035971 406618592 882143844 726195867 67933761 276809990 2055224 821852186 766564455 988149587 193177113 312028486 129712531 329540365 684945835 173350641 774977037 160665061 811175158 844423427 569800770 458260684 423502337 634699410 878497309 430468986 568042246 315795806 312853365 300188726 535166676 751299094 898023337 306136370 294928460 198363066 879778206 994255580 503980175 885647235 345842002 549906361 986893715 490734172 269307037 985468039 343375141 875042748 510627069 337378576 810272012 295728302 712293240 205662895 838710010 411816597 920657726 689343511 756691396 62890368 439185274 850222776 896674128 474330806 167494477 876685287 303234313 503984719 788326228 609994992 503114702 796426501 499837578 748835539 113400276 95024114 407716268 249497705 261713625 828657059 171412496 38307912 309513414 852785326 18170292 589390544 132221262 713037962 452582244 138250826 771071129 21799864 528565748 792412290 951900008 756590718 383572393 521141891 430141638 606898718 749288379 686255731 564434262 8714919 582505641 185030743 543554069 60633573 392249940 952965432 845832385 752666715 207699839 723485033 296511769 307756819 861673546 946767214 806031949 437861747 631244072 923163384 655718394 894438866 876981187 356037619 707830857 69757069 600894646 756054940 856878597 316207202 630741396 421413282 605497913 429201450 213732359 150717687 42413163 626837943 177235342 988345976 520773212 167311933 977945585 899383522 70361397 529335642 42504929 211545836 354155300 538699633 31436584 938048230 240767155 874322602 102653557 560014141 353346204 67323855 148843354 570737167 698997290 810427005 274801732 393149720 692200966 422007112 733125085 755107227 341438480 85228547 55327935 396991238 869566604 777400540 438948102 774678560 709268039 672145193 872540297 54580460 290956142 992995841 961494914 463793689 40597214 177320017 288548626 460172627 129714741 843417042 792040556 138599960 835152171 23090954 959147533 77357933 403032062 256684408 175219746 325752768 561104648 112843570 251372059 823148785 627313113 343255062 628666915 707980734 2195179 310954255 632067238 408932219 249155639 972968862 853391239 834181057 395307364 722992956 123383880 970470245 710427529 465225257 938670629 93704665 565719901 374304317 937359481 485234228 571576793 895450603 30571701 296095458 515164696 399803432 44286353 951041866 947801787 394272523 356940167 597875175 27519695 745887985 412549024 922515414 897440071 897251514 332209969 473250257 513033114 774714953 687820959 5983836 858560914 361797811 467877441 918226944 489401292 677385544 267039052 52990492 419282894 430052574 936938444 196140701 173677397 667112773 278532712 894704747 672483888 406917689 741425640 468136067 730265159 989213533 798566201 731526069 95485659 803022973 792617193 658050858 793525917 48441341 234128214 884564769 274723285 970404754 484040438 110667595 912404223 288415338 780115448 453295267 576935485 706623238 238568254 229916646 647336397 18177774 102827874 318147604 725159554 987371485 556088161 297637585 518611107 920522138 123423213 23272771 971987882 598656386 405743584 545934368 297423419 57208566 282631070 626911308 200905324 641377193 625452353 997332300 238882034 323438818 496427953 112380424 93613155 640772977 224559619 643282182 501982843 590312699 425836133 557836796 335314053 922640839 938546233 822476716 559773768 118529178 592114240 297522253 696323618 544952518 986665558 669224466 383536047 267167990 420553960 608180744 440779413 306462672 117613380 394927440 995191275 922717960 307146837 483536985 100753008 585721033 292114339 818562819 610708712 126816580 875287221 378232715 758596380 174917515 226104262 153385540 621423880 868372803 986905937 473375191 810511979 4503118 147825323 553677675 859844771 817951143 640618764 262617651 153349712 698674700 55141448 599081234 895195936 536629140 401100864 711108475 429409452 736939518 469491865 452578811 905339540 387483489 806377486 654281936 770823922 671773914 466206891 339437396 108971216 884322176 216419425 828875728 947301466 321222082 356607768 135315392 558314971 582527277 752115146 307404160 941476131 387641215 426150544 691628187 847510283 380519402 773244199 983952556 836857995 355329892 640926121 775036246 251798012 82525108 117273663 77813848 140473576 675286624 52622457 599075824 518390104 784294591 841063863 616915922 768416513 611361310 446946739 834416775 250323960 276630611 451757474 678387924 402822775 4574637 667374537 715383226 364091866 273633635 534081052 479521221 230565384 206675326 795908607 641026450 305144783 636971936 326319707 481146669 605557356 508818545 493932172 517157542 86034614 523935928 829988110 422462339 510366181 80088283 912575847 977617092 261135880 581252086 266938841 568830446 678403054 661670049 202553055 199071431 776841424 689988947 671643855 718760449 104976546 326405487 633148270 320161938 241794076 522852964 877966376 268605698 535119480 977274225 615570611 932113853 2979589 106820862 857339153 318388895 837203571 497838817 608845132 366218602 713704406 105208877 336679632 299871962 164712124 346089019 620603956 875971574 999059071 610409830 741174612 286801032 121549578 858197559 222044337 137713108 629660917 931892091 516521849 99371650 607294065 782586440 790418795 668170308 715298558 710455435 923719577 523141329 777228860 695985175 792706267 946234478 971030612 241208457 986596510 503112734 770745109 894091102 67949154 142463912 258388700 512923170 460902179 786450061 410701582 454895552 249144688 121795298 204348307 407236067 909255737 400311808 412871516 555241607 471178222 895903993 897419989 881096089 690451049 22955275 106809814 613732639 548800281 638848144 149934467 471584013 633182576 963412825 400174627 859542352 136094476 889736587 758877467 272674653 405226772 870771326 899886972 776684109 474132313 55630479 366692028 613159490 483476405 348538350 636254861 944177707 854750444 211600644 752911258 662573547 301430314 333281335 733312541 453573685 572742780 391399791 565868993 987500052 981965521 689860562 399948383 731872280 351123871 984369657 601654426 725438431 816941111 941196564 134736047 297603356 111962748 358465339 907889179 412544565 395019470 256516680 794526781 591529358 199768393 179145750 594961992 385283653 372432610 604202194 595248284 181460496 340980209 245690347 870359403 379973311 9085223 105388413 159567365 781330756 851095125 270291001 782531076 754998403 574922611 493859082 67023093 246162401 27472706 979214466 684765253 95281162 124062153 654068581 513570706 756488207 690380423 940048268 734535914 910829897 993392103 630386033 507827582 794271679 726968685 889193513 542879965 73211517 436078654 555379262 764530 453308819 303912932 7308323 239426193 984206769 866234843 514808935 955978556 415925478 641730400 843186384 208224241 13354455 717174303 726864711 881287808 336954676 813877704 268221433 148883787 975885539 12002428 727501952 478519466 821628246 318014655 193869126 398473650 945751643 985038651 354077946 330067748 594431030 383169474 349563534 550680044 91117261 736510279 255442283 34392034 576479996 479435625 212992948 276694832 41238634 880947093 412083081 253212484 782546116 325416748 358325196 862063121 916558863 601036178 854301565 297022366 118363999 531313352 269166965 949478920 859079525 124656043 196453568 404005250 219069008 905526312 75578665 101289366 989246179 32372494 355016534 318685040 529633148 646989296 214394242 776720463 262333215 62835237 778529184 100765793 705433544 587106042 678240351 687110342 21216327 579210933 935897377 38324727 298444413 509231492 636143726 708010501 581480038 403889725 468421436 204153765 74861368 113246611 746387027 665052738 334028103 65143978 643222357 681652850 281803793 420229778 485860759 208465088 196104006 812037245 258803809 861722485 535364284 240772996 89833026 489042003 356776371 177064267 462480361 1772689 332211890 45245694 767962106 609807150 260923527 431895693 151386861 454536332 779966379 457577614 881034524 101509220 577071996 5312449 991560405 757960091 534598048 710007022 902304408 308492125 135646569 843324501 697722549 844471196 444522632 764719168 500927875 431876319 102272128 256392659 176414232 248650103 927832515 521244924 56627411 527653767 339818774 931523815 191510932 163812445 673119850 662700389 167438809 945753455 897376474 723405688 14679802 292403627 934003502 212114095 10163500 896142846 531489457 437898362 94958785 60494445 432757899 799298244 560078482 680677464 492167950 475135949 460254198 331680463 449199594 996488283 645888180 752818912 279349752 60445160 206590041 625239537 754939493 392815168 710599391 473571744 989073081 866504645 556138647 633015778 973483427 919925524 552558463 468054370 112798222 929189529 637501623 279155227 616281729 571943887 337858820 638084543 695308523 792283651 605188260 536666712 75357422 571467385 267077424 110330437 55729102 151969784 184101999 533921142 868355305 313681958 122263419 671755109 725084068 573205890 994878423 158147126 206915173 419990801 132530482 458662949 262529028 208455425 170464676 854410047 479384365 312836421 280188790 824104344 922639401 556465816 193203789 46567041 452920620 859275685 616305230 789555292 690395966 390672388 812408782 54263122 145301517 489747817 820351673 940794028 718637203 270924374 15911762 929877350 522917728 165148895 416532250 463970474 674885037 672493316 521232185 55157980 605190498 926147744 515968933 134862720 448041560 474078602 322501071 133999271 96328397 735822982 904469421 845746629 708204726 4416987 267329979 249677400 890460428 147415681 545448028 618371562 784469718 166905025 241572290 283363327 299252150 103457833 612625475 224389057 802553206 203489132 596048444 788963675 969844353 761878359 966052891 404883519 767163218 526458422 288029938 780521213 516295645 823034339 298579479 914268876 643398952 284529059 512184702 275693088 784588427 442996907 401303902 966600000 198036256 446720905 186238334 366476094 460456521 21367297 367220712 167175842 971640073 438853417 275231334 717956140 43645659 180702648 251729664 320769603 297850824 60430202 592596048 336538708 838425870 46538498 117194225 389979942 372725196 228191320 480569094 938444812 83740213 140583222 129022846 946552949 648177767 595141048 449324222 425964398 908578111 87397557 892293828 602589301 596540737 427510568 421349302 674102640 919239125 669372111 979339552 415174873 636043595 394098940 23185653 611385369 753772938 341861352 74665048 232122201 618076173 117067941 949800082 378693104 398428874 267044118 303250507 813753186 659961232 817796783 874503040 100420596 554213527 717184301 609127512 262236955 396085750 912229240 271827506 169899741 177751438 615640352 417317748 376227265 371575519 736823869 130102258 490620484 566765738 541275274 529211563 178124192 842940363 889548504 365035644 234481453 73843867 249337749 25199376 950089803 918585845 602522998 219357782 639057663 982598319 931809490 772021719 619061342 917962020 677044415 17863489 518586995 582116469 385690902 47314346 755824247 137542245 541800170 568103925 111692291 400343533 128561037 642742393 148514926 189849785 396888512 385083764 124752142 235397529 123859181 550638595 667498146 412724907 719239347 883045132 323898178 356305624 846137274 910570409 835168726 29508707 391724558 893165056 736507696 411425444 709470055 585139188 291097362 80647737 511771155 296028026 830832778 880356015 479657320 507663037 346076912 365278914 938581118 454532749 382718962 647011324 682349688 545018982 185870762 393972835 642548074 154668029 120880732 943855457 683546444 290821773 357793188 172707672 323108939 796237483 159055015 356370022 913654175 783402784 747111766 615178896 213450063 841786149 786826070 861119454 244533636 700275222 978195656 525521434 434770719 470145973 223894062 160869519 413168582 691495968 865266561 996070238 122386291 137145590 580535168 490561356 86103211 930360190 57993708 530714047 791069929 816770589 912327206 498505793 898581461 915575429 609099984 940358497 828338030 768695075 819691594 794620887 905057017 424563930 105233767 820396200 534559895 94820885 325883590 884198774 890437799 598546525 868676478 392454940 533951236 914734390 287434014 83637555 355276562 758774180 875698491 664602856 225153295 910364939 82965738 959603212 869183945 898737231 412329392 267427996 77907318 136561612 536647354 25883186 544131884 646371532 630775299 707489432 257984442 113549217 989590113 518818984 404342178 348655492 771235584 787782117 968638332 627915346 254076479 719262506 557369590 187730941 345888984 668280315 145921978 253830662 191559946 982197412 651017466 314271644 598020411 950892517 311272877 382676932 338097071 80255401 611973703 348929816 285629609 91221346 152942843 840167036 518128129 415840510 23189677 463900270 588697279 46569756 386966559 711610203 399892495 153537232 619676299 715333942 678331381 659411060 344495838 568623016 200860772 63057893 231758142 399436778 52973954 816736950 757071260 576962028 683370495 136045761 373324092 563390186 86290890 570409189 277416640 58347979 596184606 441349558 36199802 116464203 568745318 989166853 100872750 514639477 137311018 556956108 173847176 570192766 810978414 495355360 852351022 2689613 810835227 669754575 931885252 192985775 821801447 363429166 493865149 810701699 149716755 371574681 3695221 609002331 1950844 635189648 588871322 597796141 95077737 329803630 564739072 729073737 838067963 520530237 671173101 376102397 11896368 469165317 407293133 771105085 470121375 723867896 133430521 557761826 828491049 810215233 685977608 137135372 91335267 515958698 466111746 940885563 654529158 806444637 410527275 188404789 488815769 957045236 492584115 893270718 632866288 298046879 280630698 395236371 954863403 316108649 608497550 201464678 363789093 148361212 614108636 309106191 218999221 964404589 160524861 703050676 67823995 24391128 578392923 938025619 30527296 927409244 311939074 950542670 608237776 142436833 352823550 35246061 338312752 973685930 549175134 670181087 426937880 459616724 602128666 151782893 980202353 127597226 287882836 770409796 404411015 254890031 935379280 66807888 627719995 922759118 904187549 55811855 267919803 518010681 284467570 212668068 2975941 271995226 999115340 928712028 545214524 601314678 27024537 68261382 482815683 145700700 849176714 38142422 135310181 978831472 566567667 486587332 896530391 153818834 367965366 428041373 599743010 243238037 954469603 718161970 595932131 51282549 65951999 403837554 379441201 685934048 641711900 304306953 154647914 541756616 438171188 734588853 85480089 543001249 735114297 614711180 620091384 187771161 319302137 208981646 57410848 5002471 258457594 126990236 883193252 698538966 396898728 455078276 609174912 707504158 724086893 542389233 493745243 985282880 337489709 216658243 730766153 162844877 65137990 291309303 82044925 125709253 879198188 738114220 475724193 128795796 144694724 136634923 658880553 283086692 734514086 640678660 315716097 819458873 200096287 276016009 662819971 268575010 338071515 938421167 449082886 893423796 203023681 244309508 587154445 794194850 999064653 797036843 919715431 858984459 89239382 265379709 318844630 928537206 139295997 390996962 824001805 16740587 461650494 181618540 798487552 775795238 886872415 390664690 768014526 713690414 626877864 170849021 844854854 656239949 540278618 970734393 85262620 259752498 368710048 183953187 753163508 947748891 627269456 134039791 240101004 976853461 920755728 78001406 419026393 40656831 654088664 489540493 598251584 57177019 615134097 975413432 135876898 845060725 775356331 494724958 756874685 859074665 685723151 933687989 519152189 433886038 378296898 381730191 718961478 54815108 26088204 814311899 186953735 446605622 855175006 927757593 119024956 500213413 166820391 450750472 969248766 595376755 668071344 257661466 48197112 42583334 608505037 465869994 583039536 438242018 333041805 259497039 488559638 654569859 821483069 807585107 762382159 934613033 799939119 86132384 294204067 464015857 665830207 836207145 734499873 26029106 516123871 129918894 884071563 558428876 221190499 347653822 353251645 999368003 850275029 828731844 547560497 896942487 356635481 314550203 382982140 18093621 673271419 350758998 294948753 703065816 775962973 614390127 16216731 346919716 527522334 621698955 525763585 680219225 757119446 251473521 623727165 565309553 666069009 396024540 651613621 723723721 990017109 649746394 17990726 996474504 436923705 524538061 187212392 276598325 861814312 134474222 321890854 963215803 283293471 296113120 634542299 775430052 2740194 827556831 521830192 10326602 306317618 424664530 527445110 211474957 845776795 459952236 780832815 197370760 30376277 879400525 64304206 40801633 885036627 91865898 713439415 916117821 868739413 571567084 123694178 338515630 811362660 859427550 160195223 925085019 176577135 883124179 417573585 919516993 976121327 394886234 285384811 84642788 633625783 561234239 951274141 955687757 369448524 120650796 349484317 463734434 436513111 817414364 310884515 431528633 386765074 425877512 400057921 333480945 449602531 435921013 381911074 242374397 129670035 32212224 657057750 163009549 828033228 821923917 880331566 178129510 939169871 340268286 68537453 361982719 209277989 345780979 16724027 177224757 967042755 814481577 171237129 870342197 255735573 678480511 395322824 37680186 647976575 360277889 387288768 82885315 737417245 834923473 298689549 298444664 149081882 716971455 610592642 963449006 366901676 605125858 801255874 73190933 124130203 422269136 797161669 436206130 485574524 906002142 147194335 8017829 597033467 539833557 930072756 204766669 517233829 841042077 312948003 924858882 286118493 520297755 61729885 836889983 682993816 879649505 164514612 990414198 554596188 975883486 897953979 421991411 933677080 351211769 229749672 256633266 123363508 744514737 936846990 644143412 781710906 245205712 907564662 87217742 890532669 287646720 18079317 813452179 277274425 488883117 364951851 927212942 344011081 174867066 69111235 613807604 555852895 783025338 174963010 279748311 144765453 688027047 330296366 988693207 76052241 392370538 712080787 140620852 112776916 86442405 713927241 356783434 831353648 150967020 510047290 524986474 329393865 496484776 484425611 844670059 365038357 592148785 920148686 251523333 48395378 750693907 243466324 60271094 646596815 357866816 404444663 339106267 183338540 199047675 290432267 434923916 318824156 448244737 893412797 84589509 984637089 395829009 479109651 328432607 427006065 72046889 405042280 817516084 765293805 392300061 306250878 187623741 690192394 798515093 945974143 983082267 664604269 375700587 139426719 301616869 554441402 115571988 371971914 907111214 380127792 608277947 194516040 653638752 957130259 853407112 298736837 228548379 406988911 69386070 176810572 815225297 788545559 565753121 284726208 121252976 145654092 923299304 953044261 312613775 683411476 920635021 847243989 616724378 176133605 265132252 546698726 572679204 724917466 228736069 496961048 356023976 193237384 861170016 343032256 570666833 716109988 488927756 995772347 244309913 662455409 435800585 285553261 514010370 597513870 514467335 43428034 326679671 168474321 964991220 338637420 637584359 643153491 690248608 952492614 867037497 497316784 474407006 783470852 273344206 60816568 407062374 901049327 68080293 728075309 394082253 946940179 877125079 249057004 889803605 986648371 45052063 953195345 599160216 286409639 873832165 45914274 872161028 429258216 942914128 62459020 218949604 305025462 391838470 589039795 172185786 393790703 801243139 967379589 885725340 307623001 935637592 707203291 800027346 96182379 663942288 761345522 738492321 391796407 719931459 422400909 9882173 899169986 70031482 692632910 385320368 419143958 230906952 245446124 741833337 905364751 732076766 763881802 554480280 697277334 819253474 480165936 257588268 748080765 571111099 121322850 224114722 608833096 441462068 557025864 26944399 280582861 176329942 845644081 411829403 752035157 110145527 446144224 192675378 665988657 810893563 746295663 867179764 204127082 189645726 510051682 155898810 331104030 487568193 122267611 397180778 182563812 571788800 802581063 775595384 262119384 701577354 379566499 45100086 121284324 526245222 480978588 657325545 480894433 806006438 318983304 106103089 144193672 172846025 293382490 469379268 904171991 790777360 236986838 402741271 382369251 46958467 47922597 84488209 367930327 749538000 842766822 273242333 95150159 397244761 422579233 133968802 52359794 917332059 35440762 537698934 744616471 468216249 718770661 179777440 59515576 380405915 333854100 786732576 836573064 531027889 854763274 938824216 825956119 563144356 136765686 784966986 742155291 63847838 550066413 463693376 714110841 374364887 70648575 358201151 569405879 596628395 494218986 877263328 570754350 105046069 304784836 359895750 731382027 245205089 341875904 93184568 890958726 6230888 448033592 180218193 694249581 125468542 864114670 715167007 137711317 736331975 754597608 758650630 213854014 794379639 830903825 876434087 543753756 362009430 25991131 575058688 420202073 44749599 741257924 272528465 269166638 608045054 678780579 394642121 837803406 620748737 399505507 201837100 982798608 612804009 838893969 802002751 262471267 167800673 435266655 219315520 171563432 770284976 138602618 732845295 523259926 177367371 981580315 742445488 202862598 200139987 25716445 695719746 520654783 735926929 96706202 724962200 897999161 908700827 387818170 342801289 193767160 829222030 294648440 505619590 214555837 388004265 317825045 926671779 181849004 567689160 866303786 131564183 601188233 621137192 610084212 294130058 310661339 735258885 993493149 729643174 159945934 559636275 815504443 743450794 993106539 103966650 825322946 966529949 339162220 19433194 290554733 952447430 813553559 376031859 550152790 148306043 671952286 665690814 16687701 360925969 678394961 862763304 857023528 940938773 238126468 191306121 377121363 776725801 178483612 409923025 558516254 213633505 137504879 945792421 473239092 642969450 207826568 514321408 755930789 918618628 888490256 341222368 840304632 808984310 198182574 603276115 720675613 974910803 977689301 305555018 226855385 170599363 19621045 531973767 402603385 980110912 432757426 719202162 33945648 849589438 391423962 752971517 635603310 103488153 574236055 221242296 624692120 842055473 634688301 64731240 478258031 549038411 541086080 470981772 892818480 431261539 599925889 715536054 664186833 76334031 928104057 282752052 524498585 452677966 943889178 438560556 375821131 808355333 636287601 459397333 912178057 974219602 344510053 818978815 885351998 347848914 923491702 227687278 489509500 713411366 959737371 282889342 39866352 807255847 790710406 48853742 689165792 330683924 764409726 546494271 624681049 944423218 842150065 319608293 507346723 514810989 604786 312092920 41393905 186815766 469944533 846347859 774855339 845019400 938421916 609431153 515966447 556599141 610740705 934417196 740414826 193159640 915306315 754091040 42957569 38491607 524733424 774516584 448083143 160094261 535818200 346594519 101613349 733388356 672311627 20978290 828781121 790093625 549722372 925063013 337898233 253204521 274439430 930584339 907685438 349564723 390850193 131488110 699115262 655928389 314488878 567634300 957158394 117207578 519781397 327671242 238861561 896108927 966774667 292115300 353746392 593403464 715115366 987153232 295960601 221080458 920907761 767569015 43097943 185690209 66461273 82195526 793992054 551085524 563146179 628150140 976595445 278141492 454517409 235291414 884201434 229533035 418264069 720128724 339819390 328278565 214074158 215082205 224934838 595286830 813105906 517151038 470704889 161377712 881625335 859038060 36666727 920451671 211379597 884023936 749237185 297279472 689384208 7050947 652841670 601864670 494618391 436303606 348079946 325418132 40522730 560754991 270139242 309473326 442723501 911241800 331211585 577443400 293997170 264149945 289296612 735616301 875480191 933308044 167883705 301797614 401668040 19349300 600729821 87207334 647846501 398342309 71883314 808771065 57758554 74188503 780999581 781820464 788499763 908713881 498486200 694146581 232326998 795136332 776772130 403872724 168662993 967130670 173725611 320290226 619766111 665099718 589069200 525556179 270576693 313105430 722018584 482581295 505461004 112590105 198442450 598237920 166543601 789425376 242021895 561930633 159417620 124593335 730888491 632320664 544746089 122721812 234270460 613094250 376492475 825947090 442227116 930571269 111298809 460594215 192219354 784146450 906283611 673374044 459911785 109381978 76204218 437629503 25074168 110373113 101570209 159645345 148249861 492585725 109130218 347978184 62821965 472751088 596636672 673021709 266102889 442424137 31891798 454846896 839137220 21413132 234905069 101502387 857846447 62894261 833026106 930858814 340967219 378348755 508566903 515161837 377412282 68573770 156575800 357518915 301588424 676486652 406334445 843059812 691224829 486679270 994297202 671312615 997164876 44361992 52427289 983552924 610612515 536124522 942030970 719208274 945808092 152710040 29916487 445796015 947434161 302150202 521402392 208260103 942919364 354734631 653670662 669842672 193448387 709063682 71344659 478767605 665237682 847005367 767351916 19801675 827870279 805773919 530752698 108883312 62823300 701364052 973565284 983421762 825251022 178049423 216707618 517850782 343479757 931538070 869092087 540076436 7916023 287799899 186308290 2732439 222723657 350655230 718607948 248209624 162418533 691084706 495604405 376506464 476377667 96637707 834214185 399966543 272228343 304547057 567163393 822320858 949950609 320341870 761112385 793875561 223088005 562745876 11750620 146382655 580378886 674485884 503291416 775660845 467864818 388008693 178669905 894178393 777506890 270178328 419575427 694312624 144289847 8066768 91800629 902662075 137559673 390678371 764816526 325323088 570165728 641734081 795398732 367499020 745052822 681229696 121420237 193867187 686374964 169327328 185977185 789300253 986636789 972442947 185622086 366210929 975316808 147335257 181720461 527013507 671082187 889209258 690347241 698047430 104821380 773659053 336768585 480953986 226204231 502157306 264052504 621128195 859276903 640854780 629372200 420734859 822073447 551184077 715161358 577359286 955952684 481665054 371220598 863579081 655209564 415813736 372782676 143817512 747793122 35078551 259550783 843082739 482125740 516873058 779655662 675039592 198871125 100537974 519856236 567811267 623508803 400773134 268166939 478971646 215814256 406986500 243521456 54633579 117494420 837425362 530393592 406189703 768181124 873266300 609087255 838927569 620065409 799620982 104910464 87481158 207478359 834092283 377683636 396814690 658211850 656824980 773811629 821208482 599768966 764346106 913081194 24219555 161225151 731259506 574014015 957802340 147235366 92218222 340929642 689256460 243473969 929027033 387702255 211906486 923222097 274258620 460799305 952013361 23449830 195406942 310584278 909156962 761350943 174366581 650508972 633968067 236736408 135284211 52090344 384330120 214517405 708512395 929995991 804786272 210772409 234681494 335231409 214100619 275169330 594048024 318178277 770925191 466693154 266664925 174053772 711245486 69763644 968397190 951835245 41867001 41804228 936611837 460432879 232777815 195155694 852234361 964260352 178135351 267225703 367885940 70052314 828505474 539169427 639390879 94256692 795676937 841585208 293377909 968416459 652660818 679484188 230204277 551229721 867951007 731353029 241116108 656749298 973037424 83947109 168360795 620937478 589124703 744173462 129311937 341078254 482857816 852065382 187323896 155634314 154659058 857898786 1076541 89256769 748495881 836667044 817134030 230781513 594524902 488582921 817536971 851558400 816572201 362315770 910619200 304938703 861844349 710755807 136227409 153531791 195553382 133119733 301067844 401423657 868380536 483150173 620489372 970409470 2764571 793880112 873680413 829039093 900507425 533745699 729834069 190727891 175750721 520150519 692449049 734096112 823947818 481439635 506122394 749506278 34084431 619415490 373588739 535907446 424994536 697782740 689364051 814072870 136753458 987150338 225945718 880512994 617517197 404013500 461529273 771627455 399526143 491191393 894929483 633495670 331088612 682489843 154612927 606721192 406733182 443347658 318221484 19573295 504350495 187790642 734101418 56011558 284887001 288042916 138471687 967331786 983312002 810724558 881251873 653432255 769679767 587158504 855771470 989545363 290710757 140519795 141873723 410504919 457799486 513189448 185548478 560579694 958559303 906150156 924207102 682874138 909086694 957448408 59503021 456564992 338194462 374640643 538778366 977196043 891609716 980941746 475501427 641940008 71339648 168959652 312215893 876636315 675334705 230627787 466803032 522909124 894217371 5910661 654493189 118106359 86272539 103067719 249248940 593333506 856681671 778891385 228031937 527332757 601718445 757069011 894328310 184876192 364825965 398976188 298269717 328269871 725212348 235598835 79283568 11577532 134834521 715337577 823722966 280628320 850346216 894026644 668303403 733689112 992160824 992739932 807434168 629208859 225693994 440829288 482683116 371404398 885140238 70225544 753262096 328551508 133348701 877145477 183391152 33107821 847748015 990777567 213973342 354945503 933524338 899214847 547483686 229427952 997638178 673731972 646826293 949238703 602365755 967820951 867297171 107795092 192996927 657401639 186500228 7011827 585921278 854247640 641476581 49830641 224441301 607380707 591347321 124071145 901608803 310857801 404922905 677153929 900123245 280155761 669134136 363493423 603980188 753113816 826941433 227641493 211506884 277001101 422999298 211969516 701875402 309722193 375716411 534107526 438763637 771117 931683994 91033357 652253904 997580772 36133793 925884883 242176099 666300861 936108258 379500576 341651337 556288704 396322889 223215683 273763778 872546674 304878288 568594251 672916040 476411086 32070513 48046089 141914058 906705960 814670437 817267169 673095678 208983977 500608883 572126229 694640486 25201611 563026754 976136530 391699882 111176294 584974415 23516888 467329198 944367802 907545599 755246081 238472977 29179048 44807198 318307656 163057154 713999665 47000825 55661343 64661983 37604783 977914130 459044500 609621084 183096359 453360389 783052552 263173603 863101843 829948045 911508505 811981630 771432313 411068620 34497088 968563881 833965457 570710630 884709078 323022661 83255652 424261357 717663707 316521741 634115631 981729151 503905318 209188390 710823317 255796101 825125042 506500567 917024908 779140210 45069362 831324572 738000345 640182037 711326806 308343714 304022207 261005078 473605110 977223931 139597746 789508439 587092298 286034234 116042192 44452107 85937421 201896421 926752462 573102852 246563990 171676145 909580507 684464414 411467192 152208234 662222346 389467135 593721954 403115793 628930359 924723982 651545642 78679275 626484313 113716519 412593917 697634318 43347554 900219870 421699439 321493439 886403944 669792236 891419077 274765131 575214370 62975281 560718933 555004474 448245125 853074926 29964577 570786800 171146614 973852294 982605626 571782773 412214858 328564797 971427155 824453010 43723390 949733131 70428136 832994150 105821490 969706882 925776282 261884177 397470138 578525454 594879197 370712082 147501269 801182886 540801334 219323477 529281419 815185507 314245709 743118822 486856218 725371805 490454350 326812593 389064108 305508120 489092783 995546334 749072478 598499168 778319218 68426200 391785684 103638064 812787467 485273437 117374239 215807652 89095313 867919211 891847433 361070303 995041652 335259982 422822763 284711105 411412637 640444331 539913464 488448989 412592850 793942987 952288267 232334395 778798770 895887000 503374708 705994046 33922075 318575791 500677035 686667740 749525692 902392274 666079179 693751079 902072765 813675342 998825106 18994963 439655039 775898866 502251931 72428308 728304939 169798481 598784576 315017417 797980289 770574764 669624972 661574232 491231409 671462761 287222561 447262157 183313272 304308775 364373344 593140223 32295291 257097395 956155473 161800173 526492860 121937502 345537709 24457172 546689763 848439773 366730135 149789033 124653816 651740268 284686689 67390774 453774551 193752930 9688908 42243656 226050444 931065036 437896311 128922812 890907521 493246464 163457749 5624241 535321866 927682487 821504380 166903792 124435906 378513618 45699900 961143466 38807676 944391277 166682384 824520686 451037971 604537133 664640815 275133378 30682075 551140377 756034427 581755376 23529341 4228793 486420300 913779922 235151449 82885339 781097066 126917690 179925737 515752412 297580476 941346114 825577096 749834191 418001885 150559465 472917081 710686964 167198883 795588070 627890775 85648578 851553026 683915667 956943253 561757806 345398809 894211578 75414997 641185166 526754773 993012537 150659066 165124920 63721144 532330527 222394235 886039324 726266153 781117148 271495915 741915653 999441225 188164038 661869229 885247723 105585146 52805129 423542092 759797662 346590953 779854698 590133293 848659003 120523218 82766374 812479938 397098630 306887121 17307284 499824539 454646719 840366457 301245807 695272492 388475521 655418409 239006949 437366085 628270724 728316586 385943216 108191952 554133428 526409461 432843069 134872098 844355518 508459206 568527157 441103808 924329013 623658841 129356852 789839329 159762533 559526241 992625605 738054764 210174322 590883132 554610481 819347207 363731484 547725670 942239545 175863439 101668724 755007419 457050329 437351948 158123102 239367583 890830258 134056624 364239393 105261997 268136560 504954796 106797064 414284270 990922578 983080962 47598576 629641377 5406659 961150301 912665262 455803289 124359217 816223300 152496969 464566275 405457087 723214496 866518941 290016807 17069885 716368696 554078641 655937030 934984259 28622731 882187784 354781071 62447352 2597292 754967240 8745694 193266966 120230266 239782279 975403239 338093151 160717613 184110788 102287850 577213815 321386897 504988887 76338050 527020866 421531012 545022635 147438563 324717409 962035779 20316656 447429755 583196275 157861718 337292898 943975058 138333670 125227668 789845851 697823550 512424037 961492881 238149554 352348144 869265620 17500739 860479685 123094385 481755040 589072984 917690919 489954595 493715219 301098789 47948689 192494290 334742650 502386131 236129185 190872136 312384832 683638023 127844128 428497208 435655507 959415369 720258191 465127800 364311171 19064082 44308453 15476409 798546631 808534559 916407520 699563488 716882853 136710840 225560168 34780282 469990644 39754272 359390475 299695872 217918188 975145564 773583065 556817718 798835991 593224940 566768546 213230594 609695645 900335108 166629952 893720824 491953237 154716993 873988325 499810770 111147667 832574128 218712225 656428885 473631324 219175223 70812892 922635230 266310148 615254853 404171137 797265470 742559591 480842547 47327714 659346296 50118003 559624920 841493961 296167034 623684451 67694426 181635472 624808081 218975823 218617642 733913352 218415780 826840995 326559450 820924540 943349520 449404679 569477386 605507308 292288648 426793584 582161693 870352667 790020077 424151003 276795619 607994585 789135100 503427444 985310899 696180783 496839618 828518345 766866523 839146848 747725874 49257238 177783728 597367069 334449046 27277609 240093369 507761633 411495005 626618041 904559050 941330080 141679761 830860699 309650019 566890240 925923844 569452726 184948008 682320261 385116829 395035367 535958040 680669679 9710996 892442553 882498999 9277720 424918860 313841171 252408744 921709882 751909631 392929668 455122409 796524911 65376876 255300608 549708730 64909381 397906531 571241124 429105718 923878314 729380391 671655419 698518532 968268485 865836815 937361237 793073318 356619168 106394779 713790056 326932640 523733804 523850645 488152904 715578757 797104168 960911855 771594771 233964417 32205574 368340224 942808667 390055195 633943159 316533227 918175743 790993760 292704534 850295046 945189486 966789265 921902300 577339898 738473812 464952430 726949592 259436182 940088455 160788076 585008456 910262769 203503473 795811645 930538962 852269055 385471122 323844197 862160955 547878487 40744243 902355783 422247401 290798332 738097628 357787021 219724680 616197817 454138765 437749153 677027961 29653811 894098761 792355933 290783879 498013860 964156324 218387811 651712324 982609062 548594520 773878454 176344080 638714599 304406198 134657833 34859177 895418733 92788859 87722182 813667870 410753579 974913437 531044266 33938167 220223392 623925195 603606914 668314130 366029797 437507511 517816040 462361865 277513917 365867764 582539394 384279473 261321684 906735538 561684890 285574082 837735509 278765616 350235059 561840694 412892136 22264260 355274493 449605563 822687411 776765235 39822169 780335941 269929299 722523482 195797270 292121810 554922118 588392239 548381885 3438889 739689861 395015347 273091187 926004048 987098048 385799052 149734630 627211883 929666929 793048613 544460798 192976630 739428756 202232641 84301163 693287419 328533132 309213111 250675231 972025305 298620468 444873029 920138657 855296643 318414318 889291466 835198019 604958405 615466060 470742476 158782573 226762626 503482779 753914739 151922549 558724553 863291746 672154698 138253519 698417472 270519178 665541833 609085357 877999443 137405905 845589988 452428834 973503861 22924855 208553158 321071689 985423267 10781981 504029368 743822173 159081026 748327274 780716445 959465900 699278093 733743712 818262746 818033650 743848052 133675327 779940316 16772399 326549018 224012328 688112375 205588499 929991726 410725126 96779983 732860044 507246325 890351447 451558003 228000730 380784054 945463668 996916535 850138648 955769895 8915033 837382511 163221756 234428888 839697211 257602464 64927466 800364668 385169130 200043378 651335060 235120208 904770031 870603790 388079945 906695335 953217174 528307490 10269290 376407613 700392765 729098127 115814755 117687975 956037743 785337928 897366550 898516972 402519187 45649119 83798622 480742234 125915740 604376851 243735532 658835186 648170644 269825619 186257569 901206182 465831170 830805 538102902 885451013 234693219 360503073 948242879 239713357 451262286 803843867 631049746 488400644 602843267 261535539 967329504 664749068 614975920 328417507 473739203 20422896 474750998 389116754 958388239 846005309 357919394 918927617 749240082 753487366 944253568 173949117 708403400 733111086 436472360 621794249 607403111 745968857 975674590 534745729 984947088 764167547 614343846 546721130 900857376 658592044 391491186 665958383 925811930 883861998 168342383 534679527 898120549 397532702 559946094 368796315 549350298 676165353 839592752 625016686 201890995 162475712 855646616 925371341 40948876 699552302 907446312 553723710 97528899 930432906 904408674 649844367 756100891 906128804 738458995 530448429 790161226 840667125 310169499 301720234 382943563 777777986 434647185 690017785 155747477 671942666 492297015 920688056 267143099 502454646 25960154 457515268 587149713 982954239 496320104 703260074 178822343 436346606 129199863 161603903 619621360 909374566 738651187 176324439 306067786 146120714 793088483 878055779 94866454 143323313 168773803 554277213 994967576 113409124 672506152 328480561 541405167 481984477 493785956 300943285 427854911 201084883 520735258 74569890 435421809 149929682 940476279 368942099 607983824 408760042 466021294 956349436 687104943 5935326 590423353 777465910 942460787 819391410 776263944 899025397 427245065 840044882 986730830 319584223 321449049 805405766 676953416 799809061 639614720 717167302 869121584 577122479 350108838 983637640 264677193 499588692 853569402 915979752 582659433 508712271 739689930 444439727 814437029 286375042 593335312 158048314 523060779 428701618 782727502 688295418 196143787 186990882 143742210 450068518 5639403 717373013 662262233 822309768 323098431 446438658 550054953 87137280 508891611 216302210 306671965 56572095 386443849 67964155 301930471 60515999 417270684 418557938 622311697 898727347 808199301 186972992 491649166 929485692 915374742 983733845 345278970 528283884 777418850 840564813 562291615 805989503 49426292 705806411 519614792 78221203 422087409 127852697 621757247 562465968 168395496 617696917 412488825 651152287 890082014 978191647 569764399 808021449 382213027 401478629 211927226 447023105 256109357 560274675 207906536 780329699 228478534 482943621 162870416 600564576 843938900 684892852 347607868 163135689 859003624 178808824 150006811 294722108 338552487 726303340 996014646 763574250 286042771 159823940 731147934 731679599 915905819 359490626 268804973 311113719 889725807 847323797 212831987 421469665 301521858 444701939 877557063 862575755 465468977 76472331 731020037 530124910 342933912 405550192 890138750 501980716 865076059 89072254 294878600 341891030 64481797 862546454 487209479 477678540 63098957 744124020 711324840 138014040 273707752 452758432 226393079 416395250 743455767 820780172 207244658 584170556 517315920 627321695 404887889 439604011 53131418 119685751 810828946 479512575 179756971 959501446 53145181 80390479 107652722 610018477 189088761 562554354 814819480 838697147 596121508 116665156 188883893 726580800 630460319 275481148 109040526 508020513 662499985 801238453 911193321 353249519 953180539 662671378 970814337 509367204 227330635 612254652 240084214 225472882 831317374 420059732 904124986 725631864 472244194 334671406 593074767 630775800 986314762 562263820 84614096 425745011 980887867 963950205 618877842 339732178 765228205 260369536 741490157 690202413 482877919 44327880 362139011 875790112 219952584 920320095 165630518 565425529 856442022 115293616 339435605 571671788 477817089 113546175 409500031 968010643 70256641 445456154 808839980 937695349 450302862 562675229 479865065 397028441 595380189 606565171 385805661 290058200 193051233 232476324 610841471 69820679 61354002 784455965 30369241 848544232 350881678 858945446 592328873 354837833 609713800 461982597 171817938 623166960 117164989 947647654 504859689 653625720 595956843 975698125 626650930 937018457 311802297 618547187 343084628 766015856 99239714 765417897 439177816 316147411 253367906 126005667 566350218 931647710 68091051 549928449 209256815 331017651 112723681 868299705 157912108 515344766 889743290 519477979 193991605 219777326 289102525 49170356 930715959 591304071 47887091 839182364 370382586 422817227 492796401 801128166 478187876 435107881 642041748 664488860 674599861 381673269 815890528 562034582 284395798 236372704 261851597 504945740 401471727 352134203 148042477 91713613 72040086 312779120 451081652 478635618 693189107 775819406 563038480 740485662 840958013 663329903 338767218 57058956 185074904 983425579 149313932 933746023 86130966 263759958 997396530 88081405 462033137 875277287 744568646 244758125 56091727 882387476 284708709 894835716 9616175 679479104 314571322 505848027 100192852 10230345 41253165 377182163 540901902 430746991 747122541 608749877 340734461 755166630 674112889 754882651 766501772 577435759 699283047 488925877 435737474 419030441 173873953 173952970 384523561 797894636 30781645 570241878 998962210 969712306 955953333 783773707 806170401 12128967 568955659 860143638 651460528 84249771 416895272 452905133 937366997 525288277 546663116 504957577 927835032 226522156 47861414 205406194 914620133 626200590 667771641 358768192 638288031 411037298 635035148 197924465 270803824 650304313 465637041 402324925 885422801 805896856 958410540 79687837 687548001 913590925 951089367 337959440 199117589 726161211 250826337 56788523 3867323 985579967 776456808 363054901 931184003 613853529 576072044 908425944 230029197 272286991 636968679 850755781 276924642 304734159 226090236 309845123 539425103 733455977 841794674 771052966 468633435 182434300 277993945 969552090 438187850 533616283 658548838 381469304 608812304 547424463 361148157 943103448 849202890 230867016 938568950 144911925 904050537 542588324 528518559 572921130 113652376 699392039 250604324 802353003 428231428 651932907 446488349 262947072 322544193 243610579 553645798 774824101 160074793 911514890 237517124 888387024 759876764 273283862 498563349 102153627 862865320 743975932 995788224 840016791 496494902 370936235 84698970 852951063 620992760 719955450 936561103 993445344 792652484 900802060 683963513 317223939 142936788 381941510 516916630 479796104 71277922 431053627 134729528 13154392 590899587 85955682 567278 83381194 970980916 127785544 625538022 663716065 354628972 792488651 679007577 752452080 432216379 938632848 840116074 465853594 240321668 974927176 951162534 355539182 755541010 879671678 429049582 230299147 203513255 251318718 921373144 223980713 965668799 102073891 561444138 618000973 482866329 324790622 136724759 547833881 973756655 157106722 378207537 961030319 789047072 123711466 231443037 706951459 234763306 539475138 431123480 457871100 655506109 60309944 537096972 494191148 941833233 718347675 538271944 14463800 640094205 977559211 986799422 24650716 289580449 65788758 355578404 382445889 211079789 788264409 938010949 887808670 71619938 996312865 670145478 65922153 584939740 198329226 310418274 984496370 164799501 840580059 96767951 85921266 944388963 220054564 380707660 352014796 59125655 256737722 22070521 905861308 596257140 323564044 951793901 810096083 106601638 931959730 127118603 748742821 193717757 507517787 773208984 853980313 434568727 951663004 115155066 929890852 980348267 810717937 754956296 171912805 26853503 868299818 207326720 624177329 432401100 551728357 317502893 890653289 763611020 585592856 829670505 538572144 758494846 488168750 205010197 972554830 798565886 783849282 847173003 394954293 307258844 768624130 499036120 318266200 509085790 585266271 573381544 775121269 668596369 382308107 250635075 528433638 404197408 407493793 761167817 735685982 981961131 327407425 530936024 560951031 441766440 922631361 34578791 208735580 339479394 650167564 829428662 585896228 485365129 737992138 288515627 385165823 492442036 583880783 365152017 729388243 100139751 710922934 609800235 413752170 978939664 976106049 327660000 575627416 959736667 525046028 701850676 676445154 540132818 57484333 833201191 632373384 76400777 455093174 501017456 726123641 494107241 976785594 632743654 441363648 574892781 136298756 799049429 375609472 385260415 117153894 102802411 349693481 586258062 646376666 60883248 587202808 463986694 185934241 725011977 594228162 390190606 981138548 142888656 513631194 230790924 570996518 749521849 254065953 505007167 119189029 503940640 423748133 380293084 617214081 678895230 243380067 234442161 305641252 936911922 870759771 657462512 107376030 535438803 553179784 293452808 684639871 706552593 395102545 731111348 734186567 347196844 919954441 668675649 457254890 760031482 694465685 52855953 90201617 294105210 626764241 159299495 215240833 248679822 483683787 131677039 712571268 130617036 69778953 989593135 803399072 878831679 284471803 151649087 711397738 976227904 648838170 104541890 718011190 93873250 138740453 369918682 618990518 236048685 260714992 305903783 747562798 205537350 424053350 66148224 21775444 990572240 104028069 648769723 945088264 443879297 320322101 730998770 569468541 894452769 847946433 153136132 925692301 419932789 39009191 914957211 274317731 935338835 463373629 183701135 876431645 984523160 973273303 65902396 130317790 860619498 277020857 165514150 268282509 785064398 13840050 184851598 349212010 863465664 331628469 175409228 800355989 387935052 897410582 571857113 817734200 569422563 416003834 200442753 548482915 196532146 55940105 227594689 173347527 728298593 218261509 855529115 535030526 158114959 719105576 43150409 118890545 940579072 565364470 372743341 195496109 904942876 123677985 480209199 322082157 985661434 213489651 435869837 783597439 144306635 909750757 182047028 383912671 865965828 283574762 633197238 961450555 103338998 302072619 624128845 308847118 762178209 82624633 12752109 737232797 545042228 263020312 136488718 850384940 479894412 282161822 871468840 531509686 580281798 796425477 261310628 592395445 326229947 885821006 996252762 721877880 130676315 492153228 440624876 477048284 860502129 941224452 10261595 798699120 848744322 903137595 256205903 719899930 287483483 70372811 739374348 872246763 266158547 94440748 451699446 968145706 938421979 572800392 111749562 557377815 697965836 642758868 552474295 9167040 618677779 898409077 835489334 115039415 668463049 527765010 821412721 717792263 903189669 789802546 158157885 502392020 722594387 2785259 919802128 235398732 41389947 712169204 943983939 228014296 836033278 342541843 215356489 758259957 808286465 509217849 954526788 472474584 817023430 359342441 276439640 253937172 759270349 777414110 71211923 690671558 828887594 279047824 481474193 898055311 321411607 276582653 83051457 609322343 8996534 286203719 563604028 426602768 694451151 867206559 162588208 796762936 66622218 323106622 912238819 711004088 451821716 322613691 357752414 849588648 799873170 659922818 518929495 796126304 710229662 820918943 938837550 305598329 375955777 563756003 84756002 567294344 246374979 245175334 820894815 336371180 212709588 809471277 492371984 874345165 612829821 357516856 420387162 35820135 600775864 529165711 324233943 668174532 127562641 841636624 388016346 500921663 404270473 676419393 2587728 907046491 31566466 985753803 700037825 679743568 176953614 124910939 711838170 420199574 241686672 141178942 745575752 529662676 724170524 977710350 425194829 380589191 448564187 333045449 310620781 970736669 22149188 231360549 563881405 821201831 105899229 589443971 236287555 457313295 506537989 822689787 375169075 65424420 527113791 457224390 394877263 236373068 972092719 224221302 118674071 615993014 841446859 371201671 286314566 706511940 200660157 141375157 98861861 92840740 19346686 618380681 93269766 948892934 310252050 376582837 490806497 917621472 775266190 630061879 938268135 235796648 386435589 462819984 990471849 712101731 142345154 658086774 973918424 141178664 31771700 583562695 882824344 185394380 673491763 480267458 465519788 702779163 8374363 341677388 517087432 469433980 573263404 482934503 140179857 41041880 714409974 652742357 781051434 63726517 222412792 344301318 799104653 84254992 3069387 715772898 121597926 459140121 587130049 481488720 361706279 885262685 88442664 498960388 5806130 888142696 375392261 318830635 829313785 189032231 962340427 919419125 616473093 709428569 766434683 746070029 327455711 392966832 228576567 838059327 289127464 268352590 436984011 495995694 673190379 831021514 984874308 886653056 374879645 97315494 474978214 429456162 129441469 869841622 735027325 770921956 538154365 209474020 112446990 179988913 340595360 101859802 575612799 672551667 498995974 512995118 618195595 289307167 820899434 154265384 613789582 124818375 568173021 625484749 395422392 954319178 207550177 61754506 79164195 140088516 765852346 649085439 27773712 201131255 419703643 167322045 446424978 180937697 120835512 853196791 837073952 67794817 780503911 415248593 99371320 280495492 903197701 417281919 851883303 956047091 865990908 201648528 661827948 561741861 948747026 909872257 859302928 581597354 196574330 823495741 692544185 589429446 72385190 353922529 736846365 434861261 529798138 43366742 9151453 858794117 105101034 524523723 17183784 884045049 346846301 565859977 528733429 602842049 242689798 919085722 486897590 885760823 546821407 507538000 70769726 875066401 100180089 513792515 134060294 140852301 501902253 474553076 825593226 281388418 104584554 52341847 684103872 845352789 180155871 345903620 424612913 693466006 728718461 971504439 33381543 11237222 459115188 233439645 825126268 962077297 556740848 311554629 764022140 920933785 65924435 328646383 209110234 132760955 877103338 733611723 54597463 430350520 142475463 83195280 748170456 971940985 929522019 472423298 367168813 887194513 927856268 588764815 82246210 133776526 645343514 910793621 140648256 609481059 821207579 708340338 24334993 50966268 282399668 180668646 116501770 383824091 331502257 603871249 338834063 519048188 275715718 169249714 64090452 346576330 623865895 236448632 427295458 95797305 411871602 49774167 744537671 504412847 472413040 635980066 913874864 621757356 834433587 599050291 562518080 20609470 136974108 637285598 794548737 230107691 860955740 442584162 551175986 67526486 581343954 404966113 675191597 413972347 361729674 913729896 585312643 192155674 96513307 759690987 292996074 572546571 952824769 296409325 295279153 305599549 401035653 681107035 993393204 56255084 720518669 218921986 398425493 313297552 248426644 513501115 458730280 842826400 853923266 294403693 752164744 398029221 57617575 381845731 419839691 61020939 866899485 991861469 826788810 247388259 664473958 794020287 898241427 845092170 782949007 330354172 628155297 200660939 206381172 524544208 960972165 818777047 259402225 528363518 258589216 375354520 865556317 902556334 154363025 42004398 203586577 48923091 902236520 280908234 250646389 179568491 28369908 263935327 157908120 372534928 579078884 587576099 336901238 239443102 286762747 861853035 67816401 985621225 480398101 283096453 324023870 101785787 448452538 771220640 802829466 555146569 747866881 858657139 56287721 403983455 191636386 634122751 310527865 731777555 228277203 684551077 320499787 513936584 497582468 92792515 230120680 963022339 402566259 952851563 584131689 248944045 892861522 891927414 563634738 735757809 327440335 335956215 749654445 966846897 49925330 201561968 737757350 369005025 604815073 833251301 826123518 369701298 25836358 786129040 740426891 59949354 508302357 129931651 236709413 426835926 126942574 891622701 943613108 40721812 225632865 778722949 506157823 792101760 428750137 793308577 350025278 443971105 294108863 306356933 16141980 107990089 142893186 690020151 613657581 297710389 605764909 228409094 26238591 277278163 663607442 525387439 26356302 27560973 92425540 791471046 725614576 32155198 102186304 28742077 220194767 543711398 476360691 809283 566239574 538113269 130304579 803305994 73771625 63289760 37621636 87339277 545499652 156388291 612889668 935521016 595206395 845951529 664860513 504818442 841591742 574098429 684345707 759889572 475478977 29899352 470761376 532403533 403291572 850208237 355767277 969488178 713977598 859340579 507352517 586051545 289553532 392586880 442027645 580000414 723427368 134249145 942384175 662028781 116068730 351661542 322352472 388646349 201713817 665463936 137159605 498138017 388647550 717015194 329453487 833072623 678584592 350813515 34498453 913262229 346976374 223719959 161655274 672630455 448369116 396132708 233822745 825987681 820589051 849516752 811495095 588467145 178569555 887256747 200267521 276445391 856741882 646109326 924106432 373929456 4174860 69914607 590504164 110269956 985383228 706207814 933175342 959370725 900401825 715087523 741034348 719165664 781638728 237675081 315647487 457486912 179559592 497702435 349749520 297850808 176752933 323094383 734450610 805332558 716421714 298688475 995398519 70470085 267463777 848643612 206227799 754819774 777086901 958848453 592790375 772451888 6285979 199195796 346688645 263807738 350795586 100272362 123344007 201080934 196929683 412567071 696250117 216193575 769042896 493366885 846996612 349981461 4810548 964447618 935287800 877261139 311776657 556869236 578323235 344820763 206636575 602343076 514644759 929619947 708343494 773262414 940413189 42432215 745218791 518889003 131310026 401572167 353307700 770837117 226653774 430467215 262846090 897925426 403621854 534250092 937295195 60805980 970591350 75036497 816903059 932332941 531043208 10705821 888759848 969292661 31574896 35889375 505228681 667712932 210813651 389154452 298476922 635098411 987948982 970058913 841745660 219733709 262392804 171673233 235967865 967653020 513773928 800573264 388666623 152287783 40358896 207031164 925951952 914939972 626854320 911506820 269245937 292665739 751417099 737324663 168267280 163157732 249357513 429455944 758122288 499902223 386370273 628641056 208851240 30702582 17124738 123613262 241463570 760261851 369709732 787578391 458322682 982350293 609900041 180181209 152490119 470486485 993239239 566402879 636835349 464127611 615163306 803387876 214391691 288318756 372753581 214805037 523398020 540418548 868248419 959638912 140340161 904707720 126433740 92917190 792523417 189516319 740729553 742719985 536789856 440485646 563544110 952608991 226264407 542128595 975429571 10019033 346805510 750882139 15727738 995259222 288920186 92940471 510256353 502711427 572075945 627645731 728958386 234443826 132128451 224252666 885242212 899700486 4001972 961651232 998300548 281946267 293332217 65180394 951261187 738166711 701049165 155183109 811948222 183154554 687821901 713503974 471394105 470339342 915244395 638036710 90125141 185383667 364656097 182345764 43629119 189823971 884056705 657372212 999427462 565937011 435583373 924791904 773142731 558157426 966107772 810732886 601872804 691336234 819485652 550849499 664462255 881014078 577123959 675193943 726184745 675964225 808045683 977664538 759854572 445350767 750059975 636758585 318151431 556386429 459652523 192946206 865145394 45959871 137476409 652422841 101737024 351790404 735902304 374388735 102805148 43308608 316352836 834552923 423763700 191305503 235199292 191621380 517365678 291885505 999662617 508002393 278663577 491300695 55351240 763269706 196057323 347504023 52733816 958039535 481386589 617279579 805171582 243473260 329226302 570708337 284945349 786770167 824340803 464692022 449998011 298984536 866152906 576968565 530691411 144548145 762480066 648706848 313981586 276231702 848733057 928140380 510303123 647411845 822154396 544266702 533099598 850136505 824093036 379704632 323150180 938870787 336488057 8506681 669713593 151229226 338730961 776157614 867012996 815929660 205623851 661984567 81773353 383386644 910474590 779247269 111837142 55166000 386575424 698400817 641548983 317011700 186682913 194375282 875980594 123899134 977313496 972918605 737245329 583217133 182689740 607688641 837001342 684941283 813813412 215127934 699912221 723094374 933016886 673905659 510422400 853622576 161865064 52474421 195897677 415929390 913116618 475512066 631738343 968814529 584473959 270519310 35078206 609582752 606164687 121457413 12509809 903841910 260284390 499041957 757834192 295661247 474216444 377327336 141082942 185206738 809667187 664866457 288991143 332536111 642657100 782795018 367250385 632710859 811184660 197793618 817391082 815255260 699626571 639917650 566609081 270389362 455695640 229756361 876306964 45732059 359257924 739948547 856870814 839111760 104183529 926464570 917194911 37640048 866232065 507334080 333117801 409887506 712795255 226988087 696163217 815942817 666828794 288288395 602866976 803360630 32971222 821500956 904875582 426743547 474364251 794909744 940136036 168083521 333377126 84757400 701108470 460627883 29616716 150580160 260656791 43514615 450278084 448896632 869196018 448810768 176930042 325704440 384763574 46293222 820137031 582360529 927537367 386373910 187703992 407862700 677343715 630734230 648981681 226951237 948499997 158829515 654718857 751783812 825119305 228958182 112191551 755099526 366263231 874036234 619685138 49158800 285273616 116226549 805732689 793685486 797885567 605431353 649466102 430469805 911387083 179306234 874036742 350623447 301638645 451944989 852911679 838033299 534473949 643694334 34759810 908017371 674030 10340288 210923682 415380117 529471550 300203944 123323468 308414546 428648941 218637566 205224063 54904502 271919212 220946292 515477535 695043068 643270699 583850887 408784126 670883065 923174821 913026210 842634449 182136133 993070908 533945956 978389786 208383745 888342121 455043330 683377568 125967081 130801266 166303518 861143634 935728452 932000804 192199321 714470893 186701531 713544720 883561071 417001771 613291237 465260184 872222998 839409200 695009480 447639854 162679930 310347090 294086514 599659826 971819533 379954865 341352327 717494478 321546461 630104947 119612906 592962299 863808341 26823893 466428667 597546127 459572436 577401769 498385388 950666302 650375306 44409704 577123894 476381161 806165681 510488203 471255752 509126367 477392890 600388537 873063506 136984416 524599805 652992035 120511014 676385388 12941298 613129010 619940872 171842666 373986815 705582349 32254974 149512651 9174765 438443820 857329009 255818204 571499271 831452381 128341333 809258895 7224044 135084498 737048006 859721096 934374238 545655184 634806749 159006104 141692107 176747955 772828407 484470343 121104359 761869629 6604394 515201775 520999340 209479534 609784923 551144089 24998208 396366592 592906833 689324630 985992756 256232701 501699872 767467854 99151139 1227171 678363969 289049766 603054207 217235546 483185788 716293984 739662694 647685790 436209677 481708016 580012850 631547085 764645982 710069401 953979004 192000820 793312999 646991040 365836590 781100376 196235368 556432833 434393183 754091302 963086337 228466182 968381609 145680762 843640520 411429630 396789387 446458054 943043995 54728713 565163760 513165999 663953861 119838411 592504337 791998780 757855658 395774766 396963169 688538408 27553923 655034007 711840687 848368353 401638891 54116151 50129157 871761330 580650742 910669457 112168073 717259451 477359482 81018472 246523057 857100409 241601944 881150307 908680610 266589633 975278360 544340763 437434573 29760287 294980353 155583497 747744512 48005123 264621869 226198057 566054521 708480351 205814483 372376212 476411698 3262976 352731302 985120097 383393725 524041289 899828898 644805955 1476644 130784620 981529104 791579404 846862634 490150867 631709543 304167895 128756414 131954986 556407433 339078047 149601708 650315166 96933421 727012515 892705147 385724471 980539238 713866263 541579115 136194964 619169061 350123676 572363734 324000655 734716443 637024160 818671092 534425278 228330103 86327592 57957260 289122283 836251782 830842891 800019866 784881870 145054402 753025237 15186865 993501768 610971816 196658841 429928225 615731482 168694699 869155929 98997399 314259497 877535180 482904682 616164338 817936210 179305308 381615429 521286386 923511053 834193251 771290409 291396119 400814214 666853101 592716078 902547602 70160757 433368999 309036601 742642032 808183262 460018929 972424347 862513042 653513151 501677631 524758888 880984285 323951407 170358979 327765845 955532460 409919310 50973282 649206402 569221767 127909470 887499917 911998267 868464013 884133809 47409267 827515170 678026903 87934477 685800607 641984152 384946348 130044400 143263334 766690819 44871174 787392063 761500465 123104090 520372773 980676429 78350177 795190188 711804850 680051621 919580752 616273585 391021891 997510616 115641840 240760084 774465933 356070477 811733076 772685710 633950330 832226759 306439787 929457974 742197649 34973411 216692801 721488434 278336396 25550883 605589913 423260134 412633026 744430811 729013676 693431121 718715044 68020414 477832075 442857111 821934940 303666393 938666968 933079593 290928741 797757916 252615983 250491095 877055445 173653577 254105589 185552977 450938250 617381393 584311912 556059717 235505648 780443574 335035863 498594741 514847788 16144093 459905763 363615776 768337403 119906322 763889969 732681933 25262648 340940330 652976775 282139384 590198703 393587467 67296361 417956975 347915817 622544289 978700171 859028535 94834027 374641910 596068185 655929825 717860742 838451857 406601942 107024346 129639412 967712156 807614277 949274600 41378336 795037688 319091820 549796517 358413506 156787515 479341389 396531899 878104114 629607415 3004841 890462879 464365640 953454822 114636386 655636599 202639312 109874791 514526955 471152015 814700042 220167173 977310920 295401311 724640455 916598203 793174086 369431128 204410004 34863818 926138443 640085113 58602632 847692488 51092598 281974365 116199215 775481146 59007440 841338112 300915628 57826168 454525895 105878595 927394945 973707950 663726831 421521601 74379411 732215349 560557705 805667920 618263598 772099504 321058638 715175574 796489966 967132544 78440001 778775206 522010160 586797634 582569887 946984065 55311413 418733211 52988741 491273516 601415435 113273726 642200513 137609475 166592734 694454609 236581939 837264737 212320046 866699783 644549306 349838640 323011162 153334006 780111588 598812599 91925608 62059543 912874295 605406239 43998323 566337168 870199022 606836611 834858054 125132100 530891183 906770405 536114771 554383873 536097961 500432053 990124657 62763964 904929231 877719007 411624320 34826626 926719844 501331623 7203028 949137979 980763470 520166808 524338851 403499532 161688628 962044129 976464053 677059290 215662345 835754411 803345244 511643730 845297999 842602932 109495541 29007378 105845303 750435917 980411647 90042650 635914852 565403708 969284166 767840240 143077517 186868096 873688201 755504869 960181123 520251091 376402898 80316924 378564542 690830098 654301982 11939411 238403614 648116107 11210637 180783940 837518238 99704354 704644393 256100315 377326898 88042175 639033306 25904828 691525682 692594569 379870008 349694884 655699699 180409132 296828469 293380635 573310128 9994917 699151386 881362824 524728096 526890414 854097229 817708209 973101691 550845107 928193735 590306253 992764871 992337117 661514972 140911366 743311545 362619100 261417132 987646747 93791510 85941629 578413646 888766483 813829857 284751531 153603008 510212857 780812211 355896072 414686827 114523682 187834165 863201728 253513048 889940610 465423534 739610901 286130655 618695739 827307266 381517188 621600551 118379899 870634773 154436714 4945790 928152737 367559786 434013394 314925258 491540750 200979115 575059440 334460525 316251838 289280459 16902063 316330725 527895212 153603880 770414208 202902892 289611490 934869661 436418132 790347753 507994357 996779351 598421848 497285093 126893604 45798699 517302519 797027461 177627167 646768250 552258525 281167101 469174310 1495009 596619816 112484926 739148508 827314372 585051895 781558120 783088090 789503439 81481173 65225657 531060121 325662476 970961076 401012893 508689952 20549184 920861706 737926092 892285193 510018837 776136016 809632349 353770966 417759707 144377974 38482596 355897274 444913475 171121615 270112249 467921960 908512188 811552329 643842213 643617591 191184146 757211533 666659393 63332762 108935607 648682657 308579 463955834 580778364 243710874 788199902 228678917 766851185 182587619 116842589 347913122 616746098 658053622 915691749 508024097 431205055 313252028 880847318 837016740 984949189 123235218 115631537 71764823 952866629 123521689 25033680 796762183 331052806 101908119 249003779 667851747 401714361 472515394 19902226 508676514 324477696 484757992 55629872 621827625 837379686 969249191 330419540 711654123 553681195 644795147 487553608 732672839 799695466 424479514 113248703 278030081 917976077 895227289 944298681 67654846 121986968 792267403 189646010 696541241 441956084 67993176 469996056 138869998 58888919 978332702 669269111 228571238 265791391 734273123 493883705 104569668 524462880 81457296 94886555 583125198 360728989 20759699 343470035 918142926 78700635 927790177 95848646 557766728 584401695 163339215 356294417 684027048 954275348 225859278 324404836 790817664 455525651 270615262 344664535 842511470 493740233 648995616 805771424 524949653 865671123 248028231 659978794 990252035 40972342 394769138 789083312 618443407 289552309 697782245 354327540 174399967 96708067 982774875 989294283 133815614 144013751 226249609 683404730 220824448 990778320 353430873 823699389 939466160 8977398 860258908 827325284 772196401 664073705 171618133 471814973 205068490 995583525 109627503 66289639 346292024 572815797 884266323 579190119 921372546 193826007 294305084 925748385 879446011 681465293 451044000 397978595 60076854 924235566 779812935 471832532 335002281 978496569 256599168 637085624 96847873 385197289 23525616 725431903 157491208 925231698 431866664 487676040 691942344 536744709 94187700 768955245 506153402 714650356 120837385 39969419 351183052 522696277 248945069 934186341 972489947 994284009 851256012 734157741 244331627 634546529 913255589 199125083 967535004 527934995 890761766 855411673 692249228 384575035 752153372 336287122 384134020 366876607 996038709 567472373 265622346 606080793 592384034 280989897 167579309 930838202 654578342 737781112 974068041 199707028 823515457 611965699 847201898 625207726 985248172 699494476 890076166 148916837 196110352 189855578 267840203 682543329 260717109 826695070 38958849 22519646 580567745 676508597 816138686 833669187 145516639 669930571 485684490 384992781 878382894 682243025 518782761 92167162 220270396 549142719 480935648 316297915 275210774 402608973 955665400 751923843 638579360 28089071 882164161 88367544 668387397 945350753 688634839 978393873 601440228 797817602 590004513 397649733 109389960 800373857 153618567 323805278 359608051 169635120 524178079 883461509 617729600 187787751 459748445 90441126 232367315 48847538 48374167 551884882 631839323 257467863 265141831 235611788 472250355 719109695 337681585 41439415 79106043 518963141 22794308 941706885 32379798 722975659 62420646 861115840 639836837 470128528 290581863 846137900 772442618 713900918 383490422 261942884 615303071 170098034 470078484 186439634 441683260 391158993 422292817 271521765 463553045 302765012 712142341 617513987 742176966 104999965 708927475 457916810 784912972 47944286 158846701 406057169 967249639 258472777 825917994 100542509 460341405 753550574 496974362 310244267 220814476 539693585 315345073 479949462 366397542 753294986 27900559 605275798 206532389 740136165 915655827 159052988 92796659 667042732 82498923 988599253 168423702 315488885 375722259 676180052 346952492 913238410 131392187 874495990 542975843 840429823 599520545 996789548 451023371 508580965 875202741 549372781 484778530 95440671 116307657 384926394 537988245 393759607 308249748 632585421 584860047 112123077 189780893 615922241 316737896 67169427 867663776 994595589 115713660 994195028 979892788 634167614 701319679 250426164 518637642 683287403 6027632 989900909 454820115 351928288 266445922 200573428 110127260 726915279 655036604 513206414 802640527 650288687 573812538 763075996 749737168 402809516 840411486 260024095 41300876 456631406 57734506 620048129 871156455 979849901 532049807 940448455 66878544 527695955 857925929 589772134 934680352 300630985 455606383 493895866 572928498 791929316 590863992 350752934 930196114 670511443 608578493 897259228 440229330 275568958 999792078 156773695 366344589 618719232 146019922 677588333 128674961 111217241 248996753 388981768 516702425 721635232 880129580 187513539 866478276 263647882 470217311 155474499 875615936 703886521 900928505 441574085 12758528 570637324 232634590 946752638 877003333 741458259 607194665 586606449 819578029 782068157 842995881 166841887 844832756 855149301 407300667 768431978 975614223 797482393 761511245 573720152 281830507 291715086 292606383 405470861 918829572 512917808 626194402 734403869 306397571 367903357 123645855 551723896 816432128 262033310 999465549 842098532 931139821 510590364 453331237 813231216 417862966 230654049 287369516 381158810 921944617 318603550 947680655 8070818 59747117 709879879 986807835 612810808 843037293 189706120 641165659 671227336 229458025 831016822 129344253 317019004 490027648 65406263 385966941 826273668 204715701 682250957 610661269 269263452 753692589 764305206 320170631 395863067 724052864 595498863 729804586 774784851 965372316 855843338 317397023 86736680 639973380 414173257 127145823 780627874 740135255 225843300 853574231 299667520 578051548 428934094 130200929 580702119 260479535 820306074 85644583 196655352 430671545 149957668 529580094 610997216 315546379 211606830 494536593 842577681 646910011 989809481 117699839 211514726 362854764 156116514 994866677 398551105 767802582 54876938 530721691 484765212 873634058 697370218 956066058 84306534 313313493 794587165 886944212 452809305 832685287 117062736 859842763 490256926 67701254 165406053 341899186 391834129 643468997 767584434 200560127 757131865 2119644 973669583 458307110 951118876 883228662 246838683 596051162 128690664 46959479 954483117 863386946 404961389 268191354 592870850 907254589 852704039 51439841 160237347 969379552 930081918 948601129 616607989 586127319 524883746 768461344 656243079 126771361 318146 181700878 445223239 200224248 802499895 118726801 306869460 320285991 791054849 412305558 255954980 528366666 68619567 709546760 173247279 713710024 150320171 877580548 24732594 718175969 33610606 200174075 985355744 40858024 837793751 271753463 753874217 998024347 139630112 771893982 507585345 525109623 548277870 722240802 561504274 811098933 999112567 396555962 693004215 265592183 254992779 51795910 571072888 344320418 997449649 254565734 735233572 404177101 552044160 881472030 501788999 586432961 434418611 644692449 735799965 71829445 769825163 275659866 15792431 235234617 821209892 240886914 761785488 719970819 758388588 407835671 949234750 617307320 805173123 220908617 165167434 98041238 372327006 945106049 189917754 807787830 317509586 276819565 563787628 855729460 515295117 355321341 914877711 731312209 664539840 934266974 76764253 855377167 508311040 609917345 263840518 592611642 78483102 358225003 795595881 791397497 274552650 867308504 912990306 5152277 634303464 368858229 396466158 315475735 709896157 459592303 816314890 378046179 778808164 980151122 955064941 409341805 1541233 986070113 452630807 377519105 294845308 812495836 316443453 552543022 275293505 946099061 71201769 309817132 416614237 830822066 496582679 516684176 677494454 716003646 664462791 397086737 487218382 468563970 233409612 994438382 462855514 826465274 496940085 657749705 7755707 397547072 317818763 55019742 904065717 945540685 121632111 448204991 5200171 920705927 759778284 645714330 150033686 957572171 639555338 143334305 42823970 339216469 56099783 686103931 70740383 134725811 207988398 214396849 771543460 744489507 921697818 391334916 941296758 573226915 625067124 374307300 287890407 152664620 912356839 299275120 521124390 337249682 234520486 937554692 252337797 827345939 482113991 340997678 328132081 351177882 262510130 669020412 151695117 572000226 221167365 54375458 720768145 233228567 909475049 369583275 36568287 332803567 735870878 604686834 61623172 301325362 712793545 352787845 374929222 450768527 707885789 749589567 675718528 606537860 129017267 63675701 475261121 499494562 9013953 398474296 548892385 301157673 241269098 977020309 896875547 175354420 55021388 206231110 735955836 26997728 573401345 139298477 838442125 414547892 479097957 748019911 594843263 920217336 87037073 115378095 784613014 559128477 374920957 188696043 156774428 694755693 307949992 722255623 540456423 151838764 875020989 668645765 156168139 609274063 536272875 751540940 714398532 37386292 672235737 883196052 515538867 356454654 463777747 268655397 368826471 97785885 377583146 722149387 362995410 790969158 740502693 423215195 932740815 446674719 119608178 671926336 545684202 931545410 695136438 784893539 619410637 780925223 635600255 255768430 273734928 354602060 191050607 827309978 837024943 214736787 434519840 559613907 210527811 170018598 626696817 23482904 811999160 558495693 292768419 111811033 856566889 504456094 714140088 864215352 55515481 536658750 895019936 968220074 316640855 300627915 461351441 469277348 216394369 635143803 590407901 217433992 154661139 881057991 185261778 875435157 499180490 481368279 524884175 960006730 424152798 723023362 712780794 277368072 450212033 111600726 316518466 133181854 613369682 431146847 645887658 986431762 758581420 95048402 727727600 387739160 267000497 97103013 795668181 579025839 62530734 3258168 443156868 659882688 609607545 50031966 393069790 602503201 377985578 726783064 852124086 53322093 783160359 974126653 534344322 360649818 13204369 533398648 622063947 39872186 982724689 323465590 48485660 59036405 736849967 762926350 745829702 389642720 646330033 943147841 685830389 672195235 738673530 681273696 401709233 635973618 205483901 451129869 759328873 498525974 480117179 560022631 294274356 474569379 785854334 921896733 352463408 897598634 27159815 346265206 829346156 742756035 514899350 277412975 174365773 632849358 274547081 497507790 280743791 687540992 644876614 167852680 156394041 955131553 208071159 81143250 440599949 938122657 182031166 935681261 838975773 156188418 415017256 985268861 229982533 637024300 728309706 574878606 896825489 710273923 29738573 349313595 987191391 69258962 411324919 977232668 3248651 986797077 476056254 771534191 8244842 611941808 780901655 810422699 166690478 220534788 443446247 689607218 690863064 493989244 807418213 475060520 847777108 407728256 804118758 462101430 162744878 860054308 421388588 441562816 949999724 527858266 246835137 345713706 470270392 757310578 97181548 530540522 627294770 912207302 505572843 575920244 330685143 488699718 302094382 892030491 44113255 976483386 805629805 703966186 15561207 349597219 774777948 705350366 328958546 521767725 821881310 970223582 653598821 446448147 801855033 153675856 596131928 537970233 116073823 732155811 194770885 638506999 931094138 321980395 655472013 571295113 31978183 19600576 332912883 869773405 252327620 243644370 646964546 121941744 376498071 38556905 135142843 467722392 237023051 431312823 763201705 62689648 926858979 394621631 656969654 693174150 274579808 728810449 965795526 209887213 603433324 97885457 284570549 718405825 786865381 898834219 773103153 308042931 547848733 36757098 729950767 939380740 46841923 41510917 537857903 675540 185624960 261493069 238788744 719200649 646641864 224700422 932288867 404285589 740602867 446674773 897724081 179668884 168278104 155759825 147858976 649762042 964315692 442552314 838889345 7939367 276284442 758591825 127442228 610140846 378522310 556729285 118312052 150048003 570350018 38877882 310950276 817187430 61474462 480048857 579937221 449225290 261407721 108910389 343110128 310947141 431478649 196371769 998425923 665844101 627910305 697703637 41537141 190884167 710994606 61460984 653796756 161555743 107431651 395974249 874118840 992423562 792786500 284936697 76365956 407080926 929696806 92146104 958983065 894604959 92278044 254821335 370166914 345617406 42089282 632925093 502960125 230455043 611579293 921038042 562974472 655279790 608187028 809621280 382506926 151087000 750433762 611716077 447303797 612888173 582166582 348641715 185146470 870255660 994949863 844093802 127775265 759761756 453570362 308525610 50905308 924227689 175995987 923595356 744230211 595802353 118470003 881039918 700038397 105166141 685816899 455924817 893781855 231797909 287202584 33811702 119285577 576442749 234826528 400129945 429345219 103115809 737002700 955440056 346027690 391980865 623926496 918548682 449796556 106794973 182778617 262587061 685937539 752513270 506651522 35368511 498741677 163832678 822681317 90320692 744128689 277119998 137259259 963916264 28307026 933939127 747164207 557221785 678879005 723800256 241772067 618719514 944537684 710243105 852247313 961139059 885772647 934536993 337981624 940382478 682622762 135664345 310425166 844403053 321608493 396713333 164364236 589412095 952199794 870153661 724349696 442883616 744283188 24116791 390168702 623661814 215405181 639815388 345336407 876315033 595153238 827525702 494255353 782766291 611135061 315218131 889707502 430043280 259536074 225983159 303756715 763944662 482356283 43367424 319047081 905123743 434826126 295206173 866091944 631715544 117204862 359800496 345763415 719961508 102651662 102574846 603539303 129345305 292504897 425195788 218800618 924321993 182547906 206910895 80493991 140280907 609631200 475885243 639258260 50633452 689640480 675693161 828992895 553215485 600976486 918926281 266984123 436902475 259679459 277538126 604941627 232408523 963606642 764539939 675030316 216911465 182485806 74218457 166891722 621588373 405824910 926122532 377939608 664392540 110871472 526914172 226077200 820262764 668013838 292468315 740615745 104675262 17462658 616921379 575898193 692216682 402369803 98682540 540235298 588881285 470393556 334340005 265387116 389299869 643356735 57037881 796456918 946494838 259752998 883466664 618751179 280102912 173916414 69854135 287397883 964180351 360760454 907802407 393609404 391390258 426962619 891137877 245851527 734666511 86639434 648641950 773778056 987431866 503362565 822179810 225903192 459630311 871290474 72501747 294304081 908851261 355458121 879889059 292759329 888536720 350198195 528851953 997094485 230607806 262515140 863901415 69314871 357407914 424504561 336495134 558344811 795024706 250219245 418037977 334488849 373173859 637977901 303795926 349619183 847434215 682669021 450228542 547380477 546582444 943227171 398279319 904426932 366331399 803702830 497691398 292289698 726414184 757414963 777761587 473997802 916643026 212892577 942268402 201084203 660971976 835182254 743800098 489442931 617688373 330196871 398359092 786118505 289473213 867071495 440055857 168550041 214915847 107010440 994981470 22495268 343077752 491168405 191509105 536714059 56547553 59044200 521106117 968917938 298449314 660766979 399092445 422138073 162438442 564992085 141494844 869904648 182872854 30488980 225717551 964288431 406328922 688747167 666859055 861084201 888724387 373552321 848237068 742695932 448792049 734622655 180972524 480284053 319274032 82209541 579764508 942070326 435249089 645218279 517732201 868111163 701490471 872347182 678784325 18178650 18798329 193448813 854148893 811818394 406330716 425732959 326765267 561134807 960026666 595529047 643216625 668502469 905817351 642557701 53775275 164413754 28129066 168673661 698400878 53527729 331019527 896123188 435200572 524149909 368020312 15717736 198738625 239974952 324870266 665016830 812470313 568904377 755099664 263435363 704152154 506709245 655866838 249012389 201690607 196305431 140467126 121379196 516236755 878594809 843612959 945101911 910936519 94730290 771655326 804222257 15866665 558802938 232124513 940419858 621473474 367777625 966641019 595199625 137262095 680338711 149940286 988975706 248241721 311545124 612065805 88217019 70866421 59304005 577126198 120206749 318489510 850476988 521660542 768175304 237748660 586610031 920353168 866469865 406576911 759030739 294652214 277297495 918094204 575428395 756565181 639493367 199611506 258490163 833126260 191335210 529669456 816938770 45375937 417664276 3518746 43342040 60595792 122091522 215601574 882987304 305100477 266041364 131764245 122416558 792936949 319683643 570635387 472436198 515557444 671323210 749762227 579005066 384291056 751505898 431720982 431062661 568750885 12816827 233923446 10176697 995308198 560320929 196292214 550284530 515962970 146575703 468904579 516446129 274324524 317703222 948649814 954120626 678996929 187262802 324052317 61649671 589540424 88241712 213869214 716271489 225381098 495645838 888442272 647068953 504688027 796955999 33340229 865198659 920931936 617378926 468634994 333497400 321665031 93049712 65268112 658333294 967987806 964624622 210544402 470747818 919857151 634702227 173952518 822790754 326885848 395281010 136487268 299989784 58529550 191430804 818499949 649277114 741263034 56026210 88963768 993194952 397944372 278951002 517999895 439782763 116777400 64546769 275736815 167526118 145037381 754889939 963109413 204311042 723338074 786561360 332727566 984230569 807479282 243444677 218006282 299927537 567026380 109083409 915597868 825829717 632468987 361297511 412715730 116256956 588239512 472669462 537780488 566884416 96248248 54163939 147795017 232894688 372276663 880722358 688640307 283927090 585232501 688507001 304261761 72537524 486118007 889559900 44611436 413696336 882477706 977773721 635284668 939734774 360925225 979457375 126291883 145267635 922994634 386587328 943850221 100166976 967595303 370042160 772989857 966583071 696650094 8372596 553977396 182763938 894896028 293938695 156258447 722129079 936444787 373350365 325112062 50387517 545166529 772075261 660194318 272752524 596382506 869051899 750381455 551119204 796492719 404244855 354528272 811267358 836149202 483546553 8180027 724399272 475196659 525356334 66886802 337716494 140553867 466935906 252448682 771890047 790201999 348602516 107250192 310805766 511775942 995692607 972182984 457496725 522948107 860576957 6603236 133255794 308085316 781990401 136565247 184481814 254284891 443053828 29335869 752802744 84264532 779574760 390368870 991049759 399578809 816253907 661982875 236803658 690129660 25555664 275495103 81442086 528481896 216940114 608662276 941097788 666186158 524742826 414124560 289654570 154723432 434617663 384102454 73258944 804258016 11459957 160078584 125420311 967280142 920106097 78621517 334142449 845787397 287822151 971353398 51026559 165395893 634604242 149310323 32207216 626703369 79731525 654908841 41077517 489526639 706061679 405080062 805226688 287350418 683826363 372744392 717430303 495976044 548999689 486860903 156785348 664906654 909249849 751391319 132252166 932116260 496901110 580811283 171815916 790740250 630375599 450947855 115351061 428345510 480118935 320581370 414997764 8864943 712496234 665262068 640185790 827476743 158896616 898266140 659459098 551080683 819500305 251162637 685865818 575312136 751984459 641233511 512179870 865561218 458728860 568524253 360265585 744429636 700139349 932105864 861661799 18298905 514225557 855173495 608157342 112090477 753787071 824737887 778234411 742107142 775989669 61925239 286101705 646884977 849750529 397325548 351586714 742369309 712219539 7779519 885729483 911930790 263203299 916160057 512107275 750770083 931455253 858455314 900451617 951221358 541111122 389868333 407535771 152923374 928140639 901263238 132791855 266869521 954004947 250121590 760583262 507720151 582354578 117707982 948494460 931767690 557098134 884087564 333722680 70697404 152084651 814155636 795804242 187568421 35662601 345360796 41290019 402881531 302599938 310372165 787809900 693391253 727255854 28210526 991430510 59143094 917612419 248863465 844304905 901148567 240413651 276449925 648213110 914713863 427739235 550724999 700039337 6644826 274032910 187311222 240175418 398593861 876540005 457515490 782076221 4069841 388502095 734172788 874633663 172302565 804272019 870068786 963685324 690812020 202608020 135468016 3451732 256846068 169747537 541065250 835596619 490196506 154528660 875372650 929828457 944506904 266117021 673053428 656369258 264331999 809879520 918844299 81066873 491658450 761491273 723491156 403115280 81719198 643138345 676340540 201517149 20742342 609828284 381098903 213356028 50851972 891346913 124084202 515083229 195821423 236586725 246302279 412298700 416682529 251899204 709621572 587760848 981405798 543639153 121086493 517221254 77950016 618521563 729955770 7364395 855851618 911026001 394859168 290444183 730394900 672529221 564172610 914008693 844812403 473526594 250130761 107952726 72686786 882663954 239825729 549654594 722116734 812848638 662057713 199049119 479405508 510341257 247117979 252680080 242990356 925737677 303785660 91268915 2718384 621914778 557995428 65386857 987617136 263511563 579519792 293093924 230022393 705750392 324139347 832406503 482081850 916007990 881357 823395496 345289798 340926090 986152910 447727931 259187664 286422526 92744273 137387545 233253979 787535553 680307377 312124667 815214874 257659624 491539812 477953961 326410025 707480314 870908468 786060877 485291166 610814321 382808910 817117155 749044826 564168817 386009917 642023665 956890834 514791992 511339684 655042846 823614211 441904891 844187139 238512894 698408293 456409984 926425794 300831244 802083631 79015462 457037909 539799344 623846498 408151439 899066003 700585987 167873428 781905791 54124810 414574680 860102741 336870370 401481236 632732115 143614401 510726629 423041065 818176263 532535114 149127928 701935757 145328905 691775648 945268701 151993930 930628684 487759585 155483809 445566358 530552999 812873229 360792296 570891360 612078530 939418585 734401515 498607938 626778195 633482881 311865798 386494403 778527313 555184646 161505644 613044439 345632559 564545629 629008323 35771887 604209620 760615065 936957353 317617893 259201204 324594483 997520448 231276885 626082989 855689745 779167830 870831960 477837038 564670018 282435961 842527530 325147028 925347752 692036629 168027853 660882327 117597775 550001221 113742076 483062099 909938756 656837048 959070714 743679657 515576941 428241706 367587054 761737433 116322122 765150055 696573641 988913290 51007052 626883448 178477235 219562139 586621923 505585981 564512557 86183101 376417305 426153092 870151937 849609710 466090299 370237603 992093665 789166445 641305976 911693709 517668818 431907310 505582110 755355076 255220326 588375679 53306238 950805190 364341581 901331382 281946670 517599118 530245548 555172357 617548007 234255611 74349750 598761980 670985412 999705227 668242391 734418557 574892828 977935772 167084722 375350746 466851145 334962642 105757445 995763447 282905446 375674591 716535563 269054881 779772568 314436925 512208697 373817218 504125177 923666967 407374310 57520498 51874556 499320273 586150425 748720032 729438157 917123146 233341939 954518089 551197179 512467650 97712205 913746050 793681189 361998144 975926497 676902489 823030581 430400997 595464339 358567576 619486830 201289199 127018821 280767922 603920739 91442181 195679640 988706415 672116855 893659783 717534003 161881995 403158117 205900381 393861616 213234362 863056998 106550996 21012695 826850709 172518754 188440886 236026631 231953555 735476463 347850141 752891642 163749610 324716921 989253397 971343243 950499790 73593981 45405720 759824322 513215704 426075509 928593013 208883125 587971154 972499884 881274286 442101061 855248304 538419909 257466010 434441155 896741662 24490978 944101913 680114910 418726735 133826843 838610131 987380007 970880514 250566350 418218463 272241139 860669854 419784948 711515567 838246743 234927129 957877667 803359387 819017122 72280398 407485573 831334965 974965297 899644939 951362667 550270941 843238299 662333665 681298139 747568016 210886939 289385127 304534590 643595352 564117798 143742251 829313501 164476216 311862062 722505233 424559509 744655495 493184038 937215817 695952574 896251345 316569921 861864214 934827169 290138710 658813237 20124764 761798571 217971065 166953829 631960177 805645004 807198436 923624248 520416112 614664036 116164023 542915226 748387299 293435569 288424833 48812359 173640251 778643683 788406383 753678611 356225489 902004719 679350553 126897056 136041001 132112223 889556215 881467224 590921111 553208541 325154008 680596065 497517297 860987602 665179708 507954594 863048378 361234154 993130905 391863715 84405119 395388097 370955014 780985691 638128371 882036670 546917559 294964857 730589583 930047228 426378695 763243532 989106842 187841303 304407527 231995918 470561349 469770723 566908700 201182945 693059831 962309427 660764058 165607468 539324036 150105076 958965517 58799448 803077404 460426004 643236362 621436503 457606836 893824672 149157703 956901405 844035248 722785175 995882367 807148795 72325547 469526919 687926961 171947649 307208235 446512663 762225836 522882538 543338910 744424581 781431095 858621221 719964635 176888937 29810508 970994445 505172259 176894068 321004906 932316304 621372743 813890534 30893054 959748413 553266007 217371259 941724324 266652542 883531132 282322585 409528280 822586350 280177895 540678758 283519931 961651543 104443748 588716808 895614432 886680101 665882217 131495421 223938877 344680361 718623349 442299899 363275780 467600234 567799706 121178418 629593644 754200953 799627224 327971773 611086704 185045051 426203071 214805294 44751793 245006120 738042151 182862631 958946383 68612932 8557387 971594846 289422906 287876997 901586949 109541030 702203608 554516124 533089197 843774984 158765001 332160273 775196236 653980035 784773661 880698431 906993924 574958185 70925698 120871373 853625712 124742132 898537465 216357798 574330948 394239361 612927322 318189472 663445788 481324934 271556395 335923828 368654356 815667974 711488329 619448316 204629778 20737132 618672453 70647756 130758642 255794553 991518487 865325912 913852909 476647474 21953090 99995993 115880161 211085109 257477801 980370645 814620715 120931875 597284355 982435827 63888292 107659869 523188067 55463429 169422466 833157907 552852525 311808435 375824461 236482525 950308713 130322560 908513654 185294356 621710470 370138346 917028023 213491631 546501589 270004628 299639336 571928103 946702391 778985706 465472456 417213304 196072712 703171245 556395498 545141129 298866913 883124626 506066854 909105878 206238294 102658337 439847206 114517897 736275007 699408377 300424207 879532209 24365615 448548708 184189450 935879870 541734652 437905207 445155945 559928281 596087274 177260510 793058434 223931040 487245449 10591210 647521917 913353487 540140001 934081339 625039494 896832434 136512495 339320474 597149595 663180045 284678849 631984208 465022597 838368702 319488572 797859142 346227650 49793462 105254887 385883215 888017579 515152719 24939292 462420925 750451075 186886442 120911242 979427930 486806421 150947298 844825479 423165904 56698188 347287572 463833150 699046514 122922935 629282280 60593212 375515045 512250133 617347324 342223430 661908742 560971376 430349708 730875821 368753407 59613130 49479399 392811994 591457798 619548060 984632947 655820257 286301026 736824946 401816558 689381487 157552278 807577361 497636536 728535070 43526374 451218749 741802155 556857762 376517578 245509036 378651377 57622096 264922642 30210496 483618574 621114649 288029725 824768700 798681853 483097918 178688901 10152422 324971289 827564288 18435912 100708761 872587718 301987934 491338035 490773523 921466450 639986626 576160894 644668148 211813630 412724833 278082956 565144565 818270997 859790842 850995711 11273139 238501383 906613843 609287543 581120348 666130791 127898664 791083219 467007009 938917029 739742776 643562770 838710622 307424161 627403649 317615438 21111935 1559537 635602723 935288064 974282206 679752844 305192094 524911733 46343207 217015365 879938200 449679056 427592017 349996540 906026910 802128637 610754341 970163905 843795096 540111900 54600470 371747934 71701738 580288733 388318817 69410447 173328306 291998256 689399382 417497746 580673813 836351924 229006772 437831483 706222524 855170820 209453119 241994966 903759566 167460504 757699665 138435108 66894875 996243822 254923876 731607789 861577672 918598003 30224816 800124966 136786043 412827609 424555987 631511519 465236225 163694225 484456344 978981733 174403465 334869082 169593879 496069363 590982738 751883502 978649685 150634728 197949375 163881682 583537446 501164316 155154640 323502471 21232312 653550789 900437151 295906516 352411345 980076408 839621431 226507157 613731377 267818586 992813054 129153245 745991593 638046677 406286209 599048250 738950264 131691689 698222907 437810307 946106719 884620207 360673325 259514667 485795994 265668384 761105148 780516666 264612150 87994655 62410956 571506461 851903243 4157002 868840916 408456325 101920065 35839137 872968333 149462982 470806737 33293737 525823862 776911293 313663625 669719381 480505096 735757336 787176712 646691891 362838081 521918747 379433990 345980719 63961290 675421554 925038865 949875864 577654337 893075109 177415237 466562126 372542742 246779893 519074402 354922640 920495407 866242238 287713189 635568554 70891219 859143271 812572081 76226996 684715647 50605356 866456112 694634162 705108994 288346276 327873697 287921024 23642461 156503822 548215123 764344009 777746236 532078238 793431942 448748143 708811664 12666732 186649996 567124091 745927281 983269633 819870573 260346306 275528002 96684833 400036080 154040546 568946397 818391639 458075241 287022857 385415238 23168311 137516915 231666242 455762313 842133437 991658109 625128159 881389910 453742667 363104980 399309306 834753312 992703153 840609620 944111381 255957158 391738781 42643483 201184228 662063257 409319970 268491295 620163422 321998467 891186962 352761357 837151258 602606600 572049000 310589360 182348828 225516960 221993320 522027454 821664364 266123836 848754844 808503772 581410941 768943581 142202301 446781964 329511867 200087032 414304495 902725635 34168717 910824081 951814337 838113937 517912410 234643591 737939133 103161057 776607961 631111702 978223650 947919141 59076794 582795919 545751500 393572844 537511024 299668305 502071867 381972349 494023010 780574255 271550833 869665588 393378455 854077488 889551705 50490533 601207611 871316749 810326128 241943961 890253136 170933551 390580258 270184942 372685327 855219849 310687840 752641682 566870476 210844470 535842318 686472701 656998731 671782241 977174007 81476108 606884432 168087068 198215327 123682683 692312445 409132121 781101928 177576256 807589165 828310812 531043849 649318254 288312795 309652826 170391804 919980813 687415948 579718162 562070140 342096806 26301679 861120133 89049000 433397917 310468986 642673187 762827699 512819556 171757936 244602632 955133909 129466826 966135379 728732397 619319273 983310511 659960411 528088785 410495423 682699871 844480230 666034119 755144203 338624643 248451372 680500653 80839654 1379402 797831171 963166557 394434574 685935339 82290700 738846125 389281579 363869176 496993037 628324198 38140603 351490231 725328115 339979204 114436737 68443994 379533110 236783142 113549536 659782671 527778529 373456701 84837048 37491893 588378396 558249263 802115762 421670167 789632774 702634756 482646826 698025242 879877824 119168287 618355640 388763061 356099521 402749926 5160346 159916365 616313989 547851122 73469116 187983548 628130421 744084676 748458500 687574442 843651091 352226225 902523686 208811410 289049763 613024832 821289749 400267992 100223931 65515621 205725270 414622876 274787315 962030566 289955733 239887948 547401192 751326242 614022944 717250941 318576888 1070493 472038277 491004206 562516191 934417677 937816535 625164512 697845566 315635009 273699079 44559710 36147552 719810100 754318411 847934516 631584831 615594886 123821009 4023530 55949172 850249021 528987503 452436830 696502717 80004806 340521850 249639187 607801846 897110858 830977220 568447787 705007722 202233631 232482622 880146744 851610587 936162010 575430677 964542486 461549750 108855196 92299441 910723333 53754574 816164642 440027417 23882946 329235633 527553571 970069427 969713942 767225002 792172229 821678186 571591704 138429430 763206826 366342690 805550185 717227832 224990222 125449725 698783676