9999 687103241 347126321 214494609 687112451 267538383 344044515 571534619 704913056 988482222 996140562 671257712 70501805 230654805 733360228 552900298 641373406 515473855 246861956 619388040 73725244 588802848 508773713 779399661 259025850 521337863 307591742 368456118 738700688 79440145 466545511 495940691 867227483 519301869 261890329 488753560 760207470 155760844 267136943 266347721 391044535 491048090 949192162 210128777 291305727 810534095 969141189 920894192 350890903 684333295 87334721 902846701 207333709 235358597 750276959 665529260 378263972 987954252 295735605 714753500 451649137 110407873 822333531 886541398 640449926 887022569 642409705 833251046 697670115 338394568 358698837 654198160 35082371 228359929 367416049 436004911 806869617 463734619 717949718 270393840 287624108 851129577 670218287 45983210 480886693 108373853 929743738 690059511 589957858 98711490 282758735 211985795 772097254 235998580 569440287 873366542 343231610 15104659 821498641 467104773 254654513 444519812 270394500 228616627 800298941 787356763 73585972 779981590 573689795 122307541 744300169 568808250 173521766 320268665 689343787 501266348 701657028 966606258 501091190 616047414 769504305 702621869 967305071 137725728 683253559 189341102 419413162 595536461 580235017 740965280 697379414 413480614 867950198 704268915 383721425 175319220 697182881 984763421 44099910 963762268 202947127 520880119 790704490 381310683 862360300 680566621 903538840 529537327 716142011 394187119 248137198 968419272 315696630 475798225 369184634 493271679 983380378 510699360 274258773 790802005 202997632 691464607 441843860 840860542 125258347 968345612 172464046 430009662 173440536 717403121 420950098 424740394 238650867 799721155 547075982 66644697 575819178 535126739 639537714 562071352 409044557 760672724 350543175 226601476 393986211 981185372 556587781 957611552 128475898 960943028 832385834 965528552 347740666 440890481 695355787 282963831 169584421 288772504 451345608 193190219 831292995 59791900 318898582 993125381 224553730 646704868 591564863 326811298 387133600 571709427 899723406 436004514 266118969 192322030 835789119 164220486 915423995 667437798 898344555 864642391 459949452 148335672 912369218 450194700 836795671 728039847 308055114 84926973 782938784 383195004 714444244 486575577 27269777 864085093 103038010 799373165 886357220 776587531 238411511 23293260 911793352 219680036 819194740 328785044 902661428 426241962 317397277 458956479 236028910 170488467 335827572 374453288 24751139 86860173 212046798 568726158 188103974 190309615 906678649 29388930 635744133 423315080 504687399 14939007 159113845 74331952 437027219 268428788 467430884 337187926 912872656 12973762 808911842 77244330 588230606 224782997 681088726 601943257 538181964 14013401 580521599 641442792 151925838 425755498 919995853 945272230 445042601 458543104 970183838 967530352 706407986 340805410 461354938 950233845 679730486 158958860 585646955 856010542 35999079 37386572 904055197 397037875 769590877 222713878 112923326 307855649 269104131 557558154 869814339 910631216 529575445 203964389 524356941 249837204 388696849 534812149 915098701 870527559 859903197 423933626 625267022 407408209 557490276 946575466 8961013 352705163 254681023 123312696 374255660 563812306 810600559 331333319 613467190 66289818 622996430 699044917 814377188 23950689 646875658 558437903 434670938 517618438 296742130 794562561 296227741 469208627 971716031 180104515 810086158 997535220 801123203 439883759 655664205 583975272 178730952 958659510 941561425 126527375 64155612 844992402 354019276 249493512 563344755 811458723 235767115 51237434 484795663 89634704 334544131 797204489 735663576 835927144 839312896 686911742 418594757 666457670 309986867 183787356 189030476 479911661 41492270 492587636 368564424 759245113 971552886 216405228 925400031 133163744 412015128 618827336 240433520 802317129 329859998 545482188 472804752 545175271 727670698 618586072 346065972 898305271 927793470 571557041 11537694 3262819 240869545 252605930 104255447 765411963 995625946 475801223 883380992 710956149 175017807 107349704 234390259 874314554 592450732 85094912 943910487 557950373 125849038 823988430 619517504 914431376 128045297 356834730 904954716 333950859 984252136 608407262 243520666 360442377 164420760 353298523 726683227 958230007 34042363 750912281 415518301 921761828 325821591 874698910 148576343 344820766 676641550 761532458 194141005 926639055 616402408 74206923 646487259 428961882 455485451 112021848 227763778 926457736 130052891 481445099 186270021 378170502 311496512 632480877 529930823 522062072 666958659 353207295 773337052 32896423 254618266 792341217 402669036 101152683 656383302 848487176 972817285 949476729 435969500 137704135 676159526 235913603 408106829 835505973 182564401 778993175 775715548 350010821 632171775 891953327 23779590 372157991 424567800 34153086 441671918 253484044 749098128 967282533 1503304 72760552 213584272 460003388 234570381 840532340 136508089 359117086 594976671 311962509 184384556 536335708 492722297 185494979 314058716 418326963 417959955 930498051 95165741 458986320 190122853 823646707 544469616 450557736 736779849 63581092 314434105 546383677 389931488 484596189 615098459 328314025 495146063 968148568 494488027 170673320 872794445 135472569 454066558 810251655 646343123 112591705 571157437 654443330 382833758 941319803 212705770 152075858 658302622 942141273 130311962 46716720 812444823 853268332 245370945 214978496 57888764 928653163 806942596 701906960 80315315 854229262 847772313 852715914 436129899 609266740 525213239 577055939 547286207 216128494 846211792 889422115 266725671 882580348 560201409 673714028 836848879 593792524 226237189 453637965 893590553 241180547 752996789 518941352 651104892 748368485 569592832 484097960 198652480 285674217 23232420 818771729 66281393 710549266 674931745 908761670 817245282 846454714 711759829 61996376 789679516 278189860 222820572 817386173 880113847 78903549 814173865 301576659 924210332 610132593 147405523 192803894 402258302 136477281 489643870 816787980 873682548 794891758 234667306 986112245 522545868 982233744 529431722 156963187 645366352 767459296 190466177 463086597 165926258 117233258 232754402 614468081 212649907 410887309 388024933 775909719 769840375 363846030 949204399 8169415 36010443 359672862 424100652 879339263 297553421 246089015 202058516 436998804 515993967 926626949 960511283 188040136 312953038 412462444 50732553 992441913 232983813 900348153 261941624 526188018 633612254 89072637 156784198 202837265 44991625 294465863 554478589 197569338 127558019 460389985 388679677 952945297 576692754 887757422 600748437 484468167 152093971 136094883 507945952 503477776 266669005 488407946 55183333 38209539 29166043 244637995 384066781 132466345 369898860 472867443 932914486 407374204 348506995 57906988 626768200 3257678 806341022 2916125 521626740 64657241 810226465 125410851 161573015 530129225 660861745 411157149 870956787 408115760 265669009 773307574 431389367 12233905 549743226 197566922 42273208 198806523 674237787 369216452 884573271 934418465 195852510 784569291 763977177 522031933 896468079 630663757 663059962 211332038 543385917 874088998 514673002 238415436 379304208 814930993 601654585 971252522 727852353 338645984 417028623 690627488 814766582 801369268 716727735 856439654 789512598 654253907 400445912 392108592 216428188 681823745 433727091 593671641 236526610 78172304 286977715 85436829 668783527 699951364 537504537 303036329 54527409 598515923 464972831 482296466 896881344 117738819 150190358 736299690 578306271 62761433 943940668 804598276 498169228 627906298 901584597 810081870 961632328 787751602 64887574 78009619 919161223 524998088 29555306 913853243 552146538 896296449 128660495 341852158 43000651 40248007 219913232 272609186 614968727 654879098 31212964 709255020 680463022 959936221 55947523 265525619 34990497 778451390 648635329 997687859 98151446 925530414 57174037 969609366 638262709 313231979 76892044 862882377 179932478 587460935 151012483 736024698 744766292 520307986 880207507 413047003 714171969 382821023 79323938 296598009 404750347 560668242 774936248 386511325 935959351 844510110 683712515 218836429 372979139 759491047 598465309 614673815 657210841 577037807 809319602 653655172 572500051 762862773 695568595 86724711 995542591 208882912 647313731 648925931 22910414 945307572 228336023 223121639 559647519 551943587 961175785 485801102 463502327 661287973 193629784 935682427 494440499 737466000 912270698 20310546 969725137 888133797 34806064 551466982 874146387 65833447 186071995 50595833 960351036 643758360 716566397 815685617 207950884 675759069 819772682 42120223 623160373 903698510 790033678 210495127 155161285 378619779 851456862 983522835 637378375 822179947 535836982 60739329 327316315 409977453 417114397 908537863 928454725 713746665 615282373 852292178 182263544 141602539 371363694 53873937 737601664 903779226 521421153 650074056 192117340 843379925 392366402 960437526 935332096 831288963 846580468 727209808 726859181 509786000 817182260 789834334 974487337 899860109 836379355 144524791 833016270 347988017 417142363 847533773 744253492 368689536 644398530 469572866 657106044 798903237 601576417 784975548 479684326 14180699 527622562 109099945 824345151 750616808 807018427 944891803 513502274 730235109 503472390 375810499 478251092 793740403 802964331 92152925 721034258 270641333 575528499 412483272 349671210 555855842 537525257 373347926 824403310 478846407 552430238 590063606 276081537 232817070 357186779 507880151 82605376 41073700 669840894 315657860 716880544 29519969 875763071 764930973 671355950 704310458 839183373 212541094 938195726 447026369 791016088 469541864 285611922 747197037 704775109 878625756 132353349 951699138 656617051 629058717 866040050 300205684 138401353 985574956 566099604 839372226 446512279 629519669 137243970 247829010 401043525 769675188 173769111 464389284 895785118 893363910 753508072 795010885 722893096 600553026 224269361 343318170 165249247 322941768 824423174 530455402 24311276 844568016 801501488 675406441 422582433 76775158 486272533 328273991 774288298 146516377 902889232 533598730 242878260 164660284 802311331 147787243 975178940 553793726 830122732 839750455 97716823 57912494 86009563 656563184 964832184 328482639 855262270 903189098 872424895 340968445 296782907 647726224 642265778 679135320 93862286 401842086 572454034 996202293 902356419 449789323 348570145 268154357 149722296 448079808 29156634 487834239 379942806 201381991 354824082 293109745 160196437 641694350 785882783 609523367 79113194 19399722 365976093 646845697 334760584 618224823 388052916 784088859 748555144 596782157 675730599 835266783 56393136 509636857 172981980 622852811 839933971 879045545 27256835 384274483 721994202 394129407 247353645 816903400 247555772 808074134 468848865 540090669 400237831 46958056 129752232 529473509 684415203 507412217 558897981 973490554 604514256 404623408 581857746 948894553 64402097 252042737 68819086 501675323 364896016 620469226 108974165 237976795 43155648 525308147 974397495 368517503 884382229 766049332 670493067 917692970 708873607 924480386 189856315 822046501 308311310 749502437 417407833 373162448 420204452 833617616 958098051 506112912 717987730 706089823 961592071 694602359 598808689 624814425 274436277 547209655 764545000 107376240 203612743 487823297 215399591 794898080 9536403 64008461 75049008 227413910 271959452 833080804 744116647 835434828 390073357 260863244 336331115 51863991 799432080 74046216 415393287 803611743 691878828 834285431 855306899 21583234 458986325 395830627 887773992 739294227 644415575 455738904 772236703 780286556 738052766 830799685 935648634 565162781 31484485 709078505 364974863 485289918 126042994 873935501 551927790 607347303 828326389 698606106 152284176 822565802 761547464 775566931 701361438 87937790 238775030 594061227 36943858 788223202 119701501 780561060 133073510 773161553 275412214 43247349 598825400 165185791 927303099 557267071 245005328 425332764 158426306 886789970 338949233 921399011 661862659 257977232 37767272 20427875 450074296 357857715 344873631 522474775 687533056 687986422 959633170 948903297 521276193 78669326 888434678 167849918 623818993 841499142 527925154 474718298 575999232 877309653 850350575 261696928 352886643 453878575 260478837 954004812 317956294 75999896 444922466 439319780 107140488 937987645 493138389 310512344 60886651 935814999 712663417 604100117 878777649 591812882 612352221 831266431 60691502 303506463 576533241 986014775 213409512 894354033 554690056 110035786 563766151 337945405 428290045 133725511 260100003 984801802 95141205 477163399 601054218 936832937 236898127 366344556 956042864 194718737 390787221 356018097 656164262 613029304 816491491 40768153 635180936 111647156 751794920 829212025 301665136 40497451 855848804 554887644 348248934 317384298 480548972 385598717 726637519 329090433 665240973 260744255 709660619 103502765 777002568 562644697 215515999 902027037 332258812 30076893 919430498 202906361 508855268 520852914 719278592 768989835 735087067 216446179 721986320 921596547 182319974 726965274 466191173 472241402 247590289 918466370 790878905 707754171 200557162 968827092 304800083 965053185 783934828 38452251 398692351 717933887 687481783 409283143 554444281 685231871 577574384 703027164 394387724 847726355 832485303 491841679 851182195 856520780 856223400 452992939 613934972 175054573 677953558 597201904 884932923 207271017 797676251 522537803 968648386 850669262 142142505 802372255 97649816 886855365 688620142 987477118 281208062 156847822 251068394 176273581 139894733 228977965 725629958 416112481 329373289 484033025 860181125 814322385 68089164 535796179 379928463 718623660 701590032 471627144 399031231 118565558 227989036 740905445 60825216 76524533 579954762 442787796 596007936 331329706 687774916 808254227 698118991 382781491 980182815 54703724 938410496 179600110 521952425 546486649 720423463 649072970 741646025 72486622 926197644 717835059 264745928 102749410 201609900 637094626 745747841 341372386 762957408 824813159 130642637 113982348 48398852 706016123 413219694 376684837 986466146 259246087 220056301 636866038 548822184 94915438 466343569 307992518 64850310 8258554 465581489 811853455 645624713 933793952 311434721 705716797 289536044 497402512 826874824 599079168 74202930 926902878 194213987 497445626 265455137 443707750 276014863 799886765 526424824 353948278 601507018 736617250 941745603 818247308 482498189 535884209 773981829 539346409 65088715 645966996 493949663 493391493 444834453 834395598 556084805 269840804 571811733 48789496 426865214 328078923 977967487 896765050 471734320 789050856 506668475 331854297 497529476 158127557 191085450 253909000 363152808 409424686 616975901 594933895 132804679 600528581 476037996 499558937 556029115 494154660 722966436 666261552 752010330 185143632 595865596 40776951 636522104 358621736 250824412 692917794 581476133 561585060 698377378 645141951 777563983 567516122 554748662 261516326 261108323 920266372 355104050 170816567 825114247 418631052 374287932 569151163 275979476 662835414 208453363 916879334 523657955 267871964 693385277 878529326 398622905 918199245 273292421 639246184 449976992 849209641 214199342 420860399 280932952 352424568 120492817 830761413 510807033 763954933 699064444 684746170 980622285 975998502 575921129 915787526 1418807 783745451 802862891 292298990 220110831 740604354 355192284 47166911 406940478 64892993 171904575 93743334 817452156 828821324 382835554 155293092 820444031 556652108 669328130 442829159 138348565 166902465 258921185 110958988 280548148 781408937 69469523 433769380 237727740 444183179 422411265 146752149 966775514 199938141 638810587 269760044 390280896 906270514 936656348 764784722 27517707 100176434 218002337 380571285 382413290 526943797 108559784 386225780 159939452 305795234 698729594 10271901 793802162 115734499 795751951 989595154 41947140 204574661 590627757 929878930 323039780 848198290 361849494 439577605 659726417 755644134 17148895 181492901 723619746 794053306 895136223 177738608 377684146 695651668 597494226 254588058 754708329 103725752 123921224 35036052 29933475 649538386 311547838 167640081 58531279 568863975 435244607 345472232 613080243 871282504 74972435 757974037 905158114 94107780 982095559 608536194 453720702 618882031 565868783 941014628 458399691 529426149 702706461 577626466 94058055 191237450 505999710 303952762 699371626 288998501 586464075 741109106 730448416 713378327 7868073 712194477 588630385 937375555 504334611 505904711 80685155 250709090 420704188 52514418 227833330 213829701 227848372 680283494 565466338 753236659 698598658 335798261 743470169 517642415 261266811 810378144 161724059 595845578 641619227 96140075 814576845 256039996 884123600 866831306 208330300 286057097 44573305 697102086 787999142 226728141 311604187 206772014 320939491 79469494 787753747 430824875 363669730 529001455 886781352 207530141 381951381 118908077 789712720 506769530 875739845 437178696 685913321 455627062 95945342 911448662 219859109 895104230 535588263 277478452 73630698 719714199 984275278 28727328 680638929 276340334 465178776 293263339 34406971 14341374 957930959 852480285 983373997 793398199 429621149 1959204 672044458 374007019 290509500 537029370 106114356 206606850 434251958 795921942 667559419 530768833 845147926 790719071 256462855 127250276 711807928 744078833 277463206 857032624 641818075 685683001 916348339 833109214 435515004 253623071 494785188 170773578 746360473 408258961 414075764 837331854 180344187 596890585 713695090 539263579 537790120 188200034 824682687 338465592 189477548 835783569 450056382 426117007 940428799 637541066 819595150 955057003 725127364 44359335 685155447 994542399 287559332 210748232 494002863 668397207 271515677 898174880 725442913 512893608 544420061 405668339 875300293 122409042 494320729 624198987 878086004 295668845 593815878 679985968 403332539 223393992 83731837 798747878 765461772 48474919 505609975 375599341 568189555 297911244 121234796 191374077 513030187 79910834 916936431 317416363 706686930 641176395 685093986 282942650 237949563 600897083 89733259 279395995 615443389 706235401 640315833 555554466 842903578 421474210 705330635 702317470 421761361 60699776 275456497 664219703 544538407 815144456 799754282 347939430 37304854 654434823 608937920 562528707 530177222 421011121 915493166 950278605 725118658 668056296 434413539 921100044 656370169 724655599 868040423 349283573 144722544 191739958 21456751 860698244 539743335 679658632 325731021 473933188 907339810 647703873 53867631 807061890 879820944 101558942 645871030 961265056 579498202 867333871 765780996 964243667 172703103 691307379 471777346 364009470 639887997 325669130 714966256 629100361 935994621 429586646 972973907 455672062 183261366 555074189 247433113 136102559 597757922 906357506 261974994 113685562 507160636 491394419 122730996 291305713 272344424 890407759 662744008 645793329 363034534 504127253 401600452 344290090 61956024 829584385 620204796 1148893 490710395 824758120 986038332 523960098 976279333 786659200 950792268 576058989 857672691 899574544 385844217 792392560 125102369 260413574 495801869 783428490 519528097 278056159 778485144 66009600 185715884 229393276 126350228 823627457 394263442 508280722 353619666 285967151 900332715 360695701 735930258 682866895 202967396 825824413 906627196 367179816 130035417 741679641 39980782 250686910 347866971 482201725 893526619 284185369 729123596 292177607 280823602 316523092 789379736 947742027 995086325 375324684 659303762 490920503 149379778 825648872 419739848 785848330 211375575 396246400 970422519 488592508 91543347 459587077 591685867 901658289 433384414 49756757 978982494 683229208 118413471 189343145 718894278 747449374 529162 888360139 749041877 921902942 792617432 330858567 605375672 312383516 809166975 72048068 457170499 994555020 762992408 978067869 929411786 595733818 850445839 808666486 398756755 12664542 993808880 466898476 990451537 1163341 42423957 577289551 24252760 260438571 176768348 699109971 356519243 373179728 66577656 749732561 399956849 379303564 198149283 637878023 287748756 311280454 644243818 151498149 974465032 899504412 191449681 938123110 357933160 14127980 77681408 277065580 718739949 882074943 499861483 495797290 757432891 890429137 260188343 286509161 58798277 278277601 904512258 103349103 742851283 232644749 923587763 294285010 520830743 95041034 500272816 701848472 740322572 847909992 33364484 843496348 289034564 619905171 536229808 559363181 254498692 756069923 920192493 191414968 116160231 909357907 574402258 941816128 440393230 871405144 178682954 192879121 868687482 325051000 942023981 585042876 355985007 119720957 616346986 532105306 329481934 54272050 505897143 76931740 420756158 394206190 290728415 309000114 845785940 402046049 155060110 902910867 155626327 554285703 730751620 787219585 333894249 551791375 963285600 783218069 325081331 207926344 229068546 537710469 246429705 322403850 221016724 355804617 643692080 443816151 877241587 45246474 967040084 144539682 347181377 912388705 837705421 194068773 144386078 410123745 635241529 540971432 391172052 103185660 98184069 957428702 615058121 358231897 338109053 374006878 486575895 1160353 894635287 366416308 104571792 644996725 532559310 223748144 743843935 311025007 894434085 521974012 867373891 592012496 963256748 45575895 701190578 413943142 542387462 949188695 10786875 540312535 394640121 863643148 328218620 776457029 887390947 526407986 394655954 809564681 295199269 60553825 411631477 33691384 256052909 286015555 72068660 553297864 986189481 311193832 153422927 126004986 652595871 292504678 364321689 897662215 526136904 78783778 660164580 320221941 446995420 328692217 288526687 215134149 146712329 638621150 555297182 410449895 423328076 172902293 787221856 634143130 14012058 999277 175692490 954246005 336449089 435657483 33923824 413948711 380254745 603583717 921788598 401618389 955802431 524505968 95146999 337846892 528012694 166187466 672719732 344722906 3259711 563358564 590652280 467537379 425804188 323072637 307247017 456810457 892365690 413113428 152981552 943771231 537043016 870155312 629658044 406482360 965759057 719276220 964656155 569853710 931785175 287946410 399571417 246429039 738542628 365510536 353590106 771401134 126910709 846655323 758470151 632758488 444308914 202023680 186193459 924387231 41816762 439518503 50489960 850291500 926301462 287329604 357360502 875679533 89972858 334702942 770358577 790912981 320926954 311011301 38821452 764561866 618818826 295750240 574488903 141223625 821431795 700394001 511093994 925883031 654485137 216904717 616849390 646615690 677520525 274480112 615042789 931266313 729998762 853497351 205061398 292542067 319657982 413036331 768499762 820782993 19943568 158875924 346993988 492249239 792856534 249005978 371504221 473000927 426417359 162082293 739303300 769882541 944822586 852009303 604723565 451382703 16364423 66602975 314953186 58877913 402871302 66703457 827710921 956488983 668543884 140561752 756189389 645320670 729161313 527638305 716224307 98196224 250546856 177519241 880440203 221333239 195693158 206079588 886280931 637636890 74523302 563325715 351697596 354178616 902683438 845206878 987714717 729373011 598954747 429176227 814614826 394269804 436809040 511740573 203536928 919428936 376814404 485027931 425338594 951252816 334007786 428576679 262653612 907344359 57236236 667404737 530053841 514449951 167243153 416482129 113693353 724159566 429815634 244152326 374909752 372066153 895587513 221437411 895336008 111856978 324546972 402801093 845650952 783583649 508149113 58655693 279780085 905103258 407240712 30576324 404563446 797921441 442852983 778417136 576006747 804787399 181717832 384933127 891014464 199393975 946864968 843056041 140048118 980803591 898788244 650707552 721743620 509006640 264792923 738407590 397001375 20746776 268498685 416238470 955076791 876843114 111140019 853365552 537913849 394914768 414467361 211776258 833222165 504190300 861894487 206980855 648815345 890199588 364704473 734589613 926519964 591287575 450042900 448311832 760555218 678363903 180048433 702834470 353681257 616556420 322175905 208944120 434941143 311936327 905321043 506322701 765432703 755013696 536669605 612624336 463139926 975555451 756611120 787950078 813352056 20605987 559238908 327699129 400539680 452337029 983755181 867181649 253513968 917924251 972884919 199285650 989530485 921191961 636305481 427090273 593742158 445571645 663588025 248381982 263175196 567942124 114111740 847564722 116435345 585752823 175237811 989514852 729082782 743418144 290783285 602384485 126695655 26447408 549580167 381560025 778209667 167341326 521431253 884794889 628614330 976760155 715154883 524585683 90060020 61390510 997215197 407780839 239610258 140919339 433089191 818279494 668609842 907786387 423143676 750370616 618894070 409489490 738239804 419512125 608298316 21352871 409894947 56014178 443434281 160424926 48224849 650762086 141134321 987206405 726769273 247566426 789380380 471638555 946095215 934354773 890263966 921865595 18322477 843757638 169329616 543217325 682558691 39513673 363350431 607668918 263379231 729341168 206448835 647595876 306714860 454654881 659045379 432444505 564424601 262082886 614920407 479227888 4737644 994250956 480248591 254822137 983838036 427279066 110699349 890915655 394129596 326205734 253381662 905547112 195491990 260582719 990406351 523819311 950631040 986011411 415678520 695665766 505572581 61227691 743144749 939248482 33006989 340427522 989997537 566734990 997820216 651548054 45788870 507729303 940814002 19416127 365886028 313928711 61690424 288792772 709051773 74623788 582022008 676663065 716965343 157541617 58972488 237051315 319407475 267258115 368329441 148775675 865340739 386577463 450150354 168576892 576928622 702087391 742414371 906991626 528486005 101725080 58510335 678340059 831195538 223866596 372688249 365538601 384053119 703169802 822743103 119541673 584984261 666406769 97996543 146754939 901951040 242896277 268001473 235211930 203661446 442495786 396885478 300674793 256063231 191632683 564128936 127689132 423059679 610426512 343522721 758641178 562354986 401342375 569712329 751269984 765422632 540099071 913011862 820948870 334551501 945001996 996337973 904144687 100068578 839488889 980170470 277071348 413841170 628251917 531643770 116460060 552930188 7683472 548637870 231150501 846592315 467757326 103799328 950404538 500903227 452888184 241179010 759949522 986698337 957892898 285196521 394610046 710291218 572893015 149895503 221496453 930106292 301710535 311242424 353329400 579804066 734045367 206527640 672835790 751627786 423597090 116638281 772677420 25094319 133999464 635200639 348450340 593689594 989086400 675436016 916747801 801227089 630190522 898378620 222937646 30473531 388073792 197657214 729162587 359023785 448271186 840228469 601906605 25805464 16493298 328616681 186703708 34685678 865946719 802755470 607150365 952183444 415026107 925952278 295037573 641773870 204041941 959775387 238605572 688902765 847216122 337715523 814843434 831019531 568125039 678810543 628883361 6713466 566679628 803934293 906432632 704976259 517514783 511151753 861381196 715640442 730642157 966717650 719110884 93289752 86544895 619321480 474352357 947262196 928223737 654250269 637864530 469345895 173398533 421935677 923499092 876316217 345511420 423194376 270578115 700367913 112893645 958984987 285358207 972154397 26753034 668935170 519539567 887721958 328189567 973304147 64051005 256820354 275206692 363930280 292875036 979003196 457553115 69616860 662897263 985394513 744956584 699036729 932463779 368947443 848442365 364667022 460654135 647368962 955228414 483294304 933988875 802473053 341098742 953472250 951729360 873359691 537038947 12443004 762328184 293681843 67923567 317361790 824933580 411183140 939615507 898188099 858870280 277871580 249874250 816641825 477214892 482815705 472364893 459525601 302178096 186536731 404051805 745631152 85762774 800044635 786022594 264058560 260324534 577777270 486199242 45274308 980254904 356043494 244593434 356685500 870715059 672361772 760197138 640683515 531854386 946747530 239635388 208070269 240054126 205957368 452441432 154597754 913500293 896704160 487398006 95206563 268408757 271503363 411904208 704862344 253879013 305080051 695049504 907089766 447669802 915487074 406501480 157212705 467310788 820953914 67322791 469370285 839556916 343298307 990419091 742563345 752973326 941493323 581710362 789340433 777786229 532054841 956791738 162410168 328487139 287820873 121469066 304154897 399427422 662773777 173197747 889179593 387866353 526503907 709171946 677312139 140954791 72725243 639802628 332660757 285584280 505256053 496669822 333775685 819729286 466841425 671093343 651920773 642669658 123140302 927151049 59500614 172110030 664162930 345003531 308798437 391249200 721993600 547887437 494005966 300422010 634207906 337971259 406725999 850376248 515731634 106934659 351181925 528343581 740831180 703681466 47869028 829220208 593680475 514983316 131336789 131851091 340737511 58119047 831860295 351009296 23640860 109421596 392182979 819313471 478971780 375223939 244168380 87387473 938263794 175419776 745949640 317360092 523709514 34249835 46549417 976122076 68849307 178030984 438700428 56364575 279234249 966787050 974186629 39547000 993027949 5041129 656546991 456173756 207846078 385766896 236050235 177674114 282452429 707604486 223061800 919951145 722828966 799652704 402452011 954808559 453641756 293248666 22572657 434326221 74261066 738879802 125648581 686276894 991944280 703214806 389813447 713840016 89052046 384185471 188268963 836001482 926242345 827585646 419978099 567433122 639098505 508716099 652636713 892679058 802864812 540253653 588817561 38789805 365826149 196105271 827745890 552288241 957998187 252698037 808765244 820565584 729347553 471248425 84074056 754021976 230570461 511104422 440529363 960653984 867535575 53704497 404787068 399021885 806983340 226827148 66327367 585289516 131425756 47509198 85277855 844460693 868015519 593823387 945420672 24365785 508160523 70884296 643636808 464135861 997816792 780479537 29334675 708101259 400385477 327793342 338466548 741766841 984294439 30644492 808728660 97873505 800451327 949702981 471775174 197078651 159161591 382006165 600815430 777786490 294479125 846059435 769716163 761093836 614590958 616378622 341614375 906109187 577133710 554826192 415443447 659673322 341331318 88775305 437515596 776340753 321487811 77390209 286780650 967764510 675059823 977546475 824894245 633918916 557711172 386969198 539777098 760237482 837214278 179762259 391496817 868246011 855114520 882768494 459223939 880107573 740553688 298157577 703720923 780126620 864505436 484219785 787537987 494409101 376329574 191200466 943312668 932416975 684618689 428894788 30794003 846911437 129516796 532527099 217657717 515075221 195612404 257302431 182348706 434924386 747438178 676360804 605547312 639968064 790405474 849422254 124167141 810725622 485861208 111632641 94484476 283790995 939863105 298740128 949826760 896037258 209127869 825769346 263117760 594482373 444906633 306344181 458120227 460119097 927415208 913207335 147591648 520418201 530851196 284349068 526510030 460661772 120968642 305186475 941746869 247987751 995480913 575099551 119329795 645710180 629954217 657746801 798485976 144832234 534725400 870139932 907002766 573216134 182044102 177416481 983160191 328181547 102196218 135537083 685283761 850649339 565636923 471630525 114235128 989899493 331377245 439744540 260458401 143225128 534400264 885168981 662441679 489993423 282055744 225382780 718906633 588768005 760161181 394260437 471692374 572743949 776415816 827571117 670064525 747440601 336264552 173999662 179617448 42089635 100892838 549121671 192885262 283571065 404022737 303487531 335184286 564170967 484932209 770791798 156786066 986701214 510197974 977385222 511978429 487428857 40662176 758715386 469476456 408373832 57980383 113399252 951602389 134651867 235141031 921870425 490524405 434190186 207337082 518944396 685733615 19282587 633578032 877604552 257090166 867508851 632625853 863267638 708237622 958458830 40600433 411221613 571156860 574620071 637202008 599508102 985893998 582787914 425167172 395630288 286701553 879320048 439336313 550162854 856994967 20466119 660052379 403407997 674153373 580776516 819283418 23990586 501413349 901179233 734567170 891970378 846752015 672917921 733516442 248453158 23429357 722827445 176604286 436928145 259881839 98380324 445019209 1936145 210273069 402781824 231900319 153823539 537234823 772371324 125520388 14697927 429992255 464806749 91648150 133391648 369328872 732315511 287978928 188093066 756082171 843859127 803887546 70613381 701351571 775531053 188962291 395130305 9775925 182292305 539241269 702967791 909125496 807342906 575205993 44070462 547156717 336495956 549348602 520012133 153714369 957775012 193138521 543870477 17512004 398351543 59610563 589954852 184907328 962896649 864347334 28772593 173131883 662853788 250967231 640764873 112401869 369136113 952215038 421169321 81974571 118638495 685029379 277086411 254959826 438458040 260436291 419212191 53043678 122573543 15619382 242932705 467446064 982664180 221566827 544133160 90182425 462346185 88174158 649212981 502967791 283669705 650914749 675094 28898164 769231222 976674720 30731015 430785524 398344926 682571677 715750277 942704145 18261360 486806694 699311670 301124123 79300521 885781934 912790622 443014127 464355767 477200495 908701002 952184240 846861631 126282204 418841181 206760842 215703045 486278878 373937916 270968333 189430439 952776336 641358160 162719101 841501442 773819357 821386094 563438977 449074259 207850150 507089076 799825109 544567655 138221262 367948966 15171300 288109068 742639154 758347048 528713706 425494971 756970049 92160557 766081937 113355653 613566197 10094772 300215006 97056191 591031407 341205549 772634252 550371545 114722215 24380378 210761477 510918972 669666650 632038114 92055017 628274234 989914937 157192344 575240718 948000089 105271662 674036762 508403803 142316258 725428232 331875143 505292140 71448734 29102708 458125195 81795593 591393971 405930369 149001915 696962883 346821787 915739872 771648755 657229157 169878118 630819857 69881269 685267073 475698578 963539391 652405008 657655470 321933923 429120945 129411 654098446 591612225 410501199 920621834 724115166 255929698 309909374 525196416 218564478 875579514 470778700 299333910 511309565 816371747 393784702 44661285 923123215 784240700 525400021 942248978 272484671 542845194 260079925 249923403 26328771 952869890 115381006 576559393 300807012 638482780 228299036 618904227 853339851 210510129 365799737 473617854 166263668 92799283 96271376 345976048 413336090 890160499 294431949 860797076 727764311 170872546 533061799 764458789 950922007 290822755 951919307 572636727 295063097 280197505 255328373 330955453 681045696 382399522 341705683 15243744 142187239 596671894 810852689 819976682 372223910 399784234 698829286 967760775 135377599 638733247 357316411 130869729 892029015 251640262 232649645 575153002 205243516 290605270 197096291 987998743 792868079 415170128 85816055 36888164 540398287 138546890 658092880 305283886 723030593 233107338 145256674 209722352 551264872 387187069 237188545 923291161 863101549 855439387 582106604 122403348 913760707 111821278 186594248 506609639 98497661 84620294 396802396 983010177 197605248 27758866 424426946 93863388 483365029 276514497 658125009 167641718 152758081 652118696 88613602 515059997 93651305 552318919 552499608 663473903 719422636 780123426 616147918 815258772 184022755 782946542 951641031 525215783 238025557 728220470 159251159 769697967 790189341 42678317 961427522 564349039 121857932 160849297 294952956 815398444 851348330 335169420 883009632 38569059 954607114 416120443 549826906 369976605 380996037 908009321 621726457 143559152 986892136 23312538 304110564 304692475 489332195 215984704 973418528 529511332 486802606 344289861 512831125 231169137 405454129 775960721 602115793 162461719 273969539 458220832 140205841 649080358 41291199 408434750 321789200 363947843 756091824 501680406 933956246 68735216 602966264 949870874 500995079 76732516 213459250 527824438 972905358 412391187 742607384 969779326 42811262 584189772 47031150 943877190 609407916 578854630 206640538 228924997 739839529 209465823 928455926 190662876 368290240 571594265 147029423 561082480 669072530 887644268 85781324 733978736 49423162 836079279 297775644 504293503 607707433 559253994 986563041 403451232 73216247 785310896 735232599 793175035 466002664 358036538 545533588 950736065 827470429 491534718 797256266 26572311 324568879 227016802 973665965 816933983 710258851 440139792 867696212 360950324 735230837 191382370 334347827 840712714 584134797 373170978 761414542 208857431 459961131 205016529 478147077 591019106 697267703 564967236 616906986 86240726 122552548 922467509 848069561 923391909 39544254 186039328 818109271 948560675 584849408 391948067 468225545 164997844 297234220 741492372 609707151 485181301 283222889 576672038 131667666 639616695 929538718 399196133 713387933 451654293 215231775 768711150 341068234 260793516 88616565 604099785 241406498 78948398 919070043 81132371 133449385 23945184 65107283 714039332 391324250 593457340 47297427 782571979 649862778 572125289 677389942 51351970 116048457 690639940 945301976 89045395 928439585 964286989 826000739 192545255 621722162 221438663 274285086 390505956 41749057 101710441 626468078 715016623 971422704 836882553 637212472 814206112 987302706 367051411 701632341 557774472 471776057 897976962 69837605 294548812 812331594 630011611 260279081 736162151 182794435 73227645 81443464 504193689 911368814 235192768 123592739 126238608 583002302 407574960 174669877 920659402 906900889 858111604 515556000 572725049 545874133 213086319 785586641 16226187 989013541 38799778 338150493 511239272 899590185 728322605 412108633 357728913 54490054 590790476 637456855 44876358 531345895 366834761 852805859 675976366 742611174 505709092 506718199 905885068 288881076 963929038 882285533 135586728 458026510 885527950 841020126 73522917 628100514 302775565 454928627 483748132 213399722 501656285 481981964 759173008 507682868 413734933 706866766 166844089 608982820 22387906 374228612 928791169 181889050 192344285 274765209 689586249 722969851 589801466 886254607 299887193 462456411 454007480 267178465 168228220 167664261 404753108 105871739 12962142 34805298 171301599 898908218 850796456 118975159 242639605 113109849 116483793 437706903 858666252 497290387 362031492 146272890 628028912 694820671 997228027 742776482 118880614 54865262 473534774 493581158 619319005 70753334 511928221 511235136 456716372 629503379 18316075 717226247 257148429 730851624 894512138 825268242 706042418 102401566 109090735 929667435 828764880 95182568 208283263 800476754 726879880 517857784 8469651 831527855 538015776 85236201 57161286 474147222 9239219 838295544 275374360 890349631 30300620 841294691 962764997 87807538 295313250 41570534 451696042 510376864 930525006 940876933 636328914 446905824 528917681 912193024 243219924 250466224 377785600 405358212 285465933 151243827 378202611 25641487 660577796 806605606 188994229 965959036 162920274 693122307 319338505 66806592 845361942 828983766 710649240 699262497 796117268 478425304 375250781 287731309 123096735 53883176 957042518 623726314 823477790 945753924 256732897 779755029 610865736 577543022 553238042 657929430 165161885 273552315 905307088 189055480 800624089 163512770 435316525 75491389 705565436 823324224 481652186 741723870 101064547 167580454 847587278 902477275 517845261 573843931 872742784 420249053 462331683 395072069 595229884 252878783 588140059 263385087 2583842 992453439 939999981 832654764 942415310 881935921 965597384 619787603 180261856 280722889 494471200 886981968 811673135 663497811 155014668 604788998 503250839 120503062 154765696 414643331 293258638 402918906 499271782 370291945 515930787 388195880 118047071 252320319 681172722 156916853 391779826 261351436 474758783 605401044 420855021 487861211 942614386 71787832 105116298 582372295 584342860 544650878 308441264 593806722 390036195 273235914 125794085 694348510 421790240 986523980 773291782 338388137 793516278 646103284 832224291 260339821 382777528 685630469 795106768 104293740 633020950 713312777 51020402 809408391 323074891 686386511 931880777 267862387 398711925 743460403 962655782 896358884 103387862 763947319 809017099 751558331 379361934 487072832 930624339 169822113 357178521 270334872 468479512 808358914 849956420 237819258 931912543 443513650 539697733 938471949 18688123 220428624 54448954 673416050 120136715 284831271 468678767 299871753 304543273 559149352 851498587 841647180 759910783 567822560 120734541 111448842 665044102 89209981 53208846 422123356 386460097 27432635 623611183 53263574 810857106 34081493 241644679 886632308 873624501 911634215 967467387 686269392 871402577 557012959 150626193 631778878 739340863 923094040 894085650 869693886 508002999 166295003 135638456 678977267 568083371 160270148 16273355 908700364 962471940 766079710 473189938 497668470 307232906 674337951 462491615 341504326 140443616 142744463 851210345 15219174 996525494 823864872 679395188 748847849 540479321 530610210 186683408 260728637 494131619 710311230 954522073 791392373 932652735 554691479 831628767 326575288 899961247 693966827 272667657 990713097 841577741 849585260 729151063 233475625 479597521 555139683 659762501 170027920 194357450 966407725 523704955 450994350 78352523 570012679 910062058 797376604 39281483 800814553 386948017 113698389 800649229 483488063 888451004 307538330 751424819 657765576 602375250 894787428 875937030 349375558 160191371 298432926 405289690 937997622 901556075 153199134 168273946 302003686 723382355 50395587 545851584 270091473 852592507 604028995 659150771 912464987 103739386 659724946 869577242 632268892 756242837 338906663 342609825 576244854 774854421 53152673 639900889 467782555 114070873 145065805 460161429 64587175 520995118 877597334 9904972 204859999 23398509 382292514 539874698 692319362 868318470 931997545 741179493 31862284 401888340 918136659 13775952 326365118 199609312 219740222 233100846 415003466 522364543 327726427 48811720 765909553 369387926 221601498 625876784 777519787 571479817 946187333 723489302 903186579 945431034 638673627 418454140 996228432 312400806 13377587 628813581 864728312 270871803 337538563 594326613 397433445 970060112 287744894 345559009 510013011 162521248 654922368 334123006 294863148 47451741 407588368 945672163 708847618 627151850 994221593 821662723 622629850 531638905 456062572 763332471 263165017 127675414 22064648 121644825 20525383 224548277 858942703 371786095 797656249 208649480 154858101 578192875 166370813 743317657 73657336 585799034 269884418 508552597 610369774 887680901 794935899 473923030 54225426 870343139 310391643 399110620 735202457 734839181 406097830 887542399 429005500 686418508 997123278 681468459 237085757 714072403 750935796 809301040 357372779 73659006 662141621 13252843 800941818 680490114 49458160 717327635 337606315 787458869 106145239 261937376 654250465 948297020 345364796 228331267 961471039 961587335 417303406 862797779 486830182 954283419 18027039 772314876 356405779 741394221 918258934 162611544 404084928 220331810 846132622 159289027 661315425 986552834 666908695 14357364 543832587 804714211 595710022 938250514 697385497 210868883 875394020 238402226 195811515 606870600 701455624 291725409 891959269 394627996 163847933 142584211 476585512 844440835 493589365 460247854 291164494 390307552 186637933 441967603 2478043 821292012 574511769 152539931 185653517 237881597 221467827 186277472 330061812 128618901 253875487 300460370 843637775 340729979 968037477 285637917 174298521 754798766 822532981 522728269 14091442 409421386 983696326 338065311 240201741 52675614 751216053 664082012 549128334 862463490 789348119 783966077 693464224 212584256 318674131 129659194 61510303 588474356 934559493 587357088 457306416 290334054 332937022 763963332 977272043 530935922 348528961 415640285 292204021 663316115 382890707 987136845 391379853 616817243 89503850 722730744 48383171 336064445 377706484 449848476 768107753 3666220 713048605 689379944 515702205 299733276 627871412 77663607 46730516 643590980 995687639 673221695 210488130 541439899 887441028 467181189 32221396 618810872 377890116 3011005 483982073 190557839 969789812 424658548 892252657 255103020 612780387 319347485 221633101 830989530 17480422 610949681 187168074 570837933 171277538 219293937 364995430 399288675 758559993 132392118 353514957 827126595 690588862 846930959 656359063 712790664 852240472 522334492 357015629 350014818 907390421 173491842 668097316 495514834 496834159 559919362 68546378 996090697 553564336 126206659 132370116 948393114 149924386 584612260 90908043 735798265 111159542 559883323 401346030 718578724 570497336 604096245 326718490 772809117 662114520 563920143 98925481 130040572 360489438 865587534 381803849 245993176 883239931 336310363 365353261 339088927 381983929 317751120 538760706 600210066 363887563 915165864 61577859 954285891 825391099 847661511 621239535 869882965 203578599 876929720 413132137 926847897 406852542 86271425 796103501 143380599 76299885 98615642 704645971 31421934 150801029 3051047 30544089 901123133 275183920 549685244 838313350 79739036 246680506 358947028 15002004 543153862 899930147 487414081 310934419 707762420 311601061 52280186 542695931 165295696 648306176 664675568 381778190 393090072 626328828 102195464 830369501 597309434 964896013 515308235 743326891 350617052 394601056 780022854 968103781 373062643 855745273 989023385 385632424 941163215 349138536 114483959 303541601 903136665 114259161 551615004 94196063 626113774 821991504 801837826 178248955 835138036 901401803 114047466 575861446 499604993 606968941 705837889 40070486 977796288 782269025 555434091 430012530 438642820 883821155 134864791 325625036 762701549 37717234 681672664 108291935 701934027 802688860 574242612 207347308 629499940 394964751 754905998 96885300 566585547 92018498 229346379 542767546 507311128 547557090 765397700 27367163 57021148 544444766 553008454 640083404 633059333 394625749 889352550 836610302 704195241 474651165 121736924 695747821 530555185 202278345 369796042 890824121 362132464 457298561 789585966 299279519 618815102 972753591 957862144 241801769 875199222 206827905 419618022 588790202 405042476 855883662 196791308 242967021 315175085 583524881 126938132 770377967 696705823 475705413 83691835 483501657 332014453 398519931 565914976 213847748 560434909 449465991 672389303 122671831 411850120 170562198 676562985 764404495 576185391 874863772 612333516 233070766 508248744 334086604 437834633 778092189 642352676 722714195 377675814 302685292 328723821 393661696 636642130 972898776 433536252 436488709 524386503 442545035 840614724 987083710 965698844 571276394 242279904 113911943 45159140 409352737 615924515 264144986 45071169 824986971 320578108 443498294 128680046 509961911 529159216 795583521 775770893 259706109 522587255 862145373 913393948 404039336 590309093 33737590 790339430 729706492 800004392 147367714 957463269 273278069 90375913 986238218 181772623 550522756 563287008 12209918 753929434 314820613 427525383 247069845 183170273 119761730 562480170 144012407 716495805 260237232 923970130 701124504 585485305 505202837 234723145 447891301 780253865 113749471 67279724 245476213 626147117 209888216 886258233 512834268 569789658 195259863 661365290 647213 446525845 547232971 38651294 612952622 708773338 104647475 470190049 407139100 642648253 389676640 615082723 338059240 189262880 651517823 384275978 620198573 348456197 264989148 811667024 558020190 873512534 142613343 786245718 487621333 119908945 462279304 838885090 13214619 390060604 839182549 237751693 984923589 675888170 862223441 587908948 715325880 123071531 1817616 275112502 590794013 660450227 274746150 975590601 757158716 171470023 453036228 747953206 317896849 104698073 557360676 157106048 732661962 427891361 357678730 165905334 28170319 406968150 837615730 626873900 603258570 550702118 907840549 895921139 421521588 306787518 430569470 57935493 838220030 328208993 747636618 841299377 347589782 281794465 597147969 307701957 485134154 707275229 628022618 271389277 783502094 47822292 706428968 612644080 95105557 72408413 832463074 810210905 982970097 638201553 409184008 952126863 67580734 424109159 127511615 321287866 705569930 945657878 394586320 43056285 155149934 895219429 522364588 951510172 162269995 94220271 571741808 8973089 833292252 863593196 237867514 360724123 611920207 568434881 980790788 640247930 649199304 785412970 19395826 330062869 633539824 415980260 439930149 526099490 433719510 536731972 499926647 159943202 633346359 661108802 148172826 445103709 826846982 262791476 908402260 922236751 942398302 120309151 207868183 454205356 25895175 23963562 725272590 320256674 434399225 311317318 264423943 481809184 63794039 737249336 635395925 96457662 788774532 919983831 52642755 117966465 841159021 172749929 794484627 218891895 938375669 576003138 412949800 603771031 774467778 766311412 119690529 770818334 573260622 296051303 613505800 74916047 794972664 286044291 364016852 513190687 933696018 323781993 836008084 688434246 439552263 169416442 630596765 460969278 369208427 69286711 763623511 760977751 911422386 730998184 375041416 174157429 193323323 337761389 344239120 261310227 546745141 570017904 572376088 638282572 344070276 139006719 679966961 929678656 92930167 579159597 142984496 557987548 605168852 372911484 919447856 190522401 556680432 592103711 19829776 582432557 886732780 209650315 561001966 571573508 519196882 850116924 567905659 919654543 274986665 576893788 921018601 330838626 542156413 14756674 760277694 843176285 825700271 693278617 266218843 284102392 146370523 19231840 721646483 384445375 513045091 958834427 712570376 874954901 152929034 734506459 560219397 500317219 89541295 873790284 152640112 354878411 700302010 248094440 692098448 802239129 189023680 254547654 252581381 525768152 494667668 84520374 658024505 300009026 262903964 838767957 46957353 27316870 188298383 611154905 553407111 702846798 3974244 123658604 775486898 700075285 172772000 629405079 609275521 676047096 269680109 908362769 645521211 30066532 186128797 492855595 795880418 468504196 106086783 847009959 50272004 994906176 293714590 653499986 842520186 917775356 553640680 451701017 650892957 84914328 533072984 145496773 630074473 106250502 349218067 989028283 92116532 788647138 626074057 922464064 845739804 550970267 788546940 349609680 184500302 183382557 453819687 17718725 181968137 418578482 550165830 340738291 444732239 996722198 433123429 223181538 875564383 62854675 973804122 832228175 99599013 687297240 683003419 433505162 953813285 603325199 8174947 347382468 684480312 453649940 682007165 496802106 446815055 402976390 339569630 617766747 411472330 633277672 29626499 929465286 463573018 246878117 861727904 668036148 388198795 947449820 138894744 275288595 453421253 874413229 173960930 967355781 761820227 769305463 611730809 44388618 223505872 413667939 768650155 873545904 7346171 642949019 158657070 96076445 430449536 87555339 356562242 677042231 937074712 579727002 929183588 388014910 11834907 653701909 54050342 971320249 54214564 997556114 447020535 358633235 160243191 279751249 192136548 495282608 763238188 197856738 427305478 357894071 551579102 375357949 807413770 649846526 876945492 17653589 233740130 436633864 714518328 289495590 518063427 774894315 600214531 679105067 290321661 198884635 731722034 749900996 834023872 985181353 574499223 345200573 592634461 352089488 584016736 504587721 369351007 408808038 352800807 331867840 905101063 495544242 882092610 330136919 252323875 868724680 206297452 362650395 274901525 113838912 646074411 156895272 769153096 673815528 510474648 444221662 460798944 357092025 264922475 274214120 837942822 976772710 92532738 183639950 94732221 159172823 449348290 43154653 952220079 6616851 88597401 571983340 985277906 82125685 565269437 575433004 777889629 704024131 979648823 600978536 188777465 119552505 879043806 9758878 721863205 763695646 879477949 683437829 955814592 550262465 521087918 216314116 694654555 230994918 634935267 662876440 450110863 78024325 470374656 732259762 956545158 582305376 633530327 487445210 500531349 470480822 420442729 186343865 468707647 324148513 618623907 190401772 892003072 799221203 344245786 538220835 670776571 343241696 768797462 813410561 188952156 127028130 227200948 775584935 463408462 19722237 550103255 853358993 466851044 143661809 414806763 358526144 480027476 818980811 697825285 968112366 807694929 657003861 198136889 763164148 688172537 789575664 982047676 539859532 369009465 1312504 131197307 203846279 469692223 520656259 300154135 698828314 754004215 626624966 156080513 447964807 491907080 326373339 556792405 427528618 985277376 87355694 75199009 445510298 327300382 68101096 212403970 370850203 179696770 80660481 563544322 452041508 150864187 769785700 40374670 826678833 50543529 873371028 267402799 53484389 716539884 537485329 856987978 474847870 468818521 939601483 160567818 757532830 85225883 59053700 984203693 755938548 727140041 993634225 922665327 260487255 511487122 435652222 632321898 511332576 726687842 844953738 276115298 455721128 215981844 821300526 611718728 368770325 831520621 232800571 734518660 142337512 703055961 546926313 531654124 104423132 447134555 310845 770355152 334577997 46590346 51187456 513524735 783930357 29838428 824070088 427808989 464706180 237310732 576133674 71105070 49188889 708543181 590395701 490057509 993743717 231077815 423996515 283822014 227270441 663500783 629124076 749665890 125701157 715270598 358936705 137402310 886366786 678496740 164676750 326884693 747730038 866230478 15503722 132908178 69481953 707418271 171670638 561924871 972590108 590069355 287690639 343025553 848349503 391335370 721689067 248475557 381540611 250346189 118621038 793041778 385978449 111414716 73334819 300606421 850723041 470979106 318761300 936144576 49081099 719850906 595154576 653722288 606592207 203651077 575664074 132486794 684400767 878800225 674443376 555295393 178623704 738809684 741608301 919493359 641395480 19389560 631360193 180326496 977655225 136587802 129464777 823200366 831237828 144401237 310189275 38548941 412617891 961024231 232599473 532248336 269451669 57871830 441206743 166328992 432467109 18338068 283319644 704990555 644809707 631603300 248072562 107876088 843477241 146501431 110597946 419372253 90472439 647285011 867422159 825399918 554153817 861355689 986268107 268878212 163894964 585822476 160916754 56450358 677169167 950015228 444395929 506152263 615354643 20730493 791826080 621520804 418362393 851361931 916063773 940898463 167474690 793699481 372632686 883755185 12096165 370190206 186103574 634385621 513626842 596342723 797561557 899472215 457102404 200562600 916882052 728150687 755661765 62625284 750260746 200169874 117013599 160461479 537597619 879348235 128511309 490608162 851900650 857376272 159543447 353326470 868925153 389958902 531800326 99139227 585805894 894607743 706031528 215689657 491971815 422210011 227813425 259171379 903685092 492162698 778437535 394231968 877876306 55845632 989556337 78488201 286640539 372256990 251989553 349194602 208547776 947049251 320636178 296590543 700516359 2728197 319043145 271848404 687705288 902019356 346149486 335861353 982878137 294984926 763328654 70208297 975962648 367755872 2862399 81240407 207576157 461110828 415723934 631200248 908464994 186800821 270866969 586815773 826635905 788423498 741877121 917232321 699957837 114123603 52439416 423486379 533126121 849577882 26724258 790787212 859621937 463496375 553228428 225604407 385720676 283613667 45183590 50523390 59781881 168880539 567698251 878019127 628160680 962867577 561321412 94053634 832995762 96303602 323824197 292186935 760911732 579521188 651126102 746932466 811500775 536261343 327232513 956434060 775883369 6956069 918990524 569161775 980172314 154399507 130971617 733363365 494339130 51200341 570578006 371149223 414363777 606627438 703675326 543053591 586439437 353782040 310417664 604007938 279931656 148778683 816108722 369394362 461871653 773702805 748422001 457557858 915054864 601775265 361038375 985444 973683640 249608703 331056939 63351999 239659393 550587498 567463226 645726057 798032376 275170334 130176374 330313141 93678650 335943977 272306648 172182990 426508294 826507778 727252964 970494066 104033655 107993544 403768845 55981724 811818627 538399624 328870009 161919073 556122369 700226987 711733634 492015257 926247083 724032561 867472851 600185648 205124431 882759330 682226220 349448444 909888331 15468399 68121843 724232986 367759271 133423040 692653560 367898897 266378046 728787652 143737770 446810689 377196806 650882337 11967944 583122190 636323788 919520522 496294818 11067129 415687723 161934781 407022018 845023972 753795238 712994863 927416572 697095894 112740 751321418 381200818 773991605 697264501 393020439 131910467 816525908 572118788 317129740 205023306 174206395 253249576 893931090 749684060 674031487 176107352 892507330 798267679 981459271 812129604 332330534 769210372 913783890 141597614 3022730 93001296 224776306 708632200 921491971 341397210 396692634 795875436 453902578 731032923 411093969 123846086 520178974 115102757 689104074 956854020 682055368 210367137 91763408 273340912 145861479 470410308 795076835 231411918 519548276 378682919 985824710 780026255 710482851 83513611 408341247 593796865 101839254 185049947 645888635 377532310 114431479 101314206 43404811 292686258 197147903 22046813 53132654 203308045 919442466 645238586 811301351 393618944 917412619 754785667 452269611 371287942 452575609 910493972 647575898 747946074 119733012 229420444 31613223 2958875 205429422 957055693 849168164 357531060 786636570 498461925 149032405 519920832 454168593 88672783 653013137 897010609 42110494 675963100 198049717 413279526 956362244 189290511 412750395 699333816 641599010 984578608 290746444 592127365 199141632 666907914 596355207 372408171 949173423 278045345 195473973 218982286 287085407 590478054 212008055 707523805 18012223 664472244 166935920 344169681 172656388 456851896 379963926 615661276 676006984 507692660 853804641 31522761 846901014 488681085 170244250 254088208 212914873 691660628 516295269 840996205 41427440 241342513 102064255 45236585 317073874 969083474 387944659 491833631 546925230 934931914 676114246 437991815 638227882 341433771 126100840 867368629 33747671 493030413 306541703 169706852 985896715 258124699 698457088 653041020 368653103 736987991 186984714 436640314 473056619 682457754 442493142 191742232 394129012 804942312 546416790 150037803 937375066 690059974 126356308 302747776 101740255 688473131 376159971 392446225 184351111 92816351 343592496 72980396 762384779 691095255 731188693 175234874 593336735 108623209 117567589 386739976 666853983 627503428 257999396 299982889 768318106 690470306 761363854 467200976 577814095 377923018 758823792 345371783 861251354 977450164 208050881 314016210 155778785 258711242 783031084 187200365 707423333 281227563 851297399 34728019 706159522 936166216 83878220 186847652 42843905 111439913 787970044 216534973 339437378 851493577 368069103 81040821 817538938 575739835 595215999 387417417 875546319 995849610 37308947 812811400 562326902 20924055 61369949 321101232 76656661 131523350 44570049 954915631 406545139 88799025 273276817 654313112 717668602 4671657 752398802 64617481 926048989 567269726 366884635 624034231 701012391 191812187 331831788 528909512 461448990 458783166 365642629 654996740 267426264 306202445 220100435 466774471 250227652 662491694 925442863 962515200 933657387 502129805 156186861 3736187 728349435 527591045 887415727 488636173 820808988 496219311 407109036 241269057 51295193 618100447 261964450 836081722 2135379 787750915 953440971 487780625 829329611 831162051 760306818 777250376 92414262 164436051 445473202 488691179 694656761 302580683 134778574 210762517 275122641 690811632 501694253 125353418 440450620 421274335 669448917 740223110 888862946 628776159 485730923 271739906 541830968 956958049 67968696 546454212 10986908 702971606 613583883 408572738 490087510 333457185 871969830 88223551 34289902 772138388 450473573 973693566 226656161 320795030 16298649 63223474 529736746 685037862 554534200 49477931 969578890 553695870 569798226 532844649 194339365 360724287 860231936 950886931 583992922 584216982 726797782 571775235 255506173 883194486 286699741 140004338 315461623 391995738 210295546 836937754 496415510 948015837 95786529 195920600 555168645 633449701 952035392 969255959 199238157 715657844 492993327 857004761 451677968 649040645 660705225 930286673 209353306 428795163 589995789 238109654 120428112 666067692 145242155 548575727 52543973 504724374 428764287 17111406 993626690 856479709 740176 547224573 782415057 939312157 167498201 835194433 505270946 240711592 952820998 813820125 4283803 181781794 648211658 800685219 842605663 18713933 848006300 91212410 335349809 676822741 970609964 811195863 343473017 299475958 53453439 898483135 234200614 574125122 620070871 656657604 789634996 9079672 753037591 70276452 429612881 888092356 381626501 820975505 419049614 284050200 749829110 441300788 523320985 220465578 943354703 518355094 33429505 109699121 617211770 894946846 128921570 750560806 893005880 549720260 35231204 111088586 782328138 617609217 475856472 489036338 850212987 499727928 105643647 416657813 388665774 63434337 884273288 305146313 690259256 980525534 188988243 873518843 657526632 114456097 573777705 597675396 548291187 161792842 177968248 43794118 664705591 79085914 810718829 367588699 620635390 224932045 877348903 849651736 546148496 594480086 267264382 422702435 141178287 264762982 134523758 531977177 971027775 14148824 550580447 940074624 177721389 101801317 858092063 637396897 784585251 627065795 203682273 847038681 318688333 947555864 639664219 606977038 743894497 943127811 479006670 324414149 626852827 62604697 857427788 478759872 511698571 223226153 203650714 947244683 83901008 838116008 121033863 409055595 955545221 322137939 770390298 745350459 639315624 460973676 930815122 71885063 880508092 842179082 65497498 70328101 705077345 531529470 905909646 579216212 793448205 193615722 427368085 80342796 398585903 967864468 486106594 294066115 506951641 790421254 274142167 558305711 2524963 86628919 449830350 760513016 993340059 205281982 777798887 485913323 734787379 190876915 388627857 850072829 761744287 262174338 310145133 51966954 421283236 438069768 854148521 98014087 310829895 302274706 897747600 646984514 798302702 913419252 301408324 95356589 868316679 938917889 261058479 569520895 791585204 762909065 658633786 615258182 542186540 447321760 267634833 820652937 877040741 695932998 187732246 648585254 158049187 466324073 280192678 586477285 456807648 992153488 461558078 951801947 151579357 985426622 240496988 861699863 369933856 442345189 833321397 493977787 339903481 429029603 657098750 119747687 310334647 92143186 931817010 546529442 664184597 107192199 911594935 721369615 538643053 693861326 48662353 19695411 995480751 691256123 908491601 993638113 631636394 926063076 556262663 487429238 694166909 466664947 302400964 678768840 434571913 652178561 440892921 631331525 71850286 945741662 394960425 415263341 226654548 23393263 96197876 945336808 22721763 674984021 884063758 86536820 480516889 447838186 685404067 603472044 369500404 815212188 160529334 673135966 464044908 775276144 792963600 289618808 29199310 500542805 81320359 679885322 481713568 900516973 950496663 254570508 540869137 165575484 569725306 854385267 184862999 441665217 361620239 677808327 60397422 751098768 428814857 435506129 863127399 815896371 565037153 583135014 931933793 127640270 489655924 204277903 558100432 119848919 210782969 884191323 580299242 593912161 660835190 482116337 494864417 689730772 434776601 841418431 506561272 513367556 758886057 663122159 786007641 851796456 635342774 748676735 509736349 208062909 535755265 821048240 722405739 881855631 129465046 88584621 872917214 917167146 855613660 341311847 639598102 263828607 851230099 368459765 336447326 414602425 748335358 287605270 108843844 564167845 534561750 530522268 563924503 459857154 45842587 922635089 599614255 849944633 575483912 179375238 310031012 489582885 336573191 812587448 96372103 788389277 42728044 153579621 849001281 241216572 343012917 11207249 155019770 954598240 598891869 829303671 710161471 669398342 41795388 333222621 785541015 765242109 488115501 983134497 921779191 478987781 282676713 472250682 315861165 297402260 529449627 582939546 93596540 996590738 503013052 238683050 451708433 307192918 494991372 860834935 469031255 334631706 794217275 471762248 977645380 490165306 338060562 578898467 965919810 100197303 889205547 299391558 432592740 201012534 750209846 340986716 811074174 804782466 271261756 355121994 175356049 259024887 45265733 291410499 215089545 748476830 290392862 481135715 150170055 864541266 128699094 737968117 539133604 510405084 891005949 538580498 185296907 586751414 252587639 326153974 388621079 543236667 510488567 520987539 83329766 760110778 547325339 135379034 446056712 367108882 581017807 241170405 684885652 497467107 168148468 460781381 32674157 200285882 617823810 900134508 909027182 196314491 756978048 976401448 89424356 658451697 492065747 70174995 247934218 829767610 253976005 162807600 162902377 190518386 18418861 534658222 424976952 360591030 42612621 149403539 114773319 258137687 443000387 846330801 202439142 442163213 342386004 87731893 51242095 168529384 673666827 460853873 424398560 50702144 780209420 382940754 696856243 440167784 831908572 12530354 720730736 893169601 253479733 361068380 171074473 776622519 209016756 250615166 159437849 13605188 55749640 550994340 603113916 476716040 739204050 542376411 475105420 609552114 603722146 356468945 437256107 300442914 184524400 854912084 985111761 628373842 563912296 492043645 515513219 289805058 894182148 179298560 275857617 948646586 785470263 706617675 186451348 320491922 618308867 839066168 134115012 928566862 729570345 91463973 119034607 517071366 123643644 226494393 557356458 412447288 7823255 764441577 836663916 700825811 408509037 347627971 326166311 398765431 137644673 255970910 265439638 1758723 105490444 684552881 92123806 462633356 735242477 337502175 369475246 69028773 331278310 211625869 982764890 876787829 12010628 667187989 873613401 649683434 787603917 339638831 202936401 605673509 370359013 466326540 592797817 11545080 581926575 310562015 429958617 188924754 243214566 619160471 885670718 177776363 48311047 874182776 711055862 992238635 725033246 241281515 967613654 570940519 168163894 851625587 233974934 92387191 632360328 410256781 242028873 997170311 217012464 750108737 422440855 432526924 4875278 298223543 237097029 932240679 412593803 456086129 672947597 585432994 228033258 834979831 348658965 652112687 609314782 52876512 491949525 669348697 562456802 524071555 65871274 938169737 958838683 117211304 559446340 742451491 94328698 743150702 57499743 438040142 298504350 338011209 427418679 950424955 525577735 222245218 613636977 169051231 926647611 546489984 160570913 61563392 334613910 844126328 300069588 139705689 914589732 401770931 274806603 940483557 682912517 649626059 47425400 477354725 783514143 61910510 856878372 460597202 743968930 735872410 354456041 537231914 881498873 939331194 968006873 698050954 144735495 677124847 442941692 935493158 811816334 538884609 48337164 860954927 770630950 161965968 482523618 879514637 412442572 480473184 146756027 429567772 322569231 505675184 722123132 476748389 174623087 888258592 836824080 496596090 102230236 863392314 406440444 565581314 420030321 446801999 359309289 156797699 188087712 621658129 486625348 683244405 454513861 324430527 679398538 469244968 306740314 673354147 770984498 38255674 330991855 695963463 265525102 377362656 774620968 795184088 674080201 715270762 831848558 458773456 421541141 776825157 417617877 649794186 846427922 215523145 579480936 612671607 308159252 867040996 146525218 847346844 334549328 820814144 492335401 875904640 256694004 782682794 59560747 882472567 967432563 811372313 924462894 639831323 747425081 761861517 266472825 830895513 535275135 300230325 418780490 177851828 307428471 392618252 781839483 934953350 12359707 150665393 118256684 465319557 296885645 305433381 947929417 60931509 578186276 593917832 782807739 165088454 569682910 899754641 813099955 499075070 570135722 987609445 207602478 871049544 129429432 239066265 226048918 309478555 355426384 346422248 868119110 878593233 371927034 807918344 121676886 625232386 601600092 504153492 232300109 934596393 350519239 24123656 513065267 77972830 129606229 440771057 73714045 589475163 524051175 280767339 238611851 295599914 443952504 891293426 140643193 260927209 60781169 708203486 436661877 883870382 353701106 984408220 214890115 123278986 654333491 188007026 625563999 80970850 674194241 925425224 129365380 375274201 269889364 461117640 802967595 468516123 41569486 896432471 219069644 228302966 912716647 933965936 42360627 513869460 607805636 275223094 596239345 524534569 305867534 930073648 720002674 853391540 841537119 674002242 948228918 462470899 586829758 126680141 415853122 937342419 976240441 323934095 864418182 140876493 846976998 984882809 200466154 968737318 714708560 905453134 585340773 608967409 239719128 498999115 41439561 113196252 997312171 275597578 536895327 683137425 168564023 940618623 387546698 703483319 799120234 471716929 992507704 750494182 868342746 656566878 121115873 917437538 340342492 722831449 717555734 699739546 329813881 823994082 948089338 451313079 25111325 163424804 528794523 503079760 696811516 593725380 154680817 939639355 431038018 303428423 638285681 348514149 70895478 945015622 658164144 611788435 895472521 496262363 598750570 664545316 575246299 907856653 354302245 757351841 193872843 742999648 617305529 417238755 883691591 544944340 306150499 610757504 505727040 562940355 658275964 347736760 432669030 189576592 330158530 247629494 47786520 441962169 797861547 706952957 102443943 232816476 106323727 181279009 97593967 308592222 459193773 436918974 121737161 579174847 473919577 186436931 213604002 271275283 31987793 177252609 309071021 476363503 992627322 710479565 55135986 873690970 328853541 667265472 535618361 622462640 745903192 502807453 2141745 640786154 691213507 849539920 892615854 652297382 574567037 863073754 323392158 154829940 782732323 765472602 153413811 414448638 649819887 524581881 994148207 220039357 527993625 288322911 54641505 718348993 306620518 370119716 907447537 106640081 41347954 586844680 75205611 719256203 682472856 580866499 586386305 42359062 898197459 401188752 696974904 110139719 614377596 890758926 217473333 931027681 439883422 508297806 289699758 551898347 536740610 52222251 479709386 347947686 773117238 456699922 214934703 452417728 117295943 563998799 704687442 837277743 669227667 765392239 257904941 583250324 508274618 452696263 306556071 350321634 979137576 664806003 776362920 228856466 919731103 328187220 693470641 992176906 641745875 537124956 568296813 829955418 711347225 137141792 326316881 5112826 517169465 155186136 951947502 839562454 588919878 219625483 559404775 224597889 376349320 635625735 673256228 930667049 632233959 641835075 64388437 30239554 729582554 82043385 275553972 778420309 33279338 581899360 746418494 973225692 330072093 308378463 233605785 225500022 109339670 464585076 335884637 490938471 421755296 559421339 967258243 466913661 816618427 303705449 706318873 86495600 335583585 264768196 415873307 787562501 106681919 468428766 216975367 800475368 593901253 335661096 759401354 520618410 529887289 850413107 86129973 240864861 137924251 824750626 267967356 194666138 361416891 439637150 643844418 568284034 75967532 156215059 826915084 735906259 121692116 854790794 413081502 612587257 913968346 206360645 714182241 878030 327970705 424566280 704255637 240547946 541437974 123547999 871713879 199544996 89372459 48264518 570538519 301719626 100493432 40212838 362462734 867718079 134352187 471691750 27260676 862119828 961066041 722432963 239132749 276013984 788854789 991634321 260130990 605382227 836690056 16339910 304854143 991730011 25650425 765475364 691065883 750266331 816227848 883119493 582096168 385723144 740268702 258974485 743615971 672479788 927664089 32318475 592868781 230191754 611654527 779646107 840272081 848513601 166588120 927167319 215669270 164954999 595412584 784940249 822942151 648639644 399873928 901104501 199975866 617625030 556632881 862537907 85883289 429425457 201698289 845578516 512839656 519341063 37743626 501893879 51731802 840041628 680855092 70729080 786640144 217397487 236020900 973404170 599656175 284243537 51127794 878695633 318687648 920880996 930352112 98591699 728345504 480074828 975579665 392354727 358388314 788832414 548891519 909222654 858858580 472221243 19140114 634872069 280217010 337469261 235704850 445184190 453855596 880099804 190405731 138181576 316805797 844355901 483540308 792290479 296989083 383679965 841194423 21258545 632797734 115135076 631538623 554436008 827487186 635458532 45345397 138062899 331064584 946577329 639315181 24884210 106806023 266071901 900853156 942442517 387391779 191722270 923505493 934278075 934831450 594953080 456379750 11967632 504225047 837629526 286441601 250926644 530889211 673059381 371985292 308884044 799157589 719688554 352865659 581915047 937183350 963743133 810123519 584860316 126842794 242046510 717527534 553611208 332480242 207129989 477621624 733477910 742125771 370384596 380258502 889595365 480057300 961813125 924085577 37617956 848096043 564009670 719488240 113575941 235833355 208256269 684808196 629876403 411925851 462200059 637779486 894696271 793215461 276263833 82463792 132941851 39665051 71271491 233371472 666765620 832483082 785189759 521316196 198116907 907558123 107006796 188347261 34392378 320149644 167944762 450765466 963230898 300754738 272988958 353168511 70768256 537571503 254834123 358737012 305946763 111652426 845633520 573555272 2811973 109955396 652104052 574625256 406006296 112486127 593667680 56413892 612943779 941845319 899316481 670879230 641549050 74348874 514039755 536875089 480290512 861694758 345589952 173539148 407902672 595132220 852426584 226520070 27770105 912595757 360573207 868888101 838407516 724761974 673229497 389221662 417326193 594580094 405193572 23680447 464013664 493360620 664377107 136586592 890199399 20358725 175249243 738115695 933766311 272409286 290624542 757548898 736162429 320707027 942594224 812175349 158959515 818904044 104437946 135886578 892230121 278940053 145552013 215600450 451014884 537335627 700600546 838876026 673831669 352972606 491594448 879223217 918480781 67947708 132338812 204730664 360552671 917147754 144221756 842032046 361298084 659320035 810003333 876068382 898278709 760263788 665359535 477273869 807250135 446487292 489283710 377486534 641441923 377131205 14990861 775211382 9007342 280982677 326963818 536417502 210720676 412230626 726339145 59067846 6835124 277575512 666440245 35909469 450598320 170760796 479457695 288016501 898877703 707023632 917244672 960283209 320147869 858647213 880022216 472405806 275988190 779035881 683280311 992271955 806473141 847827109 877641645 150643063 671990422 579592517 158372569 704407287 780544121 909785383 132850126 479169216 718363595 72083483 68999379 784212701 242580226 714693097 281661690 888798123 814911858 560238611 620839269 761090666 988796639 790785132 214553582 882476032 509290524 274044909 187223941 562860890 845023106 727640439 975108422 82081258 476117358 910102270 889943916 928946358 312514771 583984839 188033691 387315282 194964670 450684386 793772591 49710309 965085492 377684336 739307465 205057464 856552830 617923016 173651287 856030627 74367997 461219847 5501468 567462275 333673641 200752911 119752385 958542272 498895152 488807692 935830307 266636705 266828667 685200140 353746782 368177271 363510368 742165592 142858575 758189537 481964004 67928971 772269532 935617931 329815405 274327835 754486220 553844146 111716984 357373059 683066723 164230226 202832878 384432058 179464553 261801463 357206762 37210129 202227066 343970888 659073399 730569024 210161516 834244718 599696798 935019539 973952377 238340801 735160059 24480411 516803948 711094531 288637766 136773292 288198716 706013770 15248410 484398976 762908719 125560050 446270621 715310727 81312656 65524211 301894917 586685315 81479113 409898698 848224404 125115540 726133768 829383836 521267614 610026859 677590612 51225425 466401405 990468407 154894225 528925457 138685173 393499362 674129384 163541627 688081354 33800505 366753215 253041634 203342420 567390900 842595626 339225256 96574625 696980174 936254302 525892641 45219534 859707974 122636133 952316047 662280227 564417549 539527014 124540794 269350529 191889269 334861753 453051161 537751854 262630475 643349018 18378504 814348584 233066820 185399860 590669530 786824062 370858406 206240838 299394522 124076585 993860553 894623460 586821055 965010822 879257837 322235833 97609832 876463552 495528480 853277611 961255251 732970567 945891939 996560433 900503055 980740424 837394061 55318695 524794325 849863039 941653761 659685241 326709474 399032914 705530010 494563021 401639025 166918774 155880539 539916151 434163846 663035247 173818894 411379 18959570 778338745 247817575 755426463 146257653 619329517 417510145 377142323 240539000 881501656 295723292 471782998 968474557 206683730 630193844 641003491 462011960 71843310 868284599 21649274 231418654 5203627 107432466 645389931 178530311 748761744 839202321 77817771 340408202 476611960 421296315 244434091 302496748 668487849 598433697 727021262 596115056 797439526 998010238 470289779 76203117 684182997 882742093 842989774 342946038 628022217 52593623 159560472 895226700 269460088 98136744 678089845 886194818 150044311 97821072 89035303 163594870 874801367 415712910 829410237 691982130 668208001 315177490 718389066 172656285 55633802 390147044 212055977 143060215 360040211 263535106 21556925 459924043 917692055 72974043 506687022 394983026 507802886 326662474 852712617 804030844 226313276 823648744 575758364 913673294 932464818 903135988 158481753 374804873 693694848 759894001 569878651 17515512 891041647 192143249 745825262 459621219 725193289 528921877 44762914 196550332 28169622 651818268 143829260 139916644 911195020 173308686 497276203 453343461 753929896 114767172 756724667 491219358 20070202 271149103 18610538 36208100 936200916 319622409 293807102 585903024 661227923 310128151 719411547 26570531 541742864 158882422 453393198 638990346 146230430 610032979 764623195 231295586 918768124 29741696 490425289 496725026 409248047 779199786 41062932 794255265 88918817 97886191 362866947 357645372 331320079 778777029 584265318 472741109 243580781 572293214 948286411 804036660 963133602 987532835 133577636 36984105 980535636 31708870 771955536 843180464 640555642 729623232 788035219 528485190 752448565 625582944 45293935 362255603 860632953 204738792 560343003 487661282 555049778 183362429 393444523 65728860 18967307 119715038 742695272 984384771 874047588 455016692 681313603 975819217 12133411 216788074 18131833 636532411 768698042 380325470 715981234 175735862 131550235 520226741 751669721 903893978 765860409 66608797 55322807 792534176 35144908 914232062 926651290 447341126 966803270 688871769 407172134 890692659 252646133 463111090 92722948 866386888 862938121 428095463 421689383 125407308 719164270 59563076 348902512 466376761 57321961 825829030 214402503 118863599 40032654 235603792 325820701 292806835 425045200 994616591 697357581 74862332 910451403 377111155 871980375 536118314 368052316 725602493 944844592 564182735 412512425 359846842 907057253 422973827 403590019 396198913 378299964 671946838 812830451 681506124 622675643 309907864 216547904 28553863 257598864 174463489 920449220 595007984 58672846 93272384 460396703 201688201 776640073 181745273 161446996 317242854 608873476 402852450 51113436 663422072 286267443 229476733 296582625 110196347 96787451 667299262 102095621 762975472 866598979 546094607 173163616 541159304 48745696 817012436 800487614 220954798 854913478 103327957 980587165 346534171 450549197 360686497 643456718 354060596 736792189 169674715 817712521 236614545 762063744 14655845 117028073 78348299 836364816 868357595 975213762 643150379 179587076 457290217 650495814 530056694 726344861 403572618 765565100 814402620 984559239 339332275 790190513 14506923 917432532 339389532 977926861 212053803 413617569 864259354 922574514 795068186 729325468 8094481 391054962 588558432 913789800 844024415 866485223 93153586 494758457 99778072 292175309 246627273 89654031 925412457 638576400 809435277 450313469 144466610 165976650 591452689 748488990 920660669 820177536 282827290 453207368 97147375 135543118 58532823 231530755 901210623 640786957 204846054 361428589 889491418 321088205 780834231 325020227 475182840 901435810 394791289 951680324 502687040 700678395 188548884 97432225 734942690 262858123 879231950 889247913 652104575 74898314 832079083 495766320 78557363 984194438 16975546 300330017 220605669 685039571 311169885 227879807 70960937 996133513 328686830 154256826 830787779 392609589 805054515 649398204 985479967 136652831 102607239 832736980 641365009 689821 855150615 595188456 266497054 236802964 528296241 903980304 694019402 260339016 162010706 490459264 392188453 694981819 318933486 375376262 876779923 31334384 402087611 519769326 933567396 183767590 913976807 656378527 905935618 757211459 280341655 404902042 408282072 286621832 462334386 931164232 29755753 825511704 456551950 154275406 618866889 468850797 588738042 267112885 240580083 904165330 541706522 891375815 525441479 185220015 336049694 539997066 410643261 137944571 761354687 643945999 697253090 585081534 236877401 825870126 635536252 208821012 354354157 725987733 197752077 315178265 828329129 732007561 552928989 194709467 169658592 279014936 102876546 249969816 892347377 78995525 277034871 293849072 529967084 215499268 681902461 378825758 20143178 508736855 620990223 414474427 4616665 417471275 743168376 79688289 940268676 486764757 889324099 663303267 727054129 951035450 134455490 495204772 336229621 387602595 436488450 500629158 716505575 624903956 190971155 685791623 281945909 497030481 88983330 916640825 71549533 10196573 651797696 876316117 518217686 969076001 288289781 500350901 145829601 709343778 267984533 991440677 365495616 575706855 220760920 109930207 441656725 741490077 591720490 555083457 835470523 166778305 405992904 85949042 908107910 224056076 82216461 526561123 84376043 236500208 274790960 439313681 367293328 771891625 339421602 89740380 866561745 687263250 309717105 242683764 52851422 446019149 303848107 925274164 47920637 319221418 368628732 531664587 35824044 165929260 510660042 870303469 992777971 132029635 6734262 220738977 266639969 805289137 910145895 736358339 206322403 672927882 854486370 618723259 717221239 803952474 331009304 547032910 604670326 391748109 287124315 636613033 785609536 361809249 222900649 641072733 882375646 969056438 154363074 825497399 442555944 95316897 263023178 87386477 598866061 674941222 233196585 762737679 597588802 194211989 955073225 259800939 697610068 949512185 309598469 285842289 508397778 748945401 513730714 820216119 81371247 966866171 994715264 985455692 369046300 76396437 951198439 839960972 438375718 222378111 354127470 161252052 525582306 59938861 541098191 623889815 796580160 339547033 598306599 387044422 709045743 796131606 657287829 473200647 724110064 915993222 327405010 749524653 687675769 831893360 899859001 5135306 158137446 32841438 50956562 838197327 651071795 420558370 965057703 589953329 795681418 299811747 756508661 236264352 285279902 586490254 210923963 40874163 15915876 522234433 976392968 83279817 189090437 914910938 271411240 878237474 524547883 480541892 441284880 811737366 21792810 276141286 192023468 663941120 140669456 50184987 272299049 879982274 856127478 819994108 752911336 235026344 639611066 942392689 962124979 738576194 87736523 835307573 746706411 255772692 174985593 814772961 714692391 663603959 677904333 624364766 557820037 131671158 807217820 401302015 672258684 540576434 808527976 849241853 154343723 439888822 691218056 700501070 435153984 813608831 946731635 680826263 620945318 859192850 317604836 978475952 308095475 728420851 591671501 352478093 822817999 339514183 54214952 291382238 153704278 125773217 685320201 839310815 153842051 537866917 766415808 558516156 824927755 27944830 904954208 174499802 623761914 852976345 814620108 873561284 296627910 284543187 839651036 372557242 297345937 170750535 991500333 551390607 113097380 508393577 968861824 657620101 543352871 654152484 48420469 278584399 947842249 45031309 9517218 157188596 169073208 159039455 856271415 763407224 225721324 890112485 230494515 360723093 417057875 58601450 338117560 843083635 459861608 944537282 458907594 345362719 881600737 86945378 188681913 324098331 229722004 129168305 240914412 374072168 655996828 928556824 957247832 223748600 958672173 976146301 482749275 822353016 232179906 894247892 579465945 278334435 686662605 82194357 251898443 874646378 393907804 640995740 663315944 642313266 84689378 309805425 58786666 562279835 195368715 945899922 62402988 909408545 160330498 532087364 634827482 475635165 68833588 132123028 511798380 99784424 27268459 523042388 981712086 247987122 494775303 312083808 399718738 638402377 698775766 44824104 51757895 629721515 119104035 236005433 925392216 188591618 335525020 605130853 21214083 145703142 286415386 920724906 703043983 214022137 199957753 353227367 297478887 254300472 257437553 504360970 61523166 164717309 542959517 253667932 739926095 634842158 174488435 806561338 711084558 522924581 458997354 367765246 703121406 887384253 955506333 969812213 811930410 729922407 312866904 604740148 450484371 636897499 112098422 827470658 152532692 339824245 292158592 459747696 790645593 257732304 937031465 433640537 664964204 876510568 965792185 860532132 994495215 235773889 642876709 550489994 669463752 877342776 20844486 403884362 188286688 938368950 893867125 378583053 874674654 618553505 693167810 431609023 360496313 219350315 738241905 890612574 261855690 72271376 816739287 480961913 95861375 19020085 395243693 824620997 795635001 111039731 208454868 327821522 947601659 375757728 848110742 212422121 37912777 203452867 719693948 763184176 314439310 879391520 937314104 977005702 480032210 464820961 477529968 938832304 798241750 149260691 170242037 697566623 997109653 692241574 246905679 285293844 283377344 922003662 400250072 907555513 843356404 594864882 659348232 926804781 307068345 859818130 131647787 281064160 488081485 137959482 640300579 578721092 245466260 723218623 570721427 275377971 498547199 690843378 35633952 897125978 851615644 493685262 308797602 128240716 462439834 792727831 779538567 254693953 796398189 167565227 452142681 828245428 874754162 793492226 647860227 210883758 866810441 302255846 773978599 892743952 548042274 240670624 681973173 873511458 82447165 719338404 326917603 183492410 813500150 22164811 881457741 106649414 809195378 512915124 248418210 300983252 502350463 695227790 891969392 930004433 35806299 11813821 876465579 501400649 510880499 747969173 538990091 934432691 879034035 44083650 689301176 421722814 305777684 542028226 177963572 468569737 567863936 775952279 990674463 581678730 704401683 582197472 246808298 991087821 89568447 731097274 173090174 346619822 739231320 10957372 645962115 379706130 944743221 939892497 28472338 718754439 721315695 355550593 986029144 126679025 944025105 960684320 634378240 451260753 506898635 674848017 386886644 528927173 632946344 189198235 475391762 566473878 282831983 760410724 197551042 258397744 620739755 520252980 741873400 167311109 714207763 417522095 598404599 554682365 363749733 74052269 235856609 646138532 616006191 409191101 857175503 902011175 877114922 302295459 954379085 231643438 58288167 807330227 380362241 194953660 419528151 946938803 775010354 584158070 778891808 828531543 148071100 444651934 661539016 648758325 776301019 149395879 822304375 734050069 701622707 766798273 778334447 128087644 585584208 686050271 185668910 610663388 420244311 796382519 92929947 142649551 319975599 667762582 533271274 218452809 65718737 642144265 420856797 147632196 644091468 458718475 235473149 175273187 41716420 124007500 259320951 356135482 988760611 718141055 818225609 266948689 713174992 130048729 286825239 41517012 687815227 876629149 723226129 360478108 708501001 238930241 614942169 155995734 110330079 511883050 142817908 312729726 654659317 625308363 446186742 573096262 807842285 225154895 329347062 965660210 412280520 442900718 344329550 879572037 419409535 340055510 867868318 268566298 635297061 151241313 45667334 764605325 878959348 378186637 73672094 313078425 787240795 424259086 237395647 188532622 785179171 794591561 493188149 448029994 180643627 99823497 393525936 266200194 479243698 667612155 733486235 292776148 360455341 914368610 987128262 327119593 760671682 923452215 540446085 481607430 191317214 380462973 200784688 456054076 495001800 871321053 635047290 587055324 484001720 63651291 750598227 78973570 33415151 910288872 426219445 621633547 887609995 473311606 185600199 857350342 580584508 788713522 682320373 916536986 471988656 333916233 574827261 604896 479499990 63571772 866977837 708916304 113449725 837372669 394973878 22848718 119410127 140170830 89071450 433913815 337594653 873544465 549687029 111831087 98989138 434262265 795725222 204029049 982512528 261393885 672562641 978263239 437136534 605053921 200118867 694264278 414881287 692800760 388058862 910844148 169704011 437537315 718231380 515744277 717722026 930232309 14410359 393749359 31326266 217447627 53401249 124521796 370632779 492429837 882259582 263977848 848224085 129138826 130811060 966217735 239729978 421240944 292178098 599888167 81691491 45099783 82541976 928089167 554361966 547773374 675426144 227220804 42277236 334775649 349673837 754384520 496285079 276333009 214114865 264689624 986253596 521923968 619662926 362963605 813787103 992976641 250723262 670166857 259896224 86238056 737195484 703177146 883931666 237187033 335648795 665217060 962385937 893392987 317474689 343986296 123561699 879748496 854308964 269289460 290237808 676824742 44982127 636681915 983524048 271555049 505880000 819641268 595561458 399273899 716713059 927728937 833761160 380524469 58204072 705801190 466382972 357077157 177709044 835943004 43350989 654787748 23446223 402373308 934298670 172285393 141744719 125241721 287121220 46372457 824333308 293916929 605562996 451359394 47036925 194070801 237606788 498752243 272998465 991657982 310599271 881368822 924487754 176836895 391780828 786969503 423372860 389801348 429650912 583631018 358541117 677407290 645722694 451657905 151850687 492484156 214546908 896440124 617410105 848258337 616068183 851358324 351254659 278714629 370012152 746345706 136525079 408723788 953611026 961234910 700736413 503174597 273647587 158236549 876445721 508322702 291690671 591801065 94467042 364660029 33804279 742785588 276812459 326862051 293433275 663793953 929615097 470395248 391052687 31155078 824745226 402416728 247015863 344312169 971118587 668716122 130403625 885545588 643141934 446748405 88324194 383635796 968236106 229401815 182701867 822315361 88118017 406617918 970420101 302596600 193081533 107012513 552925502 946285132 713148472 642031000 635376794 92928657 91584667 857171235 101869136 948277400 519097884 649833231 464748197 338571412 399459738 265017006 870377170 783394825 235902165 177421545 654539655 400445638 641529174 651758296 15719741 461138906 237671539 10460865 441586111 130458109 352829955 484362966 598661051 176335024 73013082 242359995 703307879 103652469 807475316 335919341 992223548 965899792 231014397 950370132 391871392 423140138 731332795 901255506 586734362 95005516 561805576 715788643 331080870 545829664 516151475 853474987 869210470 555890061 531958763 910553782 19280775 644244748 646737089 663779313 559551678 349694618 603762340 752340510 324745572 667100324 511158905 205039937 444006297 426110055 945592695 172080087 396566307 319419937 316793120 714301596 933991064 646407 963495965 790578303 490696548 287261182 668815853 503600099 823535941 333614363 89083205 368091552 55299686 729480192 690314441 546874384 857986865 238294792 651473423 111419617 600290548 877863217 746038412 473078048 936324994 214685638 880043274 803605884 868755967 666935562 42215706 712309437 50321083 229657271 951515613 965510341 318462400 251121683 336491554 795900845 43941214 366090016 577005680 468220443 211767678 616242584 152423333 496123508 176519902 113986364 276058357 43839243 105408629 548001456 492553860 240110041 246650418 98269572 12273954 212112965 676164156 495520638 821729468 443793165 880121789 405606671 175294099 870834144 937289952 413509570 830134023 383001039 523244562 328481399 717968617 79962571 946857432 129107319 319168978 500287999 421591314 498715538 747918890 591577923 24778141 673984703 192117115 648477289 577508343 207037026 440311351 203969656 966822981 253791274 179653936 56189140 779171924 856073287 169905704 651620800 669702649 683128822 274444850 785288647 442683169 117164168 363531717 850215501 349743529 313626020 227616926 12042808 662273748 621577755 261646553 667911753 813897375 626784650 541473591 720047519 937060294 81406466 978744808 54715243 767517938 180082163 763719248 227587022 952772819 639706537 338506663 539726397 663595492 85763405 342783848 482582432 46203688 522457112 696735927 870894025 386545752 60697958 28485803 908347463 926211230 731277772 389621782 316969329 769477547 881998057 208810211 964179240 243281463 927812062 980825242 90527022 653340205 857143272 857811508 2913645 750719298 434207017 650502063 222160721 208477005 246668771 20855574 259446171 900625300 697793139 274598820 210436500 777668498 216150541 376090061 752719458 314837985 16989404 739618941 642474600 424971752 427667863 448663838 252039028 10926609 436652743 36466271 399661384 336597818 706149399 130608852 98503816 29656967 412887871 30186274 652331310 502755481 742201172 65857391 796523084 38117755 339606358 701525473 831353456 616514315 772830264 829110555 703735028 369184807 171249401 126890462 276001814 242153382 397535985 509206130 636345504 317189430 738158354 81934956 16352824 616693981 872264075 55324557 498543199 260850885 656484415 590374011 765119962 591995337 699172014 314546309 253581959 297407932 703708591 464436329 320288464 608959870 247021009 315831801 643586780 953779398 345237137 11999655 427853043 752127721 887483661 468856421 82853327 330658772 759041412 372211828 907133717 83954684 694793657 504863665 431677607 767622172 61203368 888867701 869142063 800345917 242988689 188145391 578190214 208549492 48595583 885607941 405928555 599760916 28650159 305845809 485631528 964631123 521802220 636733947 533773669 353894610 755222609 217821584 766446677 970869133 360412658 719540175 918186429 241019215 7782125 68166704 454184795 762057776 152059186 547768468 834399124 645826646 962839546 271404727 221625503 722806451 565998759 348618215 840921567 446342853 827341601 615932359 331872932 872589756 479136645 592384925 216020613 389049246 515950319 861414012 364949481 438845533 686160284 327628192 458343407 427582752 312175819 926935313 652634252 921099864 901673986 596637785 22788357 41542398 263580971 879572596 364960033 620150770 51224754 919070362 945798201 407266045 272289907 913825073 81847632 431367062 747034809 399122573 854688648 511274083 282422889 366875268 664227859 77277134 265321306 657650094 6952766 174254248 97305795 320885829 713616938 413673039 928788608 968358378 271535090 77973631 867323455 469296129 253798018 781848573 473964109 647615310 886793240 424201760 856813125 946057845 592415772 858547618 292109359 403149194 11631780 33636830 305027227 620701600 901113368 483478811 400503347 147424271 830533547 159036257 597498411 673230081 362490723 951657723 549502664 244425080 114985093 905115137 548313298 115083701 388631830 175300159 347398119 940000431 678485164 733814451 530639765 709495942 693318602 699226251 962755042 110491996 451317234 728782861 709165734 266599963 449883554 518091149 288975316 37426766 268006578 592632223 211125368 984962606 412979612 811072938 959278728 713541861 374110413 471163924 332785149 655425242 754578413 403914655 664583549 16011810 505039460 96558211 391667428 432153167 245832659 532136122 939667618 517710297 637424199 202414632 485614845 513793630 442012552 934032615 955514663 368451642 882632580 834786465 118711188 175523558 468421065 728156880 207938075 183946955 64063487 338334004 25441865 712140100 628107423 907618129 281013182 142600274 18517136 220208698 8816037 237827622 196813701 825695186 891039499 753520170 161783762 169266657 481076811 683183972 295896213 595846120 233001475 36000882 973571100 728119879 822473461 223091341 330363471 308808727 172264796 563846337 923191976 633481372 14160608 804437396 131568343 786383473 674446261 72150592 428714033 265349634 830513498 122798187 179897186 574558439 154034638 796953256 754526100 259841563 630635011 919341139 181948865 448227470 33024317 838465505 383517605 148798217 602909339 482980321 970776914 891693085 523670692 194582910 705899372 554962455 177289235 689790114 474442210 269538855 629903668 732197329 92138632 911420567 668290340 706280316 197369200 669070807 852931463 725792317 855232033 302455366 477257477 720107719 864231033 435206467 374048365 349695779 953206887 560998204 168426507 508532506 546021511 949540933 740673930 82561254 789107200 488690118 629636659 924742077 634340882 379473425 546636 932428144 347801553 129074235 511888170 6195217 400574810 86104589 357264197 298583775 931623710 547669083 797781543 750122283 763951650 844595976 164377344 354939886 569064659 258151520 554054474 319332557 955450728 234244670 937822186 541905319 827498145 235626094 325659787 151914351 317919935 93517237 28999490 672212119 307691938 445567895 797399452 796991648 308167825 719010857 809817081 748605849 226545560 736312802 661685070 850043690 357128186 773185066 408272366 401236262 408774669 439710207 130174809 618604894 911940365 149206202 90466089 649505642 675804351 866338488 380364818 695980320 35797411 418282775 828791480 543866528 447929487 132127224 305527496 1126810 828750471 453407773 672035033 214475312 65727612 830330442 498681681 462452992 957173123 844187208 597384553 649285821 707807657 407665258 633996404 522177977 32425879 843941244 955261658 821193207 119344954 446012702 87146984 356400225 485147972 226987074 468025567 119004904 928894137 136481531 776504333 254117729 857598824 434219553 763557313 143374523 720031434