0
1
mirror of https://git.sb/baoshuo/OI-codes.git synced 2024-11-27 23:36:32 +00:00
OI-codes/AtCoder/ARC148/A/data/02_random_19.in

3 lines
617 KiB (Stored with Git LFS)
Plaintext

63852
674274323 190696697 925196246 380381430 828280343 116364327 317939925 910170039 446704407 913355788 519119449 24614011 941966615 128850766 560572357 532184571 665415459 687100710 146707080 818184313 719412528 775186743 533070484 662082612 537842657 190458760 19202773 879553572 995841191 579342115 66905351 590610673 674478611 199868111 560834367 426098717 969744064 362200995 58920430 317135275 431011338 950154228 509393691 433662560 820139546 399463073 737622755 50028715 216876417 743512394 363271246 933884471 467903809 221698731 608638291 466170819 661621368 290968589 949409561 926966875 713513047 432044083 986453253 639926807 984076942 871739822 662787645 799732026 607125682 793691299 449663125 924801635 146189976 111711455 105751326 536046226 229826760 229034479 202037075 114635327 558579618 539012259 89249218 872436343 993649218 559427759 898534800 639548954 71186621 771155912 726159219 874538541 852148257 695637315 865868670 81572458 757402116 773940533 235805376 792620383 856444822 414145209 539625788 865297435 855066676 490523252 876154491 566157692 340011009 360622418 882826835 802717211 834054671 340275014 93463855 830242625 332479485 556016043 933696542 966433295 166716398 963439598 704998786 757884773 571165275 873886043 260572503 733481800 573799207 938288899 611718438 45597155 508012486 739288447 7711440 417723042 300022963 154918500 281231925 779517622 965503226 439982853 808371174 530959242 663140361 778695150 642791627 825777948 979256490 262320788 976852116 806903918 294145959 370099998 767042089 178870337 676883783 903264546 402492015 896937204 504625907 75884048 481394664 971591966 25965557 997041915 459456314 68186939 77143558 503800509 183911702 860644031 302113989 909983041 168658065 248739094 904751353 806964433 511462772 40362674 278118129 241795563 678307814 909840997 801421791 938830874 953334790 873572030 161363281 344798477 2497175 793273945 450497966 752727831 857472912 439458567 664889178 223489177 317222922 192926841 456521802 123317966 96414327 608837392 885886367 961732809 289773983 299611195 787220849 320563084 24489922 347384396 911845041 874449697 436264173 820175323 488194422 452955274 168554857 416686972 405623899 956507904 152256505 264318847 666708219 793814590 895927335 728268732 117198902 207776823 880813215 261715904 950224585 825787391 460634295 624775713 502804472 805123580 373428057 553250707 145410995 883405385 678135313 826688067 12542532 733417428 869993133 409128449 366614866 371543181 888429859 807223118 690903180 977860123 642919972 953232646 452660546 946593020 252285273 410227694 516655757 135720881 109220232 51524433 703958859 499251510 76301801 847969397 769846793 898122633 431042460 772700840 104875388 562508704 484822207 901535812 528802647 275925225 769402573 743844495 586635303 768579569 984963254 372184906 12364046 914853368 771677405 34797555 615843965 178365070 106920396 578179828 546123636 827855275 800435995 694808725 916789715 249251543 470572454 190377364 724290170 845899119 903967052 793272748 784061035 566703125 14916183 724100778 757085310 155544265 578650 281096265 450273861 260901678 608551043 493340990 830482557 539222931 643156579 177383929 16732963 174301388 601161031 687983830 242666580 946975262 811555859 235975084 481790738 757571824 704733318 875038887 168350968 678197690 126614105 770265477 61051622 298246748 962010380 656160388 673295044 602113710 752802178 273572854 639139181 46708636 769446862 715406568 98726931 560925472 71451291 239380017 505094599 407508376 263991268 812725860 982625912 857937481 26573101 99042806 91570334 957506335 768249995 960276459 977634555 170283724 177755664 740770998 465740165 197423438 116066274 183281681 903426540 88429672 355636115 275925757 172648065 889218150 491612123 524537204 758130158 176755770 335223541 13372452 802478077 881062457 533344730 87271641 512822697 788151450 928587746 279783954 237574808 976509242 838435957 987614343 234079834 586162222 532331270 417236794 517107957 923133682 833647292 995318235 121021987 619783159 796975601 378691931 707421248 359510538 373390950 961619227 919744177 946611640 790016642 545602010 518680283 123454291 508325701 994779984 841504932 236868977 95100021 982025417 441010278 218992846 979245318 656312008 799531196 793607110 981215447 509274523 391633363 262781633 140650393 958999659 516962854 579132640 992849888 807714021 601127382 574830223 662447564 548334495 152247328 360046395 388876140 362012667 868073810 622602227 721486929 151252355 462827997 532420513 701046824 205646163 758585550 480009469 316011159 530309005 699737439 732710533 166792341 565951143 835657454 620247595 493893472 718071888 323443465 698169103 238220656 222781883 969211133 35082840 34048632 711644663 798021779 417648163 407428576 591493527 590353185 652641341 983764525 373058051 447926145 845317909 63947697 895589781 395408169 515687118 426364584 343899397 404258388 65443149 937487175 728633152 592695581 607093629 192550850 240795802 540706812 693805373 66696674 384195072 236780798 832522777 193946020 341388623 836893822 184023688 588825015 736102299 89208919 158668302 330296024 790402475 328112297 44615083 348705618 438705654 325100911 264174542 726100566 626918210 885417409 254004564 216031202 453217151 627932069 790030208 55281417 629258744 231361846 741014787 42897654 812707240 144641989 982639212 427673570 588317221 725948414 886943185 914921331 818390463 219130235 371067174 346379581 96387860 414041336 740326246 80195908 463958896 527966210 555397726 766267231 716045899 600107538 676665929 121373772 851708825 937858644 808786400 651332887 75205349 886089059 69130574 140249132 645608168 884603050 783337 136330287 514325730 949143694 14234026 141637652 565596831 19541524 937554473 373646709 649182277 444957585 726798284 969645644 632837375 581059544 69288711 323469932 931485018 408317016 279915225 933175182 369404541 537485020 513141498 786631925 837116863 649394944 931487013 315912606 872579451 483919536 342471243 551909402 292246453 886837716 983722497 869865320 168943350 982311633 923308178 743937462 695117152 407223357 36574036 548036708 443722148 141355825 753402008 623931296 47292373 441007884 145108952 491314070 89550729 126972274 130737637 405254824 9216867 626834553 92319257 27642554 469300309 156550277 837009000 853263063 516755640 70826324 460046302 348027318 304226561 678174016 835085288 765421883 45532783 753749271 454167968 398246522 556696338 335434745 737849786 546927621 204274002 603609295 161653620 442375124 310178444 519665813 91130902 586069920 280890248 850794051 186354912 41728185 442638198 536554552 881194659 129518426 503831232 53090641 389383934 13292918 706595185 786988365 178442742 150219610 170374696 197057688 555940233 659122697 208496220 658869199 848479186 698777711 402751099 109261994 766485750 660917798 284250626 643413668 742228146 97752839 822794226 400526275 159422944 870381227 695319046 76890725 663630333 194476158 382930109 745431983 435838041 671959458 41943645 74733997 918257769 360807421 25898658 470486403 32570869 1352710 205497868 489234349 921474108 604073199 317470302 613477363 484410838 322461393 569336791 788647407 569788326 55783226 416625659 797434052 239763589 434850649 288553575 702872 182579175 899884883 114517755 448973786 90691869 209807999 977840439 681811300 438309979 186457189 88422889 298336523 339336167 616049716 48483388 672173987 733298393 255918700 936090409 783085480 869509412 344766690 674203833 300244275 689906611 718623971 738051547 702249942 6444083 790483206 434259464 937040694 978399438 211727854 570172696 302105078 872449510 702468328 152698597 946723626 193119159 602490898 602067160 326275168 461035556 818518143 867762324 562512960 751699209 232044003 208166912 500198204 446780483 501456650 708200761 583225449 714886139 565429118 350357212 117452932 728207153 425950954 271772832 229968139 406368699 563098692 389581306 31940981 893131675 258263357 838175676 723247849 274206200 918375341 20436880 488037216 201184412 900326975 649055661 876456667 943097248 720251625 745390354 785778996 124595564 121064414 878316539 514192863 718101813 787801394 173618699 51661556 318745772 663830498 103869775 937666193 880996090 481564904 492975506 326482781 605708966 450439579 788076305 338237986 681622440 893313087 672452223 156039158 54522519 983971872 904204191 239518204 766104572 155963082 565177482 571238824 779264257 914926119 525670364 636172350 768856608 711878477 838212251 423207164 265217794 404199735 572834026 863709149 462853400 511768672 580930667 894425499 539082217 717138760 349879875 913793092 951991224 824612336 836037701 652250720 789466687 877714847 131976931 210067748 487660427 677922646 995909021 296847588 766780478 994797008 124066357 881973108 803403890 957751720 756027827 127455064 192924979 7994464 540700029 280573575 971908107 302163731 425403659 590275646 323866671 743546309 632172109 780035391 908201772 678988242 239559168 386792429 258281046 775418296 763920313 983404095 78248522 743920172 562525595 786645225 194619133 155305663 685508700 514408988 723319536 850018262 784394200 554346627 664735031 275373275 319465169 585454263 289827981 642953488 58568645 349313561 834863710 217953451 95179023 981695843 799128605 200064552 7953766 896102895 555303429 121207256 67255141 134231015 603463926 988493606 787267133 680922328 388040102 321023530 731884603 18007768 689110207 197763652 167513866 678993961 2108283 333771181 85519499 746477363 741464061 108742629 99718579 409592087 260800066 562701288 812201175 251994402 549212295 859782457 304808835 41233159 886828007 12877160 285338832 634685410 910666528 67593360 607732162 734430489 922722845 248766625 805279057 803797969 286360405 890698041 561613215 30798112 39800217 938077429 905381507 243107741 948648801 493947337 530392130 932131265 966560576 987943518 551671731 337722744 254408618 956425577 815949647 398231094 969031450 478738787 651963706 986128467 734373565 72244636 197931897 272703566 836462769 688635796 311767661 15119008 34940929 470087802 167676791 141963901 124451924 185631924 936002496 526439104 818743711 230306092 952731502 941660582 452154481 765811839 705319449 18452653 25094274 366115052 500846180 973385338 734849838 141211121 343275228 974414226 132050480 350743311 354803934 590456393 307865840 371923960 413750066 744379554 699280451 586669351 638318305 707692568 233841365 130177042 403810976 890407037 905664265 935030532 766718234 493896265 89840536 366299124 649276973 343719182 453186960 601795441 818262783 342334519 390643178 954897673 567157719 571045708 702634445 136306480 808109297 444620829 987337570 75583069 894594409 217270496 542765652 242984051 473637439 685598608 276668562 991652489 321659004 891907410 808241632 979060049 95516444 433591006 503254544 854557951 74184840 329489379 811942756 781890076 30285131 988186110 519706910 705331020 309929069 623123853 51390635 587328765 363992106 407702024 150979439 363914966 32977583 865709336 66645203 119101467 11793077 945528887 346544501 320619875 376623249 8034763 765439572 544919986 446781946 307089519 989851536 500447712 407797518 830233315 420479999 863646639 129586123 399126849 60209599 371973835 629692058 713455591 862470121 190670895 365913158 998863350 661742664 353423128 533925275 654898218 456302086 189872496 656332490 64374228 554008940 190905906 721563803 451204728 681981939 822580229 864636824 294049933 874032742 583969584 516312484 251794769 734752216 505139021 810444245 675014867 640549779 134752375 723655095 913754389 279586582 68451875 771977852 88888123 780170386 802563862 691875809 634653889 866283763 719460009 549652791 663778894 805884340 975228585 198449932 608586953 15517343 238100690 16984200 486327102 183659800 573251779 659743674 421140876 423054879 978878770 89093608 190698426 165195410 142011781 15261584 280069505 591479163 454360419 512376083 652794291 799225695 90155347 313568481 832592336 872706599 209055485 416853222 221560544 66390109 468405352 452123226 345970473 726471237 486851122 542433418 619974014 637034057 285460394 778041854 22674871 116899253 50445404 617447014 929783815 941010212 587123147 678780629 332204707 4314221 418708572 552576796 357969600 548455525 252054252 152287095 492419965 519081544 366838971 820777680 22108823 127033454 948723547 515729013 314767476 70514705 663175872 907701692 427806304 5533432 943857875 557727620 216945178 802814301 633845249 729488209 17035272 479277304 71414583 526880797 836590183 38948219 734802623 605121372 589450780 725323447 896101964 356766615 637891907 799113443 331176351 125658899 189918115 264510766 664413437 417803773 557857694 331167041 257177811 459352574 617551818 461872658 544239292 682075970 675599269 600158876 391906811 381897098 721442640 934164436 873381042 3540028 139437699 401843640 350431160 127524623 691572303 80210272 433868045 375275560 140589479 46730980 29406400 418010189 220428448 558248714 996377713 120462988 593622857 906236431 529166668 958731930 16919429 255492568 910605215 106744969 592290463 947892962 27753343 881038118 805920782 468097856 222178861 456543614 465352337 956273159 745929669 736854414 411316698 687777414 440955482 620774275 642413375 48803253 795243941 545350640 596428492 490826359 167243477 517105563 472448153 3997016 724074311 644897283 84377694 969738345 391627511 496347189 554048308 63216197 365464815 583208691 791118015 205559846 231889856 363511045 838524003 218660479 574750822 79925918 771362860 475655581 126697762 26839633 408292810 57750429 520408485 491964972 639697515 380859565 595592321 506883316 165204986 318077048 329036381 849658231 732157253 442046082 11735488 665458418 804656085 193598358 517482618 969243984 424409085 728097694 353851255 909107502 907110773 129188453 391275726 754602466 633438668 929926657 80853460 501177217 880685402 789770459 52273622 958018518 991842812 775549301 55147220 998581789 742054980 806462757 116117745 213671915 356329045 388473682 331809830 948819706 696442763 771908160 304338414 456301155 361841762 950441375 416114673 411453954 270710428 749034554 218361495 831669183 358604941 619010695 302261486 576827484 531925886 916169270 707165755 57881035 946832287 96350088 701852671 1835367 381300859 467600303 136579263 861289214 856597639 685499390 472651643 387254737 591936550 375412284 843972880 81354471 120472032 514337035 463425300 920133734 468558435 430753717 524586281 204427351 724319962 168167428 373066430 695577864 418484467 374672671 680530510 563882594 189724334 385423460 473447249 802002469 535367527 486847531 975313439 349177901 343441478 118951443 387876379 729917134 400929132 292245522 867643289 358973750 496757095 307578028 914558108 728761896 9278446 233962661 62158049 771821178 453912741 539120920 784774048 192297485 937912642 465283310 978904971 174809847 595909925 558045623 89374238 101487878 677719156 480034207 547176464 338349307 621864476 880207799 3773975 244215498 51814240 192436071 62413010 623091401 775796814 281242299 697804151 187872974 946916210 428316891 826022934 860313393 438696743 844184217 233633885 54547656 707713449 197345500 970209697 248785910 878083124 335663239 161455184 48179616 404416392 835494130 720799585 797880267 969114708 463512149 449094151 827062329 663437217 295550040 617938316 83953823 714440722 551916052 698726639 408541786 918471766 57200607 157623188 64972595 145511410 177893984 651262397 7456213 425922359 876251182 485271880 272341540 520594153 622329710 314647909 580422075 326163049 377203528 12264828 424136435 358118028 406493187 405571763 462495098 898067039 854881673 674668934 117299583 131296503 471183057 745700776 948482019 834524294 370679346 817783850 883277838 944679549 155588421 608199125 650626923 197736520 302571775 951816196 728802195 71422297 236494715 390465889 436466200 341626959 39110612 339070699 878304835 264384549 421129172 412898068 59501108 873915835 688948878 720717125 134245645 540017606 353728496 776229862 301779361 507178044 223222246 905043288 835048713 695234724 223153618 306752497 861322996 182424629 256804613 468538884 257927266 560063100 767176286 701305110 209192874 78579958 96986759 996151480 622028066 108179640 386014113 968104706 432964044 365359745 852123519 37468993 479665265 431793511 207694895 123128175 769746511 520973336 144472813 290507744 69275411 163051317 992441312 714172860 388178688 781123730 94849449 32995937 121896861 735982333 491043681 522109023 777719728 242873528 448508951 892887753 913516186 950902486 297392223 50218107 676856119 240178416 770164397 708009108 675164093 39511075 680358275 299668651 704941862 912857570 153709131 555280952 269136506 882865139 616875247 675163428 730398195 217185642 385892817 865602404 638367 224685246 121819721 210531386 121062153 701713154 846609206 582394332 163727223 187677065 74128581 265167653 462389363 163404166 334969511 639889700 975928697 110544380 57999804 208438631 38785161 726384787 778012461 418913392 683338273 114907046 384646474 836419145 480125578 131053778 333496403 118511878 921627058 81863196 669672789 653282800 74699284 602684413 825876368 451685257 898867699 266267696 463099982 728133737 738056202 146774112 497910072 59963815 896607497 559714906 803847445 297715679 564885547 955655906 401376544 993634189 250666397 311074864 185960301 359648060 717293971 663310468 854347678 342386389 801848588 608453022 517760987 942672047 53534728 182763114 93583688 765316946 962565389 496726372 423072568 980194273 564767310 269345050 441647747 368667854 402311268 246785856 313060687 619916026 867367979 537609907 660454293 30991893 465371888 366626703 870424984 721016907 238881932 438206239 809628955 433297874 347666223 540445467 529608228 959669580 559685779 349720541 568912122 438729062 919449981 809583469 155341307 515902578 996904393 961967687 476703089 564815855 68001404 188382098 485187026 921221142 983691508 259732475 75721256 419156782 440232361 662386783 464595833 382020522 183426252 861190661 469643050 733756312 655147327 916923380 122493366 424180192 755850937 543336754 848272770 376203368 380899997 267776049 317927556 713699912 908369086 310081354 454233537 323635118 616533038 310710843 523595032 373786226 960972182 660055293 707711986 950531416 23539637 850417794 297757574 173404835 567062491 983866935 969667589 363697910 931644618 707235713 877195083 806436157 722119344 526078940 664545639 684502954 82091690 233464709 522210768 448913803 305349746 102185463 945207293 136747641 929908436 461100194 615555754 63369679 148946002 265294402 144221310 912644238 616047189 40053449 173904117 123928702 221028810 564780477 324813498 38312080 308381348 779474397 388924419 137943178 922431575 372710522 787935591 590030660 162082944 443373289 468941475 997630307 215747646 351308029 550476992 590396011 966523203 578065182 707331074 788885344 978818521 679179230 879887269 894054562 337589744 682413657 748324733 481200750 189215343 712721963 474291799 9615601 482843034 767997295 824383975 576714168 481860962 981007435 670113684 396081947 878348326 337101634 637202701 569587762 681737884 998446927 490295822 122826265 516809505 367566747 504871558 509279045 357460210 190242635 548680295 721945779 841113646 584291710 174397015 430026739 718864036 694240549 845368449 39492987 448660571 961873390 920470756 209868780 273877956 537211838 259445328 226227381 619450393 921934687 694282976 259439476 28245709 492270074 445069172 978436013 426336255 624513171 901392305 357507691 163054908 845174402 384817778 32154579 525042604 237328226 581536216 557741718 731806133 18832102 773810725 500025304 894148061 189376007 651407633 287307498 452248778 654704570 583988736 803848243 3027978 387492940 759833755 417004709 382896593 746595201 834833519 437783831 73396682 624996094 316802775 828039081 506227094 109985913 586570399 297330245 889455954 675450176 554542802 191940912 7618473 326914765 479251236 344595785 9933205 752365273 647096704 50152405 947403389 501671711 567610717 761471916 93397222 286655931 633470721 708732495 865047661 286539423 262717660 205375774 79501 580911914 549042986 297524425 938372024 511936385 840869059 108674533 507111943 472049685 383298253 841447343 835140084 491625556 443091196 896455877 257489430 409904238 614129861 375655940 173265185 482380593 150202453 151236528 148639570 392862948 696639071 440364164 1735218 684895703 609550139 428845566 16960925 660201061 884442386 499476546 445381855 346692131 67453710 90470690 227548603 533218912 168916883 563183147 276095731 886976036 950642338 915357970 710078455 974464234 845294102 199223194 627610342 219322819 295348811 739090676 46471896 746114805 536350796 988579391 342332790 669507869 740043887 318113224 802771209 615678646 300982425 206835316 36576430 341614324 26580017 883692399 595081734 556943452 753304918 782051405 207340849 212850108 221695672 837876559 716659960 584834749 43921754 809870882 83567458 530677681 609670770 770070765 328762401 541347207 449856507 812489253 852849965 988201804 820973057 725837093 223354182 12160024 82950604 8739929 187216486 504671659 174576964 558973564 877613900 43889701 476525268 1543166 713476605 372252337 109037357 349971246 433166337 252497275 2605437 334330313 370600477 529401679 558406984 212887481 873987123 181506264 700350569 282295659 791940354 351899347 773760983 425190061 105723928 363074007 435887783 128712712 809300844 49182037 137410513 371642266 914825305 2373352 174876746 963593213 880400250 843117158 770813304 841110055 207084957 523763676 541006461 533107591 936986962 874300072 931481826 796178133 597844942 24795556 846833178 757852321 518737872 243278513 986014353 447112983 291313192 415262143 139684547 344865376 520923062 142520639 763304523 973298622 164911721 579235715 668673560 373219646 957963323 656397793 18399719 881580625 960256376 220932385 86460341 858629347 401590807 602188589 523181269 486374184 861680234 679475820 81118795 334642863 697852164 649317538 642533341 421534024 440413507 553408046 301011020 374080821 660781340 172430078 149787360 57345444 685214903 466804298 928689092 104842803 753698199 142096103 979115377 640141735 325255590 969324183 685036550 966028044 742546947 392353159 891108479 311796655 178323175 644724915 90520698 951880036 638531105 769839611 515358741 192124186 356611936 208332098 359757785 842283248 871054473 237151070 484374795 485203252 644666927 691758370 135586019 190305411 358132392 435019692 648501450 691302047 485099246 487145185 47623942 381531747 727732343 746094190 911793038 672163081 654854727 513313068 521603490 921404150 540234263 301399912 564209907 318312990 902586246 597470813 960406001 748200112 42078906 341323985 522227393 364545652 522519727 528833104 497456276 464810362 912198289 396037658 645257447 799238596 367613031 884622601 687831412 458319962 711913722 946904905 748674656 195784612 266729871 515767583 506822535 485966672 393681297 604517818 169489581 279053784 423306382 314367279 132765355 11398998 2022764 965891852 540528725 806867742 411298344 770921965 41883130 862494327 912051457 803261447 565647504 477331647 468119003 231083743 868123818 299672375 256805810 570520225 798855556 840341980 441479103 683282945 158304148 868424132 842130830 347070383 951005694 735226494 95701846 772254492 503955188 332969723 332582560 887880835 256787589 799523083 791564762 306865281 939835290 5000900 700080712 636383288 864122779 576214886 367286649 764991894 229647476 985368771 822780926 174188338 951423846 163242305 586001957 147717481 416060675 380622958 760948029 371163466 64435408 905012964 182777744 199034866 60154670 144830450 888179819 722051248 355315053 258327995 195050585 722588036 940770147 650655385 299790213 862126316 445274391 112434044 708683418 685278477 787923488 455567660 24546713 938336380 86556500 979602157 613497313 257922478 933945784 836644048 433550441 489356709 249327087 801361276 983506239 441993680 374526238 69277406 93701925 362349955 609860162 541969514 842929229 219219877 730179144 379474237 90410574 568605823 692299148 345541548 662961077 643169347 151440417 312888452 662666083 797330312 179981818 569549857 732120944 996103999 950347477 109697037 732251284 989777189 974968038 103183628 149549822 103693417 125417637 838533712 511079599 425058391 213619247 818598874 634099678 217791856 984937186 941443526 286162634 85360298 100802130 760678172 128431550 531467302 444054515 929355023 42948593 81921583 14140261 1058647 624885837 264800307 847045712 552490745 632720335 797309298 863248171 887566423 84120339 27658514 982580958 229033947 852097850 970067919 683920946 307218130 858992969 377630724 348654014 778709248 399128977 276745968 738854601 212876974 895034240 193270380 420891368 60745855 937631879 636030306 717410479 812124168 74707530 229705863 734238038 53404920 854708640 604998613 616726553 650802217 231418903 139656617 220412089 23496678 31072225 401529095 205735938 927118495 349653243 828554589 297178359 995719097 679420093 672774083 723730506 585143575 173787875 48299050 284110311 293442389 133057955 330866860 25252943 940056868 798299749 277325050 631132448 108348816 779566965 910408774 456462617 573536399 138179918 625746879 436432551 113891857 26749060 825276006 327843770 287277440 334926685 954956193 748683567 4223648 563281966 397842069 858658474 171173361 69137224 62240908 119930057 983639638 487922836 218360830 483107571 246931225 246824027 929075856 913491448 849254443 872863140 326618042 865829701 939178802 700678015 375269575 96093797 506620375 4524095 219578844 987977433 232861022 887849181 500033151 705929254 462804057 419713786 561311704 32302874 491441085 534240219 680976060 926026033 713020548 853135250 466338399 758899164 729378218 335095329 846451734 892450848 581063933 102860704 5970736 272735353 626865542 662076494 408718011 994837573 940791028 831059511 345336728 991977807 43018418 123596734 864717023 486906051 672182366 987641342 249433753 173049193 475009866 368262736 614992765 838263722 439607660 402805230 337225191 692125184 231291223 698781834 82734479 679454274 168838546 685809945 23474733 240608405 847921650 728395481 321746518 73752324 312990995 624338010 399486481 849237818 32182509 617403523 809200163 426827956 186345336 778559224 846726645 741993401 919009884 353538971 583162673 944218571 294302367 91466860 723259154 139333560 523374651 902890417 864029812 550675029 290091055 90527880 280140527 431196740 555523278 55528930 21086585 446656660 249598141 26665137 799013826 220612653 18362213 289970690 679205963 193027256 333266712 636755422 390039092 275204099 564687111 11389422 228057461 864791769 198963445 705366531 553423873 252168100 146688460 119520284 890500270 589071863 341019947 56192467 225421534 800551040 472871492 970030147 448869514 672834332 799206543 990012865 472804726 743434057 574865734 955208760 449451655 122482992 416070783 878043490 673947143 37910287 68090248 52129317 638019853 652171053 900572759 589519940 29294547 482258765 197052235 358977873 212151592 811681278 959163781 166887569 593742690 540456240 474966907 845154319 812285364 911422101 725054920 107375655 140410594 274040748 458185233 265185342 534013321 867529574 622071823 360881768 581844510 76835397 698223234 322616072 803962091 322884067 121032228 929443202 7666353 127375929 197307595 12277729 255903538 357709718 885848196 123372895 555528997 490506228 443814184 534541863 937697980 489679500 38848336 96812396 42035814 589145545 660041727 874065061 483372507 760179954 856312620 903955614 107498680 306132584 47146605 706463382 390510045 833446329 94439543 212095333 331696115 235627289 987078752 158549799 741983293 196672520 469954536 283730729 348564106 856043162 56735240 669828399 444398187 572923535 180877573 142365428 79001036 142184814 233693868 566631305 780021293 450928753 570966440 326189383 317306712 475427619 675803557 729293497 613087540 93344820 687803748 717881831 374612954 735568703 681346598 40491950 68745539 387945539 164321068 338190106 601126185 335095462 772972958 731683773 640040123 58442162 949643242 524704119 985349486 270190132 709059941 482975901 15417992 868329037 553991118 40148411 189671134 626579991 751257383 9147973 405929400 765225575 457783706 223038573 733205692 712093538 958724083 60863028 22927039 169421751 872749292 331446740 822201844 893201367 725772455 459580270 562788935 819553415 175067335 812149970 938885138 771681661 773229249 438644607 958449970 37364854 99012748 651558987 577552467 754906903 312657298 549048173 256190020 374343496 358014022 9703381 780188474 457689143 158066743 350531442 986153870 968675010 308483226 116170812 299560921 407050457 371293008 803433283 49905690 13615177 798668292 649901275 472964326 769898929 532667627 848194300 610089454 751572992 223346069 423489789 362943667 677312708 555779170 15677342 111586967 776817988 359956886 453068324 940499226 708397202 27643751 930730642 385865286 893403394 10697157 553644520 695266112 879942065 640630111 131328423 210024257 523173954 679926025 158502584 277770999 500387463 724699278 598395429 42137293 384939207 131813607 48117771 144620576 760554083 114758618 819118106 79526386 548381045 800440384 892472527 577937236 736159888 107496419 637613937 728648713 590209678 819986729 28263132 879718492 594688719 52752555 378079998 760177028 169351926 765257628 738379791 82645103 248661289 258887526 109077124 828775768 71923175 180435880 72541492 589028904 459283015 826000191 989415030 255801793 23720783 256556967 185406888 837910873 734104240 877109165 232766459 405967837 845992219 836605478 343531120 935379923 551726926 586233244 119549278 745795871 505519268 544192875 159172505 657341295 780008525 197907026 61992863 467906602 254567021 149050141 605903146 695741853 114742791 33633007 229167080 201207022 247749441 271060351 862728540 668676619 369816841 662969190 49010201 288642419 103854081 920288280 791268837 973787397 903791359 426266031 186674777 542296561 155737514 26614597 553646382 205522606 581428885 68604825 951169151 664002334 554155240 976424654 542868594 851969904 135947646 414664574 216236421 646348579 704200387 996349118 425871021 799956796 621179792 366539322 388624371 144925811 431475641 649150091 508815008 835494662 868576683 736895245 153568417 299276966 240195706 928577239 70959856 807750197 767430316 313439471 447449606 448468386 213271585 551687558 319059652 927688134 135231175 482132149 954209265 117162061 877274617 141446797 382687118 275057666 20480770 438185092 548326382 516141579 992909605 844134209 119784821 67894472 998437085 337699336 224259646 929634589 395415750 600792754 313967348 449941494 433862991 323607188 416956696 921670682 213598233 811333616 266412134 611756609 783355736 211804994 592696512 135216944 714119660 252015549 712474583 481147151 508589041 150539475 274251553 212201733 733444959 575198633 204315365 726108147 336522020 90231157 469391015 73075886 143874712 744217028 420282095 951890277 652202574 359009926 686275179 819656490 837185225 148747965 540506780 106832882 323847120 303601993 488772972 596570137 956632525 517973521 117849405 409915809 868172762 519607293 61518718 501053660 814196308 858256282 430524824 594015473 421712377 721884333 287450739 559873575 743242005 818421984 919921865 10498189 813544342 13976804 506710682 361667532 618180775 966134045 512646605 408286426 64693827 682904028 516523954 518772053 425696791 399770702 829010513 108631973 220132390 676424401 62971743 26710357 344352528 137471161 660890267 31503145 315085213 395013957 964373391 924797778 407746712 391200182 467724392 613067457 379211429 750220382 177469182 38927870 657480945 622597306 387243166 156488964 874707983 683722909 339569183 102087708 776505305 168435822 776481232 313359538 282281295 788051567 661692789 801799644 915790885 871725325 774293 448865391 737501459 638990620 553754644 601606315 725833369 55992701 307665675 869285307 33007109 498648222 775321472 728830790 377260319 310036666 726823022 453151582 944594163 554435471 334775464 234253665 651375846 459122617 387782880 616529181 369649926 473464539 420830055 360582518 288918793 414531707 649343207 24831865 960599516 30065814 589691244 774448327 157677053 385785353 80629754 799575352 578853872 621593688 149245917 397045133 176840491 92597493 495165617 400301106 544335584 590349328 516936919 415374262 61897502 503745580 668266846 159077277 428246401 897187909 411259774 164756776 510033820 363199426 390555930 674511196 2613949 875555060 709285642 856437108 802880934 875084107 814616721 809811564 226638617 335352019 152638348 108934149 656809960 47278275 975906619 918666744 531932004 23973217 204124643 859491453 581628252 193517494 446700550 846602157 871722532 510925851 314798864 438747948 610090917 263085538 2315497 288224134 104634924 809903334 633032353 765638274 871469566 848220634 845960299 951382084 671486244 123284317 339827203 833486628 227366526 146923737 905316337 743406792 239383741 247421197 18581796 103603642 969054991 69179119 111873582 160249406 470091792 500922256 193475466 472924692 849574840 552098262 275636083 906939070 72633661 622114782 333523402 685178328 416852557 445947770 145367637 608718889 787209012 14656966 136362872 687100710 509681902 913210951 820062672 268157493 655417450 695300426 500650404 605707104 808719501 479728307 703209138 162573714 673478717 649987991 829917041 639031983 366825538 129527869 636775505 330567477 505742974 198812224 87866949 219834204 343901126 525008689 251413591 145752406 534926233 481856307 601199734 310117131 87993033 253119050 718901276 333507043 254751625 674997311 261269822 475507020 467574501 928358055 376945375 742450123 33218978 399134696 90895093 521161797 54935883 604242109 786126791 139368140 630958218 877455896 386116124 700572546 651537441 328164965 646401646 79911687 843271305 786508900 469156137 832495911 702079835 749355882 719514140 707373102 232619760 856941843 282423206 703170169 811433233 852030419 698648834 999793419 90444356 900340541 185880235 972077283 95505405 960664287 813977523 695481439 678667180 167125506 237265184 365597815 610541787 650189486 64645947 707459020 537832549 624582863 945197717 469778577 604450653 223480399 41347539 272840024 235291331 395963577 861724523 157003807 357988220 3347178 839718476 334025344 899023176 683358622 312019829 53254364 303578053 445573508 85990585 131758279 220533784 524543322 754063284 281290445 766112818 7948047 719014592 776173869 193269449 995013133 895397995 946821248 748412114 314210605 505586433 374024695 554711978 202205320 790856670 430827532 317180628 440737362 230648434 390971688 989461979 436253267 156957922 334262217 282305501 486128932 807179893 99434491 296180859 706649981 768897173 347291429 598442910 936643157 63112989 715888693 348143560 510605720 675461082 458536885 169814367 12767036 800268814 360831095 911469582 359141197 281059956 680819918 516970036 62331747 254668500 71019307 190044199 670544205 47120936 941301216 952753181 346753710 410492896 938202050 151879317 302058129 877778820 94376102 953772493 258403539 832233901 881490052 676752645 194328661 229384269 518280884 623732594 613370697 309691797 994505206 358076133 880862159 386053215 410325981 340667231 613917061 214860137 562283136 835521262 219015988 486300103 153457761 646035497 157490853 780377999 463689438 357548788 224253395 775171315 263744154 825736718 982024486 912366002 934316189 366377328 499308567 870096474 214858142 718498951 832463858 849116788 247779100 920485386 190370714 9252112 371364030 971297504 586954104 496742731 320805809 199325205 869423361 980599923 922995096 440362967 192361059 644041428 34700066 370492215 397305813 349663218 447870551 585498951 697453031 82915625 543809303 832639418 852351614 555738339 567398981 151747248 922465091 540880643 687921187 866413039 582768062 141324038 500734194 550076263 695529585 263641611 688805238 150890329 735564447 495843784 399874841 985745693 565196368 128489671 138872981 598511006 22127975 110754653 467546039 860929183 190036352 532675873 92606670 696502613 812651513 556618400 655980572 854771150 174353524 42926781 724305598 721469772 20035619 65513107 275719208 785851481 287127682 55875528 435335567 817011386 784003712 707346635 525335736 583925561 346433978 488627869 672865321 843639582 699110078 574813864 713287479 783827620 200794589 395328635 684335108 856012306 971697169 319722923 29434197 527590618 433687963 240825594 528252559 697252600 972373075 361945768 500488277 70458978 155752676 646077525 983131179 265387635 615161276 257983525 11190986 167413983 122795276 131655204 826924275 199268813 133773495 773473304 643622345 568417495 107521423 924521936 681243257 995590619 16080731 553170375 87981728 109760611 824428663 383571967 935841167 275434987 100698390 910466762 769674292 680808347 464388752 314741940 428392967 553491969 516533796 475193140 913268008 101077706 8966029 891925498 746563281 531832919 501846606 804505396 500431220 187905293 285940258 733883726 703344399 289152607 513799981 465408064 30566692 622235014 452783039 273730991 549955632 281153189 725152941 77823055 528122485 88440312 749598740 979136524 591206912 723093569 359935739 717019592 71503959 907169426 264480974 697704933 548823004 705120215 765551957 655275938 197335126 625101829 475565274 440988067 170462343 722864144 147499627 216863250 557510032 690404031 784401781 317302057 984422343 582507116 529451022 180505040 285877349 14992126 570415288 250967509 316554996 65335286 571352805 759243501 303999796 202976321 841835570 171298514 540205402 888301647 344527822 395302301 686865433 759642634 827824552 909737656 306191503 873489038 681820743 313102316 842999320 39951305 15284726 627649444 435387969 522245348 209595598 572400978 571777208 510507699 418715887 375744518 309548024 454057844 488794119 960611885 993010951 3377768 618121856 651525205 113898640 988902980 64769637 47550393 876139196 169134737 403215934 889097785 533163983 108207304 211389768 786174937 463466530 872053436 552465608 387620354 676725646 421931029 456958308 115140328 733149167 389689302 780662220 390584658 998631664 534287035 743164200 556003541 693760419 618151781 615050487 320839059 437669584 522707789 550035299 908158946 58455329 558822210 250031854 926063406 197701275 467016034 257699038 426716502 94928451 26012506 259551861 902456837 298141013 891709772 62781553 5048248 882157180 688972153 143227933 179157883 870293048 309262872 98273667 399748624 441731005 291248554 535204336 283478029 745469223 476002046 909667299 593789905 285897964 488040408 261249207 417199022 627261217 459837359 894230920 871620255 719169404 874972254 949740465 247284207 8419000 247836689 388392419 990534624 714890927 515017064 753135476 747299702 466546544 820274541 46383451 69729207 555426454 728872419 414446853 784637723 201884258 397577399 739064475 508719913 634543233 828600208 501033577 422247968 464140574 234146999 590412237 657817568 893308831 698184132 190442667 712377892 482170187 262994699 913500093 169855464 263417905 186694860 504374936 34278190 952910919 79352821 957767813 942007579 801498000 204213886 633550787 219335587 938976376 446483095 497033602 317505680 724122989 864936340 902672430 82452918 87470609 103993465 152342290 838632930 914056432 751430948 967237413 417271241 795440515 809110388 423446564 844088324 987033133 915202227 590271922 674346941 867573198 946105708 930705239 738161139 830830485 94157849 794318660 381018766 125910934 663140627 837222997 976654744 308636309 325579977 915583139 417744189 533572293 455475092 86651329 431119334 50593300 900697779 1067558 533325046 525546541 651920215 385779634 959127206 584795913 875179601 858646637 451100589 911126575 332428413 25791859 664850342 194740429 161059243 854281045 57762133 81536149 198532259 829941247 332465254 128164220 160434542 801989036 747066154 574205921 659676509 609634727 233478009 299937045 425833515 862693029 43378848 84592622 825071718 699669077 933997521 96594675 690267307 329653634 314886777 237816735 38959258 333663584 452084124 712855096 733012709 157201312 249481500 2163079 896361713 605286824 363463564 270155020 723349328 428939597 200024120 214248736 410008510 833995087 305821231 658974801 624106723 542957571 101884218 84409082 441082231 770070499 128609371 231093718 46975035 156239057 649282027 625437521 469442752 451291444 465639484 719696483 268912800 834695465 928221996 159175032 629744726 492919380 12610229 307791626 859307514 43299314 681063574 841521956 511341210 533942299 395920086 904593482 272185398 10705004 748887323 710608992 683730091 888314548 529360848 362011869 794633604 590304507 98420898 42205256 882180455 812641006 948789 181463837 582539302 529512069 265588332 203315870 516366482 968471919 868490233 369695279 555331226 753232300 140565805 685011413 706034324 827321812 864031674 104540095 437562386 425365355 99174077 272111051 847656581 24721874 892904777 65152943 76488001 887476648 696747466 546007128 416754137 643131442 664166456 392221223 614308879 991021271 950728389 55928196 911463996 642183019 268880747 306645166 82844204 670903837 705347512 821961247 980862864 226564137 229757201 431865331 24830934 475909611 108379938 465269345 496314471 601048513 515112558 21176759 20266906 254043134 550123478 326924873 58058723 806186383 863928067 61522708 832514531 657994325 842255584 848854778 483684924 762359824 771987561 263170126 302492640 551662022 741329598 104072201 372491205 454293387 397892343 289344792 442284285 375919014 398871223 332591870 886578100 997392769 793290171 863931259 646128065 858050797 982138467 973308996 500106434 314321261 895086642 792184409 489324922 208730167 480481087 890981996 286468401 497798352 243824744 29601245 121961898 315550314 31865570 194953495 726287298 739260384 210396923 583932211 524480546 600360371 662647064 572078985 371597179 770441702 566823623 573580688 580057389 749984440 531115783 633328012 4259691 883781243 603172789 378696586 624570893 302861981 820107892 980681851 462796077 859367231 982557417 754279143 922893750 950943583 579739253 245766278 359416241 856786499 262965838 397368190 825031818 892353093 258856537 915155544 28830377 335737985 777902470 669031862 10631588 951211445 206703513 671765012 38048075 582444473 987931282 365791729 909827298 817779594 131244234 692575788 294176017 847572259 119610192 904999531 617253499 915909654 360600340 525305944 477813639 147727589 438317028 758434063 941252405 25789332 454021269 28073208 561573714 996334488 812626509 340656857 979404652 71243013 375912630 390678290 693924940 110823680 335437006 318066940 245995969 551919643 251231381 806702290 779648760 399451635 336004916 452848076 47574200 595261151 392297565 694115130 675678936 273369497 165353813 700098268 509973704 504017964 910697118 8546148 367034348 975310912 713913643 416315237 380992166 417422063 328969482 797617459 553706365 205265517 84934299 328685926 361211342 812558812 342562880 769983783 295741161 213114512 241134819 225602680 296055174 679143187 926930832 848535312 247064358 221795156 411905356 19339231 324564655 423178835 590079870 825523918 289667849 323871193 25838276 34497773 812403601 319072154 485390250 466871463 58662809 724137619 192500044 708458914 477959673 11229423 647073695 540908706 188502330 374036000 42004160 865819460 128097321 99439412 268001351 10473850 342681649 748587009 888462045 306986311 348089562 791957245 452133334 954110978 371517911 415968373 886528358 284815078 29455477 391900028 699022564 982229572 87646169 575295856 340772567 443230181 836435504 446931704 732177602 373137718 949694048 682274672 979124687 675920464 91037536 673562241 202613763 312612078 441098191 457086387 975549381 119176346 604813876 664195716 500533231 295504554 209913867 269125600 544612224 705649422 447407179 764688920 420014632 604309540 675602195 786155519 836674239 29983354 351821276 974581008 124413753 910048477 835833413 825865994 444585717 837211426 142687554 835723422 482298665 548705033 812969516 610845293 440848683 967376797 325136156 613377879 663145282 968033152 293045251 309610401 310782663 634766008 78648852 346746927 934878247 80845081 89847585 431459016 894288110 744364791 679187476 278265360 57058031 438582895 857862868 229376688 74527448 619948212 109054514 787563989 213450603 655016854 21210541 798438468 557230998 342799753 489658087 23747250 946564425 632247786 972443964 662571653 305075500 215120152 545525668 422508914 602264399 711364166 4511194 545598020 740386628 16813561 2124642 383526614 604829969 775382785 509020759 765691607 815414721 181998630 471808689 26479735 505838335 844646525 948523382 809135924 484677902 663775968 471737268 562904113 762978939 830105768 985569734 874459273 276692901 423462524 424034956 267220641 708434309 961985243 438970191 735600357 990199065 23169365 174270000 172207303 578550366 869487866 12058678 271764852 307483598 545319518 943580038 729174861 958440261 708783301 941525321 558274250 680477177 786966553 482093446 757998887 468024307 145355534 947416556 850999004 146823056 848871669 572313996 542224874 98524904 419695432 399265169 875647362 703969100 761783934 338541758 451577128 452526216 824502212 834665939 749034820 347584561 993676084 975576380 417491489 954624491 944064823 409322895 313684856 820030752 539642812 658416334 421468987 549636565 945632627 495491999 796446261 239919199 677574186 611475713 819642126 247781893 577217174 162990669 78130551 924787138 767285745 431177588 818910626 7867848 22700274 560837160 861032258 839706905 384185363 122714146 812165930 583419097 630102629 832389777 330163290 399995073 461438413 757988912 708198633 801127994 124798123 689174845 315308520 316293518 893220253 12382533 604388143 736110013 877855428 80554077 291325694 844744679 20335268 389499777 842488201 343757885 884285047 205030373 355333008 399432217 440891908 4928681 920514114 551152765 820829284 512309051 353771721 608661433 722742050 932186061 130848559 198413224 474455921 237652879 625208362 948277465 800040453 785512996 50986049 852102771 947443555 217431160 798856354 9219394 537485419 665050640 928783522 902491683 809554608 62956714 819299784 487822820 902185650 651894812 82854312 638507830 611534898 198862631 697733262 492178570 924930512 604527660 16868756 736087802 402447992 204657574 521435511 598002547 612206149 166900869 55526270 472064182 445316419 216031468 430813700 54680257 594499327 33874668 343501461 235484713 267201356 882060755 34133087 341221708 469317200 631182855 236073770 562035357 725639455 680329414 825683385 473820713 897127793 438358258 238770079 152235757 452376192 238523098 653338793 302270796 217733070 400596898 583419762 845697225 25269169 582459236 912094948 520182518 910248908 679721072 253362041 934530851 43274443 952514047 844988601 380629076 440722333 973739384 258968390 765861714 265049416 350890010 434152133 919883960 81333058 178988308 642678976 602233942 174846156 107303835 227455769 884956564 318494269 96678731 343385352 514367891 249966950 470153637 665350821 570434440 382640701 907626281 627514449 521043560 641572150 279312868 497258638 80656886 719851295 279153933 515474584 888052804 343253017 792187202 483273289 951290447 184961205 924138763 141842871 85153084 878452332 155491331 745040032 650124183 706057599 119439287 35399779 869332655 968632849 95661680 454923940 689830269 834029667 845771040 849599445 592991240 31300320 316748245 823748368 90819682 229772363 269073996 229872645 870336406 334594185 156376313 298990484 925198906 878865031 794307089 193305492 712631257 590874013 8157256 483369049 955928689 969284150 445989000 389638363 652840309 751648403 401212422 157135477 265452805 280679310 535817466 316834030 110680705 464491162 364228181 53480597 952087117 429804230 813361467 324640465 236142930 714256517 220621963 349754057 831065895 489366551 932298313 573817428 780835519 348455711 444278088 753394693 945323402 985726940 313952718 317840574 392081440 193805173 293036739 663237983 499914781 52549996 976757952 361234085 929125332 382220953 742826779 701606887 467239341 323469799 225991040 606540748 279337872 340068066 885114169 694217008 57625409 580245850 879494520 251754736 318236249 276001567 581160890 575720658 47641764 549871310 464434903 246893054 128851431 935112460 707480566 152796751 213607942 268903357 192639561 233758639 174535734 837404143 683276561 775624446 504394620 259428703 87056048 362408475 455139932 310786121 505584039 104063290 642182088 735956398 868475470 37148197 75455389 204331059 322666080 128924182 129134189 637273324 56716487 633060150 69009810 960525435 210615974 166383499 378024537 125848158 981167567 296526925 708322323 874041121 43038368 693053258 464453789 301726826 298093798 923937800 369404408 278514469 494271857 114820596 812762834 202508028 200676086 726330656 40943884 678069212 840838469 45221297 681126483 891220731 485405013 820599859 244703874 236436727 595390427 486627948 649468892 493261323 533914768 750263474 795323342 779927395 949320052 658827038 640669878 321210262 846782372 165588292 203882982 195176270 3802969 772526078 883634012 142119511 786953519 236464923 22273211 627591722 233412972 164770874 497170060 47150063 441814529 407142626 537228197 452561727 978805886 414470793 914333604 618255787 706676980 691074484 633851234 852832542 105394221 866319274 63766418 58465836 476734743 28524078 180853234 196471291 448533423 991879387 915101679 985050369 278425093 603957888 538009439 741500769 622601961 369629311 587954929 185944341 304775319 96756802 662214415 107033446 754320905 741439988 939399715 420192320 238424545 185018927 673072003 181919229 697964283 625365302 61938466 633009211 432894086 408180558 960242810 133654593 755411239 669388302 396813979 426933425 272161458 415788424 901095183 661271445 883138853 303851767 78263684 991282350 120881406 705055045 825147661 448055421 393548696 61831933 431455558 330342308 864698935 820144068 214295419 513772051 6329038 464662865 26615395 117243324 661516032 534633899 846104604 937441822 56556887 259497863 982066381 767449202 792994645 750413099 836404914 181145036 106724620 848710872 566048898 976191239 528398593 527163555 847864194 251889598 686564720 451249283 967078079 634481388 605356915 341236737 451502914 837692886 570729567 101753479 786594419 507153306 528890959 737903385 22074642 942004919 175355280 746089535 106453167 665646746 118615352 80297254 452241729 671979940 62735003 434676685 190667171 924714520 324654962 534721679 444996953 253245932 236123113 996611261 327750005 421378148 384508420 589697495 746181305 716163072 452161530 575738347 722971874 779950936 38407840 292112256 525269502 334980949 638934893 180597209 737399847 324126287 237208526 77423523 951082302 794704094 741427087 290964067 587859435 931917534 999207820 231945184 550194101 407292517 693583795 56077555 666115039 138334730 900379643 181997167 109689190 380863688 138922590 687915069 100946169 923739896 61027017 285930283 901423028 111236379 200481241 821405041 978759336 967016101 400366010 529947245 536395750 767769333 769136307 366543179 378258617 63475281 263432535 710785350 975754467 554607839 355045861 311237124 117939978 459097879 304674239 99308540 493131249 519366031 121598276 6712211 593370290 834474685 136730085 867375693 440565925 52168685 874397694 361203096 710676157 858193506 823378229 213025269 437780373 594789134 500475243 581327140 605157415 18776109 36464444 246385792 32090606 24168328 857016456 579439870 730564844 801253413 732925195 645361054 163445928 858344993 66016778 559082225 942172632 217076981 618411131 633687777 281899984 89792922 92440154 362296356 725854782 211122704 785310969 961223818 137250381 228495696 984687279 673926395 143701280 349174443 307782715 271131506 238707170 961075656 254087290 776379620 638908160 701629630 56854408 477784512 721348742 802122967 663622087 680026440 440222120 714818442 172194934 7111078 224062274 400205479 392631395 872415861 398376995 344877878 565112578 406564874 564685515 81186359 90990587 35404434 538376120 405056654 710464155 907569756 699194134 400914236 77119086 467029334 358058843 343389874 684814440 307263616 693501734 30398447 994511856 958183704 73403864 63459055 752610924 385358290 272329836 971886960 676568440 925560932 483028303 754241637 832496975 900970828 305251858 282480795 226665882 567990432 472251579 451965488 93525700 805911339 145103366 406423096 442621706 291993221 529683373 725523346 317677915 371373606 590849807 64381011 978815994 805740966 390472140 883943503 610813107 585430323 761312050 11987257 173454311 173615773 926495922 625940660 586870447 797929743 954639387 558347134 19333778 372869856 320000893 826544959 986370128 615842369 950888787 362148061 100235417 869369363 655515737 479562855 292894030 205261660 676796668 15511890 390696511 920709491 680681066 382798306 20718574 572496206 398322997 424578660 595555081 513546749 414095733 278359391 285699262 729291635 795932349 400049337 923685233 869013854 326518824 814946295 635699136 153867401 746569532 810459407 279085970 451386539 994381516 159464174 475720618 560296249 536722265 58840364 550694580 347525110 338726495 908218397 579490942 984998233 464757561 833592230 839100159 533518827 257391542 608520320 727585378 390428649 492212485 674449484 136628207 277687209 429156520 398601632 388255562 379968598 996459375 874745489 531110197 307146842 113439391 268755860 945962334 380004907 484991250 757320853 807853937 856386967 665335526 849599312 818276216 490634839 795861859 715271573 675369711 181968173 898787899 995578649 824822210 351383573 283029287 144183139 242385418 108666021 218892165 726828342 11622039 341880856 595208217 372842192 466656136 343033833 146631802 842991872 192882552 225209798 132277511 215627946 89630396 371116384 211684762 988986105 969858311 232631730 290854076 53543772 517753406 322217604 39053156 128000497 866901548 234895523 837168866 30294840 950714291 318101121 871912190 385387284 104810085 229964681 247686931 743693407 854342624 767388421 415550487 108732920 349348806 21719266 592548882 324409843 56633628 131999940 751408604 628714641 878716869 828405629 767964311 529759316 245016158 634631412 744308399 30934038 709756728 784858769 446022915 556916054 954143696 598598520 626072729 625082810 525822915 731824620 700264518 155900838 111584573 320634505 282139384 148173139 914039408 742491885 170656656 289328566 904586300 905929467 522609901 771159769 396116926 572494876 188768995 119227950 438751273 814514444 43953275 423285634 184450086 274152867 890131594 578749999 7008003 195384548 303296359 256414258 149992180 414426371 440033260 275378462 346840293 621681867 983646288 520937160 749411210 191427000 54482220 915325651 722856430 85177822 595830923 661051330 60855979 222093608 728260486 454535048 278878357 796251948 290955688 276341648 111804023 972359376 691528546 926785463 672335582 604310072 56054546 984681560 760811704 598260301 572241245 215374980 545338138 731126902 222954517 986078991 454731888 225951406 518379171 418496836 59646477 476425119 536220589 354242541 653604394 654416093 858961714 773216348 323386807 158084964 702565817 237896535 300367699 833644632 593095911 357763450 364810455 509225845 900155937 694682508 10430226 403252110 74683856 318118544 633983968 656729096 149830585 460869040 974414492 779999747 283545327 566804471 449447665 588972512 285526096 42021184 903649049 846993709 575025866 404117275 306731749 309491898 933787780 261245616 701392624 14332845 803546067 141850186 202761925 112946227 546716683 621338727 629368868 612476671 751141407 869461532 838951731 111861612 291722433 546164334 121558110 942367211 725233672 603037661 675493667 32300746 620926427 961140693 891064855 473291107 214518859 101629523 214991940 421650133 59236571 965867779 611084959 767887171 761819445 627139123 260087452 519142325 157880277 211172845 215193169 162624121 440415635 573849348 224668754 805154436 342285176 855660122 458726277 947959196 318938888 669743279 17153110 440848151 613069851 313462613 883207481 890901398 395889230 655415455 941568679 421219213 578658229 918432265 308252205 582122347 167340567 784928195 526990655 694347215 407663986 340070061 378419813 74585835 370113697 161837160 500683920 523574683 358204877 125373614 975215285 464317331 940863247 217770044 364511471 931284587 150964676 337216945 203011832 883934725 516096891 453978443 715148149 188817141 426193280 49182037 680730409 77752831 795860662 237119150 114497539 148179922 791110301 130748809 431782472 243005996 614604405 307384912 772614523 932049869 300514265 864719417 883621377 496133857 824290343 986474134 301128991 507913800 614911901 906080289 560063898 653348502 482609752 289918554 810566206 522343369 120079283 193315600 934413412 184298998 625210889 20372641 802176167 157857800 638852034 890310479 444593963 790267347 348697904 487463321 670770172 414599670 655275007 32326814 336532926 403640736 302937392 413328190 183507249 679086928 653852439 979182808 921460010 683406236 75469753 175522195 319162727 122119104 900889299 928235562 307877810 98074167 316708744 718738750 862562423 128894789 220615579 780746542 139314275 102275238 543268259 94078714 641803836 462967514 65573223 807365029 220920016 222112494 766852963 504393290 48228427 389385929 309701772 582724571 420400598 812296536 956020193 988590164 455626712 757113506 79161301 697531102 868849333 772126679 257504725 584188369 69511486 116686187 17291430 643323893 505726615 503660859 56170389 459623096 759530781 637727785 766590421 986210794 760963457 47304742 908768219 228010911 661853719 727748170 992616074 945415704 975676529 581300673 170144872 888064907 244020387 796576601 950746743 710837885 626227142 589822648 78630764 363490563 986778704 521289610 625354795 725166108 260617856 933794031 69743039 988799240 791654404 479889104 832326735 955383256 954550011 606065805 367020117 230671443 919729414 470336911 728700583 56989137 428397755 865704149 460535077 329972967 134165845 862449506 126831693 556529822 610162737 901385655 568160140 737573811 245963916 610760705 25691311 525030501 985011666 584597078 980892523 554206445 575901937 251182969 865694174 955253182 884966539 539520851 381518846 417106986 869761580 863478793 249864407 828964096 109892015 404177923 998409421 222782548 614261398 996968366 762627686 224443718 947526547 28874666 394395108 845185441 642095771 841092100 644943966 370368658 832616010 281832686 438023364 130716623 875696306 896883871 734286450 173770585 620538599 638944469 570193178 477095705 872004758 299485510 539389713 520981183 131645495 545147283 227062887 848959848 17465394 740567907 991307487 873672179 416701070 623523252 493339793 91096987 551517584 331784560 353494150 11283953 649019086 338591766 677306723 444664586 324721462 999902745 749724159 968931301 360638112 624563445 54563616 146921609 119876990 61231172 730349783 114817404 628325217 26976224 444720180 478854364 80493429 843373316 100006391 556716421 587042948 208807839 623275739 169497428 482496702 224212830 223441696 266968074 237076324 549006677 109953594 326844940 599848986 957200834 470177710 823489018 320398696 630450557 847921916 570756167 562988302 317272797 877286188 962185807 147561738 163549402 684456670 275132944 94514023 193297113 771811203 597680687 609825582 921875901 885643110 756422305 274481510 209457943 899086750 841201692 163726957 41621519 147826142 587872336 205492814 366427203 535257137 22970796 618231980 389512279 240959392 521660813 753393895 537608843 959755498 771961626 666590248 711176370 833148143 981952932 783688502 573175437 386258833 623233046 669204363 645104630 836894487 105534137 396922374 882920334 333390269 383911782 639453593 895698043 464990577 60941498 105389965 947628558 872627996 335705533 343723571 212450975 820507424 89525725 177795697 32055627 384098514 621085495 710636390 257156797 275294406 865714922 513304556 919361270 56682572 999270995 386333446 207733731 744375564 631121675 557856098 693399723 859487995 8293448 873097486 574311789 138677870 762401453 638343043 531466504 578481339 321675097 953447574 251949315 841352647 704349879 38756433 51133014 635433402 454033372 998688189 378058452 133331802 539152042 160755471 10070727 798394445 139035507 777284419 701698258 979004987 640577443 973766383 369928295 315212095 835557970 944810554 834015569 528476797 754871525 848174084 412287199 57139028 833909834 387420322 870031703 71207901 282440629 560093823 360880305 211831993 417940098 810865589 509148306 406430943 818258527 193222101 276156778 578615669 470699735 290401743 380237125 698527538 240959658 258153233 765686686 148562164 35141360 713621043 531851140 927323847 244544806 245177487 523370927 255386833 413351997 65557396 266007548 126981052 649351719 927165311 96077438 197743170 551689686 5269959 111706933 465517390 68617460 471809753 638566616 706424679 400005713 167294549 625629174 310958888 205401044 662113601 98457074 660945462 678271106 261838131 318302882 358740601 985746624 645478094 698387622 550359420 806281877 208624565 636964232 109683471 141805498 937259878 364990005 639180145 400589716 660051968 392657995 43957664 563890308 46070236 662623656 7575381 790684169 358491492 344342686 4758574 458399629 373756833 379190149 228749194 136782620 756920789 343781293 871791825 335056094 567925528 671172896 556210223 637294072 675947330 488567354 229074246 17681519 71202448 693512507 203767272 490394375 175088216 397604664 67700691 664714416 351001863 642961335 308067734 729863934 232925394 148387136 38058715 892356285 868549950 405372928 931911150 114895475 404836140 815273741 679706309 988037815 211913788 556214080 851923221 380789474 925456660 422495747 554545994 853814481 130343159 362475773 884221207 652438117 857670417 822331386 966824182 304454789 714245478 905359961 837292024 665593413 517831078 869564873 362581508 214798558 940588735 152961937 85680030 378919893 925530608 790026351 960343491 101202327 789552073 796630200 700043206 909101650 271199336 615821488 909763990 390803443 785867441 691949890 579695230 415105602 940548303 291373175 585250773 934760675 133933494 149775390 109152934 51445431 629730229 502766833 87899933 675053038 474208807 833638381 929740856 618065198 283316833 207419053 860195954 248027145 872576126 277466429 890781565 663993423 716927955 799476533 596150123 808359736 22378680 382503445 824964121 499135135 880688062 149067697 359736239 560310746 346997632 21240200 424547671 22580973 169385575 815992207 520189434 640771224 327509674 104705414 774815540 930306638 726555958 267172628 767358895 320789051 147178565 657698134 15057828 365015275 114966630 587328898 817353196 452219784 158535701 319944102 622704105 566259969 526703242 448814984 207356410 235199029 945243469 376145779 245235342 488537296 220940232 862446580 202867660 390962112 773823892 831827054 474238466 203023669 369326736 21524288 298592681 15657525 965987346 890505457 504144580 641404570 938755862 36065045 53091306 948926239 374600053 839611145 978731539 222300423 845032890 225704824 371858524 822235626 714984559 67139298 252631738 188038426 452221646 594246760 566986016 913455006 560371128 565077865 717228003 752140636 99195889 921144800 56382524 105868765 173064488 467868564 965392836 106710921 16940975 949484972 257380902 786914550 933625121 977175572 244974263 814625499 302631758 709346689 19612280 52254736 382730609 277746793 167001151 531270063 10787464 831285212 875159119 749030830 139468156 139199363 786451843 792646717 844638811 668262989 770837909 711445961 593181829 945684763 550030245 104220895 433877621 735192446 834750394 786057631 933836591 735431979 768023230 926753144 112638598 710939231 883570438 619401449 120250188 259241306 511302374 679673724 353101800 88025086 167556825 813102250 204522845 522643550 318525125 823097599 587803309 123614689 84181652 545801643 388642858 958552114 363860436 391087531 447596172 826143565 810047373 983933967 383630221 616125659 985540607 936188563 387693637 954368599 979422873 542737988 781475382 125223191 305730525 790639082 620445898 572535574 959464095 882497660 732405431 772102207 581103966 549924510 304771063 341122756 210406366 959411028 342672472 803188430 313345839 211057667 854628175 290115394 148140820 240229488 541432460 916120459 232673758 343913894 453188689 97562649 381460326 507599654 148089482 210423124 618859341 237368259 352401023 301141094 140161618 976757154 191886515 904033286 387133840 412249427 917092556 706478411 723812966 771024774 519497302 245170039 819649441 360133244 503548208 461588171 245121494 178721643 527234444 326085643 225473936 686831518 547163696 220714797 952676972 257029782 689522773 969830514 797239207 247785085 263040185 783647671 529832200 788988419 645955564 588947375 356542776 904519135 620245999 705575873 727575669 497021100 440529882 74768311 466318050 668474858 430510061 860619958 840067202 719631047 900481521 373174027 636138169 997668079 730355768 733072692 213007447 673417537 226753396 204583227 471797517 410701440 983118677 862175127 784278224 511792346 75617915 790875955 923167597 756473643 146910304 594208456 321868745 826071346 937529070 675394848 799045081 722403565 472166725 752001518 995877367 878034845 826134388 232897065 11916767 465385986 871895299 996175021 149929537 550685137 657449158 316852783 579235449 499454734 705709804 978933965 530588305 144568839 269922536 38117368 455322009 844493442 13202345 478143745 378781307 408831992 902016607 949655212 688409430 952107466 852423567 501511047 755682426 731732850 327897901 605039843 162593664 55129265 986992568 971484768 826237463 73195985 30763665 501028390 367374429 821184527 477424747 221989868 339684361 199848826 88722139 326951207 20137763 213233680 68069234 353556926 795383724 716294343 999103016 875805100 59539944 364045572 75146164 406060139 805025027 130983155 381920772 414868463 240360360 322701990 345554715 208640525 353430310 883177689 829459255 398571441 77920278 528119958 827957286 156409031 521770006 201107937 697472582 132144777 410347394 753955687 837642213 155238631 278058412 444209327 343739664 191110992 323675550 545682874 286679738 866239208 468889605 131959375 263027018 898829661 568667402 610117650 776908827 157676388 529923305 389416918 107042756 130631104 921748620 679199579 194933811 964662134 541783580 690997743 619058442 227904112 525712126 785439846 845746568 848525071 521862441 730982065 176211401 365488489 438523178 622311888 557866605 557244697 422035966 950127096 424246293 233452473 957347400 543487443 824722593 909367384 470708646 640576379 583817964 308775826 688427518 491716528 937220643 582635993 839659158 601054631 664241601 38946091 659915510 716581224 79511889 114531853 548416024 861605621 641519615 19364235 53583140 678836622 797274851 21981143 479436372 538581472 213385965 733847417 166577945 353738604 877121534 310228984 862576920 117858050 298361261 455559281 124597692 705263190 488473456 756076771 640910741 877740649 403487254 56967724 595480867 809811564 304893157 170100184 201512523 529981293 576473305 467086657 221309706 512087606 881531149 645459873 284402645 878453396 293587093 501982798 678593232 215634463 3543353 962788297 750968374 329784506 316709409 89324230 344686491 679733840 427652290 850003366 487361310 160541075 157895173 303212569 464145362 448249069 909085158 541311829 514431731 969739143 858504726 454417077 878869154 519432664 216339097 566514398 703394806 429158648 377006688 786406224 982519379 306756620 423708973 929332413 13167233 258770619 803025239 818449914 850538026 593840046 991643844 447806844 110057467 816641646 913611015 772157934 95777257 358292524 444642109 482586743 94866074 266188162 290934275 720173953 511246780 834460720 672597326 702527114 155773956 456114290 633802423 274044472 282780710 614447199 450132881 920143975 852150917 370181261 701856395 410134594 692770500 541921235 122288413 30774837 725359756 814501144 355267572 834443696 150439326 361413635 889358864 29512800 225520220 595814963 114765135 248840839 989718802 795208164 481573948 930447352 159734563 881021493 241245608 223456459 605298262 162324871 664328583 292901212 404821111 624159657 353516760 16209475 563191925 832410392 245877333 400804511 190442534 664287486 588777667 454678422 897418664 604556255 816205140 781164428 204677125 123125 596096923 377880631 822462657 741897375 396197258 373675171 15759802 976564038 192545530 727658528 945841836 948909082 521097957 697096591 179102821 59088542 559213895 337646801 686900013 684237220 879854950 908516184 613413656 180272423 215293717 828503916 614380832 78101956 868832176 790911865 969222571 141783952 270437246 873403386 498495804 781617160 969985326 367731534 852722418 740878595 720573485 563595048 26150427 270774401 788334325 263277989 596513346 898319872 888879399 125514328 906587950 25518012 263348346 894511018 463916070 395549548 101712249 958371101 802040241 424850379 877951188 642602368 589011614 623886209 137346939 649341744 141662922 126367789 774729622 470364708 917157327 534606102 893749194 274562640 80820609 461246228 931593812 853742262 688153804 76412058 887367721 235330699 656247636 397480309 326179009 33079461 616129250 650415320 979144637 945050885 818276216 622516841 859992065 906734383 100243663 697349557 242826579 230217913 204142598 565182536 736310045 486200619 740476004 530322172 513001715 693876395 903848815 571155034 116453969 237255608 284065091 565712408 650477298 173795057 808115814 765706237 760163329 311205470 739141615 928389177 103677856 961915418 596404419 800861728 990669752 183339137 647760108 638926115 804393942 515843260 918132217 116829827 322248859 254889679 206995448 282804916 522273278 434098002 591845312 498322904 791470332 296878444 751335986 228553817 745154811 171228689 434830300 138954643 379907950 82835825 715278755 459822064 147548039 189460861 742584586 43779444 219150052 320799159 878053864 61352734 599482039 736451424 872039604 640328201 430985004 404992415 909760133 375572948 689681841 520442001 591518265 303583639 952299119 24252251 724756202 179992325 251914336 119254683 531762961 768348282 711361107 311561777 466837947 774550338 188899069 837811256 604347844 194354862 826860701 461510366 121666771 925388963 781336530 319392152 426389721 570576883 14321540 269323105 421085149 991863427 285902220 47239705 869429213 115770615 565728235 997458737 307686556 824451140 27331866 931217688 132924822 135519386 208589453 236106887 807364630 926402423 983885555 202529175 716753326 741660768 44817509 99866608 445855734 30994819 933507948 430188866 653232127 55132590 170015197 530633259 290022028 377911620 423336573 166640189 526885851 65490497 766429358 906829079 622515910 511457718 950926958 951478908 334451875 932598228 418450286 783953305 344463450 16086849 213926078 820235040 59869119 175987828 6491298 819181148 483419855 240202223 887812340 879384130 246561884 659939450 822422358 844011184 276297359 525257266 508911300 118631046 12714501 946020455 381092581 490221209 368891693 767538977 391840178 461700955 932695451 627318673 967154421 548746795 851562126 563950424 304175888 413583417 271815392 707791254 639103271 561637022 257855313 500453564 202204921 200453843 369483011 631415339 689134812 429214907 18889159 240499744 987130888 152451483 990403619 775016636 33513307 811545219 150443449 580354378 604781291 949150211 300343892 25943479 332822891 104864349 242264388 238746272 706354322 163655536 833157719 480594004 503766860 339986138 517465461 298607577 966552463 403286823 715007967 954756959 455318950 96077970 311673896 665001696 17775018 488063683 176212332 412258205 329824140 590668395 886194794 35386346 698074407 308686716 813610310 740905195 730710213 746253790 69227265 396035796 44527968 326497810 893567383 568982745 100069034 572183922 397625412 896425819 717483895 461621155 864612086 406426155 752199023 696730841 622890438 216890648 413421024 639967372 595159273 605406524 414912087 348015215 23172158 391306183 296691978 491395732 252754497 475749213 881099963 168448856 480868649 900411962 453861935 197617485 507163680 183196561 708231218 750020350 244289446 53747794 369457741 661785357 422013755 958394642 10592885 507955961 778023367 840155248 829017828 40808756 646288995 358582331 106472851 404394846 228427600 503709404 439233398 553738152 12408734 296576268 810774484 334109267 865072133 678581262 684065517 8223357 725734816 641318253 15236580 367378286 174854934 357941404 127483526 403715881 272019148 675467333 900602152 893788296 330491534 146669175 80266930 64997865 152425149 919458493 526066704 786696563 306095743 757319789 323918807 658692974 75761555 174374937 603849759 146348645 523238060 911385925 983756811 55395398 256173528 226781991 701192326 199149512 235418612 843457106 584439872 29936272 237833493 700658331 477492311 728209547 339413839 469550216 612227429 31076747 993520075 610031865 703003786 792254899 473377291 395863960 272097485 741561151 649500280 301982851 63739286 399559365 256001692 6769667 822619065 388809507 854728723 517762450 297113056 989304108 318608250 167820963 506723450 221961539 960581295 621287655 104106781 511159665 772775985 271223409 66443575 430739220 159182347 978065342 663524066 686665933 379268752 174717013 262064763 225875862 853871405 788484083 930536462 756967206 713170572 124541832 814621110 495244619 726110009 229055759 264146346 949652286 666395669 355194023 272103071 915218719 153344445 314199566 810471111 427736479 976251754 837747815 643274018 644457053 926525581 37771435 273009200 10201466 879443847 829938454 269500261 718070425 114348579 304753507 863389284 343800711 473067800 50065024 685761001 216931346 716485065 567964763 996675234 93313299 511932395 616249482 520552923 914577659 369515729 253097105 218895224 870618898 926198534 196215133 842285243 534373086 517554837 715847596 55449662 192708189 192680924 623081559 287169311 132283496 882637709 232064751 127378057 18579402 616950658 437641388 412469276 380264257 744913416 36909728 411774883 270177896 415052535 752251292 877287917 630525702 369376212 543651698 610953688 339441503 561794760 283922781 516782506 758546448 210640313 885575413 571992801 534892451 626616167 655262904 929050985 115501689 995234844 968169610 373972692 575196638 782317006 704292955 719349220 267023535 125400214 17759324 670199469 728558140 164197644 581045313 798734260 556250256 26243660 719769633 85332900 752162049 99239779 835545202 37181580 860857895 912198422 777058452 377753882 18382695 944252087 38873473 950940923 44306257 738030134 771818651 210733679 457598836 725889229 845942211 637567786 635846766 961903980 830039002 729519996 194029411 339152228 911367172 875974941 469294324 669711226 989402262 115527890 125641210 203846141 491898206 689498434 801754690 319027466 555191576 477683166 186665733 766349691 256585163 633132768 398926684 174943246 304221773 582239786 619687399 387478842 766091804 662721810 888621778 863773388 541584745 856235081 830689239 622204557 758399350 921580375 684924963 268577640 150253791 405661006 343693646 749111694 592252691 777708955 85184605 441484822 981085240 740978744 847085080 69287647 56349806 302004929 3656403 947053865 85730437 176976550 506905394 287438370 946325025 182039727 156486570 208997896 515126124 1777512 701202434 75946558 376133410 129958789 214771692 574571139 571207968 313493735 836621172 764873125 454907714 342543329 137627303 99075125 57488286 101636705 538030852 318029301 333884497 183635195 353863491 746790312 8733013 373526743 406424825 457323260 964354638 989088 572416007 254273623 994027204 828780556 354929752 975493521 872619218 553303641 497862059 112486180 607050404 204958420 450169323 858323580 788842917 680816859 302152027 523192175 150507688 207292304 795695210 241453221 851715874 915901275 184752528 453634372 803847179 524539598 335755940 111271491 93183092 861089714 554449436 1143368 275423017 656467884 676326247 735029521 114382095 686872881 310512407 924949265 96982370 475362715 939771982 292663275 561283641 32880493 24718416 33451994 747372586 978792852 580313680 432663730 277063173 296823515 420119702 11639994 692988487 335029893 138931900 11821805 837993865 510423909 338770651 90139520 81242219 38627689 51410984 604770917 793475041 13872399 364563075 481390541 786363797 738969380 438598323 572557519 136710933 12094455 692463802 539224793 857383802 314675174 127413302 314510786 11328641 622631221 515701349 555820267 664016565 493010219 311896937 842888664 297790824 703165647 409430492 631103055 132369946 503688656 888310957 435336099 606427964 948508353 724862469 131470201 416649865 263804935 665597935 574873448 919424445 199127567 749107305 277323321 878818747 38498147 641443273 458502571 43362888 800504357 766283058 84219823 476083708 200605995 387127722 325975652 725198294 594468870 680201069 656739869 938311110 7377477 89466274 271145737 779915691 929309404 563247253 874165875 651168499 32655856 14460525 239997536 687996731 532859945 56907475 53330972 467333372 596685714 560571426 517484613 626764994 879528169 843616972 655103703 961909566 367714244 677515001 667466851 694419168 695916881 992482409 605404396 701425076 276259321 906368766 986766335 350128718 143728944 194092852 533804777 754342052 521204224 60174088 800016247 44553637 674137200 731375745 278236898 649176425 743914187 685186308 347358594 389271017 177088137 399753944 572781225 11042159 933419104 311918483 920226036 682393308 688376313 376939257 331958391 482511066 265772803 797180022 66629243 928060401 129101870 801971879 92965770 167238157 82573815 439061429 584849113 379183632 973396776 646997353 358649895 581156767 800792967 831710147 257952802 600930941 581695683 228004926 461950596 88650319 625543123 208951479 510574997 993022655 882606188 366919303 956045197 161370862 30483966 962690010 594995683 790539465 603633501 589397314 26295929 29968591 419009019 8162044 258107614 170202195 177187621 852974320 209109616 316067418 741303131 821580069 296165830 82020668 763821494 561874826 879773288 772728105 676866094 250461045 747787945 35903982 596284586 941209579 497786249 953948452 471003640 226212884 651531722 750526282 369406004 213775389 923446897 221463853 985650465 903566057 266995605 558110527 454107852 646688128 648811739 941684522 86885808 934433894 392792724 851828126 786784476 641176209 87629544 624281618 612827392 821561050 702769307 874762779 899437471 630531022 560092094 637932871 843283674 141808424 276632386 221140264 582167700 13349177 178858899 475998588 912086037 870483770 329604158 280436186 894708523 252745985 803034682 336274773 411046043 413838378 147217800 441362063 295714694 707656392 777016424 402804565 80178352 476676888 924644961 322815040 257731889 734859281 534360052 694970054 105320805 179402736 24427013 258938997 213343405 720352971 230378178 514710632 476375510 216998112 234645483 135931420 702969472 361647848 859287963 125516855 701686421 293502771 541187873 559204053 218468427 233976626 133998930 758450954 310459473 348698569 695295372 944209527 635521980 363603214 408879606 385753300 67811879 772735021 728028800 209718091 44487270 434533843 804186595 481759749 183980729 889615022 41393956 256562420 20340455 890492689 419880568 239233584 921953706 316952666 957794945 995829088 409548197 473630523 274731151 564975189 905660807 6706226 15931106 66322545 583356587 916563349 357417650 489394481 403882663 326546222 26907995 383385767 252980597 445671662 46508338 218130474 97988515 110530548 703241324 79011144 102794736 722692308 898371210 155699077 797875878 34604306 281776161 245405183 665945331 765118776 460370955 723973098 349857132 897829501 577369326 372826232 205553861 641493148 793842520 639794871 912904652 189915854 786169218 541824278 806326166 152400810 378375391 169525890 577054914 434662853 777605614 599065217 481599218 351044423 718706830 801039682 29234963 864633765 599311932 297518839 493027243 207130310 863597961 615026281 440660488 484106933 393639801 169264412 519573910 867736256 462334434 495878763 933880880 504256832 123976050 539516994 120161344 430980881 603097511 283109353 182154107 478333403 894916801 684706843 135512736 657135145 567446196 95779518 353033970 461769716 413257833 580857384 827968325 206895033 395993635 59124984 178589441 220120420 321197760 276078308 833797316 909234251 116244228 484466299 572990301 93517720 408808584 111851504 740942435 415690935 271140816 420272652 96475108 830141013 208526810 5093468 124138975 606518670 54626658 304830647 343724901 641300032 729824034 262952538 110079811 299585260 435547569 625717885 514393826 794438493 639544698 909293303 470600517 195975334 449684006 50355629 457080402 135032872 596287911 203609534 726758118 610203568 54930829 426381475 53070425 868521621 933956158 503606595 73343615 430946301 78236951 916266360 324019089 128305333 153382217 119655944 845782877 447773860 816392670 523648897 182630247 45819531 578229171 430957074 441405687 251140276 532389524 863669781 35292049 390370528 493217566 898759171 191097160 715024991 408720804 689108079 322042842 935146774 228873416 566638753 590018557 31065575 642051216 127725586 86788984 817232964 383290539 727387740 949129064 719899973 561355860 43279098 137125760 552192160 432533789 177143864 970511341 724452297 910035177 282752248 851679831 811193035 849980357 243292478 205967890 561653647 477732376 374005676 748818296 535864947 137997841 286814600 639622503 997348613 863468818 860808818 158732142 417563442 726103758 214661701 312337300 414342049 9894369 628912545 353970024 816091292 989656558 802056866 751218813 844393825 895887701 838525333 872606849 528196300 439206133 161253423 456652674 969320193 744912352 388288945 132646586 233101087 578241008 144259880 769370786 397974537 865552396 554185165 891728259 137210747 138459484 911994533 204495314 780636019 839562467 476316990 768145191 815561287 858821665 581981633 21015563 125548642 130703057 917892817 15213172 835951916 350190563 466981853 234975057 767667588 544115469 718014964 230817876 559509687 745583869 562435554 246307189 114583723 972143384 7540801 857935087 910514376 223171573 407176009 450286895 304741670 525037417 595107270 156169631 745254428 29343491 143419985 217986169 78945442 811963238 317389438 607574025 972528153 961785344 88470902 750280631 912001981 1324647 445492777 960243475 444833895 655717764 636777234 49369700 372646682 401403942 672635896 641619631 669074688 973401032 427808166 220231076 344784113 682095920 512482483 374498308 958831946 784092423 606512552 997006138 355739988 222256267 962005193 72259798 605470896 862836802 244878104 218759564 331400722 885280685 805931555 544303132 924383217 289055517 373457716 354501359 97259010 986292855 493810480 316288065 854189142 101071455 181925746 500662906 802508933 280312762 954210329 894898846 541513856 249147138 247573083 625091721 715038690 410544234 373458780 647304450 270821749 93757918 642342619 153400305 127784771 317399546 588193398 318197812 577109178 731504755 177046774 790716621 856313551 455865447 118926306 906897973 616314253 573679507 897272497 904873181 765510860 345841729 343616772 116641632 59591681 365351366 636440744 955301993 663769850 800344225 955652315 944992099 609558784 617265868 637036185 308757605 526220319 989868427 581847303 418148775 512028155 951860751 770707303 992098837 936797703 167403742 891656040 627104809 899941275 865875054 920338022 416874768 902113165 561899298 481584189 932267191 125774476 122904735 626031366 460314164 941549793 911445376 702830221 971409889 769248027 224413660 495235176 374858472 168159714 718900877 957084060 543879128 35351633 312836848 183069014 127922426 235579276 317120113 610251980 172855013 463860875 295795691 892977794 227050385 366999236 331024465 377731139 550654148 141689256 774437820 655608970 639497483 98967927 17662367 198099610 741611558 796593093 720567367 687705195 209874366 947737884 844567257 115827273 274760943 6740673 972487056 673818931 969880655 434689187 185757742 664068568 658889282 302596114 432740737 181363422 497665086 683299969 501485511 626112762 843705151 735297782 265955013 3423653 74516808 317441042 900105397 843195761 706791626 171830514 282275177 224001892 358369930 871747669 336813290 488138429 896097575 544372026 434861954 621851841 819684553 456582583 208655554 748388972 378492431 665482757 441412869 551373279 371739755 557275021 525884893 887155586 868238730 460486133 397661721 516058454 346650901 788496319 640762845 738099294 663383219 958069058 268980497 15037479 72229075 529345952 783388587 285481009 291999472 657813046 11543436 265404127 725717526 539992602 485242354 738892107 571611091 477372611 129632939 454303761 244645620 895772124 174075953 991160655 120961472 283645609 749978056 522719626 321683210 117254496 329530343 478823242 458730799 557226210 500600795 984011373 636076324 440244730 551356787 481467548 986733617 856070826 156659470 715232072 838059567 469852259 430154685 439590636 838086965 545447464 546925360 114453383 646017143 404388595 925010578 225123747 676805579 276777755 953401290 315271147 40329025 76925438 236676526 590417956 369412255 948610896 834117447 247061964 610087991 672743626 660391118 593243541 520696696 295122312 334774666 866887849 696689478 5705268 943990476 536706704 257895080 851271654 514560209 176712811 718415959 324455994 783210367 181268726 285247195 76004413 253237686 149183673 914075185 759469601 209562614 964234539 351501411 705799313 23280420 933157360 410233812 363002852 636395657 379585558 853319189 718337223 583107478 329762694 442375124 340004492 683169895 810501967 928355395 39885603 405283153 918530951 837559886 471537502 819560198 862380080 417689260 252146155 284265522 30019397 714428752 871499890 735373459 21137923 496547487 234527113 932081922 787766415 560780635 748436852 955683038 210636190 554785128 268981162 126769183 8028113 485171731 423263290 765056266 316153868 580730635 323945939 412345586 325715637 167338173 980904227 282985929 468551785 733554684 502968993 241402282 578309370 731671670 28459839 348208464 356361763 527817782 879892190 599809086 710366001 973513417 877971537 251165147 300035332 422317660 43185200 152342024 332172521 211123901 100840434 874106690 546260626 430913849 738432592 608887533 468440198 655466394 773702995 770756646 98627314 870216573 766356341 384650597 385729892 524032735 875610654 846369407 761338251 594744446 802873353 323124930 695628138 349365032 330733727 32767576 193250563 414967548 260949691 173651284 98153435 99053313 766352617 23878654 941105041 142319277 27758929 601951716 155182106 532665898 632456463 466555455 113171396 106133302 965826549 526169779 188259472 28932388 446080637 399535957 515268700 409820714 378971497 158932706 231005007 161209134 65436765 216711896 719852891 542222613 564262974 777167512 83221259 763508811 185793120 569838068 728538589 601925515 790693612 328773307 321513901 423670270 791174673 827822158 611280336 340445520 97891558 316668046 965445504 942838696 183663657 404334065 491603744 887955049 795063992 768078824 935786105 856051674 581218080 291938425 966454442 939134779 511389489 325114743 575659345 289621831 207950654 92165110 656854515 94645427 426300079 993558512 270450014 676682022 697017456 411297413 473688910 558673782 771137026 315382734 843955590 270895963 176040762 302535732 920587663 825073181 463595008 512863661 470081817 910757367 964510647 483524526 404834544 559644150 101551452 75903599 258182892 793947989 34669875 705942421 436391055 988255669 619810823 279837287 744515613 467284295 301221027 408553224 10474 10545803 717019725 126365395 919105644 728050346 119966366 977197251 229835671 662633498 534591871 986861031 927668450 681845880 254420056 58359835 102958459 737808955 310749679 350282200 410643585 976202943 796511165 327205902 584208718 497025622 488319442 348225754 857879094 72929054 398032126 525981983 754487554 657446631 269866144 471604401 680573735 876914453 805557958 518999483 939484968 889069722 139521622 208635471 776823441 803512285 752200087 374854881 217922728 685510163 169967849 134244049 974438964 585159402 335145736 743881602 112173231 498337800 52651342 533931659 662273866 25799440 811455710 638799366 967802663 175510491 296314657 747652152 250636738 476081846 157810851 756765046 169978622 665933494 391399283 555127337 303743106 925867098 575839028 590621446 196391624 783756332 72026915 700373844 629236932 706150167 389462537 800852152 957282629 155440924 817641939 562601272 647531880 634601354 212534499 772723317 758915523 469789483 605455468 625881076 983530312 201270197 72055510 253824349 786400904 768446436 437364349 140412855 2567266 956874053 856460516 856235081 611413735 510698953 68943177 309970432 557903712 618055622 803376359 44581700 392163900 857515339 159220119 539861065 18184126 545212586 166695251 519205101 668907108 856572236 154236742 540453181 758473564 826680087 682934086 933358855 877840798 476055778 779572817 622114250 247228613 477213809 307593589 583158417 35799178 141059501 599803367 686525618 832145190 73442035 554834072 762320589 320349087 324800996 87286936 544066126 536621318 665535824 840409943 362001495 618487074 934510768 802335501 57251147 622368945 531113389 647495438 494221716 406032874 975832006 395405642 12607835 88187878 608634434 296412146 792624905 639870415 865257003 687336253 192153047 563752254 154091107 8609323 102175621 750150158 323014540 965030411 930118044 615312231 14700590 75496885 176584466 22471115 940295869 159055066 114980595 924298230 192151451 361212273 905735553 922173555 195258331 168698098 247889091 576535682 598741096 782190523 574740182 112486579 989088914 796240510 460916920 557822316 281761398 867394047 880912832 813649678 710253483 179438247 101395975 336672443 474026730 355524395 557097466 215209661 590925351 892028972 261740376 499702513 204135017 648562896 688737940 587209597 520540953 226256242 555831705 446621415 927091629 891485401 330817251 284631139 263483075 194246467 251867919 259653739 808817921 270033724 781384676 176303171 562023254 140130496 240443219 779372785 234725682 475090996 917526136 776889542 354266880 874183697 558339819 436326018 477304781 196308765 886633694 473800763 863546091 952646116 832184558 830393447 932351380 109395659 429947205 149018886 320234308 844582020 763786648 176918163 959755897 781755746 199637888 676885113 566843041 280762302 225254220 64038536 337201118 374787982 119397259 206102619 590634879 993866673 960769889 531413304 649033583 858237396 723534331 535050854 408653772 809860508 892717114 514191799 562955584 109850519 842275800 368994236 765864640 323419259 653018396 517747155 692993940 184625646 295129494 541677978 285356787 332518587 661652224 353820000 838202808 327557687 333230270 485215089 538484648 646216909 143122597 938860001 120202574 474460177 551480743 217494202 776546934 604502789 154091240 572609921 146519550 702935025 377359271 858247238 263297806 911356399 495030356 446162166 863958923 422031843 89925523 373228424 626250683 65350581 344418230 602532660 423483405 170826364 891607495 416605443 47780483 759027908 638573931 869106156 459200289 230658542 789126207 98454281 354816569 708403719 934588573 737884100 721061728 931512283 152901289 529746149 27121726 239847379 884045115 400284747 680759536 244171342 142513191 868802650 371401669 885367800 226274064 960653647 955022959 984504670 671206678 906490328 827235628 140456346 785964531 282477071 782168977 672573652 121276815 276118075 29920711 932271580 507665755 9808717 385392471 934486030 918290354 851800728 794089634 549407007 803180716 615416636 813690110 104353230 826522216 302548101 179241407 244620882 399552582 629164048 718282693 837290029 796987704 266243224 992942855 249101386 232489287 870931847 586964345 630582094 550375513 94825642 179710365 643795910 4530612 422382697 174693206 232413344 418923367 480243549 411868 165461277 261349888 22806408 188592903 543334360 28734750 409952916 734454163 688760018 744117677 993307541 442616519 902304685 744938287 593663023 743155821 321253354 477571978 772958727 85503007 387641767 963623803 157494045 570310351 491205276 945220194 113295219 580100082 840817854 809682155 195398912 316282479 46855601 3128526 610634621 753826544 17662101 680525323 853951205 826117896 411839787 179022622 963449041 242157988 922321584 926563087 771035414 514144983 882389265 976759415 489151623 315435402 737946610 200081443 537354813 700306147 871966587 264151533 566219537 465879549 160867457 946239240 802821084 381867439 210315527 162324339 634970296 580182010 152775604 844649052 765336763 405833773 409105972 257489829 235871743 884590548 711277450 55393270 53116177 758688625 955431402 416274406 273886601 287397406 245126548 178809024 488038280 717450778 502520517 332502627 295717221 300519984 635684240 768744888 268214284 96626196 267027658 128153979 453509618 552161171 240165116 484843886 947682157 901869376 928644537 211543250 663265514 339001938 14683300 694648061 86951244 698939705 236097045 722628867 923216807 151869342 929426444 709016184 561891983 913740158 691194849 680959036 740154011 657230639 863576282 978230528 632517776 50686134 357503834 317544250 799698377 966212648 387296233 669526489 224431349 187903830 284237991 534854679 110923563 510221217 925047685 328985841 887259459 224189954 295017109 983007090 836344665 110197915 867200399 249469530 874345558 458252664 890393338 298277471 598318954 42852567 578002007 92357295 406920117 434931380 783514937 116810675 482033197 531482730 952305503 9667471 160153114 475676196 437484847 82217508 286203598 42568745 85713147 494646252 380596890 90174765 211691279 284311939 970276729 894982104 520137963 962615530 566338040 806373780 20223681 824085523 236321150 852610432 986781364 524077689 631178998 919233457 959928132 300708046 233548765 981456576 464475069 459615 913263619 708461574 83791164 855801235 874119325 764283270 242204937 301701822 644338949 626679741 745421476 677368169 825378017 837666286 298712115 237683868 91501972 939108578 519283970 964013227 491969760 64434876 603586020 257995362 490308856 487334444 149562058 116451442 350116083 34161283 538537715 787269128 903086060 691189130 431680594 94017268 561733979 6626825 281743310 351997368 762572757 716219065 208721123 869957356 832780398 442649104 176008443 929646027 52925322 312034991 598901494 909154717 452730504 751107625 893140586 688211659 726986479 892382619 994747000 540603737 440132611 842825622 750612865 947762223 891077756 54082555 613311911 837094386 772325115 289057379 671405513 199849890 538964645 257650892 452881725 971800643 558931403 926029757 937643849 739263975 956657130 425986199 676056789 670426101 619434167 767117766 383653629 72623553 258635092 204948578 793747691 303668892 223256028 134305495 489804919 498214243 685594086 199359918 924717180 204674332 211090119 413896632 594305147 730199227 478535829 606694097 798090939 477848219 322264154 668096872 318977325 256828553 312219994 441789791 166605609 969914703 567486229 627526685 277850799 812313028 479454992 271939348 444892415 653235851 141913095 240365281 977753989 737313929 537545801 936217158 335033351 665493397 457944237 237642505 359666946 587317726 649079468 814109060 466414608 681057456 952630023 546333776 860731811 777068826 278901765 922584126 535632330 39213687 268750141 839584412 749362931 828089754 20696097 971774974 326275434 454952934 718202893 137435650 574366984 824955343 537533033 748479279 514853075 388225770 602916232 897359745 272801055 686783106 717721832 8617968 658676881 776884222 555751905 753450553 596900110 241446571 569264173 189634426 640103298 461059097 526239604 422888496 465167467 864341564 266704335 114921942 211993854 541094773 320787588 712603992 897865145 851736489 439426647 510842726 743290284 259539891 441377890 938293288 953405812 609156060 334496164 353454915 605521436 319156077 263009861 20917276 588732447 421178515 775869166 970324476 800471107 21549691 269377901 295726797 428609491 715718054 929147011 905764148 570877729 414813002 920837836 757240388 322556222 461714255 807764162 263226385 162443374 486820798 758956354 871832124 82077592 321205740 848280085 104029242 609831700 603272140 467367021 643944205 110893106 148527584 702472584 755301115 790960942 826100739 253932877 844479344 338920808 580532465 401939134 538586260 58855925 783228189 850760003 276755145 459007971 250585932 690487688 93428344 386160945 405814754 165222675 53674245 546028142 39553103 477253443 874408334 449018607 608057879 426615023 624641250 554821038 850766387 613006942 915428992 608684708 793005817 838611783 920692733 902354560 545370856 772434840 212000770 887735865 294937575 986787748 636768456 181968306 489823805 62205131 937602486 919597877 966833891 141759347 409860880 442957531 373969101 559299281 912374381 211713224 109197223 110282503 304115905 720615247 403965522 925774929 422971089 897883499 235587522 540219899 991761948 784521481 134965042 415555142 662907478 404816456 908942582 143666700 845705604 673899795 612293530 675736791 136453445 861414101 283684046 222795050 124242183 3065883 222778159 975481684 632078610 109686929 669999038 889805877 438978038 600681167 38683682 393741147 191247849 842223531 106041000 59861804 594970413 114610190 517142803 948811992 46016371 508129393 89475717 701877808 425361764 376435852 766523522 462389363 367936088 729288044 962091909 430978088 52617560 532313315 690973803 304840755 972066377 387322434 895140773 551981355 762700969 666951210 433825884 213341277 67181858 360612709 594338663 503672164 120647991 426233579 368996630 548865830 404859282 724440593 664060455 487307312 14756982 6205082 398294269 566246935 135766500 522774688 931429557 504260423 389933756 350708465 898605822 266761392 125228378 553952016 19197719 634222038 103511872 995180447 853912103 459215584 779396193 357490401 439296972 729371967 652526961 701961066 580373663 940181622 956333009 729683054 779409094 51658763 334608815 801862952 59344168 205253946 814189525 134911044 454502995 785155891 531313687 545805367 445620856 843142694 639528339 489519368 385414283 6571497 11199498 441869325 1699707 615045433 161789546 425180884 215714529 39874298 84446455 86241689 702791518 964994634 114322378 404960096 380382893 425665669 580727975 744987630 463834142 464030583 99218366 606651670 106566217 349889052 764769917 483945604 56426015 471213381 520278677 844524963 42408613 998656269 436141015 146911501 867703405 548462574 409774430 209404211 76902296 739213568 361925286 176843550 796324832 757923343 993485628 684933741 630968193 717575133 314021745 915586065 627687083 329983075 973341182 105483065 316287267 589550397 532688508 661819937 395560188 895774385 48494028 597306558 879332659 378002326 593010924 801171352 967259757 662988342 504599307 753990001 537351222 730268387 996386491 792544440 597217714 335930170 597410032 217322366 429454440 563643327 37103376 991422931 782785698 620673860 406306189 131732743 133690370 579833284 440965590 965001151 278755997 258361777 423331652 168964896 402706012 706115454 409784671 987339299 317383852 211032131 910929602 626369186 218898815 389469320 357266562 406118393 608899503 802072693 120131286 640689562 528835232 413042772 700996018 457447615 292032589 886969120 569288246 898322266 375101995 449533716 788425696 210093550 963517802 614306219 698997560 728914580 951237380 921503634 650704063 996407239 194778068 435867434 979785564 869659037 853423461 340501779 641976603 795669009 185030099 195492012 519699196 62018665 312006529 522851296 354218601 440872091 75586926 515390262 186770271 62807089 91906026 541026810 73688085 319735026 701125826 297210944 841970033 263684703 974180412 174921966 591066730 335396707 459544759 170439866 149242193 828875651 611482097 947208012 915284155 677904824 299730097 554734987 286396315 377239305 436988491 497859665 76393571 721930085 65002387 750982339 565001789 206359176 846248643 411264429 724502305 693487370 106679932 21450340 161571160 108055684 682392244 899428826 411418443 614862292 348779832 214901899 567258799 273269880 142607222 983667036 794329300 642460856 179476950 810871707 481769059 569765849 279095147 723614131 486290394 800706517 762302501 642754121 731247134 52574468 663135573 318091545 414808347 541066045 455663819 859030475 463748357 282563654 676522156 576872438 759565893 697491867 469345662 806459432 637772872 563130612 564916137 817901289 943203382 449505520 818424511 636740260 867647412 898485058 551188143 736984754 88012850 60363613 27191551 442060180 638252603 985147459 1547289 797581416 807409850 611222747 35214643 450390103 918945113 193143232 114024724 185555449 324992383 5618818 253770218 305132823 835068929 147133744 149272783 524126101 438015517 220929193 665559897 87124942 121313257 540007232 949050195 339269667 573893238 470146987 733587136 176576619 447506796 825118800 94414672 871606689 931803686 928635493 683367134 711701720 486188117 358888231 639115108 875091023 196220985 476872664 677053358 703376984 782603355 654373666 409725353 112914440 232629469 493811411 742043941 587044411 642088988 39196131 503953991 258911732 688095284 604985712 336944029 994283628 222617894 879775283 177337512 445242604 632584010 743869898 549474704 729144404 207189495 790141662 702508494 167554564 24689954 359130424 538452196 575896883 272421340 147000079 358589114 300808062 60430911 131192763 966942685 837737574 190616897 351115977 749167687 592130065 289440419 608362183 432073609 347351944 566101300 369578239 71812785 483091611 429480641 861338025 635559220 887029236 842787052 10995210 282254828 835493864 625715092 382392656 938239955 190731011 180268167 312430267 409637706 726520713 857548855 894867591 649122161 209538940 643109630 925339886 332599584 857488340 518871936 622149628 907794659 840702942 313345041 780008791 997463525 93494711 353735545 864283044 341541174 57672225 282655025 91395306 597940835 368883846 685883361 618798294 978310860 334958339 780571514 194920777 793700875 213624301 145587087 790466315 331164647 38419810 29889456 399401228 172177910 848733349 422825321 939337471 458760325 635314766 743194524 807317016 800881412 964114839 973814795 265710958 325600193 909569943 552949861 639882651 989412104 738826139 149523887 935761500 436357140 736724739 795333450 23921746 219055356 23801514 652910001 171387757 341940440 66819300 649997035 369713101 289037562 349643002 728847415 351495426 523164511 646208929 137042236 648014138 293588556 864310974 282521892 717597477 553107998 328640174 962935395 206140657 614164707 79194019 888843755 402532846 754777760 449955459 743031333 414377693 469505661 798293764 214113209 212172606 691381182 463442058 997894578 173922205 15080438 50725369 655347625 482539395 268256844 449865019 314097954 461154458 603122249 905776783 29781726 118536616 31736161 591313844 134381837 336036969 821782761 797706436 929066546 457299187 960848758 276366519 124293787 309363686 947937916 714958624 382728215 13767063 388892366 206984276 890681283 221265151 41417098 988853637 306071271 698282020 508052519 221614542 712785005 828619759 246480887 984777985 495787392 322533346 11749054 165312982 766819447 761859345 71983291 763273401 917549012 122653631 84691707 672163879 480403947 325221808 82934112 872866997 863455917 103923241 68832920 683018009 19032400 271639433 939892746 406926501 354449223 889431615 319710687 584635382 693995829 163305879 349798878 803147466 861747399 597028189 561625318 370238185 416570065 734199734 956875782 594970546 842308651 582985251 975703129 664203031 45599815 666303766 443071645 774589440 771579650 415325983 242458568 256132963 525197017 559047512 143647681 813373171 666487173 471561841 411528966 511459580 576728532 472331645 751998991 839445161 460382925 62573009 500136093 470495048 593673796 427160456 977255771 638272553 48462507 8605732 95676443 718434579 905239463 239063477 565502800 680599936 219585095 995768573 80158668 83366894 365682137 540612781 812830132 992596656 368103136 819212004 364110077 835148995 715479718 661676563 122003261 819605684 539765305 322706512 65501403 736728862 800583359 902637584 979773860 63814830 409501514 946158908 867533032 8398917 578408588 67993823 403364229 755752251 962716743 589795649 675634248 714125512 909941013 417115631 726657437 661127406 250316474 337970257 200013613 464441686 668424451 487212616 825808006 898463645 285926958 785186747 577476125 754402567 463904632 623095923 75037503 686388362 620545648 594539360 81299276 611101850 505869457 470607034 695012215 243523366 981241249 936112354 898744408 466213113 381676717 248218266 217642364 685432092 297687350 34700997 896527032 576146391 579939019 967869695 84168751 65643447 543474143 544075702 780258432 245669587 778133358 10139355 698988782 797743543 586454689 279779166 223727247 636461625 202332601 486854181 414297228 811483374 608449564 88960209 584743245 948262037 393307168 23603078 31193122 852090668 763775476 799631212 50041749 127978419 241561616 767160991 298915073 365017137 374862994 745433180 205531916 450990332 773645539 462665072 747018008 20998140 136316056 330439797 707606650 436604254 978947664 135910938 833022591 589436283 980155171 43240528 884200725 306246565 900644712 364924303 219869582 309163787 530645362 426640160 775803863 882626670 322964532 840272022 712114286 984842224 189789637 484089643 602379311 58310226 848434099 265949826 838422258 951136167 385921811 902627609 190713721 904439601 596181112 393162198 525775833 678540298 391719414 497012721 528689730 162402809 328411813 791943413 907567096 476517687 383153682 256087344 693585923 735798793 456644694 878040697 230222834 149677635 681561393 400057982 164783243 44617078 12880751 80793344 835345436 394401492 298553978 437722119 571787981 62754288 223112521 986482247 693613055 659454133 93411453 489372536 896544987 531551890 349903815 771670888 494909991 198487305 367014531 195078382 58918302 797200770 117199833 377208981 877551390 573870761 67109506 518445804 199657705 300521846 159302978 426572729 330758598 281205458 174493307 879408336 852950114 488033093 116318708 355947734 886928156 10626800 834358709 451384810 412637787 144863567 74739317 866317013 48769870 15067803 172405074 261180978 759171548 986317859 114268114 349103155 694511470 377306869 15161435 123464000 970951438 443368102 282990318 857524782 686592118 754952256 420600896 55267452 347436532 198794535 321834963 50097742 7706785 670998267 458918861 776354483 669211944 755315080 143751288 2313901 675382346 599671298 313783675 806087963 135920913 181177355 174869165 346200031 802476880 856216727 550970156 975080689 941448181 439236723 508532649 857551382 880610922 383672249 360295770 418830001 316122347 893915577 731995924 344543782 226259567 513323176 683484573 5554446 41506873 705154529 246349084 169316681 406120787 981714064 292144043 85943370 651450459 814321860 160201659 189492116 804382105 112326580 161347587 733825871 197975787 74645286 997488529 698433507 401565271 435078611 288861736 649549756 205684201 290870834 787401596 439652614 429265979 210406233 816579402 924811876 809859444 146713198 300486601 136882902 462631423 124604342 508908507 889192747 172187087 560875730 402442007 513519085 953657714 53010176 199898834 982707840 2286636 132622513 119871537 718533132 666538112 479607942 696700916 362185700 467691541 380265055 670759000 359608958 432530863 658018132 790250190 28057115 254360871 714161156 887957576 556953959 407759347 747375512 689185884 898248052 959169234 700888022 330566280 269348907 31047620 141601609 386765962 945299994 7368965 878922487 413577033 334147571 860302753 925887314 596025502 745849337 268151109 825310320 180216696 400829382 262788682 334664409 981467216 736220802 124719254 30587972 758244139 368912840 138411205 788173129 692064669 841065234 812443900 222042270 400887769 490409138 297477875 548551152 981476393 807704977 173138303 400613390 736678987 142688751 355530513 207180717 924055106 448402950 173776437 714957959 687428954 530779692 694923105 806841807 843811152 721024754 521239735 580632082 863603015 77691784 19925495 608066790 230822797 482841704 143691305 509292478 72984249 808750357 143471190 731657705 321767931 499548765 405136188 386037920 29253184 368528603 874378542 400334489 147312097 346674708 258653180 402186115 117286948 202963287 581122187 764443934 269581790 789445673 530167493 189470570 452997967 413324998 364567331 553269194 658935832 159399137 138571736 867523323 758744485 91204584 87209663 867882556 516957534 302933269 608649729 134895217 57016269 331731892 904031025 850603462 31318408 446585638 993858161 284910838 447307695 634317532 172070047 898482398 936759798 10988028 428060068 537282860 957429328 276886682 793731598 290278718 539475232 293245682 119515895 648901381 433106886 512241620 667556360 902556055 409463742 193618973 81144996 503683203 450125965 307856264 652673527 306003973 540386681 237722438 681390488 790068246 248839110 892213310 250401594 436796306 238084198 238846421 377578455 385775245 377366187 486687665 976812748 48094363 978900449 972566723 442458648 157673861 743459061 890336414 154691336 702012803 635357725 698651494 56432399 761115343 979761757 437931594 85335161 363787286 51649453 579715180 359980560 991181935 779023128 943232509 789703028 875936770 786431228 998965228 207418787 283003352 669498692 5640098 336590116 180366321 839163733 283388254 587414816 791308205 479876469 499488117 798937351 155781138 302242866 93517188 825438266 710943620 610472361 201995047 786417130 839250183 726096177 164291542 53486582 35618564 149585998 869820100 633822107 861517043 925027735 523618041 85053600 167334183 347158828 688439355 798181778 314041562 404668161 425188864 654971102 331047607 529416575 369663359 531682762 356494763 400045081 329476611 496791675 157363173 546878544 878962653 303613298 886608158 51275058 812126695 931106766 633643355 775797745 350156515 426732994 56356988 726150840 550161649 424357215 825071053 985838261 433864188 223939515 433382063 820221208 42986897 927708882 670268629 807528486 93981225 617652765 593113467 29360 723885584 89455767 723878269 789115833 494364159 170749490 910315541 333536968 485572194 801821722 671740274 959604543 385676692 796734871 950726793 810912804 156561183 106491205 795422028 298957234 686200433 321563244 141858964 678896871 682399027 128094262 312195389 845581116 405808503 480236766 686896156 384557497 605603364 588851482 971733212 92525939 448356400 877602728 716682171 704854614 133552582 333916683 798368510 735544763 235855783 626727621 926370237 716690683 729335525 847035072 774874459 243429468 576788648 546405862 938338508 12934749 366769944 884364581 329931205 182047441 226295078 781315649 295740629 944264456 736480551 894898314 662187416 901950240 805850425 643156047 97569166 412656540 649402658 430216929 815806406 400444081 484235145 13876655 532612432 77923736 396747346 97820270 168749303 201948231 268426020 117896487 682397830 473265571 82593100 93627312 771423641 596287512 94811411 146007101 766224272 799200292 870299166 840038341 876603765 964479525 728845952 481490690 507516263 550361681 362689903 203540374 369226720 54351348 249671956 171333360 180290112 87630475 549759191 743800605 613130632 691383044 268867580 112790484 458915270 810839388 962283030 168559113 235865758 28115768 830142077 553403790 963705864 756699876 9202902 665021513 526411307 412528594 95850008 570557731 909149929 704522912 834731907 592225293 124146955 391826745 601291238 893737357 966070338 11676303 264014809 739602726 556621326 513869008 981003445 242624153 881552562 771504505 486106588 454767931 775083934 720508182 949574215 796643234 231822691 451205659 511894091 71751073 894518732 782879463 672305657 625611485 761298484 702278271 134259743 7732986 868491696 51337568 333390269 715131391 326924075 823513357 492353864 757342798 962060521 555302099 431675806 658488287 787573299 242031771 952803854 450872760 192965943 798986561 332182363 4017099 267428387 289833700 273934348 695451381 185708399 132269531 249803626 669637145 841043555 251961684 652943384 855437214 45688925 405950015 383476872 544154970 942777250 169719405 716847357 578133943 524204837 342786719 287386899 960120716 40866079 534893515 761279332 142433391 114470141 457453733 640281917 998147677 561355993 702529242 808857156 616100655 50436892 480175054 768743691 771468728 730042819 726604104 780344616 331590646 496858840 252938037 670177125 950163405 886581691 675475180 222777627 774089626 646488362 23168035 867425302 157745282 842609630 33614121 623488938 112121494 693633404 227240043 362635107 488796513 925139056 624533919 583090986 943155502 897581057 773163148 693166042 246475567 960368761 318084895 648015734 960635958 41465909 849073962 322733511 890411426 876039180 280785843 809433844 452357439 123440060 253610618 832679052 563794415 714182569 167674397 307979555 105130216 32442790 410777516 157984416 708904464 148030164 142833588 607133396 268336644 759741719 143510957 868053993 501398928 584912953 298176524 620035061 928958949 993189437 93346150 936014466 773734649 429749434 315706722 322191935 950864714 817399347 55640118 180009482 20518808 318924258 370641308 81158695 205612381 495363255 325926043 573358711 895085445 824031259 488661917 261200396 317716086 583512995 978106971 110253509 759415204 109551269 430453802 922672039 795409526 820231981 488675882 922978072 61987144 742173749 880339203 783650730 266687843 659780249 194909472 677862929 900450798 948108023 63117910 601000367 12527769 764665379 885482313 665316241 553436109 532431286 738275785 982534142 930144777 2548646 598668744 892611113 249230529 182340972 217560170 210798849 417138640 382039674 680771772 483331543 918117321 696950823 569305137 690279809 523380237 253422822 429913024 873158932 855155653 250705765 605465975 91335057 443937342 246252659 268309113 705272633 31608215 528744659 903366956 560896478 544716762 52166291 252937372 202251205 218998166 802164862 829250711 194176509 695958377 695529585 854001080 271416658 379638492 445376402 64915405 909198341 475409664 39604574 659727581 894506629 79962360 666743065 301133380 42042996 298912945 462008451 904528445 985140410 768221267 658494538 414221684 238903345 775167458 848247500 38736749 589077848 259588303 670868326 855171214 491369664 656907582 37830620 974708023 892356019 923530288 901337243 725503795 160986758 562193494 831660538 81403016 450932344 614553865 671780573 366816760 498044136 622498487 185414203 500991283 571084145 137110199 412511171 875566365 820445446 466969617 510359670 119402845 34100502 698976679 573566191 73402135 772170968 22884346 414341384 805188617 437979607 683735943 727420591 484899347 470035134 560195435 542506435 711878477 897014876 869812253 44695016 478585039 26750124 12813586 540499332 555760151 452293466 244865336 112117238 446941812 487792230 37153650 389174326 840761994 756313378 889712511 896153169 778903428 412882108 928239020 848571222 415692930 380889357 414079108 370875521 213670851 230263000 674366758 471462756 88667609 64145734 966857166 352980504 424196817 983136100 676064503 334707767 356474414 563330910 113542599 638927844 979405982 164996176 101800428 776829559 574860547 43183471 589683663 129363880 53503207 960953961 776881030 10903972 787435910 396033402 23493486 399753013 247497406 194351404 532609373 54991078 901791172 897789867 550642710 164567251 595931604 194528427 187194142 514128491 862865929 774582923 260115 786933303 12846570 317794024 75620575 649272584 434028709 350923393 855858824 467361435 541712824 779121814 710977269 871214738 950617866 641623754 469553940 73830528 676791880 84249349 375269708 92212325 335292036 780978494 29408395 365281807 324620 137568251 15157445 837091194 817423553 445614206 616860750 962662213 514077153 218830453 834113723 581833604 245873875 14292280 16815290 425586401 158151597 618895783 932110650 639231084 532014597 353974413 717623811 734547130 395914367 774979130 496995963 39439255 9435386 724109157 165348227 165904300 718504537 387777826 443874433 840568745 315860603 913876882 539968396 431383339 312979557 375743055 918506213 941500583 364052355 462926151 905628222 656185658 122157408 832732651 201084928 806983585 672826618 28395600 384496583 686078871 794831641 437807771 233670859 521233218 826792738 548457520 128694624 158762599 757275367 564383738 624247437 615351732 275211281 338505981 752888495 821472472 723534730 326211594 405919026 437972824 416910279 671823931 11555140 572758615 570021608 384720422 646710605 377656526 264617964 612765148 780472163 504844692 920233617 321852785 246077498 977358713 337892585 17024366 120645464 995422507 800774347 616470262 928991534 637737361 92407569 189547843 627617391 207780680 450470568 881972975 363554935 991037763 663266046 913345414 693898074 676364285 976434895 516719198 610201972 741431343 610706042 332654912 878218917 723279503 741640951 552218361 278929828 635923507 586612693 862599397 603488132 400418146 284648296 629320456 794578542 180006556 394097055 127567316 697145668 693755498 436660114 413888918 146167366 279702425 304288140 64303738 52622747 684133746 856000203 512173391 750912647 165811599 274640046 991691325 607204551 189196058 714469849 125931283 924193027 319087316 588142326 26496493 659703907 899329874 819222644 962211210 52474585 732709868 315621602 161693254 876484597 901159422 208656352 284635927 485707854 303994742 241846901 405360027 848687331 749649147 80328243 344010452 67663185 716707707 562693574 32511285 11046681 820638030 949533916 338260862 131699227 303457422 992223059 294585258 109463622 193387819 308455961 953442254 997555162 74314515 364640747 596618815 361939517 477528487 519657966 164755313 932146959 467676512 584233589 757302898 931769372 474913175 967502083 464814618 318657061 422141036 390240720 513223825 765801864 357863998 702291571 524685898 342409930 721075826 930019757 159392088 733512922 148969543 864530956 654821078 552930310 580624501 547250412 158582517 399168877 921428888 738049286 846632880 119013554 651495147 973955908 149386897 524657303 822694875 376281572 744778953 629756297 40750236 649446016 691572037 766218287 458228857 880308879 760032989 25230865 859557554 662990869 508774709 577653414 290150240 636958380 859826480 211795817 90761561 869603443 547142682 872985899 122725717 930604026 431942072 134352976 131522603 287520564 953644015 645930161 588187147 372792982 197737850 788604182 714524512 850620087 879100175 876722135 838017140 47945669 994967248 535648290 278850560 28664127 232694506 723819350 83722137 452094365 713007248 242328627 51997514 870331485 916709383 745878730 774002910 867149327 763833331 919733803 542305871 488361337 210575675 809121693 700954389 460158421 446467401 809682953 612955471 758550172 564579514 161059642 332308580 758934409 707185439 348133186 329143047 320129105 795947777 79200270 207076711 931777352 605611876 265345873 763178971 714486474 270862846 931522790 805596927 33886106 379433140 294577278 711955617 896083477 634838493 400644113 977629634 292043096 681647178 783228987 807887852 98075896 222787469 317426678 39645937 633353415 320707921 501649101 965675328 696754382 33153409 412370058 302889246 845925985 439811017 777036374 509525095 333069340 323714652 424956513 839424945 762073209 844445961 59752212 23620900 748852211 969090103 426209905 772991179 457984270 482318349 259570082 627977289 820311249 890239191 526882393 930473420 956384081 413972974 851662275 642618062 693224163 858849994 827379667 105799073 109839214 291332211 950052749 722099926 26172239 559308591 127757107 174309900 323922132 559019981 948122387 610367291 12654518 805892719 22500774 661579872 435170780 43287344 8575142 584542282 66202978 318346905 560245709 810237031 351280365 184496104 372839266 874149383 754749830 114075929 519051752 900332162 631760474 809077271 481642709 671848935 275257033 703722784 75110520 207067800 627408049 760370410 77623422 269119349 545350374 171140244 509292877 116916676 245395740 661071413 463169275 642331447 420807046 430009449 483423978 758631435 772777182 483238576 87974546 55739868 344188273 200644698 837587284 805781930 702124922 675872318 289760550 46754388 435438376 253727658 537639566 175800431 164047487 713689671 500242094 65644644 706293142 852150119 165260314 234697619 707660382 799514837 811933712 194544653 194642275 408952623 161317928 880360350 69965016 166974817 848927529 388784902 162996920 989532602 912479185 733415832 253081810 608742430 349089722 233252042 349050088 521569309 503539696 940957810 385535712 130092720 74026304 594454240 146577804 638260849 193766071 67319380 850561035 866958206 785620327 590511455 403114189 891092519 731209628 63243196 493923397 997582560 797730775 692987822 717440803 307940054 505543873 570527673 669254637 147535138 176989052 982654241 215158456 394830550 761655722 260013371 571667882 347369766 155258448 130255778 498957447 989828261 494761164 281747167 966774972 30908103 127529810 53254630 655104767 725647967 285871497 690647288 610340159 150554637 406739636 896941859 95788828 464201621 937126080 424439143 769560444 163064484 51886858 675068865 816573018 150075704 686283026 948489733 390908646 895326707 26142314 539319489 348293850 940108339 587721381 99071002 318230131 390606071 337411391 515693502 700204003 769567360 785799345 275674653 193073806 527284585 233364560 2214949 685705806 888007318 627733766 361365356 871499890 414122998 559033946 862467993 57437613 414504176 150437863 901514931 578526160 102774653 896219536 835681128 25395253 372088348 60841349 578736300 746310448 325376620 364505752 271128713 999200904 882119940 457410907 435630694 386617667 414491275 504342617 926613893 992401279 312958676 93476224 86937412 693543762 586474506 81092993 406374418 82506384 816203145 456710795 566357458 448755932 243866240 117503871 744233653 703470749 692407144 440958674 79792386 410966775 301245499 350244295 38129072 726155096 656072475 814627361 633991283 887560970 926205317 246708450 70090834 528402051 476177872 177912471 889619145 814870086 757868015 808865801 590056994 112274444 446067736 409119937 323575667 256138150 749646088 906375948 363163383 870353031 95308432 907689722 129211595 53366616 797233887 630715360 969576351 503133780 886198518 464412559 295346151 663206994 746663563 598320151 259877578 643151924 749498591 260147036 519890450 329308765 971731616 20038146 459606338 506644448 69114082 679065116 668573411 770347272 184001477 176787025 102425927 697929836 837593668 897815004 515621283 657377338 735183535 250412101 564716903 287267332 901148782 24402940 138876173 588842970 622284889 211313160 671101608 7245807 249833285 37747628 989958867 562612045 184982884 554622336 170701743 400129935 591800757 51357385 471304619 893047486 841579944 498267576 73550696 834169583 160679528 422937972 681620046 559118268 469878061 324897953 820817048 855617163 674042770 64540611 53296658 520074256 195866274 200655338 278293556 166476599 978036747 611544208 50603009 520274022 180910823 728009648 558076080 552046525 972986471 6912642 166885707 290682772 854368825 952233816 650806739 78054608 110430665 471755888 37384272 890551874 734038272 350620951 449733083 916201855 738165794 643707731 100951489 234289575 927208802 72819595 936965948 432015754 773845837 947937783 186114182 862178718 724833209 668826776 169527353 15123397 244655329 719481023 24735839 334381119 175147401 914844058 204240885 886546047 740017287 460812515 896448163 830678200 331487837 126037949 710356558 650007409 796229604 524501560 583702653 968564354 429354823 654604953 370815671 790660362 332806133 966930715 532736787 313839402 306768191 729391385 729359199 181862305 530522071 249867998 137243465 26463509 286731608 247708078 940469301 12154837 639408107 571367967 952928741 697771034 540358884 264448522 451186507 147896632 885739801 562334607 102405445 449194699 357473111 33377381 309479396 457748594 771400100 825530435 77544686 515002434 24678782 764057303 668786610 770465110 452762690 720678954 582422661 651771787 841217253 489041100 538797065 29341895 924019595 999176033 266443389 623821305 619740865 869919318 935429665 902091486 364650323 254721700 469156536 545499068 593950436 516669722 885092490 572727094 302165327 383576622 701677909 881490052 144660077 19815903 707170676 867934027 630502693 539802412 589725026 558727514 39102233 773114603 356869025 868839757 421249404 696638406 253203771 790994458 950905545 163665910 47294102 124999751 995795173 135000819 763284174 215694579 362125850 668073996 710891883 401639485 885474067 477484331 955826013 827718019 246947451 338704550 781464210 759874719 999547369 336801453 899576323 406648398 366925022 494473485 191240667 29596590 429847189 968243159 634986256 621385676 55865021 537401230 34700731 444587047 861431258 461671030 683548014 142111664 489245122 266193083 367921857 63525156 146725700 253166797 261552314 513529592 167245605 304501871 285776668 368750447 244261117 300581430 849638547 661739206 906186290 701060390 40373846 500326283 900351580 400639591 29122578 676716469 615023754 560201952 474595438 584556114 437743532 73739290 113080823 679584481 782259949 4849812 865727557 576826287 348727696 656900533 899333465 551586478 136113497 939315792 410544367 81099377 212328615 673392400 879236766 27395573 615977763 342137812 547679337 800780332 110083668 934294510 872570274 118816581 68209815 133104239 498417068 789399921 217242034 858698773 362888472 961444864 869570858 142293874 391769688 268088599 7921846 877394849 651330626 28979736 355074722 692399563 295109278 103988544 540498800 650037600 401928760 565632076 839772873 325253063 767384431 866764957 610760040 103991071 620059001 304747522 795415245 763601778 135071176 651486901 553934992 899847510 861222049 507032542 994985469 9494970 482320211 439289258 713697385 658854303 133490072 481016678 86280791 976992165 696077678 128175658 142708701 353214185 664495232 504905473 505736989 713277637 681080332 131684065 518377708 872840530 210520347 376847886 882838007 958189556 1608602 777916169 407855772 795980628 774709273 541932806 523580136 699743823 632195118 563400336 525818792 48496688 708787956 423799945 104538100 150577380 805442913 849768887 87351042 353704689 180102715 457113652 818388867 565990112 47695762 228820482 148115151 439891216 485817579 313504375 117415692 944722508 889508090 81146193 27472846 910706428 588387445 406613286 888795343 755681362 871592591 873452995 215757754 245785829 647829667 711337566 315077233 629527138 243067442 716161476 951196948 944187316 251914735 713696986 560146358 575355041 437875601 2841246 41536931 98183493 245758431 803942673 867364787 302642930 140112940 72923335 911324745 33392543 783028157 837432339 838206000 111549993 778188553 415977018 3394526 814181412 515873318 703853257 187495121 130028747 334391493 538563916 275660289 525154856 973247151 78366759 989301049 958117869 358880517 188656876 758729722 206059394 663198349 370561774 991268119 961896000 536989063 38738079 503063290 50245239 684091053 27923184 537758202 44197995 588862122 231870305 626556051 189661824 781610244 944608261 128024437 433786915 575074810 439364802 871441237 298666895 784224758 698043817 838822056 886864715 633755740 586351082 941992683 472870694 585118837 158858093 58338821 550145955 262730029 61558352 30636517 679759243 715404174 769566695 72349440 389707257 324235347 150027691 394076440 338706811 798150922 507511741 117845149 401264824 104711133 12515267 5498054 213397536 375987110 691493168 657202443 968897652 601453365 353962443 67868936 116137296 382053107 658249153 690267706 310070980 258956819 109253482 200082108 21205487 457272055 580394278 754813005 540775573 241747683 174318545 79398972 160276405 366169848 6420010 441297824 979841956 927804376 531349198 346083124 81940336 749707135 236492587 640008469 79951853 447569040 353346387 4104879 223865434 610002206 213882587 201768814 860235322 167488995 681291935 774920078 5514147 68342283 537430889 56695074 485430150 618993139 776374433 853938437 53509724 517604313 999330978 810693221 912819000 951525990 175966681 586220742 972533739 906444709 717440537 466010953 760715279 667406336 663020661 769801307 996766073 401515396 579829427 40191503 818486090 57843130 645388718 756536818 849622055 435650777 403056334 917481980 810969462 610597647 635650724 941143611 896257441 115711430 819140583 533895749 305106223 766017191 950305848 586846773 615375406 279080517 479955604 818580254 917783358 262940967 173773644 450409654 783726939 171829051 191567581 390897607 861516378 559122391 271504438 82505320 300343227 207447914 390802246 435249516 53626764 56386913 746125179 144772728 515862944 653428701 395901333 613326541 847530497 139276769 676721523 368472344 747296643 429158515 187386593 947459515 835310989 681734958 32070922 847440589 39377011 219490665 675600998 552491410 436658917 806246233 248069572 148241102 871351595 94967287 431186233 384834403 337853350 888895226 703433908 809439031 805134619 348542826 723303842 445903082 61584154 169346074 992029145 663605728 514604099 347227855 325675604 39893982 620932279 750556606 559265100 417746982 991806503 182873238 50291390 920113784 221710967 879473107 872889873 834934466 83558015 372127051 98841311 11658747 278456880 154461379 69420514 783088406 246329267 910016557 733504543 401332654 421091001 159409378 729383139 872581313 466864680 918281709 819545435 568210148 829033123 229433745 730630280 879322285 677336 428920977 910873210 127795943 828665245 634721320 358316464 982404334 861786102 839313225 396555826 605539125 785734441 524504486 746804144 151014950 121468601 995761524 673704817 118828285 258718882 653707868 748914588 363957526 488011148 376358446 968740845 985877762 959487370 976626548 983990625 303676207 803207715 207182978 364662160 252770989 91612628 846976419 391817435 830923053 391726995 516012037 218747195 241004479 114994959 557065812 412490423 719824163 347467920 633505567 206101289 208727374 274681143 494698255 488355884 888766349 816793931 465163610 282312816 714577446 604594426 588923834 308580050 493224881 87342264 818710195 552066741 329556677 611230594 461234923 471362341 806976270 379371694 521143709 539247935 772694057 555937440 966120612 452428062 647770748 38587390 995345234 149730968 596734126 511854989 631676152 613697345 894469123 788477433 288010137 996798392 128772429 11939377 232726160 866964856 500015728 438292024 242453381 431113482 769282740 283018647 879321487 154084058 393070960 75752910 389242555 189164404 552444461 522310385 684106481 270401735 178296708 701257230 294089168 905734755 811698036 227475320 136704682 569268429 887063151 116661316 845533103 303967477 515907765 554341573 682376417 798861408 280713890 71963873 736048700 483475316 307262685 288065465 288703067 805553968 345573335 237520810 174286492 242401644 317439180 343869339 290426082 951346174 956907436 271211040 426642421 969979873 761004022 602815152 578948834 8613579 822834924 42422578 117495226 22427757 601354413 549218147 322918780 118105696 580538583 982840308 650476500 439386614 706868367 325539412 751193543 211160343 444168230 952861709 858625091 159664472 121813204 878357104 445664214 109899596 975385924 112328176 956970079 210537903 430451940 449027385 914726353 858790410 35652745 428407597 196524491 438330328 912458437 468956770 825349821 479161328 694056743 560448933 571292024 166041423 464147889 69398436 235030651 334842496 124475864 611524524 310219674 221758315 969807638 101579515 678499068 826701101 701429465 34209163 819258687 443248269 101691368 236282181 688929194 790146051 385502595 903291279 524974774 242211454 186503207 676863966 341639727 413208091 410185666 355128986 639971894 413599776 9708036 847339775 239937287 141421527 964008705 880092488 105883794 854833527 335239634 921140012 530727157 621661651 179624580 583296205 475812122 760384109 480382534 874957624 959916295 620233497 500718101 75645579 782511851 8807360 240270851 430581881 579802295 299952473 576991872 417758553 16429590 771750156 339625575 846887176 735878726 683936108 873455256 913216670 536996245 587340868 805819303 297857989 287803721 463566413 875772914 834868498 749955712 970434733 615580226 331309351 788838129 705764999 574161632 197448442 741295816 969013628 20828033 168819128 559569537 692269888 771291971 321633734 722542018 973351423 633088213 805746951 329920432 301008493 580021878 648145542 291651810 291368786 421133561 23410361 393462113 469334623 665740644 350630128 842001820 959481385 311647695 673208727 633379882 838646097 22509419 400705825 615766426 992422426 492695940 816696309 512539407 376038182 780388905 97264995 692740575 980340440 262626688 468776688 540189708 48360762 379782132 64191885 548276374 599087561 42380949 203560191 728349995 573641070 729177521 382754682 948600788 617373598 142316750 543679628 307362169 963084488 232668571 713195177 76521517 375308677 961138964 359022960 722818126 777509721 776410077 256061010 277635339 917572553 163060361 961080178 493100526 786161105 488017133 359019901 342880085 673553197 950894905 508323307 365143088 837290960 386758115 644546030 228894829 35202939 259673290 260004859 965507216 437563450 771766781 778558027 25965823 866521833 527858746 761063739 651781762 584850975 619910307 111041667 234240764 793234311 830056824 591849834 704920316 564024239 191882259 485908551 592008503 905991312 195068141 741347686 493274889 856294133 550550408 376047625 134425461 225041420 560002452 813817657 161584859 219632044 134579209 133061812 294688732 837083613 871571045 363107789 969565977 754245361 367931034 958843118 353845935 495927574 192517334 486339737 81736846 882121137 431029825 818973934 862249341 556366498 488011813 860875052 267585726 215392669 690799440 562177933 166234007 900782500 287467497 282092568 700454708 363958457 841926409 561180965 251984294 34229379 782721459 200679411 588875023 894914141 62449053 126648951 982139664 737167496 173506314 281829228 528473605 122812699 559630185 76043648 555813484 996598227 245091303 1856514 645243083 99172747 295076427 740764215 390102932 842618275 94998276 862592348 732409554 490813192 702401163 663989699 999149832 774038820 649959130 232907040 309424068 844762368 769813277 92824790 556418235 876367956 406390910 654134000 249525656 466315257 736343029 72145285 630918185 724437534 10217426 163983115 191017094 506742469 822048894 608316298 836655353 860536700 902256539 951805955 74102247 45732948 489781378 305289896 323779157 761759063 944730887 751598794 966142557 866980683 200438681 149188860 857462405 521498819 954859901 981142829 411165211 919431494 843463224 946719902 987657302 263700397 322250987 259987436 394044653 67452114 145676729 181938248 424948799 264458231 723482594 746615284 852896781 702224140 297799469 592478392 348515960 585904867 471206066 851971899 299211397 72142891 938582031 756157901 524549307 53837303 962641199 686941243 717459556 23337743 677520188 306032302 482254243 43178550 162052088 639463036 124161053 908246194 449975143 375974741 722150865 861785437 309055392 20783212 590888643 277801057 661885905 448304264 579775562 51457667 50320650 520060557 339124032 152913259 161212991 959614119 623818113 630748078 36267205 658085297 144835504 741023033 498800640 179843498 852230052 720107320 724633443 783368504 706621785 402751631 484468959 693042618 451400105 789452988 882987100 119648895 297179822 135380268 427993568 201617992 48903003 608360188 323945673 79347767 894439198 945687423 362065202 715200551 242323972 302585208 547155051 286730544 332680714 487928023 423695806 910705763 211727854 236568929 422369663 665298419 502025225 623232381 679732909 324155148 18123611 61774743 844616467 591923516 607201758 562204799 836940638 53927344 201825073 44814051 668208725 837113538 301716585 279097275 884072912 289673568 401805203 639576352 240528472 364757388 441618487 188740400 952018755 32722223 647444765 351634677 124009965 458220744 766217622 988078513 239732201 190340124 350584110 615836384 968528178 497696740 47058160 628173065 977283701 611911820 324686084 259157250 277772329 533083385 351408178 553337024 833842935 617903736 651565903 900564247 366118643 94925658 475764774 782128944 211179761 406044844 723504140 159833116 611646618 784365073 848227949 851705367 917805037 129474137 653307006 11513245 694908076 564445317 786734867 800638953 284941428 149191919 330262508 156566370 253284768 875098737 928530157 725573487 140335050 406198592 423529556 733448816 331831642 90754911 918447427 213464834 770693338 833617899 962793750 98153302 162138006 929824779 791105513 242813678 708316737 918933143 624381102 172815113 868060244 494056929 358152741 294407038 255723589 25525726 993858028 175092472 143763258 167346818 288469253 296043337 281512422 565964975 189669139 79194817 416213625 951114222 438498706 309721190 502367567 711714887 942478133 503185916 259315653 703447341 367092868 361941246 752817340 168229938 358944889 303892598 20534103 850703877 283231447 971053848 184241542 111204725 538248972 644646445 467505208 634032912 234583106 713477536 352507556 783112612 800833399 830951781 114589043 197930966 227244432 751708519 947210539 319517837 723628628 2985551 335417854 502707249 299406774 349667208 414267569 650111016 603233703 921794904 845248882 86511546 254851641 868717131 711677514 125240747 416688568 513046669 644281227 48560794 137892239 332287034 80485183 79417592 99909035 336268522 328742052 87291990 460711834 563572172 612879661 862260380 121592956 338727027 877732403 282286881 327156293 363943029 290496439 454847997 595394417 622847346 895664527 314056059 904743639 458001294 905947422 941483692 290182160 692786726 140495448 900474339 272015424 92661466 485823564 854503953 481371522 29853413 86597331 864480815 624760285 829665937 475779138 818980584 141420729 321399920 46759575 53808708 652016507 404757005 149247912 174140857 400865824 378483919 702133168 441556642 791682068 105361636 969818411 787381247 96117205 248004003 736359122 462854730 811848725 450075691 616066474 882281934 328726624 980527039 871935997 718598568 715473866 505076511 416026494 604101129 806044206 875080649 785792163 149007581 368555735 44776146 828151067 374444709 126081041 414304144 715724571 407360347 753206099 180476711 143664572 809783235 897630799 45229543 629652025 108899303 106117076 504144979 42512353 102469684 161000324 380980196 563298857 261757134 33762682 160055359 551375008 140420702 72152334 778331528 59980839 395503397 724013264 794707552 604255941 109197223 311870337 495354078 707542012 743165264 853315066 123832809 223316942 345277277 882961564 908245928 917983656 141223224 13921077 141075727 561169793 952504870 851333898 706744411 547417327 457142646 224301674 596369972 800434000 286834417 370217570 203227159 326257745 254057099 392470199 163127127 521652833 557488087 703055656 296786674 109635458 565078796 75906392 323939156 89175270 210682075 399760727 186587396 92217512 523317328 274970285 881085732 491572755 297105874 58881195 759429302 566461597 362694957 934109241 182699939 847664960 615888786 697914142 539718090 952843754 55641714 73481270 676837632 686931268 825862536 85222510 40700361 445562602 577228346 831199826 503300562 298668890 309591781 620089192 755683357 518802244 162659765 868454589 290231237 540664119 813174868 956356683 850662514 233611674 885396794 225624891 572732015 529149511 331005978 280877081 625117257 200959243 353095815 952164656 607056389 248280643 402558 595528215 805434002 974015226 257474933 83183221 107804447 50602477 17158962 472250249 121498792 122295994 571863392 85517105 942742138 51736036 286924325 641058903 888747463 178712599 139737348 320046645 422886235 392594288 172568531 572730552 158817262 412101132 717344777 213748789 29922440 757907915 149670054 95210943 795000817 979533130 977204699 339402401 454817540 61137673 727370051 734558967 279220832 733465707 870052318 813825238 112559064 43438698 36877010 373187593 323271363 996078463 3122142 427684609 920307964 432487372 813310927 72927591 91815187 403381386 324562793 736753866 102138248 147837181 751842184 356573366 915723853 716204169 156110180 404339784 507506820 525980786 815047508 999577826 815597064 437928402 522895984 766049111 889034078 885649760 203415487 683262862 817110205 803504438 426853625 112564251 737954989 117418618 99960373 968407015 546071766 125386515 995127380 655485014 709045976 939016143 941142547 415526015 658192362 514039381 961132979 744576394 115671264 677960285 140098975 51316421 448068987 547396047 102519559 730156135 370589438 438435132 807136003 820691762 335135229 701506073 772844613 930254635 647663151 877767515 829474151 781943143 182357730 839594520 825757200 210231471 842759920 236259571 978172274 951160772 721452349 219416318 222609914 985910879 869475231 171575420 900342536 563978487 222789464 376230367 662870770 158807287 875622491 594982117 971126200 636021661 414686253 932244182 286272359 816091159 376836980 284151674 260224176 850250879 705730286 861407052 884105763 660346164 668891148 316686799 75041626 469566575 906243480 359042112 958885678 116534833 139792011 499057463 335998266 619416079 794790544 281715380 312145381 65182336 235769732 958403420 264329221 587664723 581857810 620208493 193674966 515194752 719506293 702461146 23461699 519855870 495538682 302753852 470441050 25741452 436194481 878395674 435406456 712994480 455684035 108868846 956108904 418575971 653791658 577822457 212224609 508235660 3722504 13226950 172498573 156085442 597252427 136627941 810546256 992231305 747075065 110000543 845245690 450195923 425463642 837881746 169203897 553733763 153077913 926134162 836780905 97320456 390170895 966879776 733279773 547961297 87802045 557587970 207888277 663951794 588956951 62386011 704095716 265515182 489153618 329362497 902238451 991185925 82807629 693983061 714072445 209469780 277448873 741270413 711349137 356389959 695370517 49293358 544817975 970267286 72311934 725724043 288666492 570089305 126954452 410784299 644658681 497095580 324296128 878221577 546216869 41281970 443870576 15899319 895542034 245322856 884918127 692461009 894990350 222226076 440223583 971927658 939181994 704563344 839757977 127036513 126075189 77699498 880929989 242942555 117124289 431975189 494006123 553308695 452700712 405535321 568371211 13347315 784984055 984692200 95776725 761259781 68157413 414792254 721126100 969761886 542149330 474639062 631610849 662758252 761359265 408817761 288872642 102089969 925204758 920648045 841303969 635174983 487072700 896090393 191413966 93797419 889512080 422937041 890030647 230000990 878874607 687333992 342215085 411845905 35389405 799363616 956435818 716430003 159557407 963052967 963883286 689169658 341954006 450739494 533255886 575910183 43206613 617653164 56681242 43608805 189784184 359357721 149650902 610540590 277680958 586418912 234026501 619043679 282239267 656761415 679975102 369017777 347115204 187290035 354928289 382976792 855699357 667831005 706277315 507122051 694701128 633161895 898392623 144133264 711286361 576444045 125498235 687839791 742786214 685647020 153607652 196069099 757437627 339828533 332900563 794750378 305943192 741876095 551303188 689589672 30764729 800482678 29012853 78530349 528561651 381162007 204460468 272615919 692397967 361634814 89363731 94793190 321398856 297865703 723577556 415829388 889774090 686971966 65015953 323723164 722683796 517078830 958773958 284252887 903623247 263402211 480603979 303107632 291698360 383567179 448564412 294025727 244841529 92049400 629832639 439922604 636320512 603859335 856623973 194135013 675268232 350908896 244178524 161152742 687768902 58205289 404933230 276363992 716869834 516938648 204165607 899770237 906916859 871921766 456606124 69315710 655670150 410796668 228621115 549103235 882727617 530164833 807891576 801552663 373373394 206691809 80389157 272853457 124067820 805940067 937890032 371072228 114536641 898233954 867369575 867547795 56356057 559823833 948054158 125826878 246346956 763402145 834752256 349387110 734928175 867963287 885847398 55534516 802544311 712280137 741926768 669676380 241826552 639873474 720795063 19330852 685127788 381569120 416543864 669766421 913348473 913627108 953776616 939306216 835638302 514164401 422270578 190698293 510642029 20750627 687607041 628900708 651216379 336480524 862400562 327272003 621363731 44593803 503704350 174469500 456679141 695241108 613929696 887597013 343767993 177850892 734936022 978595081 298146466 907189376 998967622 756037669 537433283 206498826 666463233 204880083 916461072 588773544 444194431 103428481 193924607 327626980 171965110 216989999 231697139 885106987 723129213 720610193 973861877 167077360 757027189 999819221 451588300 180989559 830689106 86951776 511382307 729093864 706528153 357113612 283231314 196022283 722459159 369339105 400633074 508245502 866824009 981459236 342886602 615608555 371699855 772696185 524575375 987284370 315173259 812692610 785314560 52048320 275514787 649577021 406032342 263014250 205662655 513768061 435717676 338354760 922731357 677138744 602863564 389235107 384720023 180495863 10446984 991404710 131389869 89766455 588159483 51107478 584716113 228256562 845813600 844914254 759641969 621126060 743282969 862583969 234191022 173622822 930066174 906190413 979403588 444792665 107298 987370953 14743283 751644812 935887717 63954347 589332144 650729200 745493828 490812128 288503567 747294 827044507 696366554 875226151 418790899 140582164 985738245 340772434 803818451 469796798 225259939 472979089 385645969 530264716 570422603 28265260 22522453 235151548 849127029 484491436 873073812 429486094 608091927 762108587 793151585 980759124 183828577 433931087 638868393 244218025 969332562 676944165 213972096 896127633 154119303 533812491 768920714 226178703 564178386 561221796 121929047 485157500 925666401 72523271 360351763 555607733 305506819 34903822 844949898 800030212 240290934 109456174 632562996 474220245 260109663 212438074 52626737 935441103 749298160 228438772 532767776 635500833 165703869 499111594 996846272 975658308 791951925 552282467 890380171 622408712 380555128 99326362 809347128 75457118 950844099 727562103 657543455 445778461 828098000 950665347 117014298 359142394 680259855 209737775 923359915 339690878 81948316 558333435 321138442 825405415 883004656 143761130 889854688 740920756 504672457 530107643 406957623 138199868 415978348 169424145 665501244 24101961 837546453 323228138 589554653 531479272 162981758 572385816 699306519 431576987 178377705 752748446 296351365 662131556 605883861 630310242 911787984 948476832 60400986 514323203 183487565 586075373 394154644 250749123 307183417 160269622 849814107 31498091 694533149 783685310 770250448 268216146 4206092 911107423 958512081 413912060 683203145 541242935 869784988 48624368 125230107 808440733 458087345 298807476 848015282 963964017 294534319 690323167 913455538 689917517 621213574 108557759 431936885 360402968 753409988 377392654 673546680 407661459 352185031 64770302 244092074 564035145 316764205 17945391 55572288 514433460 521482859 513606865 808043063 601004357 724930831 400053593 960877220 16496090 326622963 128311318 659973897 6456452 888324257 336428255 827413183 65849331 139425596 669012444 641234862 314812829 346759695 665809804 705862887 500288511 651750773 816454914 302152825 999710028 682796697 94116486 475275068 759367324 103253852 957525221 685330613 452685816 104228210 167842509 263523108 673009493 353521016 318514884 305470244 851412235 89634785 842417445 724439263 402729154 707361531 65687470 918386380 931747028 295846630 68975629 712480435 745246980 870137172 494461515 375243241 912410424 243342752 667640416 110339294 79033621 336611263 239729142 381295007 717143947 595249447 397985709 218745466 730053060 911428618 380819665 504590662 799329036 499151095 437229620 854133415 514245664 678521545 263916522 186297855 877309729 514257900 746870112 134024732 881649785 955190805 873464566 59465996 549786988 575321126 435549165 334229366 751276535 440092711 925025208 380380898 707377757 567497401 414909028 787439767 424364264 24929354 259948068 605027474 537649408 306803436 730738409 541795284 658274157 311779498 85979413 475632306 782791151 504293274 714203849 700679478 261141344 174435319 117068296 721513263 546701388 804012099 461605727 88077089 697871449 271272486 200055774 166571827 335619349 329317676 728900881 866561467 857517999 978419920 133007681 247392602 155640690 402281609 74978584 505499717 938904955 176217120 320728270 719855817 839970245 283673140 818567353 917477724 256847838 412639516 724697948 553514978 973055498 551459064 778093458 465990338 951813137 52570079 580311020 16433181 160864398 218746264 550168565 52404760 982568190 111871188 71575380 813347502 213463770 404538486 685193224 918417768 168982851 224228657 640977507 215490291 737548674 717532839 353852452 786035021 236078292 124629479 325280195 704826950 853495547 960757387 578260160 383747128 85850004 493634122 854589073 801220296 936840662 765676711 25329950 597862897 275531013 185705739 154032853 54257849 272933922 884178115 40471069 22824230 475432540 179846424 857853292 495869320 161381103 947287413 575141310 845181983 741746819 329345473 400186992 962658090 346730036 88986543 841608539 40030174 380226086 976688925 210848591 355652873 269164835 664949959 413123370 82451056 427477129 274697236 123867123 275921634 400944826 356549825 859422293 924638976 489403259 590495362 56427611 595609611 211384581 289205408 713197172 430851339 642480540 701852405 538131400 777072683 121661185 780446095 409323560 283358994 643087685 109979130 543355507 911689431 641491020 731619667 606078307 641402176 731909873 82845933 337109747 744873117 551053281 148797973 632472024 190206459 104667376 329704307 697464336 292971702 442627824 544944458 495091935 801052716 980889863 190955116 349468905 521891834 453514406 376702783 645149850 237257869 734301612 878544368 475352208 173836287 320731196 469770331 16652365 702630455 473840530 703674904 841036639 558414565 345489279 862078569 876028407 746432542 104706744 764215041 354681042 666523349 415156674 891015645 772447209 15164893 613573256 687501705 624564775 397519810 852233244 966839078 141768790 173560179 654556807 153888814 808992018 220587516 79098126 97182801 21177424 587140304 822056475 554449569 786547470 401100702 275573174 973121865 358015485 480005479 169286490 556192933 616547535 624713602 201080938 803134698 546408655 74678137 470382131 676432913 740457650 182688767 161247571 187157434 606550590 246979238 886822421 664031062 375489424 774462292 874860002 315244148 743991859 442637400 850165493 748189472 640727068 479296456 855160308 198028455 51210287 45287797 923066118 451993418 929979857 527012068 734492334 338076391 640026690 117558401 120395690 529936339 197960891 254019460 517600722 232510966 231573449 507804075 384743564 21254431 940201439 326788681 463473446 889078500 974204219 623935020 558901345 848771387 984209410 364021898 543296056 676214394 330906627 343594428 854807991 197950118 780208158 228889775 469517365 262612723 272325048 720606469 342352341 921181641 448411861 690057699 611328083 178829506 177758590 591626660 687667423 841370602 25647288 145792040 431271752 640188152 941073653 607836434 296290717 771891801 690842266 504867967 886747808 672117462 645794368 55174751 286854101 898451941 500789522 816576343 294118428 292126753 939725831 991591309 597158662 804110519 584941814 4609747 406494251 588199516 399546863 262889230 199009064 324126952 893828861 637204696 415070091 273997523 305728796 669610811 469228888 333407426 91119331 206295469 863497280 375034564 74121133 134354705 892313326 551509870 505455960 57960702 684566661 108895579 806808424 498775104 482017902 749051046 716749070 71660899 132632754 254321902 799537580 226484204 290557885 217540353 710581461 55953998 969128540 498862751 506367143 12279325 786074256 169383314 487475424 471337470 198821002 328403168 165264836 85643056 794543430 556581160 662230242 345771372 598518454 734562159 655770166 546883465 567401907 441564090 703330168 42468729 177521318 546824945 105348735 112526745 627020088 513183792 961840805 803269161 796869999 661789613 65205744 236854879 635816841 514623118 240986391 103671073 45064091 437640989 995327545 337624457 772610267 321056780 743679043 655669618 852066329 172254917 314950351 189523504 700416670 249952054 471460362 59410402 252275431 687182638 475396497 919853902 647382787 842561617 361281566 24295875 308258456 196282032 82006304 988299825 264108840 810041787 808058358 540528725 103572919 4790627 691198573 712237444 62150468 48459980 923888058 968455560 115926757 1277565 500657187 687351415 13217108 479665398 639125482 751242487 373048475 267503133 298222808 219397964 473019388 33962315 644228958 464125678 182450032 960602309 504562599 669234820 99568289 373283752 288475105 349312231 919075719 954258209 27701473 816921877 33537513 3980657 997736175 838158386 902539430 376924627 785294344 501457847 270258760 384224864 185010016 463555906 739268497 672273471 610218331 873132598 334435516 248740291 594863082 505471920 926775089 36397811 991674301 711959607 336578944 915755374 295662957 745203888 200511698 503231535 184191002 546309836 765307104 933756658 715680548 567602471 330316240 832842243 373535255 738160740 985493924 887424113 474616851 246389915 668774640 746743895 441126786 55249364 650295354 269242640 896051823 940287357 47944605 157926960 517097583 962972901 685261187 462283894 490830482 696298591 106573931 720367202 43496287 805250728 973506501 629525010 692790184 774121014 522735586 885023729 329876941 593587479 195460890 257286472 593878882 518214916 691016762 995130705 658944344 200322173 461389070 793016324 708816019 51833924 108831739 4937326 19243338 748442571 700642371 64641957 188353237 344752858 639265398 557512958 409724422 365495538 42062813 317197785 505657721 495420711 22478829 205475258 493741453 233843892 377326952 844825277 985261041 403879205 230289999 522487940 72683669 80819013 286211445 926437269 644916302 596497519 487431002 866390828 680937490 799484912 385587582 497081615 811090758 768284043 448386591 9207956 176363686 726353266 258704784 623829418 641114630 28501601 405925277 330854624 255137990 708324584 438705654 105134206 855291047 685328352 900939706 657140731 412194099 166677163 284978003 1721652 84855829 966860491 885649228 267846007 704222332 683139837 7225059 639600957 477059662 648561699 719594339 978342913 143857688 535039682 415324653 258882206 600821216 651932584 145398227 361200436 114216776 716120246 175923988 538161458 120036723 70961053 929088624 70999490 287971434 921775752 28675964 634297848 599118683 577881908 126889681 288662901 81746954 221765098 162411720 287293932 641133117 969218847 355664710 511962453 47485888 782978282 48550287 783040393 878767010 616117014 697836071 850450113 359574644 868591313 407573147 579806285 138942540 291320640 731608894 386918380 424832956 284322047 232387276 426294360 630386052 723170310 376631229 983278809 157059933 568006658 112496554 790219733 55031909 11412564 214410464 148915944 264116155 62136237 919075054 544725673 744925120 398889311 264555986 182786256 742823986 362041395 20712190 352720622 721418168 76829146 750055595 27832877 402046199 746437596 57381221 963191287 67041410 272368805 70126212 797648714 755190991 158076319 731114932 463421310 505185571 354989868 848934312 533159461 816205938 553945366 864102696 742003243 594471131 406203779 585615060 319769074 708010039 852205713 252111708 190926521 739136960 429517748 517032812 964706290 531813102 119158657 312270534 699880680 610956880 520584577 374600319 29488860 455951365 766825432 592167305 115992326 502460800 572875389 647184484 171633142 810850959 458609769 327146850 371464711 712284925 696175699 819857187 907683737 576959819 972228504 563746801 191836507 145301403 436331205 211014708 158283400 504716879 995318102 271602991 786098329 307500622 530824513 990401491 67129589 341464566 592284345 939421660 444500996 435623778 118306792 336235538 366543844 343650820 628808273 406285441 484049078 814082992 984911650 10335264 527256123 434651814 397060162 693408900 758298403 528920751 988123467 282232085 883580413 1950944 325189622 906299473 717734068 596823369 454557924 852509485 314541376 910646578 842722281 50202280 436404488 68550694 904458088 6990048 292170377 589648152 790428543 339090649 645144929 36982612 32773162 841894223 87030645 758968191 244611040 830958032 793245350 571156364 800589211 779713797 377408880 679780390 241823626 615906874 779531720 640771623 504199243 330273946 251063003 338449722 237906244 600278044 394660044 406632970 335895457 248079414 467139857 353261267 134103734 197321826 379997592 321052657 455797617 106372303 69663372 887981516 447465433 807515452 312718212 35196156 85427995 545568627 119840149 654727579 690782150 295564936 515175467 583628306 498590899 418815770 160342905 220755894 662838584 705549539 332482411 359270739 123911146 374806203 945496967 671637465 732429504 936950786 377293436 649561992 896288430 149347529 596066599 840249412 145971989 350536496 972133808 292982874 993028241 414783476 907977002 290024555 573152960 832644073 959225892 224645612 578964129 831320191 615421956 710597421 282824201 472789564 833953591 334535266 886266880 542878835 475509015 607445813 916144399 147667872 789949344 1244315 294371660 850994881 408331114 797956077 345404691 406252191 172293487 599708937 554921586 205651616 539288367 959926935 331118496 371170249 355419990 812045964 184312564 799540772 572719247 956547671 520411278 952525219 162037591 147604697 712557309 814239134 985694754 815417647 452076144 458131102 356821411 776636443 17717562 765798140 311609524 486174019 173034829 445144184 641437421 985725876 921251732 760046688 273861730 799637729 670943338 685087489 445653175 690023385 247857836 53593381 666470282 204148051 196191858 278564743 940847287 118461471 744103180 600910459 743009521 741404610 941393784 728563992 887852240 72515025 629806704 534504091 425905468 507605107 879708916 969313410 460960145 191773731 757030780 983601999 312153361 996246043 322164803 204102033 45308146 748918711 421912409 669241470 381333710 724687042 773851423 102568636 699839317 221680643 929774239 940378595 149659414 871289218 126842466 286259059 814140714 874458874 899991150 847673871 410514043 301201609 136890616 859474429 785860259 725606471 678873463 248220926 662635892 506221375 328993156 708182540 99271566 551152898 899830353 392663182 653452774 821183064 571103696 966796651 504295801 744340452 348552535 139928203 917746384 120404202 261685979 498651547 855617562 549390116 787310358 933288099 925565587 916304265 847695151 407659065 684875753 550621962 140158027 104375308 878589588 956115820 806528725 479921556 632322532 942248176 867953844 630888792 472542849 790337438 829981812 221835721 192274609 194584420 353708945 605504279 339352792 715588911 817362639 314905264 88938929 591034544 980851027 460122910 308969075 51584150 351650105 628913476 645923910 917453119 536464378 585043559 354012318 960967128 459692123 247840014 42169878 263862657 104838547 204856143 437823465 474668056 940642733 289935445 153999470 911325144 602210534 348235596 530961104 612656221 673478185 79364791 326246041 177864325 177364245 889105898 521145305 970654848 575804182 843609258 171704696 114350175 471874657 383105137 878759828 688373520 992601577 868581471 669733304 10623342 967752256 544738574 143789592 677162817 945607091 828585977 576774949 13269377 179600241 410451932 840441464 264801371 738494437 669162202 665147331 41735101 522130170 835275877 140052159 713027597 984017358 561309044 806742323 547884423 383605483 271442194 32390255 424757678 494689876 500115877 361956807 385391008 291960370 541507472 6532129 326504061 505866930 546988934 384375952 444184855 49678127 348246768 742683671 195038216 735776715 152879211 160481358 659120303 47964289 959467154 385075532 231871901 987286099 185684592 817970050 933850689 574461414 365410019 913804929 20406556 369410127 210533647 744565488 336699043 22202588 332334 366950292 485446243 267792408 690348038 615507076 132044096 697225069 310279657 829323063 764367326 339389899 4979753 495609305 981135115 52487220 501085181 512970992 573081406 89410281 764369454 346038569 7312307 647625113 760581614 638332403 429212779 480525110 936194548 543882320 173001845 174556482 383723188 774469607 588107480 738926820 673251952 486105258 330754874 846193714 596618017 351709556 717683661 203046944 494678039 963778881 209681915 684173247 153293905 260204226 895608401 138361862 952080334 682606906 478987098 626071399 218354978 454924073 385844671 84692771 741577776 516646713 756854289 862998530 607539844 400784162 698534055 647391831 231114333 934368192 378122159 236494715 46524564 257909311 795616208 184525098 612446746 232030836 17715035 330396705 103296412 187954769 528898939 779161714 357259380 1965574 35720442 408581819 984148363 841249306 210052985 940296534 887546872 453291897 74420915 42363659 868381838 461743249 504946038 732390136 515103647 508532649 384796365 582802243 670640231 222717777 129811691 911344429 121654535 636530120 278183831 84172076 516330971 364602576 593643738 827373948 242942555 38995168 633461544 643018924 649498817 756311383 8300630 262967966 210609457 674096502 550525803 937111982 921966873 148567484 466879709 197566812 673457703 695029638 1401920 120711964 280885992 740352580 638703606 290355193 365919276 35580127 828046529 99194027 123143204 524536938 226614411 382076648 271052903 935226441 254072261 117626630 402111369 410572696 961905443 797118576 302166923 170135828 398976293 157290555 934469272 45982988 989324989 115595188 280588737 236271807 238901350 383867626 841430984 869326404 733836245 482188142 525072795 970509745 238138994 149738150 347861068 988612907 603570858 312473758 187134824 5246418 381741222 755778585 109714460 771939814 376003070 83060063 278302467 811224556 838082177 860569285 36670062 605452276 493760605 627183944 748548971 818595283 596134695 369881479 432275902 105916645 279742724 72800842 712366454 793641557 179680573 374487934 514472562 357207643 157511335 353885968 319576091 377239970 166833039 254590961 556420496 311871534 504806388 868804512 199396360 580223639 435175834 729725082 380515095 612877001 414858488 804417084 851161397 825186630 240198765 51441574 89689448 476252751 926946393 943126641 823553390 181725980 610828136 266249076 516253964 512916595 242792531 649552948 329976691 580485782 669236549 878624966 850306074 552264246 156449596 332091125 511047280 49100774 150347157 666410432 399804484 728578755 347602383 592641450 216220594 251499908 252456178 245436704 318790327 308629260 392385212 42464074 324248913 316653682 866122168 719126179 973279603 665592881 795687629 415366016 643173869 525345578 969464099 290259433 589066144 532296025 63741148 804988851 515958305 971397387 770940319 713121495 492949970 316274366 986183662 990176854 740370136 237703286 492206234 245280695 974153014 884186760 787253567 961348439 704608564 836537249 597262668 734954775 963999794 97208337 880020801 496605342 663486959 417965235 249055634 592949079 313807482 265872420 998291583 639829451 269035293 752383494 636018070 260819218 561266484 148697159 860342786 628269623 42893797 703271914 899345568 657323473 548918232 89367056 484464171 664444825 976298038 387017997 874825023 339788899 439550603 543174494 390676428 901892784 389759526 365265847 109613380 584113357 709753536 907472134 228611140 227160642 311286999 322448625 204898703 767409967 585266999 981657406 210048064 820511281 18528463 221859395 765336497 916795567 613835133 747580066 388329244 476463157 905369138 899508227 156249830 852288705 212118475 146126934 853485705 16367080 123822701 475230646 575604815 282339549 512907817 131647224 974197835 909680067 605446557 455787376 66750805 913996316 517700738 191918834 377798437 855364463 697583770 51490784 844847887 695893340 435967317 480405543 606373700 72525665 413341889 475896976 742388943 370072999 503697567 745388359 676326380 834765157 26967712 545282677 534017045 611888412 552145610 500629390 527451899 623674207 552207322 493144815 859717952 414051311 834305775 800544257 120841506 611689976 192640625 946985769 813804889 73680371 302277313 294915231 936252536 3975337 395195103 208021277 126085031 986676959 492224056 730430115 338139566 168732013 491637393 72797384 533075671 754560970 786971474 224528173 344963397 299221638 552600470 294118162 657464320 434105317 807211281 661666056 798458152 455308842 551157154 834780984 122819881 608749612 74693166 666740139 872005024 87565172 338137039 392792990 489578952 999671192 993551197 895488169 858056649 28350646 227333010 644244386 554775951 26172505 597053326 946065143 961642768 722786738 542861944 786850178 991181802 744041335 516622108 334464643 656541965 967418426 289294784 126172279 597281155 609458103 253287561 474281691 694424355 153403896 305184560 138563756 908141124 937392612 472917776 312365629 673803370 515703610 615148375 625255045 236079356 431645349 297569379 330559763 447564119 865162440 154127948 812050486 750155744 120019699 955961806 649171504 669928415 78693806 170780612 411232110 835202594 158075122 651968760 94576932 912640647 469406177 525712658 818756479 626087625 977952159 764832294 465597589 380131656 208682420 698660006 557901451 628826760 612659413 304834903 237146149 795251389 472401071 81614087 73292676 138388329 652512597 700581856 809219581 975754600 608466854 136371251 996137781 50609925 758583289 875313266 77837552 436763056 784751172 294426456 404104241 627197510 873080063 704456678 488379558 823026045 640247603 519487061 857165283 298209242 566791969 600078544 809266131 250596173 373832244 674876414 9053543 123601788 327770620 110011848 541667604 315447505 731125439 226590072 967923693 83208225 867409209 167463193 328472860 512378078 637940319 408071365 647094842 766718234 116233322 662199120 364955691 387218561 295795558 798767909 699530092 759686391 532233249 945198781 768058475 821840749 854417104 919670096 190932772 446081568 119825386 383540845 754501519 351990718 479977283 624174021 991224362 945244799 748693409 700364268 649164189 642232894 38645511 595043696 359987343 674854070 954984389 164351658 97254488 767765609 918159216 709011795 661197763 525497464 608190214 142384048 367715840 602267059 442946359 198332094 441038341 691800265 891917784 939504785 301626544 599780890 941725752 477828801 991398459 249932636 290095577 289834498 695920339 164934996 919589099 189486397 416297016 459148552 393337226 371237281 339525958 63398274 915376989 230276566 964258745 985026828 602216918 815978508 958366313 399078703 420870354 489025007 737816536 653486423 406271875 290031604 501601620 380023926 212948129 305431541 552986968 660989884 822894641 133898648 779179137 290722007 750419350 250867493 346256024 786268303 268430675 540484303 793404019 124553935 722497197 376473890 36385176 1990578 292497557 317830732 405675503 189313630 411942064 680307602 709308651 637606888 852790780 160432015 457612668 954010962 724482355 90738419 617767810 293860807 533212927 158131381 247202811 407661459 930103813 268568995 84954249 161190115 377520600 61920378 885048999 824550358 255555211 600837841 112258484 801302889 584900717 502124842 854512731 391265884 981665120 41985008 410809569 164747599 503585980 112288276 557096934 35739461 356816756 696519637 532348826 105674319 915088645 954008834 346102808 817644200 885422596 607621506 889617283 271656324 589975997 676897482 482786376 722758276 131305015 837190944 641151870 529477223 565816813 438956758 476958582 465813581 457759500 170096194 163479045 745981938 844914254 763544721 121684460 703708154 756879293 143286985 546074160 522454823 964457713 56380396 755427465 961548604 863038430 296013811 426182640 509834985 378797001 112751914 389067128 893319072 502898503 816733150 187395371 984711485 243936730 77660928 650059545 828327159 507615215 364197591 608020506 145919321 802128287 987347678 281842794 113137747 322833261 245461043 226442043 677618608 751604646 311225819 638816257 412759748 42688977 551306912 336724579 129539972 682150317 350131644 626660456 405625894 442801921 945081209 482440310 723962724 464939505 917666052 500117473 872331007 577716988 778693421 284325771 854034729 201542049 282275310 378677567 590812035 666512443 956862349 287264273 917060237 626335404 471135576 612565 929691646 657579897 256149455 507715098 914947532 533990578 44048902 850710128 68797143 818926852 984069627 695281673 32714908 501564247 790943120 754143483 109932048 368432976 697600927 787221115 717877043 567160778 173632930 733200771 790498235 317144851 787147167 387286923 166478461 661566173 449162380 688055517 571821497 199918385 378628490 569268163 814842156 888339685 351594378 520586040 522784530 688476994 440281305 445278913 545625285 532546331 797555880 251413591 397201009 787374863 458340843 854854541 452834510 982590268 852839990 42542810 599682337 896133219 98633565 831064964 585760695 130726199 751144732 640253987 436062811 776807747 256428622 527323288 322695872 786393057 833565497 343267647 786526323 711693474 520506639 605994118 460740429 341910382 35825512 489596242 651517358 193863294 286106508 966452048 652561674 730897078 158658859 89979388 907646763 665609506 102307158 236539137 15979119 592293522 951105178 380674695 292053204 722469267 102271381 140105226 34508546 501551612 71242082 691897355 130854278 91789252 113318494 609507712 179741620 489966248 840512486 183273302 123749285 736628447 280953290 276075382 576339374 806153665 466500659 288169471 514336503 267814486 46732842 22133960 574247417 615912593 555998088 10345372 475581367 710864618 559914140 955201578 500767444 100637077 668116290 687017053 179445296 535626212 974377119 633586697 27918396 57889148 536865639 60826852 885832768 250365950 395967301 708037304 614770123 889248740 291904909 525636050 641296441 713865497 41323333 488589166 306177538 844307242 934201676 871587271 39195333 505257258 143269828 280733574 349568522 562680407 742547878 712449047 763493383 540091820 409866732 44412790 369076696 779264789 852296552 651024061 790706247 58916706 168160246 454362680 746460339 39719885 527269423 84880035 991219574 64537552 878373330 458019382 185549597 630674263 978789394 97865756 520019194 674482601 721158020 601609374 198644777 857219281 457402395 646822458 737408492 184997780 81183300 559035010 433735178 356711686 835874111 876519709 294302367 422743260 914112957 492278852 714816580 605118313 900905259 103028683 3628872 436860279 315842914 776033288 67830499 148249215 908042970 362698947 816510109 206021090 578761836 263297407 22110552 831270449 673398252 541167790 934573012 527619745 222667370 216071900 343917086 881398947 792468763 153901715 449514564 643334533 529990470 375826978 488721767 257327835 864043245 885130528 881812577 459385824 93662424 435836711 920922291 469784562 656853850 859307115 443864857 60933518 537974859 32072518 373041692 254565824 737269773 89193624 210813213 449656475 921377018 429839475 279901127 897880307 225066291 863825657 93694610 311306683 752563576 636295907 673575674 919644959 574030095 997895509 438458673 4734900 809466961 617315876 862714575 253786178 565353175 478704872 792424607 847020043 848531455 413060860 354303721 760765287 478437542 994268200 815750413 793963417 489421347 360271032 83614939 304858444 141193033 70157334 972945374 888486650 755009712 635334317 146904186 96425233 454046406 682279460 62335072 549693223 884418313 562084966 415655557 71181567 549640688 16311752 630170991 112959261 356603956 416886206 489094034 107858578 601190956 298737917 817549903 353624889 729238435 416799357 31095101 964103933 639329371 840430425 734726813 237878447 584802430 951125527 577042412 125578035 895945556 506373793 999058727 760103612 882565490 224574058 240495621 723886116 128627858 730611926 410051735 992408594 358732222 752267385 450291417 733711491 621685591 557364264 900215388 53705500 495709986 709756595 899384670 223990055 697509689 270562665 576314104 313187702 710011290 7124910 875594694 360641171 642324930 986866085 124861830 367388261 460576440 625053284 647179696 640959153 519620061 393196645 78927088 376859723 674871493 869876359 971117821 408654171 846876270 494451407 123907821 326809296 651505521 175078507 920999165 637658093 325307061 18022930 265056066 107964845 72121212 755553416 972951226 330780942 712078243 598366967 539246073 204620201 439780959 861806318 193293123 231426484 374116199 527756602 577381296 577374247 736078891 63888911 187278331 177575715 380539567 568630162 282981939 151914296 556821092 566880015 618298081 549983429 24033732 542435812 319231887 552383148 591446445 580205152 154465236 567710201 732573543 873980074 649203025 149034048 746306591 734200000 653798707 549751344 804813690 985087875 212957040 739393783 697880493 685890942 749903443 636101461 95219455 926870982 518967962 574255929 804616185 612703436 273405939 941350559 196862843 386792296 131292513 171372728 605305577 39241085 668968687 159655960 880691786 561209161 173743054 34713100 66142330 979412632 561951833 41566989 426443320 709826553 649662274 816532586 622304174 539905354 692684848 421650133 884160958 742972813 369356661 546874022 708997032 397210585 277365615 307370947 162965798 367390389 378528474 826634601 760261350 920561063 99050387 537453366 122273118 940749665 59234044 368970562 793864864 227567622 183097742 149950950 476487097 882949594 341956001 895284546 319160067 230509183 601076709 107469287 799911576 245400262 261198800 604096607 675016330 795053086 569176526 301955453 336463367 110830862 832460533 758575974 357207643 23993566 777583935 391430671 454796526 958937282 678330424 132286156 849970648 275993853 606833614 185798839 731008133 721477087 462813500 406860001 417832235 424964759 976722574 404070193 96980774 342881415 3209124 340774961 1981135 86790314 193534784 887885756 602288605 277050538 408404264 615265548 702704137 970279921 360342719 517192811 38659609 154350856 695234990 310561883 180752686 796792593 582780963 424953321 810185560 327187149 608143797 485151 55724041 622668860 909279471 826323913 266196807 653782747 184002408 728330178 521770006 899424703 20386606 231361580 190540156 977735236 729798897 684427011 665785731 725051462 577448195 760445954 300113935 295583955 487874158 326818340 632174503 325750084 142407190 693748449 513092421 924366459 339481403 21091639 394036939 234790586 44025760 240236803 674114058 349843699 568594252 97362085 392162437 327756256 693328169 90437706 209566604 230049402 306602473 13480182 388914710 146883571 957690008 624265924 921585695 691705968 572316789 186742474 887176866 985195738 542845585 613473373 379004614 225788348 648921331 57028771 63120437 498914754 72977865 999009517 811783023 671646775 31173704 851392950 317381059 557447655 171870414 431358335 402105783 860881569 749119541 309277369 873677632 261420245 209166407 744594482 155592544 114682010 956279277 930977623 617907593 169801067 550382296 542064875 316945085 277794407 829211875 68578092 767869881 323055238 44382998 15881231 778149717 283148721 408055139 395924608 637220257 268674730 347697345 40796387 847686107 156717192 495967740 653122003 158067275 281123796 571433137 243070235 514015840 637107606 338506912 792196911 935559074 899293964 983651209 404406151 278076500 590918834 672504758 928693880 567257602 160983034 285431267 297538523 514828603 304566775 946751955 878273048 303682059 376726989 762606672 945823216 582626018 624764142 11036839 939423921 142439775 870656138 708124685 605925756 565019744 692441724 712938088 690707404 947752514 765746004 270418626 653466872 187132696 483946934 396692284 414990690 313394650 55168234 447482723 460828209 573264813 363346524 474048941 212069930 586323817 362166947 233545706 612326115 191257292 132217927 977521771 663033961 220234933 721582955 252519486 206530746 212329945 294863228 202640097 709679189 938996725 173660461 148405889 487878946 72300097 285048360 45358686 238766488 716141659 739102646 455590004 917610458 830222941 767755900 889385597 287441961 570590316 504130482 348711204 707543741 28791009 723447216 570991577 369925635 802545242 328951261 751231049 361343943 737245700 540933710 12303265 57212710 556180431 836075739 51883267 362006416 15185242 522261441 823404430 359723205 853140570 939393597 884923181 448344164 516600961 487349606 891654444 832223527 412388944 305935345 65423465 744771638 988805225 352207242 93626514 166727836 428216875 325458415 182044781 592400587 734244023 982493045 273356995 103883873 790118653 5917935 433094384 256765910 539959751 569222810 370184719 45940295 175913215 434570684 968501179 351306433 141288394 517206111 21256559 887703812 977712892 690177133 584901382 376775401 453714305 35207328 146177341 143988161 887587038 195982915 932776315 391144056 75206413 82284939 535921738 306509373 264796184 740401125 463880160 344664280 499290080 953301673 755390225 498629735 85402592 146791668 275177233 682205645 14701388 462853001 75980473 668841273 849588672 636572946 724739311 410278766 382323496 314182542 989690340 636602472 872391256 815877694 829429330 777229357 651103595 312464315 59467060 870424053 815208039 662818501 19902752 543537584 841351184 499826735 497841311 45182993 217247620 406743892 453997063 109377438 713815090 488055703 807226310 394130704 429998144 227429834 605982148 668803102 789272773 434733210 926991081 17718094 115615537 923043774 540263390 31084727 690605792 918605963 773941597 569089677 543048942 685931640 580451601 792423144 191906997 551101161 173726828 26293934 652102425 779903854 338841806 393556942 890848065 550129862 187152646 52742979 884185563 299132661 863821135 154745999 654994111 68153556 794538908 490990880 730244979 658895001 629904193 256799027 192286446 325927905 81295419 236847697 709530628 198468951 81011863 329656427 234086351 763842375 668355557 27317103 335673613 248647856 466213911 63884522 872590490 892888418 806291054 374897042 880766798 647299529 496906055 701698790 330367578 931755673 913875153 45650089 503743186 751586159 260809908 716143654 420199103 311963836 336046545 112090771 550335081 335179518 505192886 251054624 782560130 329284692 235422336 164148567 648341451 839778991 944706681 884157899 450262556 683475263 691139255 117110058 451338526 106608777 70326643 506027993 634545228 666657014 432723979 481215247 858542631 468026701 704845969 885337875 69571868 146182129 438732786 497212620 143659917 813003697 537514147 46648254 215687530 448795034 251980570 136035958 81935947 403068304 133461078 514172115 411421369 962196048 893761563 934267245 310980434 837714432 131758678 115656501 818419324 557574936 843141763 760362563 363023999 841248774 730621635 868086445 187530765 509025813 243421355 26273186 122055397 875072137 383054065 112708024 9516915 328961768 612291801 115094044 933068117 630366102 720151875 665499515 920138788 146239053 103514665 931748757 642593058 814396340 105544245 556165269 606757405 596964216 75014627 890537244 733896627 815413125 848804238 5566549 343844202 60088436 116325358 457837438 198998823 502808329 873957198 549935549 618932358 682768634 935768017 777636869 836709883 209176249 424179527 82833431 270556015 741220006 766635641 897264916 398611740 632725389 824797073 766154181 235161257 459888298 794140041 712164826 366011046 257673369 429110635 679764430 260122564 836680357 362807209 924333475 920531138 623267759 294746986 864917853 894936219 962362963 653243964 503815405 531810442 5931634 889045250 942381575 241964739 731966664 919083034 307317348 876613474 507703128 980680122 156757225 715416676 390805571 160743767 799567106 470112274 875970552 656780700 853728696 209291826 604738066 611997472 977671263 910094894 728618655 804074609 953102838 208414026 608067588 234374562 324171640 187958493 879328403 742630737 56285434 278981831 711932209 955052086 569926114 309696186 701950559 817062724 884700539 633937817 118583565 483879769 692358466 693494685 802727984 219022771 694673198 511277104 780673658 754244829 945651779 860060161 908893638 521584338 387904708 140954032 18426452 450974372 479057588 4399075 336379444 613141272 313226139 206763230 687001758 898909195 430321866 766526581 143265705 992387713 249338259 739352287 825275208 833392065 93556556 435654900 340099587 694274863 157234695 362579513 889516203 331666190 284592303 862840127 682391712 794349649 754420788 575273645 957882725 1892158 957196711 10827763 822400280 594168157 156951272 149287546 46320675 259707604 782193981 679665212 461074525 988920137 121941815 802262484 287875142 223305770 256550051 14723732 954916692 795747878 807893438 586868984 902099865 423296274 979852197 829142183 306191370 84919802 852630648 381961603 995953310 692720891 75169838 589034889 862014995 624202882 204597059 613132760 679560408 705027248 58465304 696363096 685871524 910943567 40458966 576953169 763003544 65826588 433441780 879325211 201405857 369798221 105317347 652994988 891182826 757019076 911628251 908278779 865346512 209526970 75792544 584514485 137710561 77042478 193182600 118620406 385662195 218769273 854224520 173537569 968771169 270899820 589310731 140135284 441690307 316627348 281055168 185533371 986054120 11371600 786447188 40559514 865442272 312283036 320250933 288146861 663238382 179997911 177425558 503915155 717647219 179415105 234804019 792025607 424391263 679673857 904063211 55326105 416622201 228545970 370600211 39303329 15795180 3830101 761443188 874893385 222766854 682447173 35744249 217969145 700589836 293820907 310957691 455372416 800937006 447042360 107364749 362592015 483775896 140623261 186554013 665557503 604210987 247542360 713969503 539050829 350527053 986828712 752879318 868959856 882756345 485262969 29736373 231376077 380460698 665948922 159498754 891558551 912250292 562006230 741696944 739347632 231006470 155084085 590250376 468724818 134390482 550159255 647810648 424470132 622270791 27695754 143261582 603656510 424064083 859825283 469886573 938048701 358015751 936352685 151021999 183791204 13410357 328469535 159361897 420569242 71931421 204704789 45705816 377221616 69145736 867725616 840729276 109338469 920798335 73206359 928069844 173630403 465099637 605014174 861109797 235007110 550013620 206784244 457034251 933186487 105127157 491364211 681539847 188754631 27945262 798307729 554534689 974739943 398543777 801148875 330813527 618670348 988513556 749118477 286269034 199106553 763584887 667493052 791712924 582933248 510577125 556498567 152874024 814887642 661863960 505608245 868248838 609086368 445807189 51717150 203295787 527194677 638623141 423897035 497941327 468483556 703544963 407100066 80806910 369388847 2271075 743985076 463258651 134668718 453797164 982538930 755795343 201575831 968668094 390000788 915961258 953337317 751229453 190054174 341710084 715031242 668895271 934106049 932775384 562988967 326500204 955995987 54766175 419170747 880629143 914041536 312427208 740959459 150349019 830120664 487112201 287046951 766968008 560528068 572534776 228242597 66475229 803143210 313684457 789685339 43831048 193993368 131224550 867737320 370587044 913593060 274959379 714272344 700071535 290126300 278103233 146148613 419403098 750492500 748057270 717027838 789805571 98652318 459339540 46232895 105398876 30762468 617217323 118300940 552415733 933535213 883884850 988642566 603589212 164421749 500906296 535637251 298231320 625622657 969813357 606094134 763685568 2847098 368260475 858688931 273866518 720647300 245072550 53417555 92305292 409329678 347682848 122607879 867200931 97095819 586075506 572014746 612588657 374651125 696844822 719841719 616130713 222467870 566250127 891222992 768996524 348765335 306735606 376104682 872620947 507755796 273843775 451816794 2275331 666725509 936301613 281968213 612059583 8030241 419032959 774140033 409928843 539408200 309158201 67121875 745150555 721757451 46000810 257909577 997785651 863712474 407701093 249518474 700390469 738010450 661681883 842635299 705515491 64802488 441503841 140494384 74078839 709594867 439808490 491753369 801780226 398106207 914231327 225692588 12168004 533039362 323117482 112241327 398394950 460158687 928310441 919222817 408057666 454231143 73794485 333438548 923538135 340841461 723668528 394785463 937665528 137406390 916097184 120015975 411972122 378474742 728506669 297122898 639020412 869309779 948207773 755157874 221848090 866835181 606214366 528923278 176765479 283360590 274927060 412440016 993494672 93816438 382076 909083961 684346812 324450940 938814382 587031244 142793156 56783253 74348430 600072559 535566894 215915492 537816855 398683161 479032717 342996593 691514581 405170768 531544176 581079361 872456825 717246889 708219514 627925020 125610221 348760414 392315653 163145880 78468770 438565073 875550937 6291931 219447573 926030422 754317314 904926514 474172498 589082636 453690099 753623054 94877113 52077846 252212655 79355880 92868813 322676321 938261235 969729301 172099440 504175037 794397263 864590806 992582159 361639868 662513133 176112050 133649938 135813050 630831868 751409934 863263333 874050431 648332008 327543323 993769583 880464090 229529372 571463461 497754595 753366497 687207110 78705643 331946421 406929560 966508706 904236643 374730260 436435477 417000985 748139996 200006564 77645899 506572096 920328180 330933360 684401342 191202363 221651383 153212908 964374588 59910083 362885280 163725893 674749532 366893102 271662708 975135219 162745816 471881972 222706206 698444812 52923194 355106509 758371021 536176300 312017834 636245633 849124103 6027660 352211232 989893298 423240148 45625351 438771622 770087656 183963173 398052475 687164683 288573392 706707437 573753455 147701521 463952379 888948559 901528098 47905636 101802822 5349227 74317973 990114876 941931237 726058937 209491991 188936442 686530406 812440708 297178226 511826527 340819250 228319072 578326261 206974833 149570703 746737378 730223699 773240421 998454109 930688747 72455308 975273273 5930570 598937271 104624018 909130511 410764216 577593564 773294552 573103883 533514305 398270994 129306158 154788692 420047483 481413949 60374652 121218827 852416651 302912654 139441157 185276814 359867510 550036762 622709159 200464217 248978361 366113855 722492675 809983533 82920413 297081136 390383030 294812422 707014667 261110089 553202960 185893269 790135012 527947856 581312111 310185360 113537279 102682218 913987538 807581553 990157968 121272958 868059579 367867061 594220559 315695151 743653374 869516062 90985400 512649398 197331003 783040260 912394863 558167052 566867646 943147921 14653508 888446484 544119725 231057542 178624021 287731635 803903970 55097079 238535068 501628885 236724938 383961524 72207263 18848328 995204520 644983334 120638681 485041125 618247009 93906745 356318671 304460907 963728208 942178218 424566025 694358653 948563814 380029113 849664083 19059665 687213228 758665084 76588283 46785643 504598642 275192395 525979589 578717281 838765265 584798174 249165891 757806170 69510821 671711280 735421472 58024276 270714950 144794939 844137534 565945690 471250621 480118662 820118000 65728700 120744948 501519293 857188026 772480592 370290454 214894318 514507142 970236829 945987205 968076377 849195657 382585506 217687850 852916864 605722532 241146922 680001835 46104284 705400446 451936760 637832988 34914462 152682504 24326997 288500907 854026350 182032545 166669449 274846329 348483907 333156455 87287202 649967775 116131444 837122582 418012184 949381232 912499800 445836449 621428236 772117901 811030243 665286848 503992428 33978940 752938503 658326027 606327549 576637427 710661128 222230199 273036864 337401150 631273428 240602154 974409438 901963806 944049395 45758883 568711824 590982807 974883716 673221362 730036036 530511697 181119101 653859222 473657788 277993774 405702635 597386225 988967751 107800058 270548168 578546908 966439280 107194642 276180452 139968901 256012598 640932420 788653924 555903791 995815123 442018551 391854542 179210817 240818146 228816625 550835161 476327231 885542961 689736770 659831454 392790995 249054703 702686049 92421534 833207195 321143629 209838057 624040888 311461362 5158372 144699977 990608306 397643234 743945309 583665014 920000867 357449969 177441917 125248062 243388770 303637238 174822349 179487058 628064005 776310194 30672028 448558161 256968868 475600253 930971904 536991058 639457184 9954751 217675747 968505701 366410711 140916925 413223785 861921629 969354108 455791499 193646637 798591950 890097945 725285409 189694675 675784272 860650415 415105469 68809246 714142802 414904107 436517804 962298724 215534447 573293142 497874694 752666917 165806811 338112434 449314798 393020287 403968847 887061688 867789323 682840720 481954195 355215037 521173767 861999434 773559222 81602383 251143202 973169745 267699441 191186669 127578089 914161236 622503275 906001952 547570144 972986338 10878436 619231209 338545748 487468242 883657154 588771416 433575046 248292613 189562074 330924582 642002006 318725689 528286075 415262542 581845707 288278664 743984012 134371596 684167661 650945724 668082907 343250623 653891940 197602456 472101156 5539816 148821115 422050995 240584997 943246873 885099938 101600928 192727075 599297435 378906726 683293186 306169159 291542750 23363279 779893081 716205233 61943387 296550865 558368680 219444115 313645355 842516796 389142007 262360555 369961545 963018919 688238392 594585511 976396325 622983006 729921656 164664607 256250402 905131334 857884680 22007211 867970602 152614275 664834382 827558419 358292125 595166588 826806304 932899606 40821391 495432415 333993557 18581530 856373534 957973564 801817067 694664553 931594344 347648933 615122440 652503021 785519779 683422063 726446366 76164013 435695864 193129001 965363975 234727278 993860954 237827375 346378384 166449334 698763480 4662415 723160202 467370346 439741591 742822390 304281756 434540626 934003905 970041585 250207148 942814357 813410943 93229243 908692542 150303400 552593953 95902543 885110179 642568187 207992948 479486513 67863350 22672876 223564056 242680545 531416230 978984638 413904080 666959190 763533948 31033389 109060898 4999437 913556086 498823915 986412422 858425059 950792761 385342330 171406909 849989135 726316159 801715987 681551817 141957384 588135676 407538700 827608028 69429824 783345362 876930945 699269013 564225335 336827255 608727268 996955066 44428351 8129725 822077356 273416180 594862949 96595872 594740855 121636846 53790487 439760477 104309074 295928558 592666587 774629606 674249984 420454862 597157864 168309472 355411212 287926347 900887703 782975489 655355605 833102258 287194448 747477523 554351282 185796711 341502072 592090165 915320863 178791202 496936246 381586543 816133985 80979411 850977192 194741227 520602000 949262729 164016099 916872973 893155615 880502660 854020764 744686917 764223154 454504857 404021382 425954944 778117531 842563612 523665522 152170055 409279138 570010170 580422873 426062940 251657114 965291490 473591155 291740255 718367015 683133453 445863315 851323258 104627343 567170354 467629829 958353811 878454726 113192942 304258747 910899411 481501197 492862722 259382153 814547827 277857848 608905887 602163186 866921631 502773749 687627789 697880626 382703477 617151621 839337564 103849027 555707084 451273223 162259169 118169802 307824344 333701356 336304698 467283231 391400214 151416078 490743899 901596593 130765567 917499137 717821981 14976166 717745905 926413462 773763510 213447012 42262446 392790463 389433011 905970963 100036981 382217894 462820416 483807417 445161341 880565968 342923443 161358227 320733058 597262934 548320796 16559265 584107106 324871619 972874086 597138712 726295278 161975613 540797917 228265207 240430451 309604283 287057724 564368576 363666389 485778477 493292578 115413776 645695017 338708806 103606036 65919023 40439947 572413480 593757320 295197723 183633200 812932143 873246446 207161166 38665594 357872776 407809089 161631409 165746296 667605836 511583669 525470598 39111942 607565646 919475384 247572152 626255471 688272972 14380592 815264963 264229205 535918147 1759291 676402855 58723723 272846807 758758317 4717477 137894367 118709383 161840485 669296931 718337223 52622880 873561390 856353717 80591184 539155367 172081219 223149362 304437632 344802467 706384114 746098446 267838160 774033101 606902109 226234297 374659238 309472214 645029751 217509896 562405895 318302084 521671187 737926660 80592248 309089440 568083931 153525857 956950395 823741319 466801771 75551814 708189988 700854373 871211147 705103457 738834385 531818289 353127735 776009614 567102125 222442334 755356576 305462796 939967492 105258162 430338358 40616172 81442251 724923250 843616972 559509288 465131823 253108676 290378069 689430072 886051287 578996714 955848091 236582362 314645515 467785572 572010091 425125024 412176809 221173248 59805013 819158139 257772587 624564908 273939668 199421763 254449582 633916537 311685201 877864738 513758352 172154369 178738401 635695678 265001536 514461390 43044885 473612169 923415642 970869643 72385749 637269733 655833208 258848025 280257434 330246548 89065811 943219608 782359167 593578302 587864356 307274522 19967789 296486360 629833171 436338786 548499415 856467964 9029470 20419324 622906531 521155546 963027564 101969072 346303372 703874537 581173658 999353322 907682008 460310972 19880275 97982929 680038144 333426711 418353595 302659688 319167249 909337991 216103687 53182544 786850843 862384336 787269527 682429750 19349206 68275517 978200869 732565031 629517429 374803011 975828681 403406922 387863611 408117117 137865107 391589739 709662431 301714457 580551617 717307670 395871275 994682362 578625644 245634874 738910195 451047655 640661233 365998411 349145050 230030649 838167829 494571373 95144177 410509787 571474500 826243049 873370003 639579544 127997571 371158146 950213546 840104176 965988676 338984 115071833 154697055 28332824 593018638 73852872 829807981 65315336 656858638 707251540 280788370 207521862 421873839 680155184 775956414 270922829 882513620 576893718 915614394 223283426 89624677 383173366 9882931 670477705 788423834 710122478 169663146 697154446 314095959 216401873 596694093 79226205 565174157 966922735 280626775 278859870 26310825 252168100 617587994 974425132 369993864 463869121 90738020 349314758 141243440 602660606 677034339 184749203 976264123 189516322 135565404 605625442 488037216 138390058 26263211 178220366 74668561 374604309 164594250 743182554 919393323 775930346 867689706 794298577 88909802 505834877 830017456 399695690 937681488 936025239 164019158 801116955 511462107 197267163 812543916 3298367 83404932 458760990 967300189 3272698 33478860 682730862 414714449 598533084 201374602 501213127 11935786 984389093 436577521 245270188 133153582 755829125 293581640 333368191 872076179 219899374 233915712 225603478 253324269 81403282 654876140 549127175 764913557 119163844 465267483 108415848 73799805 379996528 942370536 700494475 726437189 228422147 69213832 411752672 273010663 410601158 694103692 903482267 412284938 228373868 693436963 780090453 708354243 635689693 106555710 220431773 527411334 439633462 64928838 580316074 865954322 769286065 839900021 215707347 279307681 477008590 769010755 423708175 10782942 808239637 224302871 902244436 684959277 875709473 294932521 512088537 81550779 170133567 222726555 186122428 991036433 602125281 742876255 545951800 241551242 598079288 940163534 268434266 840214965 277703701 377093803 863661003 206514121 931999329 921938943 593728725 502570658 241150247 816175215 562909566 30708470 80198568 515912952 510123728 700727491 295468112 616328484 746565808 825380278 793187628 974758563 83789036 412863887 337044577 515016665 206988266 98186818 869318690 462346271 336732293 501608004 173906644 5470523 620629837 516836238 874672738 465521646 360014874 422847399 15555248 818742647 707958435 810906819 234549856 208413893 865433228 898458591 967376398 822415176 490035009 109123807 938884739 909847647 673897002 949216179 681400596 270923361 780813574 312387707 306499398 943834600 573183816 357151916 69935889 552373971 646239652 471038353 890402382 151990505 473220218 433676259 900134258 248944845 927470413 787858185 47906700 383555608 479598499 624484709 124541566 591210503 109228478 487526496 876626109 344548038 113750877 260931204 303334397 673794725 508190573 520763861 289312473 69307198 905374724 872813531 215228414 500788724 102887570 139837896 467312757 705020465 571217012 218038438 210458103 511206880 122037442 792858985 511762953 496844210 289748713 951398443 928291821 716797482 583038850 762755366 308422312 484275045 641115561 37364854 523841082 373488838 894498915 989445088 550700964 612641325 491306356 805353670 935571842 955398551 72892745 410490103 396255512 332935675 539021170 735058515 959056051 464267323 576218743 835687645 265054337 902787342 665858216 222947468 782659880 972314023 976854909 366109200 327502359 593992996 791277615 780908935 459270513 553169045 316950139 194038987 542968211 701366423 679991727 340676142 89459491 682011465 568314021 584591758 680134170 585751518 606010211 552735864 85590521 837440718 104957582 191866299 781675547 313837008 451046990 201999702 491784757 286354021 472477413 237871265 162201048 831952739 867607113 232595820 962413237 991688931 93833861 350050115 646357490 287293400 200593759 707834213 9184947 341757831 572190838 963245817 527501375 86490133 881199181 176862303 226628243 976982323 280373144 134740405 970078559 271230724 988387339 407762938 545763738 502265689 82393201 927849463 755473483 716951230 247966497 859489990 840794845 216901421 272135257 218945099 196454799 848414548 678197158 529199519 983059359 403503081 870999278 856655494 925159671 872464406 350757808 982699328 629823728 989228697 366375466 677020640 437766940 307102287 13067882 123562021 208095757 943341968 576336315 351036975 187674538 868969299 765875413 696699187 833360012 904272952 873366412 71154967 865622886 171536717 56252716 85535725 470628979 256623999 551239880 5243093 953845909 773401750 275124299 198907319 808865668 297979152 809222640 444794926 323865474 922484775 590882126 324045157 21968242 903520438 401069447 947786562 505039803 978492937 139983930 576731325 770103616 138885483 496406773 790826878 540873062 609654012 961111566 433823623 146813613 894019317 168989501 142842366 458498182 25100924 898268800 68020822 507396829 45626681 759128855 758747411 170687512 8120814 422571025 286151861 65125944 234150989 447617851 37611170 475965205 347144464 125327862 433998917 266467861 613970527 916370100 91299014 255394281 682588153 131418996 585534595 380807429 234229193 848754629 752313403 958118534 336937778 696111593 919143549 676689869 376850014 543066232 860850314 926755006 293497451 743325396 805773019 915377920 737551866 784185656 754475451 844737630 102046212 1156003 390170496 727718777 771141681 540293581 112965379 751676333 164681099 818459091 392102853 845140354 226623056 883818217 7339572 466852045 302308834 693352641 18183195 226572117 60073673 780075956 47226006 632459389 688051926 876750597 49403615 377789393 482109007 543071552 695241108 651015682 282766878 509850280 992781659 819151223 668528590 105984209 797501084 799477065 129385027 967716080 994097295 689628907 129228353 890365940 353738338 852361456 588858930 341411765 107898212 120656237 175820913 876037850 260665603 441873581 403417695 503774574 14441772 73745275 655079763 9383649 479067430 165082227 443007140 704086007 531166057 931892929 875326566 630697671 602520956 4529149 293970266 978198342 971846528 33249568 772505729 926624666 266055827 778074040 290066982 722544412 20054771 256849168 98740098 391212551 708589387 162790238 647314957 866383114 46291282 371716613 564559032 779830438 218843354 753925629 690629865 418842104 187560291 647436519 188381965 63614798 15148268 639166047 192620143 698406907 758605899 471222558 960503490 542083495 856347998 657376274 564078769 900895550 673120548 768616942 720322514 45803039 186897951 379966603 631488356 45094149 326144562 891715491 534141001 706718476 747723041 377141417 287655692 584534967 9408121 730561785 54152646 586424764 475954698 439786279 959139841 966441541 893472554 722991425 859746813 241349082 575551349 401210161 728690342 737044072 622219586 696676178 234169077 903241537 733988796 68602830 806454910 174526025 723989856 877854098 412660929 412000451 781175733 486133986 334758174 571037063 833841472 758803670 379691825 913237950 229705730 80597435 506536452 93572649 28995031 841472613 805502896 246689431 152695272 805733917 711893107 684155824 638090476 898638939 678224822 148197212 822785448 933373884 656668448 120257902 768353469 755737089 293135292 73274056 83747407 240787290 230626622 827445369 145979437 829853600 356786432 278169600 971922072 379186425 273339306 583748538 817955952 808802892 726688293 563562330 296895468 77042079 527001694 506150220 633731002 33863895 845179323 34736907 722034889 871384845 417169762 966483037 260240535 416212295 988989164 807865375 367247148 104537169 713272583 288471248 8330821 162838251 357488805 835395444 427880518 934496271 920982939 734805416 136736336 685090681 347159759 689736238 355874052 684257037 41895765 481185854 335307198 361611539 48030390 821638190 251319427 257052259 621048920 353532188 230628085 740655155 896808593 357491199 329729444 14154359 114641179 475603844 543935653 94168090 948114274 420616590 252404042 292983938 351036975 105554885 626722833 65407904 959743927 494568713 12672872 365070736 933590541 338698831 443427686 817326995 364783456 318073723 871695400 250991848 449071807 308357408 915980942 313537359 933358456 222126326 445714355 315800620 285328325 734233516 952259219 636164104 208070354 304760556 315691028 350730543 686090442 468512550 694553764 843365868 526872817 182923379 700981787 464596099 942338350 608322283 441622344 24456406 643324824 533909581 153157181 506082257 739543408 175370043 933942991 397875452 531372606 191693798 313683925 711838577 96385998 846921357 229734325 736441050 491808697 306208527 244659452 130327066 386263222 712846318 335440996 404913945 926646079 210470339 575722254 279277091 418954888 370896003 981926465 143979383 532079368 341392347 759438745 822700195 446820516 125045636 79762062 988554919 79026306 397117751 146487364 34295347 281175932 889630982 409431556 312326926 42496526 933497042 961038150 648623145 552242700 748610683 506869883 458880291 270401203 377315381 947504602 778204912 134333824 313734598 874897109 885489096 624313006 692337319 719170601 390173156 418781456 256719227 346902138 391433331 274778765 946134702 405533326 488387937 296728021 415884982 759931111 824369478 860270168 563954281 378456122 831951941 544729264 981776973 210543622 389608970 650092795 763411721 486577408 92416613 271470390 121011879 142633024 553018622 126435885 87210195 273883409 243936597 75129273 695392728 777985063 710289393 429797713 314971897 257774582 268714231 934165899 195421123 82630872 523383961 815508885 677686172 204767964 504282900 314664268 514409786 495914540 813912087 882385807 752449329 957941777 751537348 395662199 877358939 172637292 42986897 12826088 925142514 7697475 258409923 74734396 295257839 143116479 500911882 220150212 687806807 154224639 589356616 766233715 547245890 299571694 9626507 379717760 941943739 308309661 314233747 165810535 814231021 225814815 636361343 954467285 718438702 785383188 234147664 422806834 695715120 995873643 693495350 362173996 747221897 919188237 252059173 416280790 221458533 774452317 603764107 260226304 915248378 435005461 43840890 162134814 755508196 806353963 951091479 534508746 369620799 168957315 563185142 382918405 279230807 745456189 782183607 476244771 469138049 864916124 173322109 857572396 966558714 68611209 71728330 331747320 895078263 133950518 237472797 638936090 257727101 848131391 68026541 676205483 423315160 97712407 325209705 109635192 718564653 50188315 491965105 55080986 414464276 988541885 360407756 349092515 118816847 189583221 611168882 933196861 748937863 49294023 472566523 88738232 413934670 367953511 58906731 632199374 52528317 675831088 379835199 785066515 741815181 524736438 737491351 227796 732081044 264145016 508558717 393062980 107048209 739272753 343422592 445487457 640034138 233609679 78319677 52195418 945495504 646473998 621482234 777706960 957203228 257812753 253777799 536431128 293554109 952461645 506631148 291045197 986236463 241875762 548610869 890683544 496383099 188720317 946005426 14058200 161349316 348354498 254749231 81491062 616491542 561738767 690784145 800572320 109743055 287720995 206333906 357118267 647761837 246746488 674415303 154444089 951151462 938082749 366202699 736345689 212637840 115622719 957652768 566480084 34331124 634727438 820164683 902625481 299683015 789763277 190385477 109772315 677893652 847439525 144813293 484987792 728469030 108434734 823320640 400834968 624619305 734744635 421304599 358520885 221255043 905182672 610912724 337066788 642335304 137273922 313945802 479727509 61889655 4221387 600436846 680124062 436531104 521305038 165315908 218642125 498616568 335538352 134230217 172120321 61877419 120329988 370845862 381217468 452542442 930664408 894336123 347293291 581818043 518865552 141486032 403611875 959899803 930686087 752074934 263173850 361894962 985354407 329621980 952160533 961346178 352961618 598727530 615353860 993332944 357137020 475729795 274268045 957875410 205575806 283737645 172723077 229943135 412680746 251144399 865380161 639478065 641061297 689330987 440683231 717838074 392438146 271492734 738630363 920478337 315907951 607304567 785257370 822512266 548650104 162338969 781350761 339353856 30457366 206178562 352555170 783271547 675587964 971054779 155642419 424640771 770523763 7047238 152821223 651887896 391110274 574470325 458486478 834209882 524671933 803521329 842590212 951413339 997528163 491459705 676641856 56495973 713051138 682191414 934437086 363140374 244183179 736602379 946816194 658212445 419814866 516701110 917806367 114447664 792017760 45567895 540952064 664745538 472220723 41023551 164474018 305314501 737747908 435607286 219382403 514480542 467126025 593224655 227901984 731539335 882595814 970626652 372175463 736258707 206003002 747272703 304240659 488930976 770163466 556520246 75358964 202332069 78151432 779776972 359053683 143210643 25546208 321298574 856190127 181955804 172379671 355353224 369151043 148170213 195961103 668140762 420494496 320187758 693813353 808635312 977568454 695471863 943511144 378810966 581329534 702249144 504480272 939837285 286173939 261955703 545525003 606016994 527851298 423106882 906955695 38306893 746961483 461895135 624108186 229150588 249239839 551850749 86089271 800128632 520636181 834057464 833349771 591105300 174913587 339612674 986322647 541176701 813474384 533780172 551272864 731598254 826390413 270806853 439753561 177739704 205911631 876971909 977633491 296650748 662037525 913789235 277666062 57239842 261893725 194952697 807676914 868717929 587146156 439978730 355267173 902810617 671738678 553760629 135451556 523290595 908350466 752314733 980261704 168238317 521268463 287104274 905223769 764059564 953088208 706387705 941961295 144667791 357148591 559950183 485855484 717796046 700121277 816249562 908826872 780007461 784031110 157895040 288860007 883359367 400524280 915858848 508487562 438388183 172832536 917977671 15101452 417362213 138023377 512321420 779265454 242390073 111797373 354503088 344755385 500806147 244943008 944346384 842814317 777823335 825412996 485227857 798204654 174246459 143413069 446878903 166895815 175864005 762762814 635037993 976716589 947274778 75759028 318495998 863531062 950810317 922536512 969735419 240502936 520072261 20103183 521490440 70285280 510854563 557194423 138879897 735184200 593000949 454907714 730106127 336270783 170520730 94008490 2741895 812827339 180195017 866033590 824258157 65067690 955882804 450140196 930755380 922558191 30897463 392021590 560206740 965317159 920421147 838640910 989652435 271078705 386302457 660151984 125955223 202951450 956473457 358197296 899111089 136013614 295855408 844606625 802407587 608121054 258001879 939172418 996487172 269272033 415903336 192169273 423366631 288312579 378840891 165583504 962572305 482579428 723101948 903002536 372486417 32404486 567950399 196726651 727645627 170830221 65755167 758886130 249952852 412846863 665958631 281991222 276419586 828308539 831530730 17956563 517633307 1831244 14814172 817405997 115702652 785617002 534996723 30241906 979752846 198312277 556384985 508015412 792739418 355596481 470327202 744294168 11123289 487462523 605011780 404278737 569067067 329638339 647716617 307526424 810761184 927661667 312538396 506424200 492944916 843586781 933125706 800837389 750847610 193842945 723428729 274342259 696005592 612771000 725449132 942718464 885812153 87884505 300759118 832409993 203717131 705022460 452983071 571996658 928632168 116561832 217288052 297614732 567357086 851651103 995906760 591460809 643644689 322494510 998915619 845580185 914222948 13093817 164784839 468928973 686354048 112500810 222827635 669858058 859307514 699424889 69515343 22571131 404102778 29668277 563416695 103022831 459136316 456593090 605426740 338169757 889611697 108721748 840374033 927290996 676817682 978338258 554220410 81741900 447463305 499715414 778038529 464711809 153279940 26662211 59117270 739015531 981885501 690606457 845961363 783927503 697779280 386845629 981716857 299922548 196859651 848441680 542489278 767219245 294003516 635803541 578808918 320936548 206741684 235609733 398773734 820363252 794370929 572862488 913836450 543535722 137680370 793576254 901977505 70637464 668656802 9776664 172421167 241808996 525798576 116893534 406961081 877657391 772312746 455758116 53999430 318701882 95469495 902905047 143868727 449436759 576865123 39009133 528311079 745439431 265425939 315911010 948735251 739675078 107169638 875174946 445747339 379084680 73550297 525493607 479673910 617245519 531672920 437334557 209789246 675360800 278994466 402658664 161855647 362811997 916682650 577647695 622676042 657359649 684968587 335861941 939282808 993528055 613557030 474713941 337074635 672820899 612768074 32777019 472052212 971235526 993159113 903882863 777119233 897387941 288756932 279269244 258832597 60271045 910645381 939991299 183710074 619785553 691048682 111856558 542584905 867695824 276613633 408849149 524551834 774778699 290622789 900569833 306892945 604459963 695993356 386035127 948816647 591404417 904765850 544655981 593612084 425411639 639417151 526255830 321600484 606014068 578882600 181812696 718917635 891839181 63060587 690292178 964844743 20566555 704921114 665357737 57327622 408539259 322719945 455135410 924861352 947878997 159569643 580234944 805316962 671197235 66960280 841511582 352692293 137312625 659610940 994298790 190842731 833209988 686477605 32083690 164016764 652509272 788361723 564592282 998781156 267065563 836798195 735239528 774981790 54239362 753151303 247345653 971149076 978954580 451736994 860733673 849073430 507959552 485459809 414348300 323426840 139075008 741149516 998739527 716207760 883767677 92241186 997029679 365259330 859873030 375076060 937399395 513390075 935395750 566876956 658425777 751652792 752798986 426810001 454969958 598580033 925492969 584844990 105555284 226040117 278606505 157682107 976581594 797910192 185220156 751526176 942319464 918783651 55934181 11849602 538434773 985994137 334446422 37401163 702486815 613209235 622421746 993936099 322494244 877442463 974661606 875630338 92834366 286519872 338718 999989594 455624052 92140372 288311914 165359000 376364032 134324913 88446696 181535125 464859040 473693831 843832831 38774920 512793038 656559654 389785993 989829857 963873178 627310560 465371090 338932379 92238526 511069890 915119634 931138553 459592506 298984499 141835556 745395142 949496410 151292920 915007781 181004588 284792468 653249018 73894102 268260701 721097904 501248771 451025710 866181619 299216983 246718026 960206501 707938485 399360131 127041700 350139358 185122667 472012977 569332269 891337239 433428480 203466692 472380855 313106040 564068129 829000671 227227408 850304478 809221842 735034309 927562981 98290292 229241028 460163342 591246413 68090115 392397448 844689617 778789181 515031428 500975456 248995651 701428933 847863130 359657370 756748687 523341800 576077896 71684174 885451457 34493384 617579748 926117005 716265748 242130989 135920115 609271637 905383768 332306718 930301451 398591923 982927556 771029296 754020325 924183451 566344956 654855126 650134291 588095776 892860355 273727134 203117434 881637150 703835834 172957556 438347618 62123469 14855402 334602564 371500488 120284502 237683868 187016720 679736500 888108664 64443654 229612763 463880958 819050542 243143385 395630412 491716927 816149280 872126852 768688496 254866537 945459860 696059324 287055995 361718205 127590591 313869593 254237314 438603244 345570941 199038723 737031570 415722589 548426797 294596696 397067078 752009232 495739113 192630118 254115486 896629442 890405042 348301697 854282774 499200837 542141749 278184629 668361276 979318468 29734112 522294957 804407375 702171339 17793505 707664904 133729738 384895849 540850186 621327821 874089001 942769669 256772959 439185651 89902913 517973787 301842403 297950823 185563961 261117271 601902240 284363809 187087077 980766705 996341936 326985787 96362590 380975408 464321986 203781636 948883413 313455032 948785658 471934906 646118090 72477253 88563869 713634742 573934202 273190080 519660626 226144123 570687273 477413841 967628433 6110652 493499659 391115727 548308826 581997061 296607257 185307803 197922188 667776874 315436200 989769874 152632629 919406490 622780447 883972630 753004205 517332727 506818678 984621843 905240660 930968845 488570546 374910342 250936121 174430265 121769181 351451935 524848557 541167923 110665410 781778622 393989857 4358111 302179425 695379827 776847514 961463750 470123579 735604746 219012397 5179519 717176266 822574643 69939746 429984445 12875165 902806627 218863437 426004686 364137076 5695160 917025657 66625120 302567386 515204461 156398657 238179027 340990288 858923543 503743851 92560386 872105705 340340583 172722944 601429691 397547740 937371598 465955625 20222883 669312625 638341713 847920320 263840845 408637812 961634522 367335726 733460387 797917374 388125621 825654790 170452634 963421510 965412919 63062183 663843266 283407672 481365005 595244659 160347161 787802059 333336670 114717654 977331581 693913768 583526029 576569863 795384389 773097579 106508495 592762081 630637954 41990062 320024168 710611918 708220445 461078249 26309096 250830519 465173452 457120568 760434915 73859256 766027166 587714731 108437926 460043642 926769636 825868255 322765963 6460974 810949645 546735569 572210788 431002161 786408485 975341103 809334626 40116358 481316460 42061350 216535139 328703748 163852775 972407123 728223512 465542261 434440610 810640553 506474341 614474198 16864899 722574071 955822023 607414691 883526947 312351930 286879903 256128707 335774560 207120734 905249704 378770135 892075389 21333699 129738807 7814 26012240 126090351 889121592 151411689 993174275 63226837 859254713 209729529 609355693 304801653 3512896 930776527 281163829 397838478 311477588 762616381 745083390 902131785 418874955 433912201 474672046 928487863 414673618 111007087 522569735 103907414 81342235 238890311 568086458 466489088 518715661 377952717 733027339 976188978 594269370 684649520 164767416 528710611 404007018 410407244 846043158 330477303 599548406 646776041 931763254 649108063 191254632 651155731 271520398 389365181 905557200 712623277 686191655 310513471 623242489 217864075 787651769 214540671 868487174 549749881 919195419 982977830 357154709 998031568 694336176 518237127 792111126 898956942 747241714 20123798 565895815 520218428 624667185 142400407 412643506 358569829 276785469 795046170 502394699 79919534 661896944 933561148 683538970 276466136 447987458 668170421 108283912 456189302 220739668 461376435 548963053 842780269 951033890 112671183 699448829 79932302 402232798 86403018 260515978 418365299 278643479 985720157 662179303 410414559 933115997 191634879 691855992 596301211 943583230 951017398 970416379 25363865 18747248 787853397 349592994 462388565 312039779 291224215 145935547 298025037 546628238 694279385 552992820 777264602 246497911 974209539 668414210 843042944 224407409 95640932 254280007 194829539 725110248 18580599 282177688 645163682 653732207 568167056 312451414 539377876 576236432 324537922 804451797 739929773 656989377 121748300 262386091 681966378 928557023 640654716 434805163 694115662 993531247 417739933 692051369 654280832 922849727 211486725 135757190 492024689 491919353 807432194 115634157 23951139 121182518 552888814 903504478 942026731 151893814 992887394 566138274 680396579 662184889 405257218 149737884 944232137 550625287 980825491 870899129 467965654 231472236 988092744 104834424 272105066 629076268 467512789 764509503 189761707 355479840 456964027 409849841 775584014 766752814 113451893 320220343 176246114 136262457 768085208 135404607 839620987 963671683 810607702 421469253 748949700 859336641 61367364 118707920 71472571 296933373 83110071 469630548 270544577 529264157 783163285 663765993 773537144 633240232 402271235 780771014 459170231 161223764 605158878 59768172 495674608 699499103 285822420 58094101 517738909 711779791 63035982 463552448 252137377 27142873 523847067 825550917 404960894 22514473 855885690 258757053 773369165 924640705 137380588 637857593 878530137 391828341 130963604 853624823 744550060 221103556 70557797 918879278 540688857 878065967 57259393 429885892 158419060 860331747 291798376 271661245 180019191 679372745 588040847 364014982 164107736 532824966 764893075 278078096 227339128 539209365 851115113 815029287 42510624 693431643 314220580 906161153 457464373 583154693 58858851 445723000 308212438 824414166 21870487 43204485 59102241 990437135 615257302 280260626 961666176 575192382 549113742 402297170 422434567 980369035 46130884 62692975 516956470 239134499 228897090 317520576 599322040 813578257 274721176 755714612 976592500 236167402 201088918 861909393 757318991 637230099 613600388 479513645 975080689 583310569 283098580 861026672 253751997 395294055 554659443 51412846 768289496 991471875 486977871 802584876 938572189 411058146 862352150 97753105 266530238 778931624 112426463 511673178 374805272 289530593 259447190 132667866 56140331 236336445 705718050 824274782 582350974 607749718 449593832 494901479 789379306 709094654 227737197 580934524 17495452 532844118 453824296 468937086 326235800 698102869 319603622 762053392 864149113 197719496 886147978 309496287 857653526 685395916 797233754 286124463 208542770 297365889 141652149 716340893 515747234 880020402 104202807 431865730 441100718 165346365 594394789 190377364 802793686 146406500 624338010 95174501 450190736 838956386 923868640 587412555 526272056 269717317 972003202 246749547 100729113 702465269 660632380 695435022 243117583 623369105 674143850 381469370 145921449 903659556 875157789 1425993 514074493 808404823 949265389 746035936 601657653 597795732 778961549 969545894 873530667 260365023 529324938 144922486 739038939 890828514 291578527 315260640 818939753 840569277 81169867 753246398 176696053 831500007 453130568 922592638 367156974 253954822 980255852 642528021 472810977 648911888 36264678 623994870 842715365 566485803 579551723 216051285 978731273 729982836 664033323 628222541 579061884 609827843 801358882 743333110 663245032 606361464 145137813 765827267 404803821 442451865 546546709 926838530 890178942 649720395 253931015 114640381 904428296 565430182 244945402 392965890 825475772 27573261 801997415 235544563 416300474 426576719 99889085 759524530 451908298 532298020 647551165 770984741 774269841 108150114 432188787 539510078 51979160 164435847 369369163 510528713 725371992 476960444 96085418 800764638 672690027 651634797 152139598 675724422 63078010 605387904 404025771 477971909 594694571 452004989 30711529 157512133 315691959 827340831 232889085 387797909 180047121 248151367 554981436 287531204 758101430 894543470 923786579 25666440 590974428 798528110 772618114 298677269 381239945 294668516 694552301 674705509 60512174 729735456 725189782 590200900 137977625 750606747 765554085 168081909 717910958 755785102 698600555 776162697 325727873 144309489 941322097 562015806 850340920 712777424 673548276 744602462 231617472 216510800 891313432 357126779 117945298 557079511 676690933 336007709 294852189 617053467 237066482 268634165 709224063 838154795 988999937 428779864 311109710 55741331 1052662 487855405 646071540 297168384 408347340 806676222 118993072 131927056 520457296 704902760 616951855 814591584 177188286 833771913 366246988 344155156 414769511 672462065 546076421 834856262 504575234 25528918 27923982 440868367 114837487 754346175 249768780 696135533 838511767 199969191 277119698 499640269 286600337 489197109 342836461 260509461 314212866 775717679 198161455 452562126 640192541 256824962 292091242 133494993 341973690 383948623 854092584 338447328 774340597 323431495 687049638 197254129 698123484 153551127 568278244 937458979 454103995 426177852 893430792 320480092 541879872 52948597 733162201 981675760 883925548 387226275 734066069 311636257 701761433 660693826 648638041 325434076 166266326 359127764 75220112 166457713 979961922 371044697 608958023 70676167 722766522 391336906 316737871 155779941 912164906 778584228 373586460 919463680 200860690 516932264 732978528 965967928 890760152 74159038 296785477 142698593 310908747 421599726 471105252 273550510 336581471 205775439 636978862 430766219 604046732 439391003 797313687 217795314 870700294 538639726 293095126 567403237 737831299 291609915 663616900 911870444 793250404 728746069 125162809 406499970 715449793 540261528 447225634 691739883 803839731 382898987 469950679 715181133 673006700 960430207 984753779 401939533 291212910 73958873 121144480 141255543 638851635 469680290 357729136 657034198 619730358 995272749 395109185 989369544 652665680 974843151 972258429 941819650 966310935 689242542 433909674 316007967 712337726 982660226 781628598 216703384 368749383 794245510 909455031 433299337 474982468 490896450 44183631 793985096 262459108 785422423 950285366 892388072 56755057 538906125 929072132 304274840 750259750 189446497 959476996 216318748 685645557 690044000 717788731 587824456 752855910 733276714 470340103 944312868 560571160 536767086 840621280 704463195 279648294 848033104 451177596 261219814 610124167 311075529 440661286 531471292 234384936 143109962 791443333 442314210 89062486 45504454 302884458 914405690 910917366 826299042 40220231 679134409 667398888 87423660 513400715 956781618 342837525 425685885 615292414 661472142 391942056 528267854 388112720 342811590 521139453 590342146 126746573 527733061 772634074 246292160 77901259 585004457 551793426 488489682 333400643 313621548 167305056 304527806 27871181 831684478 484486648 635750873 823381022 443254387 855015471 243154823 325262772 833404035 802035985 343417671 266030557 21977818 924667172 999719471 786825041 478090811 579920266 331926338 955453746 998597350 724650467 300554431 400227424 594178797 605076551 903072760 546659759 852062073 446491075 845575397 767155006 48042892 492704851 101851899 685773104 410105999 698961118 930866169 834580287 448209435 997618204 46100693 710687595 622133003 69058621 40326897 285546578 681755440 671414158 455218668 263490523 31578290 725337811 381723932 876414905 992524836 767124549 856202230 988794053 85360298 991826985 458589154 139256686 235158730 647742020 110643598 774967027 683485637 833555655 678014549 542299221 537559101 732719444 542481697 496946088 952887644 713212600 439147746 3357552 972926089 693400521 696269065 603570858 726679382 654659616 770714884 633531635 139506726 206484462 710812083 516477670 898609679 260630358 359385518 567985112 172778006 256005815 688834099 338214312 188174086 185707202 992430273 988430165 543593178 367695358 491723710 362432016 238661551 568220921 594842201 31585073 56770751 703837563 778821367 569896721 233315616 752670907 291227673 283761053 349782652 513785484 566190277 455058004 867971799 628726345 831904859 344365695 694318620 828103586 801977066 680934830 578553159 829929809 96027430 426230387 745511517 537284722 561190674 911100906 445939125 460087399 263099503 740873142 249819586 928675127 852204915 959416880 990508556 962832453 678514629 549070251 642937794 748517716 796502786 173941357 175487748 791838476 355434088 953837530 529526300 518485172 955600977 224154975 682317498 924791394 796016139 422430311 349285764 965581563 390010098 83511465 397646027 543540909 726107216 954258076 616096798 253183555 613524046 469398330 654022945 612850933 869879950 44035336 4577029 995340446 267387822 755125156 998287061 426949518 284132256 544481618 411090465 429101591 910076274 696731506 666198031 567577334 793939876 811594030 484059585 693415816 787001266 571201185 826433372 487625980 850948996 416607704 911990011 323629532 399113815 110637347 292708495 105900153 695649551 971342724 658236518 156357693 212525189 515667567 128228193 863016618 960266218 554543334 459823394 82195031 524374412 315166742 750396474 336159329 142491246 289124810 45098937 577290191 688894747 746808267 651022598 426574192 920462111 100404061 669828399 213643985 806180797 984706830 775830064 961840672 966423586 673607594 728457060 12454619 738613339 686589990 530923864 265415033 401169197 804313876 460865316 510904571 521030792 25528918 207981111 427787684 438670409 624378575 248549569 415859712 14316619 135945385 738345743 816986382 603322015 630879216 634139046 498456037 465376144 516752714 103284708 882456297 148587966 222550862 801942220 635792635 186213533 130117059 630614945 520260057 858963576 966593560 418011652 987476954 138478237 598767031 521676241 108476097 497916855 737977200 350702480 890697243 201835181 212228998 117423140 800630973 248945909 750946296 131915618 586199196 572953992 990829219 873834838 882347237 808212771 188894680 848028848 636388342 150400756 949374050 957190859 14708570 161995164 785848422 808028167 28800984 298439731 16400330 182218080 949527133 3956983 329213670 577796256 981190177 338926793 783069387 540305019 440739756 255806980 373549220 916729865 833307477 607639461 682403549 225748315 4938922 521820147 158221023 780722735 395932322 95156014 112072417 439684800 69344305 152023489 484771667 438240154 903558077 630559484 626406027 970860200 207629459 100214536 954258741 681540911 224078367 179028075 158018996 416975183 496323 143417325 740756368 564598799 943509149 219905625 140519122 282492100 602339544 893627632 369392970 416709715 848938967 356934594 829475082 358991173 645733055 817799544 886954490 552876046 952207216 852345363 557094540 141858698 19972311 174519242 856983605 990867523 700955054 896496708 410375856 632361900 399113416 633335992 607333561 746445975 628055892 884601986 420594379 896135613 934926526 273020904 897907572 509034192 418998246 896840114 524518052 292589061 336305363 735896282 523726569 741633636 645717760 813368117 339949696 848291523 457560399 725955995 126757878 869967863 867272086 747123211 325658979 409966881 107827057 19089457 279039420 398969111 729233514 231514264 482779327 822846229 651911038 295423424 799294722 397079181 395015287 886966460 508463223 227138431 673112701 186058056 231136411 755236876 980295486 450667541 598824088 802323664 759383284 289369663 92017347 231906880 963463272 801203006 151866549 571589279 633000034 941585038 633901907 491428849 393574498 236683176 617233682 750382642 916284448 978394916 652667276 950154893 283810529 65011431 564859878 598635228 385791205 400650630 186417422 624164977 361381582 408235886 829309364 843795458 19880541 459667252 362222009 728966317 336761819 474736019 602100011 78361306 520644294 261809536 270485791 533930462 607660209 134339942 725231012 18546285 655728537 477534339 957215863 773014720 43655222 786882098 590711886 56096441 560437229 513918218 482510534 309931197 98160351 336408704 701342616 601335926 867805150 332598786 186516640 826926137 658276684 895299442 978682063 15883492 495135027 805328799 862763519 712605322 426352880 442991446 100991123 202466532 644572896 661569897 104725630 511857250 918757450 594136636 685779222 651696376 4910992 574688578 26135797 92485374 382363795 504915847 395963311 949419403 227932175 815640688 76055751 730489167 162326600 535401708 471931714 493137101 386921572 496475534 717495067 261455490 3578864 375365069 553311355 266547927 786666771 333184784 933648529 91081160 399189359 301514159 287979148 379197065 49607504 922622829 276061683 747504123 436496258 652956950 615549370 768656310 317286230 590969906 39045575 463224869 873291533 713424602 205675556 15460685 325348424 122878268 935684626 382939153 197758066 844402603 43911912 483507236 804720191 262637860 65384895 92083581 310731591 368636333 15109831 434445797 755528146 904409011 813617359 160676070 861445622 677721949 307120242 140339838 548475076 258511003 293614757 716618331 58839300 511380578 42429627 536946370 499463778 961393792 219160559 903206026 742542159 779856772 329061385 506706825 569761726 325976583 689012319 435144978 303764785 898814366 918456338 449616974 914858289 147251981 165606779 850798307 985586758 811109910 122675177 879234638 973034617 756565280 821906717 905050470 158649815 65446341 998889551 198777112 267817146 193152276 780394890 379512940 927177148 610829732 495816120 644982669 540631401 237584916 694373283 782616921 753902886 470521382 158842399 894006815 945471165 326098943 921581439 432465560 487443371 336594638 598312570 409939749 495086349 505043660 909845918 543513511 875875191 104745048 877676011 911408269 862998131 885952468 18354765 266346831 941248415 260226437 788320892 605737428 635413851 611049714 476520214 918190205 663656002 900502136 289802578 680205857 290096641 578495038 22817846 121597611 524900826 10652469 709795431 499739620 15605921 928321613 6937247 438695413 789625755 114345387 359323806 504013309 981245771 402677018 477159944 367408610 74839200 257593569 422928130 142773871 160287577 32933028 391020765 371200174 284984520 273016515 920651769 344190002 875855773 257753302 669934134 88411584 695448987 27774357 716195657 645102635 102347191 181697651 419369050 108034803 386811182 694175113 503329290 710019270 473370907 783965541 435081404 468600862 762719456 975633969 169670594 341797066 467955280 522099979 97380838 690859689 651681214 709180971 746678060 634953405 329315415 408790629 217239241 518538904 228169314 94083502 691052140 394892262 774034830 172066057 90798402 180191958 776788994 137623047 831564645 332203111 110978492 233692139 741806935 554802817 823348304 797037446 891679581 179041375 255477140 354407328 908268538 198081256 657098437 775578428 825208841 690407755 263534546 188431574 320703532 840111890 327563539 715226087 82361281 291380490 368266061 705084571 887240706 364216743 793108094 51225316 490989816 577908907 127919633 968303541 449304158 976363740 178642907 384006079 531441234 960374214 334173373 294079459 568660087 327711967 657571917 828282870 778714302 972702915 515426305 986191243 61211355 764724431 612600095 162333516 202782673 571684640 346795472 495297553 302449814 118516799 300785319 927855847 198790944 231876822 8995821 783516134 495771166 289917357 714885607 365778695 784342995 821539371 450968387 600524227 742265386 331367339 676156938 531476878 840794712 499751590 884522452 792384707 762759223 489868892 444274630 568235551 651367600 592620037 362795904 901624922 877963025 614494281 190591361 18720648 963697219 933808262 669940651 619549611 983970675 955719746 475637626 372325753 235254623 609630205 864445038 669940119 38139579 713711616 421165747 636379032 739640232 213428791 499101619 151504257 669648716 200357684 428479151 344112729 464722050 482331649 483474651 106529775 866682497 267964909 693506788 5769241 784684007 387984109 347365643 366399140 244901645 106447581 39509479 529153102 90312819 853942826 436640563 974369405 518737872 152218467 289351043 259755085 344133610 476954991 834741350 324524223 727086362 588202841 727948867 661847601 90917171 680830691 46369486 510838204 988158313 799801984 1397265 478602063 148535830 258106550 281724424 595752985 826661866 248909600 301539828 666257083 258652515 499315350 273014254 377503842 812367292 966711664 462162332 720349247 42014268 811939032 909476178 181229092 367940211 304661205 57325627 900181872 401122248 619021734 691260950 619690857 546311033 873204950 140407269 337739768 615316620 592544626 696040305 960649125 13970287 981455512 238964658 437405579 949934778 205265916 214324014 721061196 8677685 995162093 72852845 734036809 306663653 741680718 153117680 444206401 917594365 47181850 589361537 363616514 625583688 952925017 752627948 523681216 756286645 164176497 755984868 308646816 499416563 950167395 603204576 112404917 519329722 887305610 560239325 762444944 684408391 628603852 939865215 481337607 330194013 676576686 337081551 709331660 111757606 649874675 733641134 177843843 554073977 113388585 227548603 321447002 471364203 246816446 68175501 92160588 431102975 246419042 831110450 319703372 370245101 239770505 50370658 790832065 205786079 976972747 104675356 380423591 452746597 313550925 885865486 546058998 239811336 509038980 243553424 725755697 111752818 940993853 74538620 391638683 105677644 386547576 363152743 17809997 473990820 976491819 307349135 107174426 517039196 116169083 465973314 985658977 106686316 392324564 913959209 955304919 407480047 433235630 320391780 527967008 285790101 725168635 146769723 420605950 642870097 430141651 696592255 194552101 332987545 179223319 101874110 62176669 935519440 625887726 35204668 423709505 937639327 976668842 155732327 504926354 101976520 386197387 950730384 335066468 825759461 101906429 69023642 518965169 52351161 743813772 860552128 323348769 716223720 990316504 308603325 642151099 87380834 711041375 367483489 746909879 174884992 389377550 657380663 845020255 198338611 343392800 884346759 132943043 584452640 624564376 892256535 688699104 768476095 966066880 529283841 602385296 973869857 595526486 702809340 304543367 255639533 404537954 806864018 452357173 926364784 956054640 340990820 658749366 193626820 836708287 466017603 539310445 432426458 433452287 973740714 757999419 799188056 345160370 782220448 986236463 779861693 277507393 814403788 577293383 237849586 877338723 205452781 6791612 294138910 742613048 407805099 496010300 19655638 783765775 49837993 862233115 276005690 288769833 191501347 690363599 778475168 193133922 514649718 975473172 85349791 970009665 456729681 638670356 665999595 325628921 365373311 511437103 273162549 983299557 441394249 444393665 111980514 360773240 504222385 293068260 897759277 637399275 677573255 993872126 253433329 519799478 28494153 248843898 89572009 597228886 349891446 809253895 417166304 205921074 803076311 370052517 282082593 36208552 756701871 910884781 958631648 359518252 201579954 848473467 105327854 448350149 420487314 419527453 474151218 206062719 202928707 642640007 708934921 603426553 176241193 439305883 217234187 729659779 72615440 603263761 314618383 246614020 496300772 539093123 901511074 322844034 815630447 561924834 270186807 785850018 756497450 508554727 673690187 490318299 663513160 468021647 691483991 997023295 716145915 416916663 656315865 583838712 224260311 834747867 458852893 798074181 692361126 639316869 560923344 517671478 372821045 825213629 600623046 57544013 392295437 136800575 855918408 714469716 861755246 824720598 61378935 230155935 614379635 862901839 542447383 39497642 330450703 513902923 220730358 34025756 342540137 596758332 430594782 780748803 133305335 231497373 639077336 102149021 310795431 324214732 367922655 374612156 895190515 304773324 526012174 733700053 243960537 856399868 823741585 149957068 117320331 942651964 950385116 655405613 392839673 231663224 839260690 333089423 986479188 50666317 299943163 666425195 470740832 658506508 760319870 682032878 829530809 38984262 538467624 601457621 554635902 101795241 566073370 741732189 400653955 105441170 151022930 426826227 58316477 920625435 919814135 888010377 94833489 290633296 866237878 560472208 812821221 204902294 199005207 536046625 657514328 225886236 937785095 43197968 860999540 167479020 267066095 414158243 701313622 818491144 986080986 976314530 994106073 843052121 110776731 342921581 535577401 79207452 179039513 906296680 971410421 128427161 40307745 196977223 610608686 388127749 71824090 794647835 231471970 807625576 315864327 791639375 438284709 167170859 290521044 900703099 125385451 265265541 721877018 301745446 367672615 40935638 908487456 36946436 883094165 959147422 37186767 21516973 217114088 878221178 275759374 711662884 693496148 820726741 538754372 800546385 936583307 293616486 814835506 159466036 196600700 852063802 213620976 53778783 66146852 633838865 670875375 828014077 346805048 829390893 833951330 237826311 614002447 985575320 426653992 548160797 203096553 819574828 755110393 521871884 842724143 250480064 283037001 954437892 414316114 915461976 423484735 671917829 981507648 651083911 580898614 924118547 751717164 538405779 636704616 547005559 876856731 275288155 760701580 231771220 867063276 157482607 773064462 60908514 976020600 384915400 196003264 399003425 830115211 711161474 802558409 175114018 429077651 670021914 883393149 895263798 519763435 541994252 239792184 283105097 157386448 804539178 657628974 27269888 257174885 935113125 689244138 130033269 206961666 616186307 537842790 446087021 238685491 275208222 423436988 439724966 784542628 110378928 163131383 345992019 885121750 619417941 803234847 230961516 647675520 466219497 605153691 233146440 269113630 251870579 971535973 840134633 673842871 716454608 411887401 212055300 460720479 886858863 411767169 528734152 674282436 119126604 432489500 640255716 150259111 505969074 450399812 486374982 458963416 169392624 991975546 522550317 428050758 210116027 963529107 32883685 775759707 56984083 716561141 265996110 130771020 513922607 565000858 574957105 943455284 845835811 261315574 3892611 784515629 960298404 683362479 28499606 954145159 926292166 462585671 86960554 236499902 72725830 308296627 276301083 424347639 629503597 602834969 153975929 543200429 871137598 775893638 29085338 812744214 872387399 752513036 705356556 651642112 2108017 131965626 511459979 876616666 775128090 205467943 794872472 543255491 140055617 601930702 958682853 512640886 873200694 972912789 699467183 486128400 978849377 406700268 403598575 836517033 986662462 634106860 435608483 269651881 696210811 695583849 701700253 662524837 59808205 298840593 847935083 258792298 570195971 204224260 767473009 584497860 921888137 545349044 107867888 444538502 16957866 822772547 992859331 62633923 551866310 404855558 675933232 443843045 597035903 771078240 491720252 396294614 124991638 75635471 978097395 602202022 824708096 468039735 457660282 275475153 74179653 447747260 636424917 204939667 571828413 792089181 533518694 656663394 727236918 238786039 798888274 402942353 171651629 217704475 842747285 62290916 789098144 829736028 27086614 409414000 716596918 170522060 861916176 199019172 522875502 437103802 624018145 784067153 14013645 788676002 352859075 364094782 884072380 299873072 977000145 417350642 89453506 695189105 395700769 555600418 151788212 14146911 867708858 26758370 993238913 696780051 886207695 157950368 645358660 235255288 662338770 942124353 58048083 951683196 161274171 934581258 726745217 969072813 806793927 523102932 496595500 212708463 763374082 722253674 355673222 222829896 827738634 87662927 595458656 881070836 786495201 753731316 338451185 445259628 772817082 256435405 495693893 244945801 705923003 484476939 505641229 988478577 845187170 582321315 537376226 378911780 239788593 67850715 493052779 207832683 525926389 58028798 796025050 374447502 398638074 262640786 645655782 837733983 85913312 638430158 643405156 788028292 663551464 315343499 679161408 965643940 657669406 23778505 486904854 92235068 836417150 884916664 950743418 302564061 38740207 307828334 796999541 600170048 419072327 380076062 56335708 644370470 997360849 619982659 540988373 383643654 108734649 696898953 662071573 173493413 462992119 364872965 114102529 815481620 326165709 573154423 567454974 972541453 615103022 744438739 594842068 238876878 655348423 82223227 4415168 776538156 632948962 970262631 170129843 932786290 770728849 384512676 185798440 869525106 50735078 681788690 773362515 438748214 408018298 693713470 20061953 578702385 714145728 931897052 214513273 351174098 562196952 798221412 848932849 343945548 999161935 40027115 150807337 8465417 618229453 211996115 377204193 260007519 721631234 158241904 506730765 678375910 628948987 632434784 794507254 251295354 356743739 496555201 651755162 28200223 628368442 297434517 347859738 110841236 270626638 660175126 725475732 215120551 339868699 690430897 848523209 150874369 475829678 472859256 189233298 162325536 878146299 791926522 660023639 555353304 39950773 695329154 66360849 477781586 795163875 409086155 304952741 308556775 251903031 925927613 819915574 141407961 724078434 351904800 620374876 919670894 60719255 425304042 620614276 558148565 222177398 597961051 593934077 77814011 411868515 527394177 795200849 154534529 263741494 841180678 904535760 54918327 699424091 682122653 45855042 60422399 217140688 575536985 470244875 970884273 447499082 622832184 516176824 896329660 371460588 658986106 170283325 25156917 161784625 198050799 327322011 220243445 585910719 823144947 604701624 556529423 869865586 651791870 375113433 954606270 86886872 246149850 353153936 625224322 755356842 374437926 511660011 832035598 780932609 292429195 395736280 749920201 58087451 214137947 36357113 681137256 227554056 450619262 740441956 123591148 659275647 545434297 346704234 450058135 881030005 133946262 656413487 225888896 188422131 992896704 417730490 790348743 2478688 745747326 660028560 68587801 528568301 115349537 724058617 890352108 658440274 240511182 256777614 604546679 243751727 995375026 706113459 202187099 634022006 369269280 403305709 868255355 42191823 604621026 103086937 146465685 97929729 863522816 400002255 382709196 904522061 971449656 339585409 554412462 324527814 393197709 545461961 37906297 342817575 202236043 369674797 672283845 337464990 800374017 972133409 689393763 638172138 345801962 361887115 286148536 27478698 715553932 416428819 171573425 766583505 156828779 513672301 969303435 477844495 562118748 218200033 666116369 963859612 549100442 973074118 433252787 479963451 666165180 898274253 130936073 638738851 485685909 694762973 264903382 998431366 560963111 838137372 951056500 912132454 46830464 717844192 383931732 459412690 161021205 511134794 959839421 204399155 593884335 565180807 203131266 361308964 979344270 90714213 627185274 287954144 938028618 976607795 161161919 941853565 972912922 44182567 697316440 834183947 127211940 610732775 727865476 468533697 658873987 90139387 126884627 545581927 469144965 147847156 813777890 26110926 806815207 467567452 906795696 594669168 663828104 735231548 298340114 515822911 8206599 417351174 947240730 84517211 514808387 160221742 501570099 703451730 650922848 824322928 255405054 386981289 42194749 877455630 779591171 134715667 227239378 130921975 881815636 663862684 112915105 594945143 946823642 752746052 826022136 246475700 899911483 175225871 622319602 841014561 129134455 245440827 728206887 546722136 648445590 940962066 20724692 382694832 944437090 887828965 748793558 385654880 79921795 179012780 553440764 683512370 213915970 621253873 779184856 757862695 576100240 803066336 573947236 829895628 695415338 975636230 692959360 852816715 575550152 610044766 601025238 321982593 134877794 912911568 822961540 863758226 825132233 910768140 982054810 302445957 497174183 499603827 233213206 427253556 198261205 144198035 686786431 84367320 42812135 862825231 494607150 502636493 565191447 603026489 907506315 74948659 624042218 750445817 261063273 597597030 400942432 254344113 50626018 1595169 924021723 334549231 19215408 590728511 368132928 120076490 795264822 174859855 425487848 319540181 241790110 828212912 372109362 717135036 432297049 931215028 601455094 812589934 790522175 310284844 893502745 124161718 894653328 66035664 356981011 829517775 515287985 230445742 256963814 103328997 306052784 122227499 161774251 818925655 27132100 671480658 32656920 847412925 803990287 838448459 383606414 642073028 669332575 151983323 530548937 447419814 482033862 566309445 682913737 593484138 116404227 713439099 544410197 60407503 194131422 446935694 412040883 635628114 121565691 900122155 468071655 105136334 683487765 565490830 376250051 805643078 377110960 951944009 651305223 314143440 597576814 344318746 846470088 719137750 276747564 667458206 218135262 546256104 758257572 282446082 286092410 944235196 530629934 401595329 844184084 260674514 925989990 34246802 76284511 34421830 372565685 894376023 637372941 810725274 895725973 394567476 27215757 413264350 288682053 759968484 139058915 410291667 412797520 977003204 856986265 78459992 234035412 856849541 450925428 88712563 634902998 772609203 779247632 49498444 671086579 275256767 413226179 15646220 595825603 899274014 729513080 439499797 420216127 396085804 301344850 861841829 57879705 546072830 765433454 940708036 4392026 319063509 502173786 336892026 655100511 454316130 860372711 267364547 239865733 733417960 599308873 692689503 671812626 21976887 254993286 809817815 39287635 989127218 960950370 29770554 803226468 197792779 681223307 294593903 134896414 718268994 39760716 159732568 458414392 663250352 628944199 755209345 484836571 275674121 548892031 866931074 553050675 298833145 727601737 175196744 486762145 639411565 116293438 35227943 639869484 273068119 147743017 223042962 594685394 355070333 446172673 628335458 638153784 904836872 483292175 609902456 517326476 598248065 795943787 582734812 474951878 61154032 254234122 252895743 450053214 156053788 432983861 179209088 569650405 959010299 465965733 156207802 753210621 67803899 113278860 176766277 341948819 477090385 932543831 429473326 814682423 167059538 229567011 924745642 483796112 54733457 189772879 243213742 524365634 685743312 525534172 724674540 721719812 446786468 94473325 192996400 784405106 501519958 146616241 772924945 309604150 714962215 260685553 481943688 503831764 206418361 304453725 280953556 985782002 776581248 731677123 54642352 629080657 338378966 240190120 347832872 627554083 982849485 659362097 261255724 85717935 21244589 426417651 396909606 199819566 205061096 232190835 965103827 989583674 315718293 977790830 907399117 175098590 380555527 128069258 64558699 902518150 906459073 413032930 814451801 405071284 504000674 886698332 135152040 121129318 791973737 829771273 550468746 558979549 549613689 138608444 574411938 796181724 174713156 344668802 809346995 541906738 786420189 233234353 17246476 121460089 158281139 423778133 151629543 803321829 628559696 371465110 684460261 952222644 554108690 16543438 31137661 116078510 74899848 804751845 740173695 937221840 782943303 307652774 240145964 760528680 364919116 494541847 964507721 49709382 127626501 855113758 85018222 797219656 618474173 628396771 818594219 220441349 536548833 867127515 627617923 450647458 557342851 298303273 842497910 964042354 59243487 765338226 405059048 112699246 624853917 321939235 158228471 926011536 980200923 555777042 372317108 347353673 835174531 48873876 332184092 697363522 303710388 683493883 751766241 652447560 198074606 714322086 827348013 925098092 439266648 560058179 674738626 408856464 436600796 214834601 207242695 158974202 79827897 55725371 702637903 68629962 860972940 570347990 723931868 54119396 633850303 757332158 405584132 172766169 573266010 345994280 305107952 106425769 313714515 667719019 195131050 870576737 566341631 843471071 557210516 292728046 739498587 95060919 8123740 83942518 121514885 795068647 946092142 802003134 897719111 665174729 120498632 372970670 559409671 792872551 286935763 4450945 893987264 480345028 338665980 330089475 839856530 236778005 632008386 629226159 814159866 911756729 916150517 665063275 27247943 562234325 690554853 768876425 49794369 894534426 545319784 746296749 527426097 180063613 692628589 367765582 249663577 324604688 125885664 498063155 703901802 268439187 413413177 587464159 78402802 770460056 664091444 273854282 267104000 206215137 609216442 968398370 156997822 747636591 814095095 773102367 507109815 227011682 642421089 999849545 396532285 410885379 7036199 258213083 755624305 747297441 646156926 524266150 240067494 387517146 793142807 230757361 96728739 282045752 899073317 172189481 12957891 611821114 221339631 806324570 383966046 177030681 381247925 680794249 204177444 176527276 561034665 694872299 427434170 212246953 76792571 25398977 302160539 62127459 180891405 597709149 138591021 916424763 328826906 178090159 886095177 186000334 378199432 386953226 303442792 725127405 249369913 339553356 706579092 606361996 161650029 458178583 992463257 924817063 942802919 384132961 53209011 302809313 26145373 751796299 623709718 899986229 784633467 190228005 509659558 756378415 424135903 528504195 878804782 397958843 140865587 955843569 197514144 709107023 395091230 428711236 353212456 56060797 305178176 590466102 713930401 214725275 753266747 380555261 663090619 421474041 827010193 135499702 612314278 951715515 849285033 627815694 639038766 715596093 113041721 125146317 143874047 255980545 808852368 922309215 28102069 658274955 989164192 149256291 143372238 711709966 228221317 977449685 130061332 746743762 222055171 371968914 439079384 230095287 137177896 851612533 927063566 582850123 127498023 835751219 869940199 693287737 426651598 208032316 668591632 810282251 117888241 387914550 157329657 398588332 844808120 82393999 163882833 880690456 749084429 899812930 229835139 694648194 925083728 59572928 541957544 133560828 554564215 520563430 677816512 169410978 359676256 944325769 91323087 188108384 976681344 750498352 267985923 940287623 759533441 791831427 371230498 135884205 58749791 907108778 321242847 414698356 6827655 209562481 963907492 270672922 195467540 229024371 236272073 112060048 411084081 813080970 427091296 148027637 441334266 376612476 8967359 972105745 581295885 218230623 244130910 955540595 681910784 426898047 945781587 967145643 389027494 748627308 428074565 433866981 855905374 193539306 474714207 446075317 633903902 573694004 912035497 898931672 473364257 741670078 397020528 466966026 475802679 699853681 643391856 782855390 388315279 433620532 854033931 380539567 352427889 480533489 999018029 133509889 718832648 360142554 781384942 415072086 943192343 810337845 465852816 447435508 974699644 989107268 488602067 506107926 376744412 349241874 597585991 618981568 154729374 236463992 884322287 18691787 154029661 857625995 378830916 856300517 114628544 943946852 332373750 792938120 952538386 854051221 104833227 597359226 784121683 50624555 582267982 424178862 671998693 753738897 760931138 250298120 604771316 591102108 49273275 899565284 475464327 913015840 3595090 188628547 86538279 867265436 381708238 354904083 437570100 89294039 75842286 57075454 600334968 37742308 871282435 716403004 471920010 34013387 741874499 902500461 9943845 208049872 678408096 991922479 453175256 805406471 834750128 673024389 55322913 997283975 172318757 903610878 639789285 855956180 321504325 596489007 867178454 446158176 427410629 620387910 82438554 480191679 944491886 827211156 889223204 969009505 620736902 558343809 268242613 194816372 25751693 62824512 621093209 736131293 771757737 560035702 196186139 270404528 756777814 664533536 268183561 476267647 701187671 529493316 752842344 501955533 519040181 280667872 133833611 185395716 573211879 872961826 492414911 826466356 450850682 775997511 552084031 787962989 397338664 531843027 500107764 777097554 114823522 206920303 228918769 674834785 672100837 183689459 774234862 546986673 64893726 309037570 907328627 152533145 963380546 815791510 666143235 565173891 692272282 252616310 505902308 866286157 139036305 516115777 899244488 871039311 955782655 949047934 766447446 823483299 159607947 884506891 661826720 955566264 596250804 578249121 498666842 423016974 381043371 546348805 995947458 584505574 264026247 739225538 792804854 930085060 393395081 151468347 134456450 797461583 75644648 30361074 505996605 624552805 209146856 810699871 525110567 639908054 288697215 14138399 596334993 658870662 915649240 775124366 598159088 552506173 140147653 60747052 217061154 313827033 223516708 941242563 842652988 178679881 938924107 710326899 636847591 431286648 478677208 359871367 958937149 862422906 288013595 715130327 992369891 68824275 474203487 855593755 880464356 186167515 935813769 794539440 321996159 723479801 885137843 157397620 316386219 704024029 12391045 97327239 242188046 164351525 41888184 600651508 864745219 213114645 413193062 917169430 358787949 125600113 501944627 971557120 501175754 895023334 131293444 240489237 810343298 267394605 715674829 292599701 524832996 340377823 63699253 979223639 684208891 453875767 870378833 363347455 27227461 800008666 319351055 806329358 995328609 535865479 992680845 793975520 459081786 677640154 977025814 400655285 150075704 717871856 277011436 947771533 26285289 138240832 336059313 813356812 786421519 780288357 786640437 620361842 876487257 11020081 799432909 218984334 574536692 22658379 962716610 296931378 462637275 347800420 459490362 313886617 641701559 665462142 558899616 235886905 987928090 807755650 185401834 451447719 207958501 339153159 265408117 516962588 777701906 277172632 707194217 931649406 833899327 651627615 234960959 761102974 683953132 275888384 569984900 392945807 743745011 414911555 871950494 300277126 668279747 146242112 984225902 793102774 75008243 239635510 789639853 890767999 875744984 520764526 158785741 517436733 534950040 480187290 266706729 310871108 739333933 952536923 829002001 386028610 295791435 840377757 887618293 714058081 464893221 283208704 219394373 20879105 4309300 592302566 651092423 549624329 983994216 258793495 586309985 918059333 127563592 255064840 466773841 288315106 435008653 695346577 992191538 806597619 868803714 809326247 736127303 817789170 843724968 471981323 157837584 575337219 655331798 673328427 501514106 585872415 597777511 627705836 770174239 697736454 185711192 634620373 197384868 853965702 79396578 708354243 910570369 863384363 611549262 266230722 242323839 989274449 650790646 225239191 438652986 359514395 595503477 552684659 276452304 959122950 841058318 141700162 7858006 897727756 591224867 554361789 429416934 11921422 141972280 977555021 106227333 252575346 425748794 279655210 302875946 403953020 665333265 773867250 109641576 59084153 290845032 689826412 594984245 944478586 14481938 820303801 700821389 45475460 83849152 952510057 771063610 207982308 827738900 36907068 276680000 197110622 520282933 968875308 170100051 592270513 22840323 599731680 561570522 795547447 556425417 16804384 78894503 181533529 11990582 955648458 349185216 713203423 15605256 654524488 320752343 673794193 982514458 479974091 843080450 908470831 941947064 15860483 301254676 362691898 12503031 645189218 173568558 246298810 302549165 242064888 221691150 131214309 994851671 994698721 265260487 251880820 8889687 634641786 51671398 700045068 66450624 510635246 371029402 760503543 964622367 884213493 652618199 423720012 41032063 157242941 386014645 103243079 771388130 170720363 31022616 917439686 850168020 94305346 431796171 409681729 773409597 144398200 385257609 101617952 940680239 943183698 567074594 927215452 583508739 758194796 854498766 704966999 915359699 190938890 989646982 428332452 783697679 515907765 427275767 754659523 652615273 988842731 586676267 209056017 449454581 992066917 765913318 540841009 22163752 901645271 515640302 912375179 336176087 562371581 101112419 894004022 125509141 520016933 531909128 745918630 140665156 986718854 387438277 280678645 344520640 84769911 484738816 707743640 934513029 190648551 155368040 101929039 917210926 429050253 656951871 310133357 988783147 502795561 476617304 371770744 443329532 613266159 205509838 2138607 146236260 438179373 84201336 793381409 658533507 193479057 459885239 598398621 923989404 41277448 8107647 845835811 317051352 29779066 714043850 878306431 993286261 661665524 90878867 438767499 719684380 969156337 835642026 722407555 65132594 579059623 247268380 831474870 710559782 966527060 192156239 829175034 802284562 227520806 31778588 677711043 723587132 383105137 445585478 500632183 723549094 754399641 900674371 895130000 465913863 900423001 161730494 396305653 329262747 241043980 610738095 596364519 250152618 555494151 183186187 828356552 290989337 738831991 140557160 219666225 388046885 668377369 725916893 727257001 306045336 312805726 982513926 766629922 244877838 356884453 20801034 605234289 736320153 153562033 94670298 417843806 175281066 593427081 456456366 361450476 198521752 105598775 654401197 941446186 790272667 864561679 210774111 468588493 641251487 102330699 17473906 615367160 779733614 101759597 577386217 915121230 24586347 890754034 930374335 203853190 376166128 958411267 105588135 531961663 485650930 804567640 306185119 942318799 670582908 681123956 213907724 859327863 212076580 74050643 113646605 87331092 339250 939219899 653359940 794114638 465600 992661161 711405263 547977789 1574022 197700211 813892536 170378952 495475640 94030834 919787801 666233542 314082792 577089893 928938866 995768706 886807259 445459926 868537049 818927384 385556327 533815018 740339014 771594280 106812267 359018571 755500083 3083705 161060573 461182388 464152544 821296912 590070294 483067804 657840444 756272547 386010389 135571522 35556852 834665141 494447018 42574065 376775667 773525706 480774352 26776458 281239240 782222310 131496535 626577996 985693690 22893390 129689198 652964531 452329908 148928446 189000681 734544736 157301461 189287828 45231272 401060669 19224984 974878928 933592669 500207381 876424215 66239287 779475860 935837443 465634297 383415027 67480443 491936510 39503760 926001162 218973561 977646259 344080676 13135579 447784367 948365245 958718763 179870763 132419023 198674170 966286862 611312123 463490204 263367897 870152733 62757347 74892400 302311228 795819565 908798543 206600704 548405251 309811630 85215594 747311938 134297648 363053392 575522887 315081888 4668799 580861241 165858548 582458704 703158199 927433306 370504052 133123391 210290922 453629451 154057591 459648765 843387414 927134056 211765227 737465283 277506462 964736481 264873457 325268491 303969339 824531605 94459094 714316633 8365135 778864592 734203857 381567923 762162053 732147943 275076951 222317314 29265553 771518204 373740740 765056399 742277090 56625781 5493665 886230704 438486736 370963168 593614478 967025012 34089330 750771534 674191065 222088421 30975401 309928803 655593276 361603027 478143612 879658642 926764050 477798344 924862948 82277225 125978099 888045356 646191639 785207761 595851937 545204606 172280985 446214302 768114335 457173768 456042071 922475332 465788045 894170006 241273804 151078790 434148675 171168440 198004515 508020998 706479342 279132387 936144806 191522494 410441425 350505507 880466883 897064219 296794787 264702951 42213901 725255617 839164664 75466295 281619354 327860262 263349410 546316752 24032801 818295634 990883350 703524215 782942771 869632570 981280484 325077503 208502737 481085838 98892649 132864307 884596533 680716843 648414202 700042275 492391237 257863027 589482035 593883670 973504639 46839907 823904643 422139307 140261767 846578749 428493249 18828245 152614940 520513821 248690416 869246205 133826429 820883548 60900667 877102781 442502538 810862929 140618606 924687787 133886013 39024694 794333157 358725173 670500448 19088393 533209735 682355270 922451392 510639635 912832034 666320391 384496716 407048329 444394197 932299909 676429455 466116289 629816945 735643449 649652698 827242145 798828025 977263352 177420770 458778546 802044763 787249710 993311265 299017616 196358773 438411857 435743079 722707736 728123762 435621384 226922040 432188255 617819946 250151820 221544983 231992665 284938768 721665681 548769538 525852441 186315411 455820227 705383555 738958873 557040808 282651567 472157548 4801001 17321355 134611927 950497767 535344385 139958793 234359400 457577423 396527497 145591609 836490433 412370058 600983742 33364081 754858890 912263326 223675377 547964755 853454184 744383677 39392306 971598350 478827099 48938647 998312331 332301797 789908912 237481309 800876225 935285759 828178465 65187656 535021328 733525956 553704104 843228346 346994706 882547402 828906374 768466918 235417282 809271983 806276557 950373811 543692662 51339430 796072265 143844654 799505660 604944216 561752865 723197974 617386100 678963238 189404735 683618637 924872657 411969861 230133724 428031340 229824632 743355454 16720727 138671619 963965746 897431166 51405265 553788692 548014763 722380157 777584733 874377212 531334834 383113782 880283875 206828400 688243978 492574910 126267108 110218131 159386901 6180078 473824437 637562466 215332154 45408428 530191034 29947577 74803689 811752965 321439953 365661921 507133356 432963379 668896069 658154324 179790564 339335768 157411585 290317554 265454002 202216093 557192561 609838084 659706035 863808101 574475911 565114440 17940071 861669594 653965356 187596999 498417068 321399920 797649512 204463128 753096507 562559776 992736572 498031501 149915705 949390276 806062028 341025400 369279388 499647850 527279265 302684426 450148043 284946349 153366124 410141377 42140086 440555019 404304273 136396521 455601708 727073062 167031874 386697866 335137490 794890294 140267885 743479011 587355099 646791203 502386852 654951019 70292329 233409780 771790987 663929716 309418083 265316081 434381691 280162073 424736531 430645854 835267232 417952733 255607081 396763971 471669305 135292887 947404453 273495581 398569180 513504322 289057911 990014727 110419227 708854190 915821475 516947160 2633899 229908688 901461332 922735214 51366163 141636721 769432232 910170837 463004754 727446526 658625277 223962923 898691474 627797739 175469394 669185477 207726682 488925390 711391431 468778417 338810950 13658136 973698021 443746354 787371006 465060269 516680495 237363870 207730007 379886670 931574128 523001719 966169556 722426840 199045506 947945231 463070855 156104594 244340651 902046798 158044266 978929709 533868883 375210257 576970858 43767607 964299177 148255998 644836236 212070861 994442563 828369586 39837324 815753738 465258306 959915098 791359809 510932235 956433690 273237561 682067990 721527760 522300543 457760963 589574470 552210913 894329473 620707376 649564519 781005493 665899579 845493868 888627364 982433993 397220560 757616778 223179686 448092794 378767874 432131597 692739245 628527643 788574922 46000677 811278554 92288135 585066435 565223766 335834676 121173341 354737833 865562238 441179720 318669962 672956426 914820384 601401362 166082520 818447919 889891795 977737231 399261578 530812277 834429997 744289779 48859645 265822811 33545493 823161439 449857172 721649721 937042157 886984149 242138171 877651007 354170189 427675299 891149709 128365981 200128658 136144619 919530579 550289994 909047652 851468228 124286738 909794979 23856709 593238221 951347903 541858459 908782051 10739052 718951816 211693540 182070583 928833131 493393392 474651431 886575972 362620477 878974224 305152640 492388710 268707714 855611444 329070695 983418991 217629729 292314948 158216235 102342403 288785527 335876571 272643716 493664579 221735971 308823706 557416666 207968343 818508168 217150264 394282058 282724850 266346964 99172481 286432757 850135169 473448712 392643099 18099405 976455909 418732512 503715921 93112203 500536955 289306621 617658617 61578568 433666683 912372652 108114869 333363802 241133755 757123880 453514140 33270316 415509789 730241388 476746048 904455561 705635723 346570170 632132874 827716024 545400648 324153153 865584050 26993913 903623114 209323214 733093972 968444920 663409553 527243754 766732598 474558863 90244324 170642824 646978866 706192727 575707890 975043050 800709177 143775228 263347814 288129970 469904262 487284835 182375552 566651787 591527575 939561177 336883381 940251846 94084965 402910167 176653626 96413130 810572856 546365164 668841140 24244670 390501533 456847386 486731289 562671230 734165686 660704333 608808265 26906665 14441772 56392100 267838692 540393198 907373315 4587802 491910575 656033772 340383675 723878668 257502597 472232560 968424305 823764727 514127028 839597845 573198579 231429809 490865195 169267604 317498897 780511265 27833143 242277821 462625172 773072442 236396561 689484469 671396735 678722907 823131248 774483306 364654180 12232775 250848740 948689499 524802273 949097942 284044742 185497195 526458655 975468650 175546667 988311795 120860791 328938360 195917080 211653108 802874417 567963034 358184528 382401700 231409194 526788229 374627451 407219367 295668011 12581900 910655888 255786498 11902270 200124934 353858038 146494014 349805661 461960039 216321142 28250231 756941936 58447482 821326970 134241522 43082657 902321842 227642501 457859782 463191752 873614324 595745537 858645573 9203301 397443202 345946799 872308796 875637387 238144846 968921193 288822102 270854866 252253353 543774723 79354151 768935876 156444808 816151807 63612936 6951212 112057521 95945502 76484277 822422890 837636361 981951070 855572209 855736863 474613792 574384141 468638900 452570771 358062567 439875788 536093973 175442794 946537293 304185730 939833694 612294727 927141371 55850790 397670100 81290365 185690045 334757908 112348658 653435750 297572571 687043121 819098023 558720332 654102080 421935684 81731260 801664117 817163937 212746900 220258740 520440006 571161285 314877201 262574951 931081629 886947441 267886838 802121105 290095045 269139565 945277650 831685941 976706348 95943773 231323276 148327818 447292001 286869662 384508420 308162962 311808226 478767515 857743966 530064551 166701236 579504907 756863599 262363082 902427976 565463964 870375242 108235234 439123008 246600188 939749771 427345193 84232059 815630048 850607585 945461190 797894232 804839758 959891690 147800606 366902279 444281812 638659849 802388568 611309064 106233185 894646545 844383451 362678199 669115386 262900136 309178018 155126512 395323980 184851347 76443313 843082578 947639331 534598388 57850046 879102968 906068984 898313621 68775730 525462485 118673739 57983977 724106364 860415138 121924525 860448654 363902331 939787410 245680626 455693212 41776597 90511521 725251627 138525053 144267594 84581051 954134253 952690538 709591808 498857032 520951923 261007812 363444146 19616137 815432011 361371740 392546674 376331713 468151588 161806038 413905809 101198603 794347654 341499013 413287093 619940498 721532681 430603028 329686219 61788176 354552697 679877081 447588990 276626534 328915883 494370410 466181725 690044266 710373316 336852791 500164954 621164630 803361463 857389521 909811737 791376434 740258815 964953537 101205918 260004460 377811870 506464100 18967230 996249767 776330942 761835937 75210935 484817286 720363345 136366197 339182153 128907291 507806203 922422265 307115720 117279899 227630398 8393597 890883177 103516527 136937964 778200390 390731490 154586133 74036678 947682290 1461903 62604264 412187715 134897478 771949922 721738432 584822380 677045245 645391378 679949965 987718748 167418239 59542205 153451776 409529976 109034963 341513909 739957304 251683315 471033831 605432725 88178834 504352060 435089650 162862457 513722309 452342144 610123635 716966658 582433700 802240539 791375769 477732908 554530832 487820426 172803143 908273725 62025980 667714630 419327953 549600389 985953173 479503537 708820674 404038140 937356835 663401972 709379540 413814039 580287878 856103012 511719329 329037445 41397680 475483346 489734695 88457203 570162056 552992421 161946752 609977468 42661047 176129207 19776535 994646186 857774024 973444390 883067299 584258859 657051887 80182475 902820858 526834513 67388407 595021086 63578622 675611505 78717746 255190392 5284855 483863543 844659559 859077557 684423021 369793965 992565268 808094800 511545099 136334543 121733803 599241043 394951713 65923944 833417468 321020205 443510146 921608704 682582966 800319088 171411431 236246271 468034149 637899222 381853208 507725871 131161508 892590897 741186224 219328405 350888946 646754362 908747870 108883742 932092961 720551939 833556852 383753778 611733600 739315845 345515347 625959812 778965140 703169371 754558576 694859664 369928428 257538108 649318070 760873416 333446528 76428683 813536362 386855870 222567753 973325488 329911255 142549101 543828721 563367751 916699674 38082788 822395093 158676282 491264594 830958564 484812631 871752856 245723585 53150225 574294632 725892953 566672535 121104979 998796052 712975195 561974709 138762059 824008649 376633756 763911668 843832831 798658716 996344596 931359067 542811404 882124063 335740379 85982605 149370405 720810225 803377024 271089079 441772767 696028734 105487188 671904263 91788454 225269116 678673298 428669474 818439407 436395045 797629961 573154556 898977956 822857800 632395815 696611939 760440501 478820582 565725309 794443946 580223905 127368481 136936900 876768552 982414575 531048884 420146169 765552622 112125883 422755363 478776958 225375915 661357629 165477503 820020910 582955725 633970269 175635910 127357974 957754646 232764331 527289772 449742526 682796032 411072244 879155902 310696745 701930077 274288793 126462485 718631153 581085080 758484071 817488457 631963432 936972731 54537415 634811095 483930708 603239422 279567696 637224646 589140358 84710992 481616907 955679314 285446429 722397447 300468779 197186831 757976942 551708439 590565586 242755557 410636536 357603584 356287549 551865645 539910009 589942880 637055869 898914249 252878453 458914206 172721614 213050273 179676716 301914755 921115540 307263084 447319931 142401471 985330467 501334423 353578472 493405229 735914902 259651212 666697845 802803794 703313011 236939733 748689153 802541917 241627983 999106873 614789009 765528017 717712389 404238039 714751011 664225508 504094705 37762125 786045129 322155626 934858696 986785886 286267571 125721276 512015653 725496613 727875983 161217646 347979305 629592042 481688461 461270567 142128289 385491024 930933999 945401207 20761799 831463565 346932595 338104986 412511304 774217439 446859618 151605071 368580473 158366924 872813398 626623216 343772249 241877225 114982191 296675752 130062928 464583198 163897995 483693436 803812466 659364757 899434146 824736558 306029376 636624949 669895830 903820752 287168646 707306070 493792259 180779552 641200016 525028240 481352237 362634974 613346358 490297019 397740058 981560582 452078671 327880611 990565214 259506508 643332671 953634971 689730519 2637224 774436357 349880939 541969514 910861772 996793072 659075881 196791555 962408183 601202660 928482410 397749900 471730219 322160015 656486903 861975893 863560056 187643416 582119022 304162721 500336923 531299057 657035129 389670416 753807791 823835749 650218347 303677271 751865592 679604830 158732009 222386873 267450332 377785004 469165181 620930683 923966395 995265966 545944618 269807890 18414083 522951578 202291238 754793321 514277717 645401087 139643716 45404704 700646627 904092870 395690927 221123639 749391260 669422882 238050549 173545283 286594884 791569816 463620677 629175087 229386397 911110748 682616615 693365010 751832342 231062330 807349601 734232452 634229353 472060192 367340514 849991662 835321097 995007414 701043100 492222859 214640953 766454894 875170025 253449688 695097202 495821174 291718842 303146202 358105925 124006241 346134595 562488488 869414450 537162495 367705998 245485 408946638 281271559 399874176 91148458 262083516 773121519 329554416 906328999 983773170 640827749 851509192 339853404 516206882 528769929 624479522 367668758 752357027 923149642 303907228 233327985 983349831 787552285 590004991 669935996 8774376 58129479 956083102 915604685 396258837 274293448 702800562 990092399 460198720 396122113 86277333 943443447 982069972 676332897 633069593 859751202 961854903 474918096 637027008 626112363 670523989 661257480 788070852 785993525 700443935 560745789 428597521 414866601 284619834 941338855 353059240 157481011 281340985 350418525 707524190 12301137 866059126 296766724 969907787 313869859 117071355 461722900 921748487 420771003 952118505 450282905 63000338 603613152 697097123 74358405 656569363 518235797 277576686 705308676 213735755 459485441 63747266 801867873 272047610 829127021 347636697 774681343 200211650 801032367 562034160 564994740 194917718 331657013 263531620 627614598 57583780 248707174 928409526 188316928 298555574 416639491 767032513 230343997 490043787 671652494 89207057 294289200 302502748 511618116 844461389 286290181 91673941 890283746 896768693 808493401 425641463 205870401 209279989 186851268 961692377 136762670 747782226 825239564 995844250 77426183 407173748 757123614 888383442 512523314 142235753 421833274 667650258 564664767 338310737 940075089 578474556 181729172 531486055 544699339 287880462 849102823 663507441 930512921 28463563 158628269 906969527 886981090 197391385 152458399 227881635 103979633 700251351 688907515 175540815 677893253 724255590 334179225 315421969 872066204 598315496 35045600 612447544 143679867 214191812 29615742 52932371 191305970 969412362 139251765 457941045 172992535 568157613 283805342 745950151 71503826 414693701 700953458 209993401 573123434 213575091 442038368 547538889 899025570 164613003 146500797 522242156 983480969 345311990 800338905 994682495 832617074 257964639 797481267 256027494 687985958 352239561 656915429 367942738 210153533 123323419 557808617 894016391 678912565 832204242 127262746 318162434 51387044 276202663 53668260 600209815 539390910 30550732 396375345 712155117 55040554 438010995 309522355 583261093 881697399 328590831 533769931 645159027 222610313 939592698 164634017 179244599 335667096 216736900 926375557 277337153 778957825 404460681 699650723 20025644 393563193 224821704 213705431 331568967 400161323 549356733 197890401 972066244 399530238 709917126 23594699 149185934 332802143 487479813 710570289 601429558 108697010 352424298 923406199 102087309 67336404 936199070 714062869 734001830 845104045 505151789 560882380 111287850 603278391 428508677 411030482 766024240 361760233 63218591 196722927 914499987 270655100 154585468 708298516 348589642 174375070 307541320 74995608 335384737 411884342 79885087 801565963 857299081 460955091 250675308 866801798 685150930 463880160 702153251 190730213 710328761 258358452 613771160 163790930 841775454 644212067 78606026 814243390 47502779 111432288 309370336 791870263 751823564 643640566 179599576 437423002 175307666 799497015 236181766 632899353 484659814 185553986 481287466 411345825 792704572 983593753 512521319 115874621 248164135 6260277 995744101 169772206 824918103 105593189 679791163 541211946 601416524 188250428 244241167 31236879 941518671 827211821 952263874 574867995 801361276 421754937 718553614 585092237 933682178 694965000 117787560 32439332 46264549 599272298 294930526 997167334 14832659 588265351 957339154 525353691 619423926 893323328 455460063 784175282 412999680 503373845 383346399 125621925 378912977 4864974 660779345 985927371 920682492 384736116 655716434 788565878 263703456 31409513 210087033 295675459 576175784 906273937 906664292 949724505 378046482 273931156 133694227 742019868 953210036 509351131 906049699 143641962 303149394 929918411 746437596 414415864 812614140 592434768 412065355 323449317 575694457 962395681 937487441 49192145 427800851 570530599 197142409 428513598 128764848 851249975 723286818 209029816 676570834 667459137 500766513 234476839 233440104 475018910 882899320 296667772 772963515 971973410 222994683 873543435 178339135 253203106 6974487 466419928 650188156 163226345 99689718 798456290 535964431 968245686 270146109 871383 38337882 511241327 299640854 11437967 703723582 901210228 971396057 449634264 954830641 208621639 950524766 208157868 754178595 909594681 897590101 385732552 891610687 972864909 57901118 765630294 628862271 472747935 207487415 795264290 900863896 282443289 626833356 750617786 189800809 168289921 935176965 664511990 495229856 923935273 814597170 876143718 222101189 602391148 862385799 627246853 50861428 93433265 816199288 170908691 112871348 883076077 477448953 591978977 900353841 757734084 207751553 182020575 367207647 902818863 10849708 916073776 296252280 473362395 978797374 848262529 216331915 808880963 754266242 728754980 145965738 51089124 152613211 187104899 399367712 994914713 245378317 690707537 834739089 794121687 755431056 779751170 988575534 391060000 461490549 207811669 350009949 435402067 970864988 435898157 494002665 88587410 12732855 263482277 828095207 397347043 243245529 213608740 557767121 873584266 770548368 729074712 74826831 820617415 156247037 563946434 188747715 599753226 503310138 358347985 236290959 372706798 977528022 592085909 740560193 646146153 120261360 66858535 966035226 108156099 901221666 592163049 227205729 419437545 235667854 647696135 21629757 28195036 54366377 590200634 258343423 121401702 533659807 778942530 307631361 107515970 139911179 758260897 359290955 659594182 472395751 99282206 52386273 204430277 908555419 539233305 102451330 100391958 166038231 102167242 127538854 914652405 577436358 905758828 689019900 996021938 233741881 900021208 453986689 676277436 931314645 184349937 634342935 385158125 881780391 349181093 644916036 327683771 16514710 665715906 739891203 821778771 953456751 219822899 958823301 354573578 308473384 442204086 156576212 174649183 714947053 552759272 652389971 19106880 703629551 942180745 327024357 397694838 34776674 974467293 317550634 237838015 549914668 859091256 155066928 379409599 963897916 163326893 114749175 549971060 476565567 600576895 515615963 672146855 312658096 731275862 49642084 224036871 940948766 291122470 368106195 800017178 414140687 191388297 785292482 823890944 587647300 931825631 309342273 671057984 279469409 922732022 212423178 786569814 433164209 640372623 24134546 271379684 660401625 121058163 470484009 104740260 596860476 231446035 761559696 625513198 355691177 868463500 855940486 244204858 274003774 731379735 426800425 249710659 179148972 207041732 801093946 162647662 676999493 231290957 193409631 94749433 98265953 221116856 567393395 950053148 116484559 265224045 119056779 924455303 132331376 856190127 982094444 328952458 990891064 100873285 734111555 399773362 581361454 84246423 392434422 925182281 708665330 929404632 158962631 957384773 862456289 19555755 198663530 44394303 908938326 854092185 303825965 126347573 573480140 261034146 67678347 640729329 54122854 196596976 664074287 39072175 396319884 810609431 69034814 689801541 431148727 132803925 659759501 329537791 956599674 363638725 10664572 284824388 983268302 159332105 776266304 245921090 662287964 26076878 266629323 306339665 790374279 557514421 263568062 976317855 943099110 257424925 157271270 762447870 935521834 177310513 396686033 837669345 422403445 881892643 119053188 494142980 74629193 458414126 130235296 831093825 6365347 164201501 704900632 514188208 511462905 866975762 729048378 293378549 193525341 512855415 443149450 611699153 937389819 606563358 998142490 455724866 266237771 662517123 428575576 536198511 440609416 990813392 921482620 652059466 45319717 242908374 999718008 721801740 524133416 94530648 784280884 490471 715296178 245800592 587617508 472761767 35942020 601409475 29127898 172692886 896938667 236754065 613501569 28283348 292226503 297234618 816003512 114549542 55767931 589539890 405778179 252097078 487479148 607034178 422979335 959448268 444575476 200887822 551143056 84419988 475507153 948298878 773420237 134997228 912431172 300971785 772700308 291039212 90148431 603719951 787324057 88394560 69792515 814847609 461940222 643025175 171989050 165547594 818655266 212438340 13156593 183505254 46162272 182818974 755820746 290878415 983639372 833782952 534485338 411269217 680116348 338049525 443635432 341824198 930174037 850010947 549555169 273282781 560916561 935690212 899085686 206998241 606235513 142612276 242138437 116062550 806812015 780706775 806189442 449029912 826337346 807654437 488778691 151369794 520583513 518705819 40852247 383269259 533964377 119773383 569768642 193885505 856486983 867479699 723091441 594213510 560342932 532203856 391556489 645530762 10657390 869043247 987968256 193781632 646492618 654389626 94457099 722419392 829087786 875843138 436199668 232079115 407820926 540720378 163638379 497733448 800303793 697671151 516032120 271591420 456157 931220614 53184406 107825860 975860202 395083117 380504987 479539181 161436697 533495552 959109783 70013561 208746526 151497607 290942388 51792827 152337635 385042548 848300833 359221130 244665171 321046539 556073632 565435768 183198955 402722371 476775042 303983836 330028029 728731705 913828470 794037764 544749746 964007641 135684040 705428908 467749662 369171392 405486909 292479336 250623039 546933340 894514077 517332594 159796674 590671321 436027300 822028811 311317589 762380572 65661402 921424100 992205636 646059038 756425364 122045156 737826644 611941080 584811075 551602571 279807761 882854366 272491431 928225587 994338557 37367248 422737275 797369414 412366999 279050459 716141792 418746344 630658702 608281851 862450570 285934007 831381371 617346732 144787890 210234796 385144160 669394154 623507159 279439750 629479524 483728548 357644149 625470505 557420789 370894673 907454445 796908436 591611498 762327904 796430567 49845308 342712106 462944239 825611565 198194971 156585389 25283001 569369243 133284720 222569881 199939399 620152101 236035998 556186549 656219839 582943888 316406967 284728362 601582907 573792956 808238440 914058826 467276315 116690443 207057559 138905034 678932515 464986454 251949847 72024255 58649110 345568680 309240129 139877530 349591930 961726558 555439887 543142308 933912933 653933170 119602079 455786046 73416233 218458585 116602264 854467112 299537247 646861959 534657307 556287629 578595320 191163926 959334021 316019538 660372232 107332829 768713633 176639395 558169978 348543358 315505626 385020204 86358463 221999178 125607162 271839731 873350984 282507395 875083974 133790253 140364842 968197274 72671167 151383094 366272790 479355774 447314345 686033252 454211459 346370138 35551532 526858320 316409228 694134415 246579041 66316959 522602054 891775075 419643562 631115690 712800699 784292987 46300060 768106754 332713299 610217533 756794838 271093335 376006794 463199067 811181331 712562230 926831614 245765081 546207958 57190765 793094661 868573225 872180584 626581720 249550660 469107592 118356667 793596071 403687951 511005252 846080265 756990215 575849269 602659010 99793458 924397315 156403445 490006148 665790519 811462360 809969435 352729001 914118277 201951423 973746832 305766036 721149508 485857080 862861806 82958451 390466953 388247848 569385336 361969575 795788443 390266389 785185683 949525936 761435873 137047290 420716606 66358854 421491198 340407482 714094789 524939795 967740153 814287546 768650059 697264171 314797800 615668272 784043878 801674890 638478304 767964976 766144339 791892075 965749941 773144661 751113078 706899090 281335798 915422608 795456076 684839045 692567941 764266246 40609256 385931387 448498311 207576791 985604979 672077163 656559122 881358914 377204725 122540182 671418680 154644919 346052800 802276848 210577404 420287681 155871445 121258860 111847514 29484072 2181300 2457142 157046234 249963891 742175345 189257637 26382246 106831153 166625160 54094392 517563482 319022412 169487187 502845702 431690170 654800596 973187567 288510616 290355725 262606339 271647147 307065845 701655964 590193186 353296645 77722374 319422875 884615951 112296256 714961417 685515616 988735267 266178985 459748249 236811654 860009887 445973572 443955430 215311007 397021193 756451964 983519406 691022215 703891295 995475175 668668107 115455006 814994574 12432541 518240718 737637784 367789522 421736716 529701594 389144534 256207310 34586750 355166093 260775461 287945499 251321555 470397559 843042013 142072828 625884800 300964204 337553568 434947872 269793925 672301002 464692125 819437306 388125887 885052457 967401402 669904209 935734368 222126858 26889109 473811004 449051192 776999533 681626297 973926914 784910373 955750203 31543976 43335889 61599715 321456046 51651847 74157176 527348824 728115915 120596121 351147365 313960166 178532517 971979262 869364708 393236545 417647631 452405319 700475323 974291467 496881450 396738701 590627830 67405830 572755556 584962562 650163950 103706983 711744014 739064475 347031148 408551229 881902219 688011893 849902153 390109050 713408775 734816987 88907541 928442244 372525652 512964874 664263014 767558262 460771684 948544263 144170637 63364758 283984360 774872198 186955274 449280883 972142852 863792939 480691493 242453115 911333922 567569886 907578667 209637094 827117923 627719801 98145189 889176388 426881422 633398369 969727705 244259521 934076523 729927774 242072735 63107137 540996353 112521292 106130243 483673486 559405149 961340193 701198311 802950626 914723959 266860078 172845570 354563470 479728440 176286679 457200900 694556690 740616053 535379896 678435228 184193130 981084974 977543583 530903515 514123038 829298192 791628868 112731964 930236015 296542752 812167792 459292591 324199171 892541421 420987394 170803222 195640706 385136712 864912400 899051771 117464370 219435204 929501456 54831079 394818447 897018600 76145393 924628469 897123404 407793927 839296201 542205589 429223020 770018363 237644234 463365317 163832559 266893195 794637594 574383343 168649420 181911382 637909729 984809639 630164740 801704416 967090448 58419020 898535864 673139567 635521049 895621568 360326493 203999357 262658741 452285087 828161574 657000416 388429260 524360713 939727161 683815211 577293383 499411642 834067173 359001680 234273482 23759885 499603694 337530692 767801652 933347816 862290305 404662043 602861037 962567517 464329301 72654808 527119399 87473402 350697027 518950273 932261206 117629689 432447472 764778961 546621322 167785452 771783007 861585538 11416687 976616706 991943360 61823687 526985601 984858450 260987862 235013494 962618057 876546708 996809298 349649918 216830000 90491039 65835233 170329609 351722856 304604680 410957199 514260826 149891499 41985939 657428410 690897727 334813768 69647013 293091535 16236474 613990344 671202954 216507475 396603972 621868732 301212648 428941858 74089213 845512488 189770618 573052811 488031630 241210496 461292379 148957839 589985839 377453036 463889470 514707174 759361472 262089102 316883506 425182746 767721054 867067266 571016980 354694741 10625071 747529659 904735659 319822407 781110164 771675410 691878735 340901577 231531288 866867101 751347956 100960400 199288364 416564080 482265282 246945855 312322271 338944482 196543377 421660507 533636399 797108202 823676548 947305102 399491801 501422070 22264699 557212112 923519 705966228 934743119 906799021 63534333 295986014 804449935 776211774 311886430 510624340 741598258 574682061 192613360 280089987 687662236 805707051 410907457 723639667 31075683 319405319 460689623 756772095 412858168 146786747 248166795 539912403 582189246 735600756 413695536 531423412 172739702 340215297 413518513 733628366 814697718 928716490 820825028 157211686 263173850 819378919 141774775 251797562 453818311 45612317 550927862 397166429 422076531 392766922 411994998 393238274 404235113 216216870 734442592 277108792 917204542 198882448 51783916 706106942 364488994 512398427 109612050 346904000 205106050 552075386 80926876 996914634 193412424 893546103 925590458 282117306 562067942 553815824 669294803 195722634 365427043 576697144 68949029 260853532 91685246 487913260 373061243 728231226 513752500 76663295 22498646 734180981 264670765 782852597 862356938 651742261 143674281 690237914 109249093 910476737 647480409 47060953 561876688 124340204 173773910 843541162 677966935 395744659 91603185 888276776 697162825 998838346 640339905 387206591 66889391 107228823 689897833 445233427 994729178 411937010 13826913 609446532 872114084 452762424 61711302 823138962 972500090 506135723 875771185 449917155 207274216 39455481 511582738 478587832 611888146 385529993 960408129 703965775 189452216 172288832 973713183 528565907 879857344 716458864 528642382 598057875 96913210 23337876 598672734 328478579 948010800 220350643 521710821 411983959 112555739 281333936 228161999 51789635 848950804 313916409 856166187 128010206 910293330 469913173 760988062 313081302 784926732 533922083 428802341 656559122 845755745 501098747 996446075 109697702 905901936 719895052 987861191 657099634 172969260 12138079 180173471 228278773 907159717 284386286 63870291 349294409 275104748 111231192 164653967 619639253 294004713 472234156 714817910 772654423 91526843 6050403 343138105 409559502 755735626 970160487 489770339 602441023 949361947 877156646 516137323 199474298 228238740 306490221 508951333 882872986 699249196 363467953 419458559 323929846 507173256 378211668 906919918 516337621 870728490 829456063 408263816 666849332 496041023 4060723 589655733 988061755 579340253 219676067 208668455 366836976 669810710 493928052 952966380 146094881 718451736 136425515 983902712 488108504 183512968 802246790 830232118 561677321 257213987 372778884 194736306 882863543 111556244 137344146 562908768 363106858 720274767 310283248 100081802 232149738 483813801 169284894 561607363 349860058 818794118 82185322 984279634 554141940 235103136 75404583 295625983 689740627 407539764 908477880 922063165 774846928 694960212 158837345 193396464 459765007 961848918 693854982 375650753 460663954 325748887 982829535 313050446 165639630 213742139 220882909 790077822 924454771 210929987 669438044 793213696 704368898 32186632 583886193 426142474 266455359 670628128 64562024 576542332 540492150 810437462 190445859 966653410 666002388 375032436 147740091 480964675 473147600 639882917 280757514 517844245 365975402 584730743 193372524 174287423 124381035 828480508 19540061 210720246 936332602 985963148 940607355 84264910 59354675 444520015 900992773 544544793 582087102 800282513 666473208 628586695 660401093 154419883 692346496 276221150 543437967 17988616 592902662 233692937 335818849 974670916 538928070 850266440 425787098 917578139 590258090 967961731 301780691 236647532 693731425 497463458 591107827 948509816 959643911 827307581 806689389 843741593 678708011 287787495 7701199 38511713 870391867 320458014 400411363 473607913 962331575 983763195 415423206 882532506 179543317 842700336 634505062 196413170 45209194 803043327 94949465 139336885 681609805 881196787 777000198 377043928 145918390 673915888 651015150 998214975 531077080 1703697 88620394 25262652 801029707 432051930 334310629 946345374 858622564 617584137 447957666 970892918 177718557 444035230 283852557 141515824 841571166 257364277 834925023 579238109 849285166 943227056 563956941 870790734 949948876 98203177 593243541 652341958 567381558 982204701 264122273 496080923 233589995 792707099 996669914 155168274 949494681 322003208 777959527 790160681 892148938 290375143 979473679 295099702 437159662 812573043 232177535 198137515 857003289 785549970 156987182 429309869 433188548 553692932 772904197 603920515 448245079 329414899 826752971 545051656 887428502 619731289 332252454 567576935 801735538 586284848 659521165 778553904 582450591 151460766 92974548 338351568 697727011 784645437 975996394 829049083 343766663 863249235 848708478 128847175 235315271 346736287 302500221 341544233 127485521 629020009 99603933 833504982 72814009 950387377 34306785 322473895 990541141 455334644 785904415 908163202 787834112 979890235 580091836 18544822 270347205 100048951 738994783 421266827 266974458 603026888 913864513 171345862 468222477 622573233 631920207 498636784 929364466 325827889 110887254 902190039 739010344 402167362 111795378 386256173 640434734 506590583 285439513 777963118 645354138 115375206 928630306 197716171 91074643 17971060 767500274 736934613 52309532 973301016 833280877 605197581 213910783 532761791 400211730 125899895 796422454 657483472 829044827 649159268 688593901 941057294 739350558 819004657 749319706 290447761 313939418 256242289 971039883 895292792 796381623 102401721 661899205 728387767 717161104 265380453 968699482 245998097 977271199 882664575 25039478 539694017 360773107 545846730 990095857 254689248 467409714 13227216 373270452 170537089 802287621 337647200 602886174 865496270 613887801 216492712 507783061 88656038 660445 673326299 591978312 679418231 962384376 899864002 673237987 882576130 11030455 116992885 851328578 555220038 921584099 872699151 666056386 890085975 398287353 175862941 460519117 491371260 651863025 885533518 281792919 146293450 791229602 967747468 496161787 463645548 701215069 888279569 195296768 840373767 592715664 742920544 971247762 939018670 341223703 147700457 602608470 879127041 588291685 227045730 608380404 821705887 654844353 429303884 651166770 46574040 765783377 606881627 45760745 751607439 69853562 685519207 876365562 231066586 359801675 76986219 455192733 970971920 816381764 832623059 853040687 656319456 86700273 817340561 488287123 279194232 803361197 208702237 306712065 494205889 243494771 565792208 235703099 288368040 552303614 365655138 830940077 660527576 205654143 783894386 113119659 736151509 525822915 848643175 800780332 128032816 236122980 998629802 968441994 190313524 918210421 292392487 194635891 681843752 705258003 280557216 24275526 849298067 807447090 247456575 980432742 988856962 441701346 317065583 596107430 255430723 37949788 122932133 252139505 626477714 459201752 870006433 669418892 379695948 497384988 853707549 149657153 672965603 44177912 27575256 77804036 714142270 249741781 378974423 959760951 929070270 14541256 868636001 140885803 807380856 430130878 620477419 83661622 992928092 528961848 534430542 180010280 834277313 833284468 189416040 834022618 707849375 349704847 345204925 752715595 652246331 839577230 86412328 409533301 119404973 495590552 363536315 103225390 22154043 628326946 552823644 799251364 772360892 635562013 754559108 375001580 241258908 779167965 490026364 654389892 198682948 110183285 789762878 118331530 508040948 773053423 481628478 675212771 597197631 24122044 14732377 796662253 889686443 145042186 962061319 218242859 577179136 490747091 930450012 769353097 87212057 125505816 742608925 201493770 584737659 476921209 281831622 255153152 394102641 747870405 44995862 643000969 63863508 959003915 497110476 61550239 539673535 152717084 276773765 124071145 642128489 853448199 893291940 938304460 565177216 788502969 687903631 215643507 146374580 307709964 785214145 509481072 302247654 548854924 913420692 516995838 550146354 96656653 562755419 801394127 554272546 387401436 594277882 457476077 521465170 723814961 820544398 183101599 444317589 592947084 347658110 109836421 14615071 324587531 840001633 437225896 436789656 623793242 176510917 784003047 97914833 736532554 897163171 122753647 677768632 415618051 230985589 921401623 56270006 154801593 175290110 654382843 206137066 146399451 908534405 965482345 86321888 173816337 411481751 936408811 943175053 961696101 201542049 669527819 163649418 322713694 304592577 633167880 365986707 507578108 147056072 890742729 631911296 520660786 865142091 962831655 100629895 950913259 217556712 21407248 354827475 360746241 414898521 172761913 871399608 808208249 480762 952550489 470799086 186498951 492479150 985018715 597992040 600862047 246343897 235359161 612407245 353842743 917341532 390802645 390310146 785917848 412825583 878811964 567279281 212238973 913006530 374507884 76747085 26650108 85341944 948841385 818682398 822554427 804197501 823385145 394957698 273586287 929118549 841156339 303122794 697229591 884151515 571518922 759145347 202555642 258593596 746569665 76048436 88757517 587962244 638931302 156733684 134984726 231429942 933459802 702964285 434211185 107628887 396866780 926513345 323789398 94944677 63478872 822318618 834902945 686416558 953259911 699803407 576662298 885997289 477200376 576718291 913803067 794599024 54008075 273927432 630076694 306935505 408330316 381475887 637495035 280988136 834071562 557551262 153101986 334743810 534736309 958428956 247380898 632856128 752893549 628634575 1768069 496390680 305524774 862296290 382048053 44317562 379869912 274390006 456575534 195599343 122201697 270868964 149171703 675752352 156892087 247377041 290258502 439886960 501744994 107594041 188183529 286929113 455915322 947411768 855838076 849502887 76761715 585516906 424517746 238202435 758045703 799471080 268910007 902704084 893601564 512980834 647897098 393496427 935617727 947109193 256864197 137381253 380926198 862278867 169134072 246682249 326874732 849180894 721031271 858622697 341542637 930384443 415958664 485247275 486515430 357740840 398063381 765525490 928789640 709293090 232914488 928695343 359218736 533364547 652218933 374857275 728715612 742170557 82646034 884013594 84780817 931442458 231701661 149937650 348007767 14814438 342180372 461650947 903224380 242692914 309591 949454914 600925754 219526176 460852947 357959226 725475466 904779815 478148533 321461233 282838432 520218694 479881922 746513140 222811143 525068140 363753238 212652470 616524792 929249022 496642183 736975045 736313104 963790718 815513806 783714570 136146747 828404565 690586108 681033383 295645002 107950348 991227554 158661253 462499620 15479172 628788456 958082092 233039375 233869827 930820417 441054966 512121122 846430720 546485928 251818044 604952063 353365007 862986560 589695234 418567592 282006384 734112752 381720208 406438258 98978035 758482076 818585574 449216511 642697330 501423932 421567806 239966015 821068551 680226206 802055802 685473987 942647043 106236377 941253336 135571389 50820331 2044709 472410514 795885932 411839654 632732571 39787316 373860307 838987242 644599496 676063439 929487358 315268487 337233038 562789201 502237626 613915598 993587373 958582704 97866421 106716241 396684038 172010064 980158496 751374290 798710320 490035940 598104558 104451650 874934881 95363760 559351683 807306775 355161970 842953435 533357365 271466134 595489645 335614827 495725680 139971162 198057582 606413334 425884055 842883477 685104513 30628404 416940470 540905248 466110836 420482526 877889343 539269614 513298970 600247454 726465518 411500238 606561363 98653914 826780635 376205762 981027651 825616353 349648854 738349733 67160844 154903870 873165316 635232572 314994906 874420570 377264708 476472999 922794399 937950414 227880970 275767753 888625103 198074340 529644803 770177963 677319358 523369863 172788646 25130317 126539758 81826222 438392306 483722164 988958840 796024917 104462822 327179701 727962300 86840854 876922034 961117684 907941358 844154691 688488299 86698544 437819874 344290949 602646641 913075557 15678805 786251279 400144166 581481819 449222762 880904852 352328804 93369558 779157059 599150071 351127681 520349566 955463854 92068286 436364322 389758329 190276018 659054069 384949980 657314030 87099539 126428171 770459790 696034985 760889642 107731962 345437542 430903076 923253249 337114003 591469188 783277133 763359851 659140652 714088006 280558945 284263660 534431207 993723831 665233116 48430986 353343461 929354757 211757114 63792087 372176394 627201367 505803489 972122503 805001885 384462668 145306856 604604800 731738835 726252186 446569678 67976400 164044561 184399413 83388307 268848029 448559092 87698438 821585256 32966810 240212065 139983398 473807147 791174673 857149323 955363572 340215430 805418175 747638852 365946408 778225261 282466431 547872054 922696910 182384197 766287713 420906663 411329732 263290358 437817879 23580069 502992401 535540427 219245014 856982541 333439346 510152456 180478839 905087045 835441595 701518043 526881728 363068554 306161844 396405137 152730118 151248099 567634923 980163151 255713880 605445227 321586253 312586808 237572547 54942799 194371753 761551583 358451326 194849622 134243118 30970613 545069877 580581143 215935043 67878379 112300379 396915591 78191731 111309529 965247334 896529426 75370402 249641100 992350074 552685324 287557671 955599913 490579245 32249142 478938686 313647483 20630661 598343027 981013952 337451291 662544654 736901097 552299890 448784926 627968511 674022687 984074814 157741292 416131032 273421234 242745316 257879652 213152151 77876787 630965267 14381789 661202285 152830001 363340805 606981111 99254409 261481425 302565524 472016169 278546655 541529417 123337251 374505357 474717931 932867154 114634396 365777365 539885005 144469887 912422660 206503082 644260612 601209443 68855929 428353466 543610202 985512278 604990633 336897346 365539827 365323702 399628525 912271040 779546217 335431952 292031924 550099139 133747427 263261896 566409993 159677373 861775728 350911290 179633624 623646277 713146898 463171004 729170073 250306233 724902502 398689412 573310299 695667905 366311227 848880580 568514718 793911946 16865697 14025349 133655923 97956994 504857061 966622687 415010640 678111506 121176533 504276782 640939735 366363097 587870873 1907586 358982794 8061895 123177784 758831733 42113087 304708686 682685509 332033004 107203952 279168962 996783762 297759170 167475828 376198314 828218631 484119036 59384334 876546575 7259240 625600978 520370447 225020805 121548268 420818750 180216962 869843774 560692722 868109986 752852851 430573901 509139395 755381181 409755012 708550418 717877708 813942810 472733837 739048249 875702424 355523464 678558253 966093081 554384532 944127732 937353111 667755062 515650543 62813340 659819085 673177073 405669651 900671578 285073497 941302679 97419142 280244134 718076011 982280245 614282412 150176784 427436830 646584388 285841838 769855571 762269384 744100387 727714654 852454689 686378653 258490255 761326946 47476312 725746121 930962860 863221837 334976693 401678188 303602924 503365067 925084792 908559409 643410875 49414920 705484369 238286890 570468089 108116598 707837804 781628332 756710383 417649360 875224289 652287960 100772870 250017357 894432415 651151475 252544490 20349366 116327087 68900617 4053275 228518971 619571689 315512276 472005795 290695407 590459851 447697252 678646432 805036598 901086804 735534389 600088386 338858697 832590341 380446068 74074583 277140180 762799389 488277148 31837507 66595328 383778117 124122084 633571535 713487644 194685633 164756643 49562550 659473019 769531716 508911832 944628876 458217818 154636274 378491899 259700954 823863413 14998643 291104781 251085746 66462461 423871898 252170627 622529077 588587876 15539288 243079678 184869435 648458092 680279273 668216439 351717403 949655744 418234161 359959812 43887174 563526021 301920341 398207819 172641947 868876864 938123048 968446516 971624684 361957073 559247810 790592000 724166214 791521670 450108409 182406674 191469427 163072331 36304179 414064345 679872958 172781597 338821989 302082601 667885668 330655124 355985772 55735878 810149517 489912250 702925582 179266810 620238418 369232439 417707614 624646171 779865816 105551028 829102150 209199790 832265821 817903550 46211216 501148755 367146201 645953303 585134930 851193583 696389164 169030864 292411240 847771094 262089102 179715419 531476612 447671450 191433783 686784436 871463049 789822861 243706773 814491302 996942564 515085426 676481591 804218648 110839374 186263940 34507349 574291440 839472293 823456566 375061164 674358778 577758883 202849439 752460900 601419317 203474805 951262118 785591865 496059776 885779967 413174043 506607208 814451003 958604649 560844475 145976112 575395074 994200237 181299848 654907395 269769320 97517828 263023959 696905337 211395753 185118544 674182420 565069220 234741243 483427170 258323872 861625305 359721476 577428644 601782806 431028761 182149186 519294743 286395251 264361407 783254656 941585304 352281722 654880396 32906029 98699799 115628039 694198521 902849187 48946760 432839157 155428688 664847017 963014663 989092372 315576515 19834124 264937031 518528397 486396395 836507856 466869069 182197598 328652942 917480650 629436565 434985511 824738686 13290790 357895519 753731582 6724979 910623303 559780342 522216354 581753272 164121701 724787191 881748205 520510363 187490998 84175933 388622908 617046684 862701408 668648423 780045765 283048838 9086926 252703026 926713643 211802600 651142165 649574095 670286983 741111877 418542721 299654553 534658238 159550092 630791170 738862980 459864225 463016458 579363262 502806334 756170935 661002253 215238256 657453281 537327681 827867112 622302046 430612604 417510641 252762078 822046500 690444729 829651307 88540195 983885156 23585256 274528326 570150751 915986528 278655582 866495366 739691570 411869047 490351682 794435434 868929532 3499463 823884427 46280243 841525813 627499287 995124454 135608097 486384292 260016031 772170436 695164234 776686584 475992204 418903550 44517594 97616913 887873254 189517386 920177358 785136207 173754093 358573287 717655864 52384943 12207904 186952215 40179799 936173800 964283084 531667068 547639038 134602750 338397586 383347596 194354995 565050600 240535255 47731273 160470585 32100847 871401337 896252254 390373321 340247483 615373278 830144604 386488790 564469390 554082223 210661992 722736996 999248252 305662163 421358597 784980065 837198658 348507315 773569197 844297932 520547736 761165617 574061616 955090523 497396426 20098927 691175564 282896952 627496361 240779842 23528066 931085885 566411988 377096995 340943605 972429068 212752619 418138135 508689057 506945161 861413968 868132197 411121055 541888251 149536788 495040331 962851472 241763643 897109439 928193933 479412698 936977253 296207459 722243433 136963633 18207268 419357479 952173966 185496131 67484300 669896229 121687519 920759233 44264229 157743021 31468831 104391268 341953474 283655451 623261508 793261975 701689081 468828824 152707907 764107045 22818245 541065247 94879108 88304918 696906135 79707665 271377556 918653311 372280267 678301164 811308612 543567908 83210087 19390303 987517120 944041548 990757399 679592328 527663768 755510590 177899570 565326176 191707896 675865535 908078215 207496725 858402183 939828374 956586241 731318422 389302272 262447803 32912945 241878821 85161862 376281838 124882312 846314345 329488315 969270983 64267163 716876750 529956688 813710060 428373948 706906937 181115244 534455413 413276320 284660399 366027671 544039526 713281760 178440614 834594385 317400743 697703337 550196628 987666479 820794172 796451182 872853165 215418471 181773062 113740636 195489086 432360357 59235507 280225381 731645602 268252056 408022288 211995051 839847486 525912823 825267627 35975004 863781235 929349171 39493120 735731894 488612574 993539759 952022080 638253800 614454913 216489121 527244818 726558884 754627071 877594216 437511979 177422100 555615447 125014913 63744207 395724177 176696319 11506329 760900016 3111236 126499459 581484878 154957469 879980369 778470779 77406100 871309434 599731148 262896811 209906286 553813164 788894255 81196201 160385332 885209264 43189456 127548829 367060283 63394550 103092257 709875896 388789025 572246565 263708909 759048257 384280458 510430958 804625761 949113104 84432756 3858962 902849985 436451570 204317626 768221666 650658976 558697057 21349659 1315869 952808775 853896276 473122596 600248651 984729573 292395413 212947597 736802943 126647488 914545473 631066347 311055313 89035221 937162123 390595032 324744338 66579501 446909360 859535210 165973859 681253631 901647000 617082328 658307806 253456870 755265072 962526021 994541382 661464029 632414568 891122577 221345483 518550874 540201944 848029912 647161209 587782428 216638613 24514128 948691095 628700011 110483599 893942443 845916276 874259640 985778012 199516858 202376624 349006198 935290547 981651554 80324386 980193475 667889259 349332979 783461205 731366701 498912493 719687971 769424518 352125181 268947380 509338629 353162714 687289304 854905081 496824659 941751820 84243364 184755321 729451235 91050437 368232013 417618770 767231215 50361481 176322190 760806517 687538280 888193784 63839834 837004744 392803098 681512715 138267565 318264578 716613942 964215520 428855275 119010628 7269747 641856504 29733846 23170296 468106102 657907875 935517445 85200033 555532987 993565162 372035547 895488435 735288339 367029959 877071792 700909435 670611902 132225242 262614452 690960237 730356300 520532042 708176954 518478256 993646957 432241588 517013261 651917821 777360628 949774247 454120753 467770809 90976888 93022827 703309553 131752560 230801783 34645669 352602651 165466597 80410570 669032527 733095701 689029609 393553085 722303549 441132904 835583373 110202836 304117235 193386755 479501010 554125049 837131493 746236500 167414116 217249083 145536281 635139206 575050072 857971396 151964304 565380174 678478453 552337529 172244676 170494795 98095979 418018701 64744234 898927948 49896247 425943905 557309335 243542385 584688582 351934592 256979508 753466513 58647780 428808326 681746529 410979144 347293158 639497616 341060113 605767220 658316717 156059108 603815711 224536286 326804508 327131688 935774800 70983397 170381612 550228947 482776534 567245233 88667077 660536354 879629116 690385411 2472570 571288433 169379590 425495695 198094290 432844477 528437296 343750969 696227037 970791572 578348206 221442573 522318232 28617843 287944169 775819823 731890721 199804670 229389190 228110927 904054167 293639894 442939044 743466376 918672862 149102277 499896826 279178538 704439920 147439910 646576807 369319022 678713065 367420979 722688584 996244181 853807299 888875542 292730440 369651123 86638428 492855540 526285755 726166800 412022795 163587972 874460603 579791389 985500840 262907983 302988331 303370972 428560813 569777021 186459450 710771385 189752264 471168161 265680102 312161341 410824332 176534591 560602016 821199556 855038214 471654010 544271478 520774501 241142799 778486606 290949969 361500750 172096647 931524652 621243233 628329473 205916419 649461178 659035183 359520247 765392623 120518183 123090270 920054067 924095006 943377080 809934456 365385414 939250356 767029454 455196989 254710927 876326992 840523924 427094754 367621809 479363222 973100319 907335410 599377767 24749006 800560616 847128305 300484739 615525031 396015713 17976114 139372263 735290733 53747794 695707007 376589068 638050310 339843429 235771328 446630060 993805892 714643414 381213079 862365716 401991137 480417247 368706956 638274814 553950819 884687239 534398755 377282929 147920173 617161729 632120239 984551087 284668113 573380124 674873754 46424548 360859424 782844484 932517098 66786183 417176944 269118019 582750905 83075358 130915990 283450365 41888583 339199709 638637904 59146131 536315152 748497766 171647506 253443437 567230603 369822959 21068497 777475673 199516326 36537062 619859235 74603391 580130672 741220272 714394704 436321762 586242820 121059892 579947531 314334960 13572484 115563933 389356137 665266366 448681718 698328171 828715785 59665363 617839630 4265277 822989603 738766555 197847708 251748352 376966522 341658879 51998312 640547917 704579038 241957424 930993716 824985800 950313961 208233412 872062480 796991827 688311941 999046491 77186783 118994801 739456559 835917469 289121884 566183494 972769282 301285931 195333609 163736666 638768776 430684557 99547674 769696769 698922149 158046527 786839804 797682895 324617323 523456845 761692164 373955136 632202433 797089316 21762757 230690861 729700477 848187118 177192276 152759378 54597398 21209610 917107186 218871683 923703321 754057565 933049630 887705275 916470914 669979221 747885833 277453129 595836775 104204270 775229569 757666254 943243947 695717780 152567193 925514249 265295998 377968278 989392021 121460355 476927726 151074534 420172370 831484446 406486936 459741333 810535616 758246267 248683367 812191998 84178859 979044089 620894773 112222441 37231721 51034727 185417395 185878506 353059240 127559602 607521490 900271780 227859956 378654026 115976898 390915429 425145373 891249592 95446885 874840983 589189302 97271778 795609292 454328765 291758476 722496665 850247421 637383581 611580783 30449386 597226226 617144705 313047121 191956739 503195891 517169137 325026697 504804260 993970679 149184072 87747515 839072628 135936341 839828467 744593950 339147839 898733768 83750998 552924325 455555823 320673341 913836450 61252851 613509682 967732838 154992714 661846138 257678556 656814482 67113363 387003633 827868841 485977844 993635785 733445358 463986693 792557341 447403588 460056011 46697198 534447566 486784888 461044201 711259628 191923356 803070193 198272776 913299396 778265427 141943286 432947552 587750242 699022032 928018772 77218437 851733031 558046554 878433313 633723953 851674910 820272945 694429675 444816871 706328919 86223734 965505354 386798680 733307570 840456227 599754157 851353715 511402257 637787369 32319765 849362971 488754485 798370638 641348976 231758585 501879856 556754060 812923897 449496077 701469232 942957997 293030887 171861769 10694231 77316990 375778167 110867304 190997676 975650062 88680377 492400281 293307793 301487027 479691067 217992952 53839697 955915921 436286251 759356418 808171541 958754274 534036729 216691813 656139374 981488496 613501702 789123015 383964450 729530370 317038451 155861071 952820479 750003326 642233160 303413798 182835599 254636181 924987835 874774483 518947746 924914951 495997266 505631254 871943046 314098486 564248477 560381369 263924901 902036956 856706433 281309065 870105917 634875201 919795382 76527768 568204429 374413188 117653496 174625509 687477632 840485088 919152061 23241983 440345012 355883628 108181369 569481894 897321308 369047702 530305148 206626905 610767754 408814436 335710454 170375361 638295030 376743348 411136217 680232058 533693855 297126622 348786615 245805247 473119271 293595605 852223535 420116510 587434234 720441283 266492865 112209673 143201732 587165840 96973060 197277005 473371173 192630118 177778806 196609877 99327825 524242476 242585184 667416976 841579146 64643420 395265859 856759500 793730268 595786900 850496131 990480626 458503768 243500091 134979406 793986692 833398449 771255263 43040629 894395973 648929178 886141328 360034957 339776796 149185136 595430460 108654317 910535390 856144109 292877139 99105981 421483617 155416186 399230057 768596327 613005346 478398041 944075862 457852866 907099601 159127418 842497910 189866378 185664775 189632830 531277245 139903598 814142310 736014652 581458278 766203923 730358561 278573920 314245185 428747545 217792787 529684836 627819418 677002685 514851878 801156722 50514298 253940458 671943232 235498279 99309205 845397044 192454026 825413262 674187341 607734955 946324892 408086660 693386423 330667493 318226274 708454791 509235953 249212175 82142496 124570826 766538817 818448584 205604401 763610689 361240735 429078050 534011592 604806694 269194494 119760482 596685315 607084319 11181942 999651508 759402968 649659481 234898715 456008555 418526628 312124633 55751705 210796322 252684007 95976624 305522380 157624119 155243153 765298193 481883306 77416607 506111384 432343732 969569967 39262631 378282291 207321963 811305287 847427156 793505764 702337988 269232665 357146596 714734120 531943708 723506800 317434259 60132991 298736321 906288301 482922036 953272280 62897662 326291261 901441648 708049407 946986301 824570707 282241129 623943532 445604763 735870613 390715397 590753781 788369969 13233068 399083491 221366231 296948402 125206566 537115679 53470356 866213938 663926125 815319360 162968591 219483350 605517712 725335949 100473088 950204502 871120973 8835024 709137746 578647190 371785640 906188950 206014839 364803805 550482179 578735768 659864172 856378189 265962594 642007326 731347416 761510752 105892439 345255066 23481117 964116435 50009297 372723290 646382627 153965289 316977670 621344712 626836016 231333384 496344662 123386195 761544268 439957849 652757450 871640604 166183999 236731987 110060792 591318765 27221609 65707553 95022482 622837903 501472743 894148726 324932666 901968993 341686543 48352117 115590533 556831998 594345180 937765943 364629442 33480190 706350997 799168239 21843488 226296541 933649460 590947695 443447237 620202109 515077446 334204894 299192644 649632615 578711961 630115530 390389813 389112348 150554504 861090778 448179244 24401211 29648327 776512354 324228564 813832553 675637174 458610966 421233577 365183653 119349645 400965574 502522911 427177746 425077676 25074856 189360180 802026941 837168334 842587685 97199825 950659894 89059028 972207623 67986508 546511730 640679720 541197981 921898777 411442383 996840819 251431014 471780759 925981877 493323035 25193758 383390688 36093773 225385358 411399424 40076458 12804010 152615073 643699352 833385016 821740467 751011599 424632525 30316918 62742451 469702767 793254793 46719143 47885952 296579593 278866387 847489666 251810064 169083000 69492201 764680009 160472580 896133751 469961984 298729006 882318110 497787313 903653571 734466798 218172502 652416172 706925025 444254414 69139618 970253454 387577661 600959802 632297129 407697369 716267610 168019798 852205447 708195441 580808706 791270433 40745581 20325825 217566288 398621050 60737742 635114069 887986836 966144951 561411188 192857681 56303389 342639355 801219631 782692199 373549752 923156026 438373819 797026939 509926888 345651140 436492667 816102065 893564191 990290968 783831344 522771762 141332151 715294183 805508615 17690031 608665955 453441921 330143207 644224968 702550655 636087895 945144517 264900057 256024435 792921229 18597889 856585935 183617905 699766566 63134801 62182388 944169361 47217095 737422723 435770211 50028050 249254735 403566921 323621685 593918915 763365969 41224647 636241111 800716093 259913089 299326176 698997560 489949224 832996523 782474345 101896188 53385901 634669716 350414934 218709689 373110320 311598884 423730253 268975443 4067639 200947140 754915282 23027188 712971338 29047832 240986923 105617129 725082052 747410624 664510261 245762022 697672747 560011363 465503159 466375373 836861104 272388755 269013481 19758447 753001412 346820476 149446348 872041067 336890031 269456504 594196885 758762839 719514140 750248312 661946021 768382197 283696016 828762202 152729320 118914469 518459902 61717420 318791657 222282867 622738951 592800119 603890590 69128845 912338072 128185766 316991901 673854176 160831148 208766077 334201436 355785208 327935274 331344064 894387328 17838060 622222911 694897835 182875632 652049757 818445791 812151566 815583897 236488065 395045478 919429233 61903753 813745970 221825214 373910315 415725 875649623 760199505 922651956 101009344 990156372 983017065 710048397 54974586 879802681 287883521 912808094 372634978 243937927 727185580 912388612 396198721 411462200 814093499 893271325 177708582 573150167 820848569 854731915 806576738 303929040 231098107 220716127 700627608 486762810 868493957 97136251 653950327 706368021 48641126 675234450 766317638 831243184 733028004 926662305 192290569 485065863 604801640 302951224 165741641 815491063 633184505 162770953 693195967 297338491 64576521 972558876 847692624 438062200 683861761 218470821 525558378 25612974 512614951 256553908 214803479 836145165 989168847 273977839 192995070 172531025 222830561 17977577 542535429 411314171 455027547 258092452 293065201 601124456 782978415 46886856 883106800 729220613 233880999 460338636 826646438 992884734 42214832 382507701 760981811 184426811 798275410 564178253 644835837 344861785 936229128 221005934 3409289 786309666 837916592 503788273 452839830 65560588 106318438 880595893 389103969 914646420 849610218 727138764 227741187 57502916 198664594 269296372 972982215 690451512 124210662 416666889 607684548 528415218 421568471 763328064 14168856 827376342 833832960 342573121 54126179 156812420 111644955 78396551 284777040 626010485 253495573 520307006 371545708 231855808 173416938 263813846 112084653 311032038 872171673 620814175 812978427 968662641 615862585 973321099 211090252 562976066 568465242 198423864 432248637 514627640 392287590 387003234 391883536 376864378 698264464 695949333 284611987 921444183 8738732 670675077 422312207 240511714 43032516 585451204 591078833 784650890 63852203 84580253 249096598 206906471 889969467 715412287 685852239 748523701 168890815 984950220 681948423 283707587 344479676 802129883 328583782 216908869 203801586 423887725 665658583 657073167 239764919 296977529 660525847 539676727 549355137 882176731 734248678 517442319 888207616 198892423 928304855 665449640 436856821 706432127 953474041 652517119 246301736 714388586 557175803 516047149 344228838 888235413 208781771 378804848 973802958 960793031 397284666 11330370 881866708 651397791 223673 822830668 276625869 615575837 488834684 968614894 384446708 741253788 31654100 307009719 875352235 966832694 503279947 258823686 592292325 483633187 878868223 606739184 468873778 166908450 198826455 54582768 238071430 609870403 776034352 784291524 155304466 149834043 305804207 703777846 581257847 149807310 756031551 436467929 9613606 871079610 477133610 549530165 925340551 774934708 747579135 540816936 374170862 709097181 345661913 730478793 232688787 324608013 808590624 52683661 947742805 584977059 915722257 223118639 111187568 989331905 536197580 806305684 96094196 299091032 594128523 218607678 602063037 50275962 93287896 384762982 134954003 902052251 256542603 844711429 805799619 293296754 506471548 946983242 637087656 18075864 766171870 186232685 818183116 680172474 515445856 388714279 200931180 411984890 849848155 433130294 770675649 651541431 35265582 868213859 796141425 613385194 688703227 202016593 757740069 447565183 52704808 130804270 988513024 746215486 62077185 457761495 256417317 67733941 961385679 264212447 4337230 444139236 464832174 271197208 287692134 435120905 396714362 433599784 366298858 696079274 518125407 852117268 829252573 795030476 816190244 603971853 220503327 206158612 56330521 232001975 302255102 481209528 911670678 809172632 78550432 22144201 33349318 199321082 741683777 268236096 225790875 979426065 50823523 988218828 508054913 250307430 513917154 128167545 664212474 483003432 204039922 329268200 788881886 678904186 306147081 908770347 855837943 109372251 299441753 360839873 661437429 722253674 199801478 633624868 860739525 509084333 867169144 613622599 441370575 511935853 111293968 949990904 725064363 567175142 554867721 796428971 184218134 117843420 319997568 244953515 213161727 829769012 939122676 228763425 543622970 74661246 910482589 578250451 944899797 118443782 455111869 519623386 756168541 907750370 551468374 863665392 218612333 856485786 71516195 97516232 688476063 625748342 504733637 871882531 393101550 445607689 563408582 77883570 191392686 206937327 828881237 481727031 240484050 437417682 491798855 37481894 853504724 479012102 270119243 137322866 7156963 459094421 852069122 619090229 5096128 954842345 500979978 150081955 726493049 20162900 661819804 501425794 584684592 66275330 194025820 568663545 903337696 448345494 961109837 853910906 351168379 969484315 116978122 77627146 521384040 310372358 595073222 486136247 314241993 177340571 139740806 347949114 341895220 70800921 788030819 168950266 182047441 350886951 259139162 901494582 712848313 739514547 430509263 308227068 974816551 227499393 929386012 987863186 499052808 140797358 821520884 223275845 58105672 492514528 173072867 745099084 796901919 468804884 13692982 733522897 217762995 831696448 556117522 807050750 393285223 653153790 210306084 115453809 613010666 373616385 638809208 10366785 924403034 414550726 207067268 742185320 551606561 455898431 186603755 544921582 597797594 456467405 222198146 920740214 685311195 291469999 905475804 124130596 635920182 989645785 612366414 425555545 713928273 428723073 735069953 404197341 425364823 952046818 497171789 652939394 642827803 796675819 263234365 89764460 26866765 235230683 465895243 493459759 908854270 388260749 352373891 51848554 609686730 152905412 930619055 53012570 926062874 632656761 755548894 24937334 960640347 980120192 659824538 472545376 223654762 635621065 177137746 715745319 649341079 384451097 828866474 49741435 694582758 133062876 524522707 263258305 343018671 302336498 316379702 489965716 426953109 426052300 975200123 373849135 642131681 867321562 475059209 575893957 31926085 657691484 448950378 376998708 914486022 206561868 390605938 113948781 761697218 68521434 674621187 882739321 119086704 376723797 863359758 931698217 34183494 881457467 660288708 115273993 964521553 262333689 475000556 955858731 132642729 683788079 24018703 84796378 484032187 264160843 782803254 913193927 738851941 978798704 101853229 495232649 65425194 331072478 593965066 239176394 329306903 150762915 388939448 283215487 1190184 975985621 851064174 926283920 552379424 957311490 202978715 625007399 725443413 718590854 166211929 548812364 962594516 148353487 334860850 977986872 835281064 687461539 704617342 301209722 218820744 495895654 374312773 17416184 129272908 428110608 564061346 393746467 981459901 970288699 21866763 380809690 647553027 413715220 902975005 391642008 637227838 835119868 426354343 750271454 524448227 42459153 719970862 198086310 595739818 967172908 168022857 890823992 851840761 765770609 494822743 464819672 412751901 690906372 947033915 362830750 260214866 380337274 186978815 83735304 651724040 433942525 211470366 388141714 794965306 289049532 493078581 905277102 587059972 756504233 302317213 18510774 628573395 348330691 241112608 175251540 601401229 889137685 620899029 285561607 187153311 14401074 840198872 542891869 94400042 916889864 857418515 148997074 850134371 931154247 666254689 369047835 892945741 993698162 646768194 971569755 174979156 716211218 358915097 960986014 928705983 709594202 462356113 666872341 501814686 384339377 212159040 730167573 960007001 715658736 459703827 742183990 221884665 56403272 954843409 498132847 902830035 446805487 737756420 69788525 849347809 156147420 736548913 474244451 750836571 582326635 392793522 520969213 468723222 333015209 686588527 536965921 531687151 357150054 130599583 343087831 682906688 473185505 126536832 385485970 622488379 539626985 724424633 950803534 933559951 984072287 860604663 543066365 973440799 360382353 950457335 896332719 374000622 336229553 805335449 330859013 397021326 958803617 25549134 951962230 604670768 39050762 701190996 30871927 391354462 382868929 427116034 401424291 746857610 618242088 985306527 323131048 735038964 29757121 681557137 360957445 10137759 122698851 478953449 160123056 830485217 417239587 213588923 287348063 498195091 933563675 559614491 299821468 443353073 303277872 962823276 821986650 501084649 957800930 280169521 501920953 340353085 859942589 246949180 673152734 31693468 551299730 709764974 850075984 228898420 42583907 115069971 981677223 36635615 345436345 644661607 99339130 239125588 65878857 647790432 14692610 440649050 991997757 341416287 144572164 842399490 107032249 716057071 662059603 504578692 324825867 123939741 20451776 602759026 280057269 327174647 677710245 760967181 930530743 111155648 341223171 325426495 201789828 22243951 379226059 965804471 997865185 95304176 366237944 261527310 479945629 664225242 361090711 368962582 35994289 657505284 299367007 491958854 205220164 104006765 907087498 60364411 137589664 216797016 25331812 997893381 707302213 358835164 233214536 526334699 85395277 187610698 753239615 346984598 125198453 828331814 639223370 680580252 319521827 416863729 72728889 819475211 654628228 261028693 987832463 625382193 915356773 126155521 280008591 886469173 540678084 271661511 43098883 885791937 319755375 893779917 897871396 537599932 724239630 104957715 860124400 512821633 492740894 787727313 448505360 717461152 225083714 898466305 967397678 722018264 863920619 560256482 693925871 751803880 657049227 940535535 96163755 933693350 486309147 924696964 834275451 304748985 802676646 408165928 470006805 911715100 312099629 617911849 575066697 969305164 267938708 724332331 223669126 816314998 5447780 148233255 996265461 990342173 923123840 797773468 147045166 272978211 796395721 475026624 360873921 588442906 615704847 432234805 269318184 727933971 439468409 566810456 501874802 724859011 414231260 989368347 669908864 672332789 220143695 889587358 854684035 42327483 958872777 429849450 262920219 361355248 357161891 266664568 468560829 79968478 691967845 530369919 566344158 396530423 738236683 428050226 663970547 484580679 409640100 331980469 377799767 284342662 117900344 573390764 583134344 842041454 798242559 499023415 371689880 47449845 142995981 674147175 965312770 331101738 286957708 422328300 80595573 162605501 852522652 395271445 631375971 36119442 458742769 566003013 934753360 749726952 49645010 981703823 361131276 812819359 949935842 413767223 40138702 500490538 278386124 671432911 40918481 528289134 825939676 996760487 206965257 222867934 976406433 836863631 833559379 54800090 531954348 337193138 183827380 81198595 378719063 853421067 554698412 723275380 732053912 632499422 329878537 897158649 398883592 601831218 610512128 959488700 204528298 781554251 482988137 553594246 140880749 452792216 645201853 776411540 369420501 884664629 157424752 96901905 720659935 806592698 386207362 804244051 299683946 276305339 347123317 729961157 698690463 545688327 973002032 123557898 581537413 762084780 973054434 351959064 135210826 289398790 350233788 344825476 239874378 757973883 223088847 273485074 551077354 25038015 380759682 376871560 290332317 831410897 897922069 885749643 484775524 346576554 359701526 196351990 458182174 82449061 559430153 535295175 507342565 34904753 732889950 188756759 897828038 907095212 435427071 867982040 657534278 676248974 469799192 901197726 694653248 632515648 591143471 20601534 206249717 737961373 880917221 77921874 262966104 890427120 590715743 635306653 636216639 302036716 10638371 695592228 170240898 30287658 503226614 766732731 564520728 964043817 807177898 110073294 521367149 860379627 877523194 423855539 681450737 864414315 53042628 256304666 39381001 536427138 976067682 502170195 500410073 829330112 768792103 726516989 275983612 578967986 289752570 373974554 615166463 382361534 67169090 70268256 291418395 737396389 408970977 539349813 437681687 784936574 81229983 905746459 898695996 324365421 964808700 850515416 62331215 634594305 927085378 623366844 738926421 128195741 492582757 65594370 943360322 985713773 219555702 852843714 660498050 591088276 632651574 620094379 682875699 472280573 114991235 778739705 437606941 78678245 406176115 302951357 475383463 996265860 753304386 81883412 235807371 306077655 272576285 79778820 560492823 411457412 434713526 553963321 327978499 76717426 418937066 185477777 666204814 864662626 851897286 281190961 646380366 899195677 768496311 807027342 684899161 1232079 273594799 872602859 870090356 459838024 472981084 101394645 485929565 789323047 736930091 905435505 352154840 492972314 577823521 941354815 116234519 622653964 399448177 599197552 316507 878204420 118359726 516209675 287611137 753802072 303616889 65113176 813941746 18299836 524860527 508993627 153817260 500916803 550421930 28730494 687426028 108335915 38541239 997850422 155020112 918597983 849531349 401782726 42196212 904694961 789629479 513745185 753231236 135255514 158066876 527524783 429452977 904508096 41974900 961881503 290817767 460259501 60251494 201056732 985952242 355959571 644184004 462539520 71755462 311671502 701234354 492489258 240734755 67049523 251590880 372039271 21840429 428816705 434736668 418413046 250772398 313436279 522479827 504466174 141234928 39007005 735304565 815690829 639425530 28171894 808297093 91772361 217695963 766241429 218434778 844365762 297741614 701541052 44532091 322874491 824772202 789981530 197134296 195106844 960985216 205635789 398434584 904585901 228162797 20810743 235662268 42613566 89331412 4889978 608706786 751172130 449391140 398207686 946189897 760645321 335572400 780677515 670562825 457432453 743980820 633697619 172591274 953687772 467253040 78871494 104355491 499592655 556259300 671188191 270621318 885019872 196421416 788645013 442384035 823294838 719271548 305149847 107091035 976476657 462304376 720366404 870054180 768052490 995539680 276028832 160193280 987802671 469755036 481114699 660215026 504228104 121381353 189907342 120484135 388164191 92924274 897977929 192373029 704209431 257860367 275328587 663645362 651984321 714246276 588289158 629238794 29214082 833467077 758001946 888709957 574798835 233307769 510477109 912864619 257128069 450741489 347038729 916078564 485213360 829734964 388537522 150322685 318683129 869751206 184936467 822096508 85563788 437226960 798688375 133105968 54321423 870637784 820450500 298380945 180871588 180635114 965825751 685037880 876648453 819811302 396187017 412678219 11688007 450855470 345042931 234105902 9169386 897863283 795744819 852233377 619678621 236350809 615950232 680930574 703982533 907342060 132274452 685180855 945073229 495618748 731982624 217835214 650971260 117165652 556369823 261964747 798003558 549708518 808681729 519415640 924043668 420302710 214021705 786815066 472137731 236219804 143243627 228566452 738035055 144527609 411376814 380474663 440204165 819529076 60440088 768877755 258180365 728188799 816900597 812320742 595021485 286895996 675107568 547683593 218835507 711698528 551315823 393214334 87830374 178513897 882055834 211354789 837304925 597769398 278366573 174375735 982782719 114140434 37014931 114436359 686148962 132673984 337210694 893108666 528563247 216170453 97503863 417723441 48449074 601062478 647231433 53858184 454143895 899598933 284254749 162166867 432156734 699302928 135832202 741372025 930516246 359377804 277086182 950368624 913728188 905561988 387558775 463334195 113244945 267576682 662694013 384163551 871009652 939450255 53613730 40496472 584734068 785998712 183515362 799294589 746117199 24971249 697986228 439652082 603703060 874401152 952159070 175797904 93419300 151231341 187055157 654575427 623653326 219114940 824529078 501027858 645434736 231292154 420125288 640131494 975977242 137214870 576072709 240825062 835139286 657955356 371035653 578218664 588981024 127524357 162103825 539485606 435470030 748187876 234421644 452238404 33885574 582763540 877655662 117864434 469163851 683466884 104587975 789120355 935983477 262128071 238521635 625999712 953068125 76528832 124525872 778813254 779070476 644095958 826086907 613556498 275807121 884790713 184053613 24961939 869858936 738846355 911586888 494482928 230970294 393432454 167012589 462052208 766498385 533857578 484092968 449286735 657129160 908214540 524718483 799057716 46486526 204633900 344917246 278575649 236935610 391268810 479292732 329475148 45321978 561216343 382901913 43592446 305630775 798808208 899003625 430283030 189929154 708439629 747933048 6179812 230950876 873306961 234738051 932430781 786781151 714054623 256897048 334740751 602793606 150750014 856347466 586606974 887673754 555863093 916691960 248836051 298724085 995439265 81152577 508739198 655839858 60155734 583464051 509950030 463944000 494231159 565046876 278514868 308098457 732280145 556908340 708617184 708507459 245936119 794500205 144696652 207955442 801849918 907619099 238000408 617667129 639937713 229373629 194684702 525821186 636702222 435688549 959870144 401015183 523998022 181330571 420316542 231585286 616980716 705543687 314106067 144980740 68902745 731547980 523473470 321352971 650434339 56728058 964971758 389199463 594476850 855717046 361638139 746648800 913494773 368347191 261113813 522140012 922939768 23477260 406042716 688977207 659378722 837400818 719898244 591365714 396083942 640008602 569890603 367735391 455706379 418967523 494418157 432197565 793461741 247398587 825370170 422372722 137384977 720194435 289270711 835016527 2940730 570744862 283299676 996938574 905112049 201907134 309050072 981986847 638745767 769838680 260456261 439853710 708556935 231714961 507041187 469872209 875194231 571155433 855020392 168670035 260170710 310063532 947216657 545549342 167904088 238233956 483247221 395291395 256001293 594248223 630555627 822231503 841817881 107818412 110019296 892346044 242972081 456097798 500704136 606903040 491852853 53571037 391050823 176534325 479496222 99830299 17449035 230199825 51391300 3553195 380642642 616271693 724588356 443342699 429676816 443221536 36384378 853934979 558217991 783493391 440798276 56666878 904920263 867096925 730414687 919601867 569682458 816533650 357095391 851610804 550897006 367598800 914211111 517678793 713857650 962020621 578891112 452392551 830159101 157580761 392204465 325470651 68228435 210755358 351196841 59086813 446862012 765901082 334975629 884552909 699421032 795492784 47042732 579236380 419840402 795395162 949237060 854414843 128868854 335484221 753632896 667611555 955260630 336578944 823765658 151117227 182327539 686594379 701815697 322858664 290528625 485907088 191695394 742226284 850566355 610044899 959274703 189783785 947359233 630535278 481747779 78060992 706170516 32914807 681056392 76324012 179551962 571318757 913476818 613276267 489468828 556671999 17357797 889409404 254738192 471446131 263784852 38342138 353166704 104422523 395324113 484393149 402650285 304233743 762534852 651234068 479861839 982491848 544356598 15427701 27583768 659416760 655204118 757167903 719514140 271095330 298153648 875471669 366965986 32308726 987888589 665212634 502022432 926363321 732589104 861567317 648638307 26751587 326905455 312885526 871355319 785851747 548669921 974905927 332628578 885536444 186559732 950331251 913781388 278988215 10296295 385580666 302532806 79440335 205043141 599393594 888182878 372223476 74624006 633693230 703834504 773080422 950346546 588964266 121783279 564747892 935585807 863715666 79379421 630851286 52313256 278418177 471909902 781412074 750834842 680196946 385697573 115836450 244459686 304448006 322513928 806711733 533910778 856687547 78396551 832670141 277379713 726661161 382785538 71813450 957844022 425193120 553080201 947450205 706886987 748787307 129866354 981734014 652496637 164586403 392343051 186003127 824389827 459240854 666158530 672977706 364023760 963542008 356854661 445977429 589588302 501857512 866077214 567770849 597647171 185405425 697121329 265893434 849046298 972331579 971957982 647132747 146461562 798627328 60906918 44122584 529883272 932887104 614935841 19204103 42602261 399089476 700923799 263229444 234866928 828573475 672093123 749640901 561319152 412552534 862308792 271806215 528698375 59034544 899008546 294809629 746145794 98992266 126012546 387746305 950351999 834470030 265258492 727912425 938771556 140909477 857955569 417979998 785413512 146385353 71057345 604182126 214193408 979163257 621277547 808733998 37025571 929045399 94646890 201719072 699497507 137529016 874621533 797243197 194389309 206436715 117383373 395386224 386207628 806343456 128910217 683858170 595265673 75618979 57463814 926772163 689006334 106431222 695668171 804709684 637354720 501932923 179747073 187416651 302769945 374762845 740019282 264354890 932585992 826790344 256150120 325928437 898293937 999707235 391669273 961771379 965970721 283124116 218875540 75069556 730243915 481721711 757738606 847508419 594344382 515673286 739518670 998145948 214457413 356876606 832720814 222094406 659193586 988487488 515799503 334772139 541838110 648019192 113345493 664581549 282419349 765742679 836558396 912540498 938243546 805338641 694579433 832292421 793203854 537184573 795785251 738908998 260457458 943935680 220392272 328468604 919101388 864341032 64209973 684037587 91881288 820163619 412075064 157940925 460479882 895738076 424628402 305597658 143676143 464219975 258706912 878291003 368097284 847429816 623192215 505016927 522367708 873869019 403751924 295746082 755385304 61048829 441702543 991490096 683054584 708307028 238654103 361204825 462928545 723443891 328028241 979114313 47602928 217915280 273349547 356368147 322622988 291871792 569430157 454011161 771485353 550284807 281889078 629277896 757702829 54589418 645812722 324813099 313543211 14016438 722032495 470070645 320386992 922119291 41148704 431842189 142068173 849911330 170232652 81776480 911855149 442246513 667131691 198067823 26168382 417669709 467307969 192692495 818027639 473045323 436893795 438918055 177951174 339560272 750385967 327004540 32034746 473571072 696005459 604958314 848067950 184148309 573695467 321396994 74631986 119860897 369746484 288601721 420768742 316829907 22644946 651731355 107104202 854709039 198078729 59026963 982134743 103431407 239002297 833472397 164862910 295731984 938779669 534186487 637633488 552702747 845425639 27113081 424840138 994368615 642578295 441770373 912469875 442868554 359727860 934165633 583701323 642487855 597440090 467847949 953611031 627321200 122035048 892807288 255505602 550795660 500332401 788228590 821774515 353803907 672144328 796338398 965224990 602299910 805179706 285647259 813285258 847162885 135328797 375361744 647504748 634079063 235391214 348330558 234653729 70366676 806786213 624645905 64030024 298191553 627726451 786975464 57711593 754289650 440058663 988349035 603323877 258878881 69757802 536606023 305969526 167110078 171391348 932405644 918388508 245542040 653568085 287822740 863357098 556943585 489548362 556011521 973114151 428438852 239656258 529349809 207054500 772602420 713665598 90721262 461386144 112055393 287590389 589202070 277719262 81739240 579974264 191346934 772097552 461839940 623333594 127686085 168725230 560601484 532126051 384577048 252070212 973071857 568980750 41945640 634774653 27957099 593448228 11826194 172317161 366164129 712776493 768998652 790537470 622908792 935526489 129893619 886444967 181738083 154430656 98041848 21861709 471083839 833803434 780122240 903295934 186677836 528696779 184751331 525099262 701837775 570020278 953304599 23806967 71629112 729837600 775231830 340587298 743487922 879895515 699205040 740662869 759151731 955234030 188267053 379702997 394902769 45649823 691499685 904572601 641936038 877894131 191201299 142798210 327986612 831066161 376858127 859451287 264976133 805119457 27732063 167595661 779724171 29537538 540133848 278875830 837219406 830509556 527257586 851108463 660086016 1975549 134086577 679281640 466605596 788559627 367631651 972166792 91318166 12411527 336996830 806772115 226542857 188695313 176609470 129838956 772094493 806839812 47462746 227469335 220859900 76036998 909150328 341947223 506160860 870089558 330915671 704271409 477123236 819763555 534616077 335301878 782295859 723833315 481372187 892049853 719069654 590283360 131063088 137134006 328693773 890200621 429301224 464166243 284114700 490540675 307136069 902197487 150414588 544775681 297952818 895581934 405929932 947689206 430604225 107728371 364419302 677478825 416836065 427669447 918320013 217029234 374095584 541484197 569812399 959264329 420294065 912275163 446248084 309848338 276574797 486384824 112222574 269725031 625362243 444898001 54226993 446821713 585931334 235688203 768685836 961782551 356768078 125016110 542210776 533228488 544860668 406867183 520975198 997509809 997236361 929881703 335273283 108018311 959718391 171462636 821764407 384300408 481743922 824460849 171536451 696327851 812084268 485491729 135211358 172733850 777337885 951010748 192744897 438412522 920219386 714081356 129383963 168893475 365619228 881974970 804456984 948920653 371123832 105350863 472792889 805515531 866625839 257689728 180446919 347621136 403455201 273571790 57569017 578942317 83503485 82995425 687994071 614340267 526283361 342772887 477021092 699102497 758473298 957366552 955809122 240517300 356188597 794421203 934811880 74888543 601893595 910717999 965900630 103218740 631373976 305592604 202625334 700703950 625087332 637103616 712437875 575607076 405651962 418669204 776186371 547165026 560239192 50584123 163501123 433868976 401489461 743143319 75497018 900848468 44285642 591283254 663090619 874260039 905301175 406220404 988414870 852796366 480050034 363989978 933743890 610883597 58951419 519463387 425149097 918204436 917035765 834570711 263294215 853119822 829278641 213635739 217793053 180310727 358694184 982697998 126788734 288618612 120686694 958380677 955837717 494399670 810283049 266607112 42099654 369790108 463770036 147648587 611061152 699691554 356366019 39352672 624150480 407905115 608237296 973046720 727715851 484380115 410085783 369591406 791597613 921240826 888730838 578481605 990886542 925293203 380696507 471762272 215536708 96633511 208324916 321742262 920332968 687566476 323711859 626676682 902971414 601385934 947030989 767145962 511264336 759915018 289467019 936329277 585251305 198508186 434011685 250982006 496770927 911294022 363604278 40105452 883724851 973671820 797937590 240145831 222840403 115302189 405289271 922499671 367813994 170925183 992445701 217496596 127613733 731763972 159543309 985678794 635290028 158143484 691128748 450023289 613604378 256233777 170305137 263635759 474267460 866392291 984760562 316669642 303822773 362810800 677009468 271483557 746395036 20201736 619262198 469057318 578976897 463045053 305895312 167260767 832342695 335777353 972059727 668162973 964645509 224679394 910673045 602941635 678253151 628144470 845928379 172093455 579479371 658043003 574899250 398986135 450534541 737953393 98546184 109247364 78550432 172961812 919382683 327790038 834830593 796750166 954316197 923076891 689500030 580608275 753284037 561230175 600354785 697650669 955398285 684924830 97942763 801724632 378719595 371481203 157711766 60455915 709203049 855993686 485030352 648759204 462586602 716754124 592444344 101333997 358078926 62655469 217277811 602320658 798452699 506440027 224007079 945824679 347552641 128359996 724436603 585136925 844536268 623095923 346814624 7843509 650050368 94550731 301728821 842168070 796351964 719317433 709861133 245828921 94245363 513380499 965938668 658183584 619708546 129937243 592281552 892879640 263761710 313721963 607139514 546143453 153338061 800227717 12282650 709493388 262615516 661807169 392883164 778031480 874869046 160804681 905730366 44977109 884025830 649208345 524427213 822507478 773656844 344002871 756403153 462824805 364583424 809039499 195343318 491720119 899690703 361581215 810030615 383851134 714462401 149774459 101307530 58428729 482225116 51486927 148042001 960673464 668652413 392114956 894742039 496395601 2043645 674099162 666178879 704487800 875243308 250418352 334411044 820699742 32443056 932219710 38072015 252247634 369270610 211141191 187633441 444081647 561916455 577988973 649842888 105452209 108368766 898832853 360228339 355539025 753373147 448887336 88577701 558026205 731626716 436420315 148673352 547885753 728988129 74406152 656806901 616410811 283695617 480887402 414109432 914657060 400584263 233571907 920797138 735256419 892902117 999571841 510019988 210394662 675156113 979404918 817081477 257273970 809452863 632483196 729870052 401343693 749190563 958911746 184801339 335275145 454824456 126938093 802080540 6078067 94201207 826859238 195825177 865616103 774973810 377138624 915289475 816478322 972520572 690985640 629336017 339812573 987477353 975892521 459949079 604198751 904051241 808626135 248032731 232670167 252556726 582808228 625211687 37119336 311959048 225382166 79063546 966038551 13422593 422660135 447216590 728719469 613343432 833492480 744534499 467039974 472605625 913303652 273266289 149144970 482522371 161895547 857819776 116808813 96335325 976737337 137303581 428498436 110009321 50305089 198633605 892130584 575065633 129891092 985655918 575956999 638303808 642109603 995122193 111802294 809201493 305115533 245740609 60496746 877204659 108488200 25063817 387671160 562462686 478585571 709398027 94104649 753130821 801642438 715446601 997742958 69845848 805719553 294840618 834090182 12707718 425308963 789463362 212266504 271237241 187534755 863956795 199604638 703571962 113694086 458191218 915042095 549959888 558119837 647266013 905065632 738374471 947953211 576450030 871685824 542681064 389477965 638943272 697652797 974399596 76907616 625855806 780078749 892497132 557033759 310421036 357623534 252704356 399239234 393308631 581182170 630473300 330734658 749546471 588588807 750010508 868722052 501583266 880985184 579854564 878900941 754530513 187176320 897804098 620515058 351538917 676049075 775114657 369511606 875901126 298621941 432314472 768677058 516163790 298369108 466986774 358074803 239866398 956393391 219200725 885353702 726212419 233683627 100589729 941702876 982262689 135900298 994935860 89182452 949242646 772071351 358225492 451750560 736339039 781984107 252108383 804266927 101476307 113768699 649167381 945521040 759210118 543801722 737295841 254937825 765671657 618937146 84963559 751146993 769396189 310730128 135847098 424112894 312047493 746416715 3619695 569523922 58444822 658120941 463455757 537244290 389623999 721910401 891756322 706385045 761046715 163043603 431789787 505980645 761960425 104140696 888635344 422445473 11047346 45773646 568982479 270227505 516826396 549607571 739446052 428135612 146771186 414590360 148569479 836129338 493864478 296184450 452913113 389010470 654282960 544812788 955975505 392329618 915627162 760776725 111369778 657620329 179769816 745451933 448250532 218265602 380161980 92679288 930892104 96050040 932972623 525924527 40892679 931504170 662621395 284980131 884152845 812494573 164984339 54259977 846707626 778103566 604611051 793316771 124910242 226896770 977946307 687781005 532192551 930606952 575216588 473449643 917108516 588378401 686412701 760768612 272227559 310685706 816451323 878399664 237229939 32788723 504574037 665524785 378519696 857098384 847423299 57491212 380636258 921553110 120888455 920628627 286792788 57521270 639737681 369458539 890357428 65162652 665818715 49173924 772494025 394022043 943874899 205525532 851388162 682241156 997455545 505870255 45913429 535590036 605508402 919921333 230201288 206039444 357313777 657802406 880500399 805149648 644216057 415440496 996751443 554396768 378407444 820572727 310084014 85905598 185958971 881163936 356175164 337966134 705862488 315715234 566559219 900448537 743389502 614763340 829087919 96020647 8119484 125640146 172534616 908384647 730263865 246259708 258134613 750816887 999438043 486923607 445355920 850431227 891829605 130499700 689160614 945987870 982383320 175647880 984543240 384428221 219684047 413395222 39789710 213961456 235752974 60522415 689728657 647115590 584017597 218422276 487033465 567499662 585625700 217402166 586629318 954663593 424116618 124980998 66732052 515806153 14843166 813664441 57840869 657768358 151261532 547289115 733849678 552435683 951092676 706671261 445675120 145234770 505270159 672103231 883002262 456637246 451623545 36910792 733391094 634218048 559619944 902549671 427477794 521298521 368160592 443824824 701970908 535868272 987930883 426582438 634210999 334953285 930838372 882901315 978244360 462788629 803431820 736332655 49528901 224943665 242076725 848359885 860911627 644874806 609384953 138733597 744413735 487709238 567178201 972115587 48717468 216775603 619644174 476732748 774021530 166898076 435981947 109917285 274419266 115017436 768787980 965560549 36301652 557875782 327569258 551074694 995768573 716207494 186137989 904595477 810698408 604460362 520331079 862896785 494743209 59865661 852106761 915767876 680368782 96763186 668053248 943542665 754730279 252342197 338855239 326203880 367810536 897958777 113843977 916935350 288919857 634058315 576588084 54200792 280076953 169312824 156874531 302149766 816617972 175559435 998750566 796827838 55081252 721489722 282200298 681274645 506453327 426505165 593030209 948819706 432821468 72428841 796307409 518111043 962226904 883650371 563415498 546056072 747532452 256934953 145552374 628856818 520770511 743626907 460929023 134809831 231511604 903718741 890394136 594572344 193158660 508214513 565347988 591733592 304969898 928620464 356807047 72522872 588583753 819193251 174613672 368883314 213361227 87893283 578416036 292362030 845548664 578683898 741255251 139107460 704811921 474609669 262229949 574210709 841754307 374333654 23708946 692476969 178874327 984562658 706440240 766869189 185615698 896506151 313651074 528352309 912296576 657386515 497817903 9407855 826849662 472745674 188537974 738279908 893098292 192744897 758066451 129441286 468912880 575017221 675322762 869578572 292912251 643068932 849222124 559411533 245371268 906668282 257408433 390419472 341834838 135113603 155865992 288420043 680874581 617765017 443972454 301489820 106214964 209320022 378758165 854285035 116243031 869789244 284523143 379724410 76080755 162779332 525606657 825865861 6506460 589040076 689298402 15344177 613460339 779252287 275847686 949288797 656897873 398767882 233051478 454069681 668797117 783386459 773497776 570513043 74516409 144046681 349224052 885125740 306385683 315045845 53193849 653070399 811208862 886615872 322759313 783355603 120414975 492169925 769324768 140575514 123821238 965966332 729736653 814824201 153401369 151828777 153355484 415846811 119925535 517529700 153540088 683338672 388685684 930687018 649426332 398836909 892882699 82747247 644052866 373822003 602740805 740474940 69951583 752798188 740587990 342573387 703817480 79590891 858235933 491834765 709770560 800551173 481244507 813182848 622046420 360450316 236895976 665782805 111011875 497404539 781686985 943081820 410871281 114473067 896027484 539903625 661572025 931176591 65214123 40885497 174425743 136128526 696836709 46451015 509922898 748524632 581525177 326188319 816805502 389947455 23837557 467445757 793612430 804282621 509687355 366395283 908256967 382457959 186736090 616564958 658236784 888717006 733767484 21100417 646909174 910692729 681039634 735649966 193373322 238844692 954829444 463146532 205832363 833959709 121759605 97706023 431909620 993379361 912646632 794200024 642063851 189927691 283935948 409216229 693256482 313160437 34174450 444530389 862527710 735548088 911896379 316795726 611336329 236685703 470678588 490325880 636023789 26334233 137222185 675548729 717330546 665518534 429513625 337798421 284319653 722104049 524612881 195016005 744403228 542180718 335886945 644621441 989654430 816997953 276271690 944447863 882705140 461894603 185271760 467150630 880418604 262490363 318915613 152337635 727845393 388149162 617700379 641137373 855600804 516632083 169330247 554617415 410550352 528759688 639266196 987175044 68116183 464802914 872052106 969677298 745181943 800894579 38545894 192001826 465075564 446939285 999526488 94455370 601203857 304236270 170356475 550831038 361915843 705349108 828587839 662546250 641012353 310109683 349161409 405703034 270695000 670119536 659844754 836009904 559317236 421534423 686815292 526604290 215481912 124809960 6650898 373230552 845874780 636969020 792317143 236305988 249506504 682037666 735830314 469734022 569234381 756969866 856441630 618264299 701567253 26532669 547011145 842290696 650610963 257627883 687437599 776366985 216557749 607426528 42490408 225959785 36199641 276398971 493427706 34486601 493311996 818052643 615168059 66019837 38358098 306831499 792967912 908361505 525647355 819878733 134395403 516535924 451039276 115172115 153921665 514589336 767093959 197544601 61228512 66336776 972902149 875891284 759113959 800688961 217952919 207303476 655814056 190826771 385188183 586938676 901313835 99552462 927583596 573367888 548430654 677524843 157825215 953551048 420525086 815463665 129125278 70234075 945182289 93593796 653170548 699650191 569387065 108353604 981334083 301335141 285157021 659534598 170732200 887080574 631367991 545637388 323624611 575759361 514817830 203181673 940550431 840021051 44083482 449949607 397956582 646079786 742586581 672328799 53349858 948574587 385921412 440553024 323040342 610162737 615619993 605827735 710019137 97622632 943340505 854529223 90339552 50762343 420921426 4648317 527947723 183817804 566219803 441744704 171829184 919668633 409219421 689906345 604843003 992135146 709467586 311732549 758703255 883581876 813246289 988980253 326490096 744355614 516816421 526321266 443322483 517945325 246377280 182614686 10437940 324700182 942524550 419578791 76742962 528259209 486382297 525248621 325893458 189168660 294872804 970373420 647574307 861373137 85339949 29827212 52205127 575446013 103033072 822555757 400480656 424548868 383465833 906491658 317453943 246244280 601056759 549783397 34196129 729843452 171622369 611696892 102549351 425437973 264255406 865851646 358038095 949229213 395782431 817310902 727779957 226594993 666845608 372808942 806912297 385885369 716832594 948389185 32766246 608472307 951108636 871174040 454137245 758747411 840736724 73278445 50312803 574411672 951638375 984078405 745327179 573061988 618461272 371573638 411355800 523043348 106027434 595651772 951042535 876753390 310536879 459338476 234474179 852516002 720684540 20026176 527938014 652415374 720735612 483208385 733676645 779512967 516558933 773990142 465581496 787294265 964585659 602848136 834339956 978449978 929445596 264859226 298267097 36783777 34896241 265957274 815321488 419379690 723127750 180992884 836643250 887916479 957316145 800977970 178909838 12528966 142548968 680305474 662707579 98303060 129390480 119337276 813112225 763695676 671916366 852793041 782152884 644678631 343079718 939628475 833207195 467675448 547190163 17031282 9287357 280835851 351126750 721826877 752569029 816103262 473366385 147022955 208204285 34594863 193456979 608004945 734547928 47278275 991356165 23351575 445839109 341787889 141215776 510826500 794566838 414164095 908511130 890100339 11726444 276822177 14882933 727579526 77387879 914265641 607469620 598443575 406727932 53535127 82381364 468825100 41003867 157802738 819003061 844594256 378175359 886406663 970177910 982377069 967276648 919628999 653607320 889526843 326307221 209244079 127037976 70378779 948932091 896999182 996377713 505410607 863821135 548211337 507705788 605093708 319171239 64386464 209673137 749508699 70648636 31659287 914478973 651346852 911792107 162357323 761683120 521584072 475962678 338590037 765461517 533759158 931325019 273411525 360377299 428953828 776847381 169473089 315191746 830780344 838339931 286719239 832105423 910186265 3640975 83685562 550732618 810111878 605546307 95416827 857285249 36280239 206242934 535785280 795053485 367664236 630635959 970731323 688858571 551511067 61655043 919208187 859718085 132154752 981240185 198995099 485284648 279930653 630408130 655372629 769814075 905962451 377661447 645999720 471885962 527165284 267293658 213523221 850796046 141272833 901288831 887095869 510107768 897083504 221715489 261005019 893055998 160194743 965099305 800519652 130618602 423293348 406716893 730393141 166594038 895855 629308486 539158293 381576834 756797498 187535287 249289847 125886728 527940275 927978074 606349095 231830671 629719057 606533832 219428953 994943175 478274351 594932109 37574728 554222272 116727683 686574562 853225025 762181205 489382245 588778997 479424934 678618635 490956566 341065965 739077642 392974535 831530996 633254995 890727966 624345192 750850004 204335049 892519210 121489216 707690706 558226636 647647457 663381756 441385870 730925673 153335933 959891956 62571147 276111292 806052718 80892961 957406319 693410762 422303030 782148362 477695402 214611693 880890754 164161069 539629778 853867947 64144537 72832097 244972401 887724028 880902192 898951622 722985972 127238540 70624297 719903431 655985094 670469991 43007113 141161645 272503401 214495318 643493202 948299011 538035906 636035094 835416192 133805016 10869126 422715729 437555736 407729289 751763448 687139147 425524024 239916140 754734934 8490288 50753964 449663923 131420459 970328067 286381552 289757092 796836217 115906940 965781595 388442294 898998571 353969359 250030125 95212938 153921000 718279900 465658902 412634595 855996612 154085521 22322155 906167404 123783466 923173848 529073435 796833291 426473644 516966977 992732449 236987613 116301019 667388647 285561740 852067659 143744638 861648314 791776897 996057183 112363687 832681180 404838401 486078259 60223431 375035495 350182716 386451417 555070280 975837858 104515889 929007228 706842166 296978327 552840402 351664735 234497587 582968493 972816763 964422734 51009058 593070375 323901783 90305504 874562348 973536426 971977932 729299482 542334865 697500379 332798552 192140412 529708510 752379770 332936340 413138798 733117380 731850156 963594144 154227033 861727582 756464599 475551442 834683495 912850787 959026126 705795323 161112177 201027206 852787455 377172805 143051708 459708615 765950691 883227830 568331178 111256861 329271126 408045563 866377262 99643434 857634906 550544689 208791879 315221804 512393905 666633473 921992808 964142104 196252506 667637224 684347876 188653684 666871277 637013043 137641135 304843548 505258588 865455572 374734383 559999925 818553388 283550514 974274576 858136449 762389217 386547576 285751132 999901415 543770733 667902160 591853691 405060644 144107329 378273247 10353618 264116155 295913662 230857510 981628678 264975069 568445425 948893654 335588094 597087773 436150192 557325827 918799212 841881056 623006946 702100051 288504232 456217764 507179507 643232123 334899021 662843239 574644156 159373867 222387937 333588439 397074393 643963224 429034293 208359363 930766286 177758989 394249340 797773867 517424763 896340965 776286520 167041982 469658478 468802889 37190225 980418910 919539756 2548779 397225614 398742479 575210603 409993880 313805221 38035307 158163035 571646203 900324315 672138343 165473114 984132669 593689490 488544877 318209915 123185498 788093462 337092989 753085335 231852084 360547539 208675770 490280793 718149693 246604444 371592258 905777049 239142213 759741054 28430845 867953179 663297434 248543850 464739473 481042214 334698457 430235017 761154312 546167393 692084220 854137671 565458112 844921303 719140676 738449749 445765826 542003828 188622030 372125987 543851331 317431466 306381959 172814315 960307980 355408818 158491412 564443189 856183344 35141094 364143460 972403798 530046064 705248427 924179461 785181028 653743113 244358606 651038957 912492086 10073387 415770602 391222260 945295073 925878669 206798741 566193070 580816420 283823297 740915436 836043686 483764458 399893594 647360310 252490625 842956494 786821317 453524115 922254286 534315098 218411503 402541358 120143256 990148924 446596810 604640178 362755206 580409573 325805412 888333567 927660071 164687350 711816366 773595797 403353722 754387006 583375872 704553103 998523535 552222883 686973828 851599233 97866554 684056340 203260276 199362844 486729161 373764015 114206269 519395158 667633766 240957663 536016966 166649366 270976694 238949762 464380373 5467331 540095943 917109580 934761606 499034055 460960012 493626009 201986801 504003201 349165000 429674422 633547728 489619916 287345935 49862598 542928577 140434268 128780542 800734713 409562960 707590291 252683741 759478512 509591595 192934156 149550487 736202049 955375409 919824243 106505569 781604392 381079414 248251649 117294130 696056265 298028362 436327481 214694020 625862988 635445106 478832818 76777010 324210210 466591365 132258758 837101036 928486267 662109877 671738811 700541158 683864155 55226222 422396529 491833302 853385157 803952 795493582 826845805 632622314 43644981 896452552 924522202 463525050 970028817 757018145 739061815 920752716 984202228 801026515 46737497 224782336 460945515 276027635 358945953 933379869 132026673 703730764 105150299 800890589 704450826 137099293 995715373 210879314 390809694 955333248 107710416 610798211 169684293 527774557 699813781 687367907 887136168 49732524 412589109 550949275 345048251 65930062 928468578 974188791 520347970 487212749 823661253 720797856 837888130 972579225 432973620 659237609 207007019 627690009 511398799 732797382 607132997 498580525 81749082 813144544 465725934 584863610 520847651 665570404 766479632 373679959 112246115 301684665 127256096 500974658 212068467 894213497 490576053 923474694 976871667 303520730 110319078 465756391 253440112 269286131 175642427 702772366 438870840 573963462 35048925 465744953 242575209 402287727 735946423 298572199 130947777 621407887 64521193 650078697 817651648 886188410 843036959 248858661 341256155 220433236 247393400 233058793 333329355 533410831 675646484 668253679 610843298 666628951 496442816 591018850 817039981 743846091 595698455 297561000 346930733 873935785 477751262 692294493 925313951 405278365 926650069 61949771 249766253 284986 261297220 764736534 174417630 241070979 406517127 219155372 986695180 393272056 274091022 758011921 580926012 969105531 949967762 330376090 636781756 589213641 989215796 147719476 138242694 311161314 549295021 68008719 44414120 839448885 891675192 532384470 761421509 525605593 203282620 629465293 10672020 655898644 151072539 65519491 867585035 50038823 756713974 870222957 632430395 224436935 542440334 680579321 231565602 919118944 716526960 888867296 102234673 413266877 455469905 925424075 785414709 38781038 871845291 786176400 868443683 690347639 529197524 696273055 661089102 816453584 940803530 468000899 629879854 258241944 950792096 626422120 334314220 519511799 4450546 262210398 1260009 855081838 679752061 553806248 515338924 984412634 453478230 39132158 732787806 668755887 923404869 390513104 847460805 828767655 501228555 289202482 109095744 932363084 382290911 747162313 895387488 476114298 670305869 237866344 596556837 353621165 444035496 656743460 420255362 884111349 464118230 500744302 87358091 421956565 931321827 806391602 438146256 368854719 492431270 86918792 373955535 48161528 63132141 345793849 482336703 232844663 603743758 970257311 163824845 481346784 376453940 907399915 675249878 38129072 692708655 439975405 453742235 719959025 434935370 49368237 665647012 711798278 816406369 408179627 853230744 21986330 264891545 73037582 954634333 943777543 863713405 35975669 932140575 745802521 478070329 907856637 858632539 939029975 699136279 965789575 652174112 134274639 491119890 123944928 58662277 617090308 342228385 186430988 6817281 508966894 982605164 607146962 922724042 597282751 600402665 369614016 105572973 471867076 744824971 853122881 717438808 735577481 285751664 426152050 97891159 540377637 203063170 461859491 266123657 738023218 356737089 40854109 994642994 696143247 204722212 670749025 823048921 385767664 553872349 733355583 700806493 223734030 927191113 490136355 93482209 687297816 82471272 61154697 680459355 900766540 367802157 787879731 680917806 26814230 710743987 216106347 658397182 124572954 259998874 619321782 713826528 751108423 19668672 131492678 950073497 456223350 457158207 109038820 193977142 614847529 657766496 968035546 317095774 221486729 393474881 684195857 43225233 313675147 849471898 679590200 588454078 767444680 128747425 182567072 874780335 747264856 637960003 829246987 833191634 750395543 179401406 231922707 486650691 613810661 267662999 129541036 88741158 243648253 991522282 597975548 641612715 930883193 483866203 272075407 559784332 747620631 472669997 545843804 334037314 484407779 929963099 986209065 622966248 698677163 472102087 142015239 94728419 979841158 571700201 562204533 816542827 407021729 154375727 895284945 372749757 299851659 790742157 217073390 27749752 494921562 648207254 742084639 117674643 311316924 989737023 240528871 776300884 459402848 625031605 250942771 233183148 327570455 286492873 373785960 719465728 254704676 569540680 292034185 691053736 228872352 616544343 713516106 895983062 209599056 912914361 709623063 566468247 836187060 868984062 659685021 934089424 762063367 521893297 462168317 106831286 424768052 87108982 822865647 627342081 693338410 92689662 722639906 146871867 46512328 63329646 756958827 27389721 200856833 616783610 160020912 731115597 336243917 474807174 119725902 472463315 503605132 577706082 186580214 718224173 82299436 310946785 989462644 762823329 219023968 285587010 627969309 81115869 362739778 398814964 291503914 135495579 544641750 654669857 222963827 152403736 276134966 742283740 266001829 24835722 977522835 280182555 278930626 951603130 978563028 86308322 939942621 911734651 144643851 942560061 818864076 620160613 442969368 719638362 202854493 772993972 62553591 196922693 485073311 86373492 555499338 813925520 838657668 411945123 25062088 100086989 791854037 120902553 237156124 771500914 107408240 435298992 430365091 474913175 848754363 706971974 25468137 362968139 123971927 446463810 688786086 539710509 85768608 85728974 597884576 652128626 915601892 122105937 944389343 49792108 858553005 517825758 950402273 271291239 286978057 564216557 172276197 88317819 829042300 571781597 20624011 452268063 839399675 913704514 11134727 324726516 64136956 807633024 547809411 259568220 863846937 100566986 48222176 306028312 92048469 71153371 912854378 405127543 504918640 447947558 918470968 810942463 835152054 110287291 359325801 787624105 612138452 698200890 116882495 137668400 858939902 8626214 36453405 288754272 119172090 435120107 918133946 482762835 860945808 107996898 60133390 804143636 622595843 729971664 477059130 397081974 634330965 15154519 94284332 489497423 235470083 385006239 369373951 402944880 3461159 301242307 428967261 571833068 116310728 488400971 822011654 887373041 765067571 259007625 1537447 425071824 926864199 569460082 1727504 871099959 105747070 954189714 338323372 885829709 101254596 985068191 492114863 623561290 567837881 302161869 7261368 576065926 429667107 94210251 244199272 591973391 118750746 704823093 7792703 571543394 808245755 654742741 914332274 724821239 705428110 706732840 862497785 510522595 77592034 369126305 95039240 131737797 559011336 108034670 938166273 654101681 292480533 66918252 37063609 343569823 249781282 816764272 624813219 742100466 208081925 724739843 947335027 377018924 366522697 996034706 693399324 286099326 179514190 976575609 542982708 151073337 822215942 987541326 532233515 334557344 864080086 657180764 441573134 994998636 649487512 181495092 156397061 859901492 359973644 804636933 230111380 635480085 969108590 345387667 272675370 108785721 651964504 33497746 880480316 486005774 544411128 900340275 652377469 606190160 985408937 555132125 92526737 642046827 579702545 519518981 560739671 561712167 644113115 62514755 207853697 850938489 536097564 281134835 894574326 387419524 668583253 889585097 536472757 617330240 45216642 414316247 546608554 709331394 137582482 677123050 459233140 36385309 881706842 15059424 170973994 662692949 646826448 493525461 6235805 90440632 592851058 183143228 232938428 156245707 642489185 529188081 74113419 181722655 871303715 292172239 314214994 858196831 616825505 361216130 787865899 733517577 877779751 756229987 948036469 229200330 799222636 378662139 890809229 294242251 481702825 349190403 82933580 538753308 493750098 461513292 535176007 477899557 857378881 756460875 474912377 253869436 308705336 91751879 394720692 470427883 371712091 309486445 460244339 526154351 896758851 422997689 34893847 178646099 791858160 620771748 396043111 276481963 229808539 849025683 951629331 401311374 744776825 75806642 694136277 400863297 283124515 628338916 542609909 428914859 719386859 119429711 243359510 251157965 722128122 858651425 886136008 763050094 640851157 844544381 123789983 617420281 118626258 820520857 861324326 341746526 833577999 904080368 314112850 996352443 858217446 276345505 719572128 521378321 246117531 236054751 45230075 177130165 378272449 79404159 714638626 476590438 584869329 221185750 760896558 494060254 953139280 414749295 365730549 29506017 878955072 979168444 336964777 82010028 432898741 50517091 929989167 911860868 905504000 645617345 795643872 993172679 200993025 312884329 9472493 666077932 748377268 423808723 8631401 396081814 566814978 841913508 938347685 90074350 967643329 113712706 32740311 860555054 132158343 700471067 95931005 945130419 662319219 955835057 810647735 209343430 885174152 23052857 286205327 446614366 561561744 534377741 628336389 739259320 17925042 269020663 846008445 463913809 384033876 975860202 277703701 243005198 246898108 383992912 455607427 976984451 973919200 19178700 130711968 464118895 434141759 374141070 626276219 412351305 867935889 271197474 310455084 350576263 600190131 797933467 766017590 710116094 564857883 742116426 894077970 63182415 549202586 876937196 795056012 369064992 212893466 884721287 843492617 323417663 392204598 867737453 807670264 310809928 650565477 399375027 585741942 369648330 670956372 590840497 735042422 804225298 387949396 775535602 460390373 387478975 385387018 2142331 587469612 106097525 221159017 816589643 475637227 167811520 593541860 108911140 730229285 946376363 746275868 165391851 240983465 464227822 902837483 809815953 340539418 719086811 28302500 201872288 883570704 710170225 343236791 997756524 596166615 918347677 525442934 205860559 323619424 76226124 520489216 667491855 353194900 632132741 444287132 980565210 88997981 698519558 481409427 646085106 259167624 68776661 16833378 762842614 341985128 35945744 994901280 247933513 126081573 634328039 526012706 987026217 171774920 13256077 296824313 844911461 887892805 350327686 227637447 682930495 708354110 301119016 23982793 919003234 44849296 817598448 738740221 264817996 511732629 413149305 227850912 535382024 550137044 939802173 409235647 625724402 758440314 286350563 680523727 976674295 264395322 498348972 438143197 377852036 633688841 829310295 95720998 429422254 139523617 246996661 890762413 797903143 486242647 885492421 789917557 20157846 381108408 651623492 944663323 989003528 610991061 844772875 682794569 65463099 55444741 155810132 66549842 971855971 362703602 193947084 958310453 748872959 128453096 493481837 373385364 710390739 177365176 129170232 269425914 190896463 174865175 332759982 273501034 856509460 168088293 731511272 53064972 480985822 615894372 849409388 372799898 192657383 294315401 613886604 865765728 888402195 883937917 502355464 45942689 439086965 447444552 72707077 232307210 109347114 377616892 687179313 33579408 386546113 975765240 488070200 752094485 512605641 553234348 557301355 820947787 356648644 990627591 120993525 97424861 29179103 850152725 17557031 677645208 433842509 86434805 978754282 3629005 154291671 624687933 370852246 832224857 296196287 566572386 538817813 335708193 432620106 614195563 836686342 906507219 115829268 561559616 94059296 797404127 275954751 955986411 622037908 439162908 230807236 700377834 419863278 498095208 760115449 213589588 172270212 549605576 200766792 460763305 388797404 537112221 7825421 185165493 363798458 547158376 339251047 597923944 193941897 786966686 929986241 287344206 324183876 364102629 204015051 42263643 37668493 518028051 864928759 467777592 199175447 781989826 848393800 564278402 413077219 550982924 705878581 302910260 332534015 475285974 618839391 633262975 198511378 701425475 708017753 687968136 412359285 444893479 758109809 579667699 35548207 262631476 387185843 56466846 483046391 115918112 480967867 404835342 515251144 113469449 246128171 328448521 655453360 387660387 335985631 823558311 577522010 416708385 126542285 690476649 922456446 724405082 543123156 166858442 593667146 583569919 898153489 341322921 73386441 265614533 145159359 441753349 857131501 92361019 561312768 682944194 413364366 791747371 45257473 692123854 153719771 474905727 891461328 659261815 162941592 914119873 887483830 938459272 184323603 608240222 699049962 819776722 385051060 843136709 553002130 141529257 593612350 511323787 314753910 630800480 890423662 564674609 577374380 376970379 84421983 813038144 232802369 76620868 801634990 210487230 847564412 910664533 288051766 570612261 937125282 985415321 797735962 625439649 908092047 222158246 208819543 321531590 421806009 420720330 616845588 444297772 244064011 280635287 470093388 525873455 571947448 730254023 413710831 29521578 457440832 895576215 886185883 638943671 337259106 105464977 697657984 951215169 791447589 942833376 143957704 53688875 214952971 766160166 798480762 521551886 881427143 729113947 455288759 306264653 517756598 51772744 165867459 546896100 313687516 70600756 153901050 276009946 277482921 441533101 978625937 553035779 645502699 525120143 812417300 214892988 774886296 966169024 745968372 952458453 495782604 500180 869311109 134599026 68690078 876559609 657722207 769528258 322131819 788965410 960080550 942009441 909198873 220255016 107125216 503436355 502190677 202724153 659095033 148847316 201548965 524088994 423019235 35296970 801163239 436011473 529949240 88548973 240352247 3311401 466361275 937196969 658407423 840266436 274623820 55768197 99707407 571834398 905092897 822408260 352984361 492958748 864153635 266411070 511680892 59342439 889725545 999044895 537527979 321731755 795205903 756912410 257975412 675682926 42463409 301953458 237558981 897143487 450085001 262278361 54169005 467226174 435163066 504034988 202410273 732999941 960238554 740697582 133932563 3969618 946799968 919044331 860186511 39537941 323148471 646383026 946422248 199577373 946148667 162075363 451851906 462501748 26477607 46988601 831609466 341430917 969495886 729868057 889370701 184319746 443126973 578649584 744556843 334740352 20148137 812464648 357585496 994027071 692044719 896600980 371748400 112585132 271834411 405879392 122514380 107486710 165100581 19673327 137457728 864918651 166605742 781738722 186783704 760863042 514872892 999674384 332398754 952426533 830817850 336493026 496007507 973919067 256438730 997967063 936807013 117249442 93843570 473118473 158780155 875915889 329770408 979562523 107764946 932941501 644701507 942671914 404970736 641802772 857396570 916819374 382482032 145070515 74364257 157167796 346364685 87883175 277775521 131010021 190803496 67785944 220133321 503921406 387555982 980997460 278591343 847353740 933125041 620855272 527377685 677460338 653104181 886234694 297934730 711921569 694270341 300785452 555418873 305830541 59931230 650474106 255099952 106996605 493260392 15942544 814602224 157591268 808421714 61979031 997174649 31012375 958455157 188950939 451317645 995335259 757141037 42228531 363956994 920136261 99552063 820439727 530099663 742540829 316658736 424363865 471681807 406652122 61868907 197195476 805586553 741057613 595756443 990883084 126212179 58800597 668004703 364490191 712478972 174884726 211197184 949459702 541190932 897122739 850696961 161679289 538566709 762036634 627251907 315995199 331695051 344884528 722332942 719616816 925002997 159007452 4733038 318085826 335980710 176277369 420555676 763977902 340843589 487930550 711180759 244087552 352825559 725410429 147151300 98153834 311219967 890647368 445653042 821196231 215803107 10199870 459483446 771585502 59771098 478136696 417421664 640296414 477913522 269576470 555682878 522318232 657449291 662326933 437894088 605254372 482338831 174327456 924327357 601904900 261544201 289216447 601847178 966429704 447257288 680244693 216359313 953866923 998682204 341633875 505288513 158723763 388034915 46350733 440425743 761852163 468029228 606669093 517125513 808265439 416194207 493935500 65845474 776614365 173451917 87972285 169943909 681097090 520876911 968582176 806279616 325191484 71936608 233961065 879825690 50725768 734694760 947685083 447755506 988588967 851188529 293985162 90356310 816528729 197258252 530803233 120618864 491109250 767758826 92566105 272088308 983348368 63437110 718310623 52408484 588612880 894528973 507827749 509325462 49513074 602075539 279348379 291235786 127066305 257295782 638044059 674564396 683981328 465564871 583195657 976386616 756865727 881101160 125966262 704343229 375464686 479102808 987854142 940586607 678682741 887537429 608020373 467674783 32031421 987111736 937530932 864551970 523278359 4371145 560853652 796550666 638164291 38609335 310901166 390981929 584645889 854866245 703085315 945348938 705963568 553279435 30459627 59049440 896411721 540642706 443890925 855325095 917894280 863045612 946977656 717411942 52412474 146672766 979352516 552385010 602047609 956569084 450045766 37154581 34910073 98909939 774335410 673737801 672590942 343527795 692888870 10807946 753369556 465797754 434947739 640821498 461309403 363107390 228138325 786525658 329106738 468405618 325828288 331902930 225837558 195684596 159293136 418501890 818857293 847681053 640704857 218402193 995438866 317227843 839180757 57499192 947580545 871621186 496191579 342139807 157267413 260472088 791642434 850854566 58088116 573339426 271398836 276157177 1385827 916932291 280952891 186641660 279660131 130929423 737670103 83150237 950038385 44947583 810587220 904956040 505770106 366742546 786698558 14970979 999563595 47368715 453590482 287420016 849428407 263762109 58637672 781090613 491315267 490071717 158603797 168914755 301283005 16808374 320159163 363186924 163086961 683741662 520508368 624216049 775693340 752714132 954194502 923398618 158826838 624243314 721064654 63673584 615029207 937933523 647081675 356286751 817112067 261143738 164901480 672769561 305600717 586029222 701732040 683482312 644997166 607767407 201314220 195180792 295123642 436473914 846649771 790382791 211513325 13255678 522112215 427054189 517853422 978829959 890081320 193587452 522386860 109625217 740535987 967745739 558332371 170813330 738342152 756037935 677712373 869211359 313684989 705265850 828940954 645312642 415449673 610077351 718698451 425629626 286333406 714961683 212467334 982834323 959124147 325560825 388196244 599665579 788393909 781541749 186161929 619383228 303847910 511736885 870170156 510563958 493837878 80977416 801437751 296823781 880561047 446857889 642207890 667646135 296552727 800338772 863668584 609936371 106482028 706149103 117220182 696833650 935133341 124709146 976852515 558318406 809671249 927335551 389727207 421074642 526687548 137871757 657470039 351390755 66744820 364840646 680201468 904743107 919628467 755320666 159307766 968323757 542603259 245791681 297452472 652111735 264318980 414582380 395232210 776716110 325577716 381653974 850825838 447747393 327407530 173674426 280907937 510198607 832684505 306511368 350738789 730401919 420257756 24256773 548784966 126937827 539779802 234619947 965992134 294455051 370133780 462219788 752459969 430548631 232789734 737455973 262471477 771094865 49390980 481229345 825868122 738379126 536526888 692687242 249163231 796098067 892651944 262571892 710896405 358586454 548248045 375541959 442916833 43020280 711548371 978334667 192028426 902340861 455930085 465078224 157053283 276646218 633294363 749669363 455960808 131996349 90787097 416167075 634595901 904021715 626840671 981906 114358155 406643211 317386512 18920813 495931165 785181028 572239782 886539796 848956390 166937311 746809331 940367689 713797002 503367727 292850938 692408474 408391363 709815647 167338971 462428332 107434175 528947617 237675489 782618650 757239590 999456929 524521244 589191696 351191521 303271222 296265181 387636846 62454107 712414201 690225944 461516484 753659230 824733499 259561038 981568163 627745204 687783532 499256431 797113921 512643945 154007982 326508317 612935255 741109616 59600459 629968698 395719256 259525926 810670478 668739927 33579541 498131251 335474645 989001932 213995238 861012973 387613438 728860715 994760034 820699077 872644887 871742349 405918893 379780802 810892987 90204025 541295603 329981878 939491618 581897178 373212597 513758352 760690807 980354272 538792676 974636868 745302308 495750817 304871345 578517781 192404151 377058292 818198544 594090618 930681299 164857457 937205747 316295247 972625509 152431267 793876169 681333697 628811731 82317923 276900514 361834713 365855170 41420290 969633408 95728845 185375101 622417224 350446189 228950423 400367207 574820780 695239645 649263407 253276123 731593333 935330314 318906170 743349203 583268275 94814603 889231583 348561712 862011271 283421637 789528931 675870988 135006405 797508133 177794234 929650150 890058710 25086427 437877197 664366754 335922190 126823979 786421386 452642591 102151415 925559735 114165039 820628587 874551043 388790222 628924116 834475217 105694801 940429135 202592483 929508106 601779481 696858521 758554827 315455086 169756246 660390187 639259945 296106512 480354471 388504006 467228834 701651442 700121410 970135084 972165994 278915065 804831379 864274266 397246495 916759923 623577915 293138617 427936378 682393308 522509619 13817470 401828877 279300765 883106933 932061307 667348481 890475532 350466405 181807110 635963939 479739346 720984189 258563937 719670282 203603549 445276918 142078813 67431100 102025996 997564073 820776882 753149308 457140252 527690501 43519163 89355086 953141674 108300005 430227968 624262732 47108567 40918614 234026767 432512243 993823847 699446036 794909180 196481931 725741732 353575812 241651657 148035085 172399621 81462201 569724752 367856022 588463521 106421247 795292619 368908451 746204181 453826557 569962556 221272865 722441337 432304497 672240354 115532013 286164762 748617067 880998617 631215972 218219451 242004905 196332306 149197505 806333880 697147929 505341314 827685434 758501361 20214770 362017322 516726513 695858228 725613919 403271528 426859078 452234946 592329299 833098667 753177504 538080860 211488853 889630849 779425586 924668502 171331099 652699196 618804412 679537931 177109417 276153453 204110013 276219820 104054512 698683148 896735310 721570453 79868595 441915077 332802808 101929039 29607629 578357782 416117067 128315707 297574167 427322982 935531277 789453121 175130909 672181834 554367907 925370476 920041831 84973135 902628407 889209106 479702106 560418476 562949333 978577924 717237180 807732774 206714419 651207734 640454152 552152526 927065295 365226479 212097727 600051279 547312390 868539975 392823048 481509576 484542774 8511169 56484801 899387064 748489121 464039893 632859586 485397964 409120203 484573630 599546145 514657432 640398292 782853661 834913186 554580441 951508966 847566806 18811221 299154473 652994323 330992146 80649704 241615215 503689188 283719557 517832009 798697951 742170025 322348875 650064466 538243785 303080234 640748215 619876924 792432321 602958925 81962414 461853107 358134653 643994479 658909764 970222598 107077602 461762534 206777993 548265202 178987776 301449787 79200270 38433376 429687722 39722944 231086935 192886808 665104505 736939534 706585476 69754344 246635699 101305934 385092290 218796804 127887181 129557129 924769449 21926879 289840882 35369189 702582708 494161201 10450974 316725502 420015430 894461808 816720116 760070761 53249443 777200230 570740340 339772274 712681398 2353535 710864751 596825364 605862847 939215377 991089101 873720325 74785202 257515498 892930579 957315746 382375898 297514051 432858043 646059171 201204894 139007045 420266800 907683737 410003589 1379576 326004646 519641208 219418978 250195710 863959189 541422751 100489580 791840471 638437473 700764465 494572171 567042541 96399830 563685488 499032592 123398963 616830027 608829412 244204326 711711296 245509056 389428223 471548009 682081290 396002413 246074971 709491260 524526032 690727487 374977374 129857709 810142202 767450931 797271526 195194624 473602726 70038432 431941806 295474097 764713658 632429996 344368355 620434194 772064568 635943058 525401172 628282258 281356546 410556869 137945971 38753640 394824565 34819899 469236735 328527789 463224071 809414293 214413922 989746998 963501842 452265536 679595786 144652895 730182602 190454637 38864562 651219172 639622769 619798321 139788686 535941954 227926456 417800182 767801253 503343255 76617543 204411657 820474174 821556262 886011919 848065822 617331437 987510603 76155102 241123381 30690781 325379679 202299085 933223993 76502232 501671578 613465659 676849336 277919826 178846929 960123110 239086220 716659428 461633790 343124539 648965753 495736187 625951167 177530096 607784963 798077772 956100791 46523101 783232046 573483731 78614139 727754687 872840530 572892945 566641546 529349277 581183899 289816144 43288408 892569484 138616557 109932181 795708111 236162082 567907440 410016091 484234879 57349168 909599868 123889866 106149262 733177762 842894915 160304734 529665019 131095673 254665574 521856323 505019188 299766539 462517309 381038849 747797920 910256223 105599573 323736730 535969086 46021824 78263684 197703403 187583167 490760391 332585619 329656826 709168336 866743810 82592967 836911245 802827335 655614822 795430939 632430661 680704607 222562832 579466470 132657093 563787233 932668851 679691546 846697252 47032757 996743729 329790757 149199101 850786204 738927352 687698545 42231324 649883453 962268134 919597345 69990685 55938570 230424994 839287689 621423049 211502419 284394266 716403270 46650648 806967891 438667084 715918086 215351838 814287679 241136681 407236391 259416733 968467131 747967229 276080170 428047300 891427812 586391381 993171349 813643560 602699575 49965673 546299994 777501475 479973958 581824028 37485086 395918224 947124887 915619847 942370669 548551285 90263875 997850555 787356775 23094486 696772204 754463215 204601581 952936322 325530634 504739223 985427158 508435958 710588909 653160041 381863050 313604524 741289432 645756064 156430311 307042437 786798574 416613024 905763882 147778129 337733783 641661925 786984508 385478921 910889569 686917037 398123231 922885637 740729236 996084182 470937539 86820372 789144162 468563755 45019403 960179502 847190017 112507061 233200970 39125641 585414097 665897983 625640479 303130907 267002787 787086918 88507344 651808761 548267330 531370744 268586684 225121087 613744693 617174630 515997407 101480031 759975799 446906833 278021438 383829455 99103587 189078752 586505229 189233564 858557527 533973155 987506480 890854981 789450461 51201110 467876012 573543581 504139792 791755484 105108005 214201787 164922228 725148153 111381748 192747424 808374499 368111116 937839891 227608054 266667760 359121114 390051195 566543924 656230213 297624441 973667830 248678978 486832635 952058256 551452414 655242156 624192907 70952408 372483757 770037914 328149271 562185780 129857709 958521524 272977546 823508569 309634474 365404167 499334768 444612051 459650361 353985585 555002849 258424420 227976464 614158722 682154440 318917076 164707832 484228495 461273094 478497791 638014932 588352599 842558558 919019992 78374606 231329660 779150409 628875970 879642549 280644730 147213012 486931986 446632454 224760923 91179048 694744885 10266503 748725329 324339353 10599136 35513494 45020068 252753433 25742649 823265578 36227970 372947528 356842026 299332028 468099053 880120817 502840781 498899725 952454330 13482576 35733077 13590306 839183284 70259345 10094268 191587797 853212124 741592539 452550023 498080445 26776857 148371309 106389992 237500860 133002095 522301341 505663573 763026553 635846766 282251769 773263962 596305068 659942509 969842351 213412166 824819284 709385525 906677459 494791222 851308229 583189406 278561817 164759303 424553390 662258305 969256353 548131271 267489700 541602301 648528582 985933090 583662487 240095557 333977464 812585412 704933350 296754887 485418446 786326823 195391996 745571367 82262728 609213117 584359939 138969938 733181087 525051 487025485 463959029 785976634 226637154 352315504 718897020 851867361 296596750 626799707 149785897 229611965 831861102 433812717 449748910 543550352 5861942 709273406 339644062 262818341 212436212 146507713 15925919 113571460 269496005 799359227 577830703 802747136 192034411 41819556 110787504 412822790 165123989 505742309 374574517 500925049 580866428 661377313 779528129 726139136 613133957 206802199 373130137 446666236 50816341 923958947 19034927 410840824 172342697 718090774 342696811 353198890 737455441 514630167 854002543 741269482 342801482 193150281 548235942 604065352 943502765 793631183 633784601 15028701 811864286 770996977 129920086 945846890 825114544 334495765 408239743 221353862 526684888 805531491 614971352 760647449 874772089 169882596 599327759 88480611 968857220 831593772 254262185 929459827 783307590 693509714 961851711 716075292 430527750 412325503 148869527 705200148 257581732 985404814 885987713 569003493 951786271 139399661 510611572 891966329 569062013 682380141 798194812 765088319 804413892 99535438 81462733 311616706 692798563 796668105 757175750 259751760 468792781 431894458 850166158 145562881 979308759 26750656 320479294 115723533 91019182 357419911 305894248 457549493 203686142 289186655 675964088 804368406 329592055 429658063 964308886 50758353 953271615 794095885 359020300 218888308 59051302 74609110 58030261 988842465 186746863 122721328 796701621 723104475 153982845 341434774 349828271 393543376 337988478 108872437 554052032 381362970 340125123 934698032 215348114 277387959 685559905 869715163 599526594 652471899 908290483 667434798 174573772 342175451 920976954 676023273 320382071 443517993 294853386 747348513 540999412 865530983 42455695 790212152 639952875 445829001 824331573 490464200 807900753 208112382 789806236 950059532 748035591 973235181 151856042 761729005 170004690 69087083 268398888 583474159 256880024 672543195 609949671 285059665 431377753 566534747 488142419 905747656 103479686 580630885 303978649 237076590 910358500 385143495 710235262 108850359 494898021 6720856 37891667 449218107 322213614 193874067 909176396 96754674 519872628 121348502 469585727 134989381 686934194 638510889 534976773 649185602 453820306 708846077 27332664 13340000 237259465 407800045 833015143 970184028 466148342 988946737 11323986 365483701 92436297 146655077 731955891 890347187 566632103 385090162 523290994 900507855 956412144 954432173 728429928 110001474 476280282 571997323 759944145 50046936 733009783 651395530 21073950 196527816 668287993 454057312 725226889 416783796 550746051 353124144 464707952 188386620 335605517 465942325 627727 759486093 465665153 375022461 721934208 753754724 874201120 413693940 81623796 902703818 281348832 58658952 11285549 799412959 193774317 582947479 133649007 19553361 201815364 663975734 680691440 682236634 343183724 67790732 820921054 538391814 360430898 769939228 944395594 386369755 745490104 421683383 273527368 365564964 54704995 570063104 335575592 790938598 688134386 444395261 685376897 705707942 19787042 194864917 857599661 160743900 868461372 234762789 452545634 877134036 503073664 767581404 501733556 103018442 173497802 309776252 353948877 306960509 606254266 643585371 576059143 438964472 395466556 604511966 11334493 833681074 200165765 751781270 339713488 810394902 51715288 264610516 652737101 187652194 745958530 763982557 463576122 126362735 77555991 372931967 928775409 464425061 406743892 207845584 478515746 424452443 419020058 666260674 358910043 472154223 804559926 526810573 52626471 848414016 808980447 5873114 234418718 537590090 157580229 645101438 584804425 330538084 66085273 588977566 233861182 532376224 125573380 266903037 205684999 488227007 21443291 592448866 410594774 80313081 178981126 774891217 924291713 398671191 812666010 561692217 747762010 142559874 267101872 596106100 810657976 715028582 484235278 635095715 733716146 104609521 367920926 992185154 562694904 737813078 444719 278481618 155423634 659434449 222068471 215916423 531377394 636250288 90143377 717737127 788163420 586079496 193497411 194700662 967037647 386177836 49080425 509549833 618786457 936416126 161426855 25457098 488965157 885149148 479647709 181192650 134629217 190152993 790620329 679260493 495190355 914192491 103755262 996866887 17019179 506838096 113683446 395989512 380500598 486081052 493973804 299113509 97980934 598580166 873867024 481282811 778012328 359383257 210977202 255740613 728664806 634217915 523664857 285051685 236297742 730271047 100898821 662965998 863269850 125937135 92420470 863203350 305544990 88300130 597797461 569524587 50956523 300827879 538583999 689665881 8908041 607870881 665698084 442208608 157550836 274724634 953292895 759792525 945471032 187043054 782285086 48735157 160391982 590924819 954916293 859291288 716207361 715841478 934301426 85998565 870850717 836204882 179042572 373050869 654693398 227627871 133574527 891765765 47891804 622902275 259181323 452648842 106867329 845816393 102368604 819194182 233848281 693468883 407775839 843080184 694399484 658139162 639453460 946920998 227913688 784235930 212552853 457219520 343302626 202496324 749026574 231290824 392801369 873949218 866774001 203188323 867061813 938195134 889683783 113286042 79785204 303793247 142328853 52576197 635557757 170385070 181776786 423126699 567449920 738719872 36600636 343669972 318707335 240383369 218979280 651624423 673789272 68576363 462399338 900528337 931982970 654595643 144033248 205799645 511482456 223586932 220563177 899805083 265110596 425440101 86627921 287364156 998460360 601522791 178196958 472146509 186155811 261010472 939985181 872172338 350595814 127876408 272829916 750662208 852226594 686651569 71588414 91944064 471909636 856493101 315039993 65735084 145585624 997766499 236138408 741552772 440969979 714694486 729557103 144069291 428326999 628388658 721904283 453018183 511181610 843688659 151370193 820493858 584918007 402749636 784117560 829749860 302101886 759437149 446408748 529067583 470724872 260260485 456432825 897033762 694106618 479659812 205951930 512229517 997447565 213414028 653085428 481276826 671982467 25170616 503820060 169897492 364723872 230250764 357927838 926343903 331187257 233137662 49190017 908201240 229632314 323519142 816935842 177283780 338782488 284873465 742413947 622960130 231061532 462412771 913454607 81099776 965180302 380014483 809781506 504030200 857405348 40281677 832889990 759166228 446628730 884888601 359684768 968875175 55083247 797357976 344235089 220560650 746331994 642004001 105859721 467053939 66828344 249353820 571918853 49740903 318067605 134472277 784484507 858991772 594172945 771303276 473168614 652648789 995678000 4516115 797114320 176891563 956758210 45498203 340302279 581806472 946476645 272530134 864693083 530243968 495617152 545172952 820961353 76555831 229171868 742880644 815859207 285094112 700729752 653535367 902664583 306577868 988957244 727417266 962019291 501841818 587726834 197217288 758022428 594044733 111730208 453174059 105241005 608804940 938428416 728213404 972900819 657116126 33135055 679819891 481745651 227882167 21728709 156268583 61294613 34841711 885893150 223369610 572168228 433421298 805706253 794939105 758919114 884582834 981367333 943842846 265803260 109529856 829432256 192792910 214301404 614489892 692372165 225586587 324822808 621957975 64151453 164039108 904950986 315550447 552672556 613763313 168052383 969451065 815911742 425323992 188561781 970250528 418504816 621963960 669668001 400191780 764692378 539109615 876359843 476421395 893678970 135519652 211036786 882714051 381391166 901548314 302758906 758219534 76281851 327275860 178843072 535186514 172934414 945842368 769757018 805361783 256055291 257455116 545416741 439665 490375356 954737408 303969605 236958619 825008543 736178774 962149897 153258394 617188329 407756554 667950040 323305943 57316051 157511601 910679961 360074591 595225640 224780474 378527144 303622741 985106229 259760804 98722542 94808618 947534793 717740984 534291823 636487959 286726953 790103491 625065653 720480917 48293996 776310194 403966586 762426058 358617443 333091684 134397531 540135976 965039854 617749456 69664569 104722172 653993818 703520225 152349472 106892333 456332809 493818992 669968315 429249886 900315537 772290535 543523885 165121595 971059567 818558708 836692061 802438975 77840079 188919285 319902340 657339699 914274286 496664926 871505476 928638552 109368261 746173591 429337666 691134068 624902728 628257919 913894305 330236972 129095752 365379828 418441375 162480880 481085439 535138634 429527457 127355048 713990650 597534653 767353974 657462591 904553183 932120093 309651498 769035493 955039185 185492141 986295914 402765197 79167286 250546564 636054113 620634492 100151494 949702161 970040122 598657971 143456826 36885788 819763954 749140422 148534766 759310134 815410598 463969802 609603605 960305852 919083300 541355586 293063472 830471784 350075917 668444534 306419332 753442972 606230991 488071131 961636251 694157690 832676259 158377830 221732912 97866554 93022827 789433570 688529263 107617582 345642761 316417873 872432087 985738112 842130298 133333930 798896387 915437504 896792500 861450809 26040170 728326454 359322476 393539386 330819512 368538046 808574132 356478537 888706632 932037899 953450766 139923814 607222905 463717102 939808690 381076222 91171600 492693812 648843925 259167092 740419878 782741409 772287210 914738855 365769252 656208667 465036861 135025690 345707399 121861749 759768851 53595908 675212771 898870226 942421475 68787301 623854422 366603561 652858264 558964387 935836512 558757040 743619991 93316491 829105741 703189055 592746121 260048616 911488202 353307551 862095194 721354860 128807009 151958984 279654811 466199281 539719420 656688930 133760993 120284369 835764785 121132776 972198180 872422644 344128556 586718827 821673701 207500582 702856289 174806788 754821517 875044606 449856640 971714459 949483110 28976278 941468397 695316918 539564741 286366124 229289839 862283921 594549069 515929976 678415810 651977006 252044543 510805353 12709580 467442033 658430831 701162667 7846967 178454047 301728821 734445252 563594117 621435817 441386003 579729943 1708086 85349924 312502885 7196597 379987883 21021149 347523647 689357055 724823500 529221331 753432997 10072456 392980121 999562531 554807738 917859966 919852705 407762672 372763190 586674272 886789171 153672822 20846919 825457551 208806243 12906420 632543179 471490553 512817510 185543745 629262468 280215672 968600796 941548197 201868963 14668005 846385500 168182723 118609500 703088374 886503753 647728454 675899982 535318583 177969395 842070847 565244381 540147946 500416324 235554139 588248859 424967951 167816574 80145235 117718134 354379132 46356319 874001487 524593862 822479415 206646057 449103727 837340037 67452513 663712261 958417119 374441650 376309768 573380124 380933779 158745575 455468974 666727371 888221847 471909503 604769188 39026423 356979149 791535369 461434955 183421863 280700058 336870613 558642793 318336398 874404211 561624919 724022840 441708927 519370287 297315615 655857281 732336537 706944044 911696480 909185440 290195327 573418960 922117296 17113476 786345975 39490992 457407183 454623626 826926669 819942440 318707734 937485978 6157601 390567235 980857677 742702158 437385629 340243360 806317521 182438993 780636285 651285805 678156593 716711830 860087559 347713704 803798767 377607316 863497147 229777550 836814421 894970400 590148232 456688983 550893681 997447831 952904003 805883143 538022473 774490887 677815714 828417067 35221426 343206866 791886090 489084059 547636245 539027953 51851879 139364150 240083720 914587634 692711049 785682305 771256859 202690105 216367160 458397634 63056065 205987574 317444766 888233285 13751901 456519541 922657808 381286362 102951144 404154 265806319 940378329 377452238 634463965 613258977 94670032 435066242 940660156 251037866 519982353 590625702 447053665 936460548 938756793 596597535 792686617 226379666 757186257 635826683 114677621 99784414 110952424 748376869 601080965 524829538 683682078 104990167 251720023 890436430 490505430 520171612 29638086 608113074 11992444 832894911 955718416 380607131 116947000 632264544 500621011 118382602 775425744 183506717 23536445 148543943 452668260 921289903 791196352 778285244 550860431 639122157 15170213 170426832 687337450 813010746 191917637 872083228 671379844 222054639 653751093 264216969 841949950 677696413 989210210 39668148 378646445 671876865 127533268 839344879 446980116 580752580 770572175 767353442 213317736 487014579 49698343 193459373 698779041 503563503 74674014 286097198 3274959 863988848 738995714 956392460 272000395 799192977 226091987 860539493 33584728 269345715 639532329 288058682 806558517 874979569 410610069 771488944 728965918 246380339 335766580 977586542 336877130 393304907 648332008 591390718 596938680 245859112 808121932 255417290 533772325 806505849 890031844 267102936 634706956 638972665 708409970 355852905 621383947 848480915 168851447 159139255 873304833 852666159 435614202 163197351 524878482 396529891 383307563 663095008 881763234 456232926 934848056 21841360 819521362 993167758 116160837 246855548 250734892 184957614 483788265 794688666 819243126 575883184 712542280 946593419 404119137 614311406 777669321 66552635 344557481 875926662 355501120 326415483 304381772 21884585 184847357 360857296 484246583 86849100 339342950 80134861 303784868 58191324 268928760 838546347 862090672 622177824 423539132 25379027 40495408 664133206 732428440 550865884 32134895 407469008 151956590 739073253 802653504 427883843 643171741 811474197 613656913 914983575 450785379 544507021 385331823 190000176 799770330 485891660 690332876 578741221 275281904 106366584 563957074 390618839 774215577 159021284 821806701 393207950 344556417 306002776 840767846 265939585 696724856 653579789 115735370 274757086 85764751 709758191 740697715 544610362 720577209 984786896 570148889 736691888 8854974 22570865 17461271 977071300 373301175 577395793 120330387 267512044 731134882 835108563 136381625 385545288 213152949 462821081 185929312 473177658 972134340 66433866 536217397 571734781 40144155 687843116 598290625 625331653 787893164 274148212 972707304 604921340 740052266 519405665 870299831 810351012 995688241 765010647 864483076 772211267 795885134 726213882 361316146 441571937 163587573 624973218 467772272 347531760 652349805 232602603 742453049 944075862 889636435 398978421 314903136 405169837 205413413 649592316 577585717 166162852 874316298 192729203 213492764 943084480 83709103 737460096 437800323 434371716 757482315 772526743 674406126 887797311 454098276 285118318 94099728 307114656 426280927 781268966 285745679 904661977 403764958 25251081 299481919 735708486 226023492 586097584 317603036 248222655 384588087 289999019 841902203 856404257 910201294 231181365 70869948 558386103 382634184 799195637 140362847 347391578 14957280 630094782 843772582 928647463 624202882 984312884 585671186 58135464 311453914 131812144 148415731 243231564 923785116 872193352 975693819 613464861 832944653 938901630 131355422 903072228 122405453 370448458 355765923 132088784 401904687 201959403 932077134 572610586 672732720 589149003 386105218 69346300 359271537 336181939 911112876 367407280 652811980 410233679 523765405 77432035 781178792 824809575 13904186 627408847 20998805 494772336 37507164 754867801 37248745 975848232 623466328 287535593 152198650 111538954 751616350 404104374 596218219 815622866 566047834 869633235 803954244 942856917 178159452 831317265 770984076 627935128 792843823 943414054 491468483 982259098 538544099 818863943 338484701 742695907 147277118 386879943 239850837 9187208 381862252 488013542 977859458 708111651 927432774 605174971 242938432 563128617 751110418 865217502 137331777 842329133 726522708 804684680 783194806 772025067 247638785 498866608 606659783 904294897 241779071 354006067 154009312 201532340 501150085 941577989 886519181 565829182 401673400 918581225 187304399 912842541 367698550 124103996 200245831 915216458 84799304 572417736 903715017 95126355 501404115 343825050 469346992 400573623 706029270 915897285 238281969 91360061 379066459 32802821 458264235 784637324 936396442 620172716 493941086 507550045 958817183 542347500 160471915 630295479 489324656 156274967 904193418 51882203 377213370 926284851 600951024 845093671 754588235 989506002 244830623 632831523 506813491 174378794 11187528 252456311 909229995 382243297 198707021 949857638 267893887 839968117 166898874 853616577 188681880 416187291 450311500 222218229 385445804 960530755 177353339 901850623 507232441 425559934 548522557 348905251 174775666 345149730 190691909 375676156 342823028 594644962 264343851 118140542 91916134 245978679 8636721 910382440 430978487 9965923 762018014 673172817 99920872 341915702 442976151 488801833 604408226 559725147 446275748 370692912 23957789 792693400 493731478 734541544 339132677 612759030 205237321 960517588 77812814 34815909 159720465 775501554 173144155 867134564 93772149 484773662 798147198 729985363 397115091 339012711 64587294 658818127 751445445 587064893 996683613 108133356 643490675 140200321 790455409 294513438 374637027 888283825 187588088 10240834 646394730 701311627 850240106 832789043 754874451 897684930 505032488 18758952 826360089 993480973 354635290 356158273 85347530 351472816 268046571 578144849 253591333 466644964 618470981 647360842 201778523 811017874 193126075 649288544 686898018 802317812 884304465 655997463 325406944 37804951 185879836 561745151 904692434 47454633 682474837 548515774 958969734 280689418 144125550 70056254 796266844 257833102 676087246 678348778 654443358 669847418 782948224 9472493 378983334 245426729 912410158 267263068 816140103 29779066 935852339 700896401 87469013 976625750 26932733 222691842 377339188 501192512 931184571 147011251 929762934 344133477 325658181 705147613 363573023 785669936 972366026 464244181 411988747 514959608 158870462 910901539 728324060 529815575 807942515 190120275 216107411 873600226 264003637 186899946 876226843 747136245 410598099 171502802 274339599 936933230 913275190 38800722 874312175 318503313 614201282 825876767 993353825 17719158 277174095 522010869 206609482 972090450 8942222 860039280 422312207 936545402 358052592 320758594 752419936 410979410 808683192 902113431 184436653 304374723 362018519 966119415 125401145 711655436 97429782 74233651 162217274 661144031 248309371 200917082 521752450 249724092 37917070 886223522 692659445 988006959 963771566 822992529 219678727 755724321 691136861 905576219 400286476 224292364 987416971 239242894 527474376 505161365 262075935 865428174 646185388 777479530 991348717 635952235 976495011 782845016 248971844 500398768 302814633 866661217 14627706 353197028 945757514 779117159 941949724 939036625 568918506 469450067 117541111 365714722 149765681 408168588 805974115 893685886 144726178 612518699 990494458 21085255 178146551 769647559 883962655 508352434 632196182 151758021 432014823 840122131 27234776 817219265 526700582 604523803 968696024 154578818 224423768 642067043 360375038 588112002 313486819 188497941 53738484 328317915 621433822 455839512 441688977 174352061 579191426 897090553 683963107 239632717 173448725 600348800 804016621 788301208 556984017 117614660 467138793 408877478 774247364 718144240 944199951 611699286 620568923 686374397 580774791 437898876 885173088 957803457 109180066 841504533 400666590 254582050 742582192 995249474 660861406 95187136 537814328 215687264 809914373 402019067 925892102 569368046 746589083 327705583 118046112 442704299 210698035 380740264 140779935 382592023 877576926 812427940 968281064 578668736 926252665 12256848 945023620 853393536 990905162 353180270 159784571 135857472 500680861 362484817 794397795 251707920 433446169 242495808 593533614 128203854 143626401 850798174 872011940 290460928 682051099 235009770 689085868 945584348 297690808 694069378 202210241 198240989 482209289 696354185 717397578 577868342 469220243 632207487 830387329 329400668 162928026 305498440 173170223 41289817 809813426 563291675 420906131 886487394 887094672 165198602 460783388 233879137 271531304 996987917 290201312 278266025 963167746 572746379 595314617 445000145 957462844 692116938 822956087 61816106 634105929 62515420 377949924 649052336 338144753 742073334 711431597 470559154 665153582 235926938 250414362 337341433 890172026 537652068 317169722 267854918 932926472 247935907 887720437 881532213 157895306 493527057 411413123 364257973 311692117 208627358 923635358 109428510 245396006 503461093 276735328 88023623 775340890 20123798 317062258 844514190 16469091 755897886 182932556 460320149 717296099 486047004 117755241 202051173 371128354 277565780 288574988 984680097 880049928 187830148 172784922 416291430 296948003 917400584 605811376 422629944 222928316 817621324 566383127 953608371 75964114 983428833 997188481 105028737 636458965 906996393 317915985 69902772 3043672 211667206 677789779 400151215 365172614 871640205 642607289 722805225 297194053 122209677 384192279 958798962 657582956 787544571 690582916 338584185 863159593 472499624 837987880 538252696 396965466 375818200 514832992 98723340 441407815 726195528 817691016 572924333 367318037 626149470 857322090 13062296 73147440 29960877 639208208 983758673 570238398 698606939 440827802 758597919 127881063 721991930 173241910 597536781 939750303 678577538 900737147 206920170 807496566 671260543 571070845 910593378 462174967 800905751 342040190 357347027 428254514 845179589 355048388 678289460 49344031 464870744 666706224 418233496 952384106 197851964 955946112 977619393 679828004 621579457 379662565 505210309 2932218 283085280 495357935 893497292 191457723 21182744 540105652 849612612 628824765 749191627 750731900 496444944 883472151 511862969 834336897 144485581 923647727 441668628 396125704 58783839 154243259 248025017 668957781 14850481 135219870 632529347 515026507 129893619 445817696 164538922 645914068 617168911 907039352 622023677 75844547 209010398 127199039 675916607 969698445 47388665 437945426 870644035 411307255 844254574 562220626 338416073 249766386 251813788 238741617 232682403 121231728 573162669 989586866 38778378 549267623 491355433 83244268 87010961 696957207 401670208 579722096 740445813 513688261 537845051 968034881 218245652 586217151 67496403 717643495 479615789 884447307 941408547 425882459 984301047 519900558 983094205 195531247 993857762 225316996 166431645 468865000 996700903 834355517 460711834 681362824 980555235 986939102 698571295 859407929 881822552 37503307 593371753 977580690 943616480 211446426 955158486 448469450 108501500 169892305 95347667 823622550 450399413 658703747 274028911 221017771 373018683 235853788 79062748 41722865 801725962 460368960 105687752 466540692 866635548 592516430 36680303 948436533 456907901 725748249 984158072 499196714 708842619 266480496 694626914 86454223 222033758 676221177 402475257 109504852 911531959 802182152 195529119 890829977 356036578 73494171 587464558 923643072 558249911 293266563 698698709 507720684 692937681 277169972 715585985 179534672 44097846 89082436 132585938 156256746 116690709 937295655 796051916 6881254 88120713 540995023 396926896 910072151 943498376 564012934 573058131 598651321 232916749 198315868 239101116 33647637 515535764 122081465 468931633 272567241 321241916 312303119 305368366 913819559 78836515 182654320 703333493 514340227 969961519 538081525 684033996 763980828 873582404 768046638 144576154 635824023 498519478 312084334 470297144 333200345 516029726 819900412 939209259 932566441 587275299 635082415 897000113 662344356 182852756 720227818 692749087 878669521 845919335 94868202 986534383 370130987 249731806 167810589 588616737 163955052 105330248 393460384 393843956 380828177 697454494 921096521 782647511 421593608 196449878 388950753 918920375 348874395 279394796 920930670 440674054 83680109 108894 341325847 462050346 282773262 526124825 585555210 462581016 382391858 895029851 826194504 806715989 487526895 819458054 257224361 313599204 647138732 991385558 203546359 284761080 932225163 164147503 543122491 947640794 422643510 232866076 406124644 792703641 646637322 56224520 622615527 191354249 976834427 685472125 940685958 311397921 46492245 314327645 67819327 266758466 386497701 128323687 98357324 739589958 485526309 239593349 871440705 608370828 929762934 615487791 292712884 612591184 229183572 573751726 793489139 16969038 269575140 458068193 310065527 73056867 959583662 852614688 544431610 448498444 720043746 426256588 538773125 63043696 465435462 932349518 979401593 259004433 965951037 86029554 233057729 675317841 982261891 495161627 43840092 415897883 76231045 225650427 312626575 535174943 580979345 164609811 701561534 505152853 520273756 119727897 145846304 795812383 722562633 824241931 507787051 453582502 375663787 950670800 426302872 348525004 43138650 204113471 387960435 974493494 465142995 246065129 733670261 96908156 427665058 374199723 227571479 469988185 617643854 44198793 163711130 833046265 510018392 798027232 159974229 120919577 326767268 95755046 71479620 234858416 492163940 664841431 338353829 822179234 449993896 28170165 447273780 663569818 186452933 608436397 339507604 479087380 701558475 708498415 940615867 438669744 217228202 727689517 30919807 826556929 762028122 199176112 764870199 755025805 230982131 566254250 632648515 587948678 313635247 772361557 356640930 328549069 400665526 136469538 509393026 525291181 237922204 966178068 25555917 915550953 483970608 849293279 271241763 664518773 331687470 983536563 980866588 753488458 795634163 315090134 944573681 951706205 208613127 577446200 216730250 86681653 265170712 250053533 889659045 280923498 592580403 618284914 512325809 743237084 414121934 200258200 166461836 602651163 52967217 190179726 152555356 437299046 755537589 475893784 887907435 170962955 174051348 679573708 49114340 387169883 431591218 586987487 31924622 486424724 397684331 446288782 810839388 241532489 9120043 780267742 233539056 398811506 35706477 385649826 904318438 171261806 213038436 468108363 784543692 584191561 421408073 371931275 906907549 505202861 572942022 147244001 663632062 16885780 891456939 498539561 771314315 91724614 995622273 843398985 659388032 536979354 280424881 192538215 320187492 251062072 86370167 404830022 236709776 788975917 554629784 216743018 383538185 582422528 570782235 294352907 119054518 526934662 817226580 914396380 956342585 132745139 84507236 739869524 141377238 97373789 722048588 198947352 293073713 679046895 569508361 951761267 365475721 615462388 361730308 189664351 290107946 165369507 22962949 393106338 122277374 284280551 864383459 494903607 203118099 748290020 375631069 956138563 336731229 142975100 390897208 891365834 808881761 16717934 125569656 6865560 851731169 102913239 814605283 27008144 959340538 950220462 506927871 192600991 370066615 349592728 535754424 651234068 293749087 703815751 668235990 37575659 21849473 185114687 549232245 853778704 261415590 500788325 347461935 518386087 729729072 246760985 652507942 630106353 420379318 294804043 168777632 150079162 143100652 920502676 95483726 976388345 702824901 686070492 341942036 319051539 739734928 968596274 586732127 811644836 694702990 535570618 821346654 127404391 478626003 342433072 684121909 398302914 773036665 232762336 921862867 963512349 349928553 734168346 770899355 181251569 891859796 825318433 457447083 399727610 826809496 473459884 795212154 995458417 565617845 867295893 782456656 635262098 922941098 410345532 248524565 994843824 677149650 361204958 991518425 958848172 992358453 810362184 498759277 775193393 198564445 308608246 426153114 737234395 871887851 908024749 300262496 545285603 739002630 73402268 576192143 118266094 516070291 778180839 67437351 919681135 144995370 983005361 37880229 414296962 879029286 618679924 742607196 940673855 160547991 37203924 341892560 561427813 459467087 973039139 250855523 768032673 440144581 52374170 656975678 573647454 44483413 882230463 552064347 730764078 878861440 535670235 607457251 414667766 711159213 782084123 325404284 871615334 390754499 567611249 725824059 126338130 247254016 849986874 644019084 766850835 441865601 952629358 442498947 522169405 679247592 139047876 57527521 195001109 755129545 730464296 965238157 654640198 152245466 605607886 424837478 45095612 454696909 595106871 881436320 79280070 686619915 251183102 723756574 623960157 76972653 164734698 466586577 964263799 135721945 851546964 793131502 69420913 893151226 100523096 387642964 142815633 904344107 661744659 226657370 932351513 901994928 235798859 338877450 700672828 304835169 745798132 204750940 378395607 43859909 915232418 789671773 349900623 83114460 229680726 148552322 834565923 38836100 39007404 53430057 868078731 357439196 950803800 975984424 182288570 243277582 71184227 869035001 169957608 184475090 128171934 237973409 190200474 528279026 369952634 610013112 284202746 632663012 767555336 692899510 454578539 118237499 236042914 786285327 737608790 585870952 448153841 139486111 178202677 662970254 629982397 63324991 208538248 261325017 359532084 939195693 195069338 186048214 536044896 194359916 514030337 373385098 868611928 334970043 821972419 600015768 530404100 32239965 870277620 753573844 40992163 420191256 597286741 43571299 654496558 867179784 144689337 317792162 884775817 28606139 751546525 931919928 959586322 92436696 717030365 229355408 560234537 652139798 241427153 312568188 175018923 16831117 984979746 567049324 586585960 618571396 105789896 894631250 364280982 566342562 308112821 61169992 237052650 293656785 325643817 232140162 972048555 526131209 546142788 241719221 44619605 354768024 295105288 594600008 580286814 5350557 822838 737298102 650917262 890768265 36537594 805813584 989391090 657344088 127150361 185944873 733029467 626807953 596889204 625132818 935754052 38198498 430395814 72016009 559419247 169608616 695596484 614930920 456556648 862347096 49076568 42802958 799031914 471024255 962505805 885333353 140538540 803532501 519887391 659808578 772868420 28171495 839433590 749872986 157608026 7500768 98188281 450406994 102672642 152859793 826181337 306614443 131867738 750852797 479015294 772509187 839368686 108427286 904262711 54072447 616920866 325608040 636782022 883742141 439061296 730245378 16242592 398701382 592232209 137645923 617073018 622629359 538504864 198367073 738099959 802138528 778184297 511639130 326363081 870667576 411275867 253022625 649317006 72667177 622238472 318378692 649598966 942695189 504419491 318122933 956263849 258091654 508292717 209444244 551614275 857371566 972639075 759451912 953390650 895198495 170010010 891785582 826813486 846678765 990105566 868368405 498129655 911678924 665086018 640321152 821229082 593594528 209797758 390554600 689493646 507331925 203204017 253800941 732744315 82080651 466974139 609359949 641482508 624343197 39860067 633546398 306687593 77152070 676517501 150270283 898900949 62427374 481362345 696785238 205169624 225228684 997215347 803388462 591004619 209768631 176282556 226325801 670189760 232324899 709400421 480139676 823070999 379191878 471351701 88516521 105950294 367783404 706790695 784967962 677998323 181127480 656836028 795899232 569574994 581618410 379513206 947164255 134020476 759259461 578453143 186684486 550051791 561874294 399252002 371992588 961176204 987406065 715271307 265334435 909866932 460733247 494744140 169265343 100214137 66106952 39477559 224024901 755202562 505448512 946778821 58975492 437791279 597130067 651660466 210007100 760305905 862889603 447716537 309316870 359961674 682435868 878634143 870532980 741878356 675464939 516794609 665075644 966774573 526736758 147293078 32949919 976211987 179418696 289047537 156298375 708481790 578996315 781847516 28126009 696061186 339138529 537825101 341541706 941941212 495401825 582431572 356682958 938335981 731092056 236810856 885868545 738576232 946102516 578249520 823248022 226466382 152711099 87301034 121356216 284035565 470014253 235638594 602283684 917605271 549600655 365940822 369736243 339582084 432732890 373572096 140500103 64030556 550222297 229749886 292822476 500941541 543958130 641581327 151638055 70333692 649946628 721701059 401529627 690542750 111191026 354999577 535317918 200151268 905578347 454991637 830600262 414456695 414618822 499700119 394891065 97336017 226987343 767275238 946589296 228740150 329765753 894365383 151660266 664538058 976909971 681726313 921285647 671111716 32282658 259113759 778638625 890611458 555016016 703393343 960216609 264472861 804893357 969226694 276804754 317386645 399279400 131061226 685130980 251919257 265912586 800269612 714661768 856326186 196847282 777259415 536609747 506854854 544202451 109998282 19136140 240778512 251950379 76313505 531102350 298089409 34235896 348814279 509991393 124247636 107514773 752990107 365400310 399732930 352619143 582064492 822558949 80639995 783770696 827094249 885740732 587720051 425566983 989649509 99375306 179535869 20062751 67307809 345696094 667191408 20427969 212302414 282098154 818385409 872629592 976586914 601718301 796146213 539566071 985703532 535104719 452524088 764564698 249748165 894174528 985518263 266413065 339624777 263777936 731006005 724017520 858048536 201735298 478687981 260906865 1720854 287751186 485625793 736181966 979292001 465941261 917681480 579275083 178097208 12944591 277812495 524886861 636663519 625634095 311489558 612290737 959404112 444260665 933459137 468833878 507888397 649794077 934790600 891037723 218079136 388105006 696652371 489585868 852610698 913681638 901378872 361426669 730342601 705940160 257572555 805192873 131874654 138699948 277245516 175599335 752434300 274803237 57901251 749909960 571855412 309308358 313527384 946018194 311396458 561426616 371637744 38763748 966769785 976825117 206698326 112553212 411469116 455715024 198005180 70056786 495465931 227863281 210566764 498811280 149764750 31136464 415671251 853252689 279498403 685445791 771168946 356553549 197736121 515019325 936509226 610421422 167814978 325622936 289337078 521831718 261077903 749504310 274993294 691110793 158167291 761835139 434693975 645101172 793088809 203163984 167955160 7005077 163612178 362729936 209042584 821604807 786626073 107962318 286221287 302021687 865958711 408590065 394513877 970257976 292489710 19432464 511012567 240736750 278101770 207013669 912186452 186492966 359244671 78841436 812599377 763778668 885104061 214212826 246976711 512383265 921865660 285383786 281350827 572449922 365276886 53445086 664889444 604692048 91160428 952346866 260821213 239551454 748244401 250176425 406954298 42116545 946376496 822211819 850365791 75446079 912918750 995022443 441857222 637585741 722963894 240406777 66507415 974267660 806813079 132808580 342972786 929761870 809746261 66817039 49314239 355238312 829259223 431930501 483527984 831263932 416941667 287882856 458458282 858507120 242213183 167565869 666340474 598423492 787183609 731938202 61218005 801385881 468722956 870192500 858624160 16311885 364425819 153690112 984785433 600446156 480948715 752862693 950003539 319332568 313969343 486639918 149340214 822162343 293825296 795717953 355575600 431238901 940022421 340237774 130374148 713588325 318868265 233245791 65911841 377873050 227705543 543395407 791716515 701117713 704738505 348534979 867286317 948692026 274417803 190948998 856716807 414289115 206306242 467844491 633905232 92521018 787393882 464849464 516852863 366216132 797031594 702696955 96761058 815969597 349074693 387322966 793983899 930011112 671189122 128628124 161992238 823956114 485291032 328270833 692962020 234322692 673855373 122371139 190193425 441175996 59948653 268809725 712233454 400913837 943064397 376839640 436625933 930378325 186949954 824256561 347873171 838396057 641036559 484674577 615922302 393222181 310757925 659314217 141732614 565029852 230927069 758758317 136352498 214480023 294545092 77775973 397337733 492992663 172704457 900747654 942793609 437517698 571958221 105298594 292358040 430130878 704340436 835717304 230648035 825591881 179015573 558347134 244014269 555850325 17781668 512508019 959567569 838528924 498222622 364146785 276972600 220899667 474119165 290213548 492843171 500413797 414995212 131464083 504044564 26467499 475446904 645557495 690149602 403533405 963273880 696478806 831503598 254936894 41377464 357557965 246178312 31160271 751268688 203005980 11123422 252688130 737196490 849127428 184497301 237596088 418830267 889787124 269148343 517762849 288452894 671307093 397525928 502076563 738296533 540434162 59124319 986161717 683041816 933932883 194048297 879181438 573970910 642847886 858627884 609692715 762507720 536458925 526167252 601332734 345516810 301608988 384196269 966028310 36979686 374526637 981776707 55685870 102884644 186399866 881337235 807131348 627466569 207049047 158319044 8249824 522151450 257483578 248780856 635521847 969753640 380235529 93094248 751016121 380652883 794259342 875135179 759345246 283690031 93917385 659287484 133153981 341467226 889634972 569412202 340492868 878926078 643032623 171820938 584920800 978995943 926171934 85428926 413563068 335204655 282479199 502312372 249952187 26128881 881746476 977603699 181835572 957281033 543175026 346898946 357881687 562915152 286186175 345828163 297652637 54945725 64228859 239437872 912475062 795974776 332885268 950824548 644560527 847054224 382102583 859221729 553817819 810243282 740825661 602718328 186419417 909467134 308814795 278365775 989889574 298937018 577794926 319243857 519005335 833135641 194501162 50308281 625266217 804337151 579131842 461271631 409763125 569523523 712162565 446316047 945036388 604961905 131230801 216104485 723181615 383889438 532731733 319604287 281629595 564065602 76557959 380323176 188083646 905410501 66324540 268970522 216798479 438921247 957261482 661104264 421537881 735599160 84439007 150355669 611409080 101346499 270819621 913079281 334466904 679213278 765917441 403905406 630650456 194816771 152059532 779128198 476412617 673501992 708133596 895714003 309115907 647313494 252778969 774437953 27575389 416862665 850619156 224601988 516726912 329714681 987143390 907295909 338597751 473256926 195610781 257333288 189878348 248132747 332706383 537556042 641270639 581497114 449426518 925852335 913951096 541909398 225614251 781592688 752185856 302883926 290115660 403670262 442235474 162747013 536516647 850987965 129824592 247490224 761611034 883292202 773337112 755006387 465527365 113588218 578750398 881115258 496279891 500870386 74389261 841623169 234246084 491508782 362726611 943734717 336225031 325253063 256232048 165939146 646738136 665418651 66394365 342843244 761096590 628350886 335505501 171522220 220955128 559952843 955727992 664347868 853247369 936961027 819367747 6867156 747820264 652951763 60170364 325260378 705717651 885778637 833916218 501644579 200534707 581556964 765908397 198369733 155096188 206589000 904760264 638558237 503197221 424152661 225518757 873601290 758424487 877034153 159743740 699732917 659136396 751005880 804572295 316273834 907164239 861944372 184435589 349951030 582942425 82675693 681718732 714413058 398763759 463615357 777092500 611608314 950324335 924361804 558361897 577770986 809299647 808714580 152872827 512234704 266131903 678590971 582804504 90947495 418484999 601017790 410240063 943834201 255224041 934905512 219541205 91511415 92883310 451408085 30269703 379524644 249677675 527333130 669670262 987120514 562243236 68597776 471329756 434444866 682508885 789235799 700626677 674808185 112356638 330478367 468279933 38880655 914123464 10647681 934562904 176619445 18463692 463471451 807555352 104148543 25289917 674699524 546643666 704920981 734755674 976780163 93105021 179146179 422809095 105238212 778573854 693434702 874029683 51969717 418518648 633377488 463059018 979114978 284711338 882673752 691704904 728395880 592011562 701913585 816519020 670918201 696485988 457381381 930191061 345187103 601181380 651202680 682286642 978435082 684023090 61605434 498281807 732659195 879935548 542991885 242960776 111548929 864639883 473786133 193007572 962565256 113263166 469163718 926404551 490808138 894084620 758696339 401162015 281163962 220866417 167126437 606873514 468600729 445328389 830694293 210684203 599092881 749352557 523659670 135383593 546425413 534811587 222365593 849069573 411374021 672496911 835501179 180147669 66060136 803202927 401661829 516535791 918391700 886838913 997980895 566362246 738345344 648975462 10767780 661362417 734184838 958665430 666040426 120465515 290407861 951133507 45904518 123871113 712371375 178187 244523925 177872970 137080274 218613264 835836871 128543669 48394544 133214097 149219583 783612825 200416869 893468963 164071161 909376029 573823945 484077274 86398097 509850014 607294193 828120078 659584340 365859426 885328033 434704216 275988134 318069733 792538455 650595136 159594780 986197095 923497836 607834572 91905760 732435888 348707214 361127552 701282500 406207902 548305368 158102520 985599526 198242718 883198969 576460936 63643526 240198366 261594475 639691530 32009742 964087973 840548130 580428060 299873604 582654347 881135208 220541631 492476490 242982588 577313732 922415083 534852418 351219717 391565533 804746392 715695444 9607754 277205749 936733863 674392028 253587343 445973439 250993444 492276857 2883008 233092708 236199322 51641606 110635751 765522431 568550362 116731141 782087581 467464377 743673590 885952335 367823703 942307228 772424200 585750055 617661809 825010139 768260103 929852842 148422647 37575127 601383939 56820493 400508586 84232857 801946077 778737843 794379441 743506808 419771774 542572137 177043981 244102049 194503290 796238116 268708246 915168844 184421491 201682231 426567010 637907069 987081412 832695943 169323198 764451781 268255913 749089882 973089280 75889900 51376803 836840755 161765473 87359022 713240663 886466646 506607740 386843235 416172528 895277497 423678117 915037972 754260257 421129837 214418045 419096267 376545976 770200174 598977969 136587509 864966132 132609878 368263268 14435388 647694140 620628241 369621597 373948619 157746080 980170998 117963652 925233885 973440134 285747408 198794136 834480670 274385883 874640951 363346790 300396560 525929581 682036070 370275026 469953738 793280329 422766801 873833907 483385275 48589389 361155881 104050655 364175247 195432561 829049349 304779309 597377846 569186501 158627205 592690660 960772948 607736019 175178390 951514818 955301594 168112765 768038392 911264230 205386813 360061291 487997316 51099365 829071826 480847236 828463883 855630729 447459714 952983670 136168825 425155082 135334649 200020263 72687925 827201181 17005746 686955341 169488384 700364002 6304965 837079756 6696118 185513155 152847291 179859857 826278028 72287595 504001073 946943209 179400741 280872027 489417889 811424056 110654238 486789144 30554855 799256684 47167220 772226429 781025576 477684496 147757913 540942621 302363497 110177699 620306248 453603516 627974496 243791361 252027652 41460589 673641110 81544927 326350180 548828723 493927919 938248068 26556875 539024628 632079674 673349441 908936863 856738752 578696134 573309368 636386613 693730095 21217324 854705980 775616865 10585703 825620210 134551678 163118881 132749395 626333941 124986185 19886127 925369811 243857196 506654822 391553297 299586989 869591207 437132796 471115360 841475539 895090632 851904468 911539274 761797766 268971985 638552917 147627041 876939590 310131362 648236780 492449225 787108730 394857416 613427621 106726216 947135261 458656186 690762599 267325445 716553427 978300486 951936428 569528311 9878941 21087782 504566057 925396810 587131792 531018294 469647306 572388343 396887794 240163121 951223814 894672879 759464680 822350671 344220858 472143583 711722202 686190990 192442987 507438458 150890462 600858855 867976853 130663822 488728284 379467720 121213640 858201619 675982043 285337369 803901310 885546951 566701529 826258743 939216707 701171046 605384446 639091833 27787657 819096826 184549836 669444295 80737617 639927871 594325895 974248508 294448800 675001567 443328734 298477636 705063158 965535013 195240642 837345357 557529450 161523812 535437884 22644680 19746211 292044293 225241585 853402181 344337765 779418138 530745378 776014402 429818860 33992905 985172330 780324932 418101560 770877942 479728573 168941355 67245964 306071404 663029971 156956060 700519745 550011359 663624747 56170522 90219985 731266951 468816056 199747879 58639800 452393615 124701432 706344347 370323837 437338946 587854115 879790312 391901092 207421846 264219363 658577131 316315330 482477018 797732371 22819176 628112151 415341943 209645739 749996144 413481406 530405297 826911773 218981275 282005054 594109504 955663354 560408634 275591528 325036273 66756258 440441969 836933190 657871167 398739952 401910273 322745614 922943226 555864822 628288509 680750226 944948874 746786588 816633267 163966889 432997826 341433577 902180995 978878637 555620235 267514970 800502761 332734180 583419363 200873325 660977515 89332609 916826423 271232054 689985613 612866627 781746702 860555586 558230759 878333563 93588476 20111828 393178690 630526766 328719309 744778288 89050516 561348678 801591100 959652290 216348008 964210599 580147563 321642911 528347654 280731712 264738861 320519859 426618348 778009668 111169081 862476904 497752068 458316637 374918588 384379942 981115431 22507424 41717146 289270445 219586026 388987594 67503186 869963341 481912034 681096026 316844537 508481710 612674043 604117621 370038153 642680572 530133312 550509444 483894532 954877324 601361728 123062473 211986406 938056415 48429124 299065762 64937749 147509469 210577803 387057764 763427814 213693860 905194110 462159273 531136132 899540546 280946374 547054769 983736728 428671602 567384218 303275079 449973680 392515153 11310287 478045458 274468210 304193311 974396271 347915066 612342208 499192458 276518538 857691697 7718090 786419125 218032320 472148637 210456906 441781678 272866890 462596311 150346625 864007734 663905909 158733605 225800850 307077283 606002630 97619440 862696088 747019604 819532667 361961063 436638036 863782698 178972614 280193062 327524038 445303784 717518076 392559442 18978003 803775625 340215563 828695037 34572253 536761500 150631378 587649694 653757344 857190553 481821062 410825130 97856978 593345552 97614120 194208296 918110671 173688391 607305764 625996121 882199075 691500749 566000752 117193050 423956752 146816007 164314817 475801216 282321461 672993267 842372890 238447820 289490959 916248272 383981474 795592667 394575190 823973138 878461908 26925152 301309605 762818009 359292817 383483123 9438844 30811811 784748911 632553287 729593412 483346173 607664465 942930599 266313315 473682127 737164171 249773967 375795058 761394111 184096040 433292288 590656292 708034777 350398043 364846897 707955509 263407797 956980054 164214003 13629275 515547202 275397348 347975315 512958889 339355319 764336337 879983960 609674228 416977577 771518071 90659284 826709480 609499200 416508220 683277758 833071003 127899417 54896382 75979808 182490464 92434568 473266901 710491952 755229694 128972062 27295158 651483443 798589955 34639285 951332741 872953447 938479222 876497897 390892420 354515989 980671743 858180339 458009540 889026231 804778445 535966825 934717982 702067732 758258902 66960546 69080167 129242052 132504808 452754178 600533537 375116891 446193155 148835479 107807373 355395917 219862932 230091031 258662091 798963552 488914750 653659855 720635862 165078636 548642257 969577814 235262869 34081350 692061876 674233226 508685599 121383215 877114618 62388804 376150833 626148007 909757606 486207934 358448001 302649314 998044336 409200801 384562285 672531092 750931666 949590574 788602187 685284329 916399759 380793065 781779952 936502709 866475150 924781153 74531837 968939813 253378001 512706455 285918978 334466771 252549544 612457785 12041787 830751084 15497260 648909228 346064903 95800931 14290551 306609389 153748898 356476010 819791086 323668235 625681975 189350737 655624664 612841224 278013192 670751020 347650396 266707793 946187237 655098383 788176986 289043015 860038615 509884461 542322496 604422590 10007153 306046001 586073644 790100698 530466876 418201576 468734527 398349730 623678862 99827506 312458596 738528751 836240925 502798753 581790911 841754041 643688446 733720003 354448292 24307047 570667589 869097378 730501935 995835871 467046890 966261060 690216501 622698918 798747028 651912900 946816194 310673869 773495 300849691 715112638 579169614 683327766 145975048 596961822 29870437 244150461 770839505 318449182 11238733 21482260 615820291 114341264 169808515 66480017 636817267 461195954 295650987 245820542 404820180 312978094 335132436 79469728 509870230 902828838 922734815 729891465 400220774 871250382 81459541 11855720 44451094 25598876 913045499 630191606 395081521 364718020 939824916 937957463 43721057 323363133 345486486 824478006 842011928 739728145 892850380 994915378 861006323 285780658 815764777 286365326 170943670 176530335 830603720 368350915 157763769 243855334 451413006 778954367 229157105 595194518 863402185 5859548 179041774 803223941 171597498 372606782 971395924 184831929 260584473 896286302 308956174 281782811 258728990 686415095 924762001 971225551 80392482 273099374 410579080 208186463 239025040 14243868 934026648 851951284 939884899 170948325 551703651 625410921 449162912 634297981 996818475 536424478 403602033 949173220 961215572 147133877 20127256 847828683 371915448 642662750 954608664 703151682 831174290 800965601 189791499 368256751 224208840 679236021 676917166 695979391 421366577 882389265 248957480 876379261 789635863 237917150 23612920 178369991 706514454 411959487 971412815 939108711 687081558 216236155 648568748 60568699 206226575 132011245 182807403 794978872 327574312 113107822 435465641 498421856 80566313 167633699 819982207 482610949 901554432 847258246 202796904 102821868 576776279 802215402 599815603 646199486 923694543 368050867 199125306 95967447 560871208 938637226 162139203 343354230 549150450 906096 345176596 19448158 134787221 637233025 391134480 933096845 959106857 633446249 500434811 680677209 184923034 399875506 581709515 620077621 511193447 613907485 588966793 926452697 34845568 911615483 454050795 418149839 939468210 818643163 167057809 676743202 350583179 712422846 526712153 40327296 18115897 207223809 671999757 512663629 358230147 28919487 761678199 137924691 459195767 464703031 217063681 933459004 922727633 649290805 401831670 42391456 710378237 464773787 364687962 524765565 955346548 752414483 941192688 35466944 858941232 395107855 852764579 903295801 155330268 361886317 891716555 273163347 359145054 574639900 629016019 45554196 361793749 532015528 952491703 339730379 681234346 188687732 713883319 580515574 667911603 767271248 750187664 740440493 168557384 526866566 773296015 242975007 110371746 9410382 806486564 490273611 549803746 132352124 391469374 965786383 925691405 327820229 16400995 654158472 333327626 318195684 942362689 544928365 862016192 586576384 552219425 688142898 274974940 390226888 327564337 426436138 574573533 924314722 857680259 219870114 690637180 65460439 419375301 375431303 572770585 219439859 651911570 11483852 623552379 137934400 688425390 527403221 5531570 374369298 735744795 13643107 638675543 563716477 822666280 513112238 119143894 472726389 495835804 85670321 967867035 457991186 751499044 455808789 445604763 209010132 346413230 702652932 969952874 804319063 64561093 256419312 450889784 608977042 821341201 892223950 457534597 482983881 554985825 8526198 778386324 814043491 428438586 689176308 785911065 624285741 739457623 713952479 666831377 151326436 164137262 870948339 27849502 594953788 488650080 739227533 862645415 614763473 121472724 965276461 795124241 164612870 152542854 457374066 298468060 692000696 927738009 108656711 441337325 922092558 338718116 709276997 487657368 407024788 551747275 972040442 11135525 762651759 481994893 895761085 166973221 941171275 587256014 327368428 797115118 116015867 605023218 306789737 133593812 423159949 239507697 30047327 481141432 666303633 710014083 528979803 45903587 456394920 7788048 598970654 789345790 890655614 663254475 923848690 750177955 493638378 95147502 854837783 789065825 914363529 765605157 858900800 766966146 380766199 738608950 209277196 598899632 444914493 502215681 742334280 590110593 940179228 624402382 404877636 617533863 501992108 982431200 573207224 538349387 452549757 302968514 540415808 325227527 819819149 339653904 735256685 845645887 948805741 224559960 826825988 83637283 447708025 815886339 604410620 166422867 680823642 428783322 490544665 548034447 556531019 327753596 88067779 333798712 113703795 576798224 282604884 541633157 557772574 946943608 49513074 705381826 487646728 488223150 745679363 258953228 956996679 729771632 527443786 841617317 591383004 33186925 282060249 975761915 140904423 356597040 80722189 622435578 394144802 228021684 827389642 155482154 285036523 809052932 508605400 418502023 276644356 944096078 759187109 259839141 99672827 24750868 538614456 66540931 28237197 119237526 164665937 372256061 94055572 432174024 954789943 446052840 208856251 241600984 343050059 980840520 838204537 710191239 911299475 359018172 171572494 940731444 639704165 967007722 831293990 755700647 363317663 128623336 185295035 566142131 475906818 910283355 926275541 206613605 821087969 472964991 602059180 629189052 837581166 156201152 36065045 575372464 163777497 993620623 390143364 897592495 419697427 879828616 613788184 257392473 161768133 198741867 423306781 488369051 993888884 598255779 223437573 201288418 502078824 306433962 653283332 193166241 789835363 836631014 797167520 742754826 690679208 258932613 99988835 888705967 434918878 109836554 783022305 231739034 272284483 473387532 630346152 159044958 277076340 181673977 336208007 850541351 390101070 854951631 672490926 724711913 793694358 244953116 494884987 10316777 921924579 654071889 384028024 225961780 884622867 741991672 217056366 470839518 782629556 553370806 25393524 400499542 349745279 547820184 387993951 51070903 375691451 529701993 225973617 717970010 140476695 147133478 657608891 868186461 593941658 716744415 411954566 447104604 167507615 126330948 961836682 79428365 134909315 446337992 79774165 221093448 508614577 705789205 293188226 378210471 172266754 337364708 105771808 455575906 476727827 277536254 818066342 319820279 695445662 629462234 481025855 902664184 878857450 365375838 75248707 964556931 875406366 753717218 110642667 185668499 332966531 348058440 169323996 923005337 16630686 962883259 347597728 317399014 305363445 988726888 284759351 702457821 636767259 273643211 70731362 121451710 386333845 296663516 890758689 73181488 537817254 913378797 807581287 69321562 817185084 199185954 43656818 519264818 129163449 193589846 939593363 272988186 483739587 221990799 370692114 687045382 410481325 460807860 702843654 208117436 371287156 339074822 719845576 965148781 191825202 733130015 441497856 575165250 71341699 853047470 205269241 731565004 233996842 114963970 208253495 94555120 761092068 934072134 266288311 761134362 475711308 929121076 532515608 961656068 916971526 553975557 599566760 995242691 843992298 274635258 217993085 347816779 322516322 428959015 424675351 645665757 767409302 392114557 979269923 439038952 316180335 214785258 769999344 928239818 782457188 430789760 901158092 919275618 467734899 992251255 600686487 748634357 575337751 344704712 861222847 347451694 634107658 419981116 14915917 905455588 349765096 394322357 422193571 905627424 153732672 991305492 529515394 610421954 615767490 897399379 993256735 111915344 26401797 530390667 484040699 525824245 161651492 958335856 429511364 561437123 16196308 33520090 343784751 882959835 933988211 284383094 436393981 916691162 62488953 380188979 900545228 347149119 504759838 978125325 288185165 384550847 528093092 218483988 581446042 308253535 875279085 277662072 490700142 830202326 681695856 503813144 312685228 951184579 613598127 126054175 911386723 372618619 569257124 636888954 108990275 630665219 875712000 516523954 748910731 439450720 596438600 996895482 992390905 623879692 296266245 677719156 722744178 713251436 22050303 109572948 358610660 360843065 677600520 147573176 115065050 758452151 442238666 406667816 910432315 314937982 947070756 108427818 911354005 450574840 825673410 304444016 986961446 489552219 982996051 965721080 824426801 650722018 656515498 403610545 563909460 49456549 782864833 525674487 983378958 409706733 903964126 299342003 639338415 556430604 639535388 778204912 738716813 422213122 330995604 761967075 735223036 587378241 840769841 895486573 768385522 678718917 617396873 798909687 249755347 581579175 529590805 625043841 889059880 311810753 147906075 494740815 315822432 92519422 606767513 142031066 11415091 372376160 187816183 743129354 197476239 432843679 894033016 639339745 388212204 584852438 511175492 747942757 992943387 388443890 905282156 398749528 389844779 404843455 819105604 115091650 545567164 74100784 341871546 466585513 764658995 114820729 337422563 644675439 3924664 969638329 153248552 900521554 670231123 98262096 377966948 989346668 8589240 759286460 625320215 466036888 666969697 979638333 683487499 941909691 919195286 730010766 370560710 760616726 296759808 536591526 601700745 588270804 857295490 794448867 204163878 785753726 399012070 851904202 20678541 459841482 336058249 656765006 683976540 758259035 149597968 5032554 368698710 378606279 521150625 909240502 163019929 541984277 808738121 356783107 183154400 975834134 406002683 588709172 433652452 930027604 398773069 791584712 42942342 471947674 156390810 66584023 127113387 938565406 176818812 564272550 707941012 320448305 576534086 308736325 323867868 343071871 819683622 700450984 673292783 786388801 688012425 67197419 617257356 312053079 601824036 341587990 790454478 604502523 680852636 838883635 399363057 239070526 492513464 782802855 63550958 924631129 942809436 965486202 250921890 327657969 145435600 954699237 702310457 141920277 58803922 25441138 527577318 908318546 135639352 217154653 542062481 194454346 974088908 43999958 964747254 531298658 496151546 2969857 299928267 731377075 962216929 641130989 33997826 918654774 4856861 426970133 43870549 570012431 844448222 839463914 613996994 627269596 999199973 270286424 638398238 619017744 367647345 163284599 621559906 402487493 46957080 903326657 216545114 591462139 188132989 24064588 400149486 778698874 464601818 642632027 224458614 319443224 224172797 863314671 95787764 858826453 569315245 678612384 641107049 789262266 617910785 729215958 776747498 11857981 310396830 329304376 350915679 767695651 196532072 682538677 565539242 495067463 507048768 478703808 106549725 54251199 290640345 390709811 46313094 815452094 644806178 31305507 613849231 666482651 814452067 860796449 378404385 944957120 978840732 289277627 251187624 822943319 958045251 435744808 834714351 8404104 463491401 749884557 867237506 740761023 234490937 688146090 458727341 401746550 555466354 658548935 816146354 967910925 302906935 229684716 671700906 700525863 348429909 640890259 918922237 78483799 583248059 657064522 94652875 533300175 851338287 11742936 867818051 209426954 680729478 334097962 103246138 463914474 175845119 285127894 792618122 696626037 765334236 298318967 89485825 786255801 270943311 810191146 491113905 74159171 678260599 402535772 886104620 900344930 157337238 38606276 564228793 327736439 77737536 245405316 513706748 978323229 646330757 674630896 308913348 651801978 196853932 482722270 271283924 702618086 702868392 961493675 625709506 639083853 324743274 906368633 576437129 956494072 397935036 584273223 782574627 832548047 703901403 723986531 525446791 463972728 280006330 774863287 219055622 544029285 175145406 816594165 438570659 402739262 597450597 922259340 740996300 774537969 817978961 426898712 599070404 403867501 428651386 111328282 646316260 113489665 677310979 84462947 610620257 248180893 573412709 539969460 887256400 395331694 609774244 922301501 733916311 448742898 387487620 256002091 146579932 599303154 19472231 432375120 155467923 56518716 906199590 168466279 450689619 815418578 27861206 810897642 926345499 554403950 103978037 660885346 333208990 852261174 253310437 782088246 201277778 70216785 280910597 497254781 138383408 639424599 458097187 731525104 141200747 153043865 674172578 618543466 742110441 132462115 886198252 533125945 27073846 466594557 22617415 967266008 555435897 421696816 257182333 81807602 58163128 761850168 78784911 683217642 814225302 866114720 902072999 648726619 616632788 900037833 479611001 491913501 382127720 631269571 497835991 938864789 555542297 291810745 952634412 888254033 152435257 252081517 188514566 556090390 373510384 541030135 691246054 12407138 205498533 714195736 333121609 378296123 534831936 654360632 602077135 333105383 867085753 344576500 979798731 730111846 839350997 524905880 357807074 51076755 903563796 880785019 594341190 473889208 302990193 447664135 569602525 549587222 775745609 937443684 496088504 891434595 23359289 279341596 922977673 612192051 403687020 402520211 284289196 665715507 426527110 929461157 594919607 241701266 380319452 13765334 38125747 954424326 156247436 374487801 361242597 348846997 477596051 851040633 26150560 166934252 436353948 671195905 791776897 612416954 508582125 658485361 144425465 73965523 59824298 751376950 413795951 584680602 741444377 138788659 23013489 469311082 302741350 598016246 673780893 997784986 482342688 97952339 481185854 241349614 200741655 869713966 916306526 457345205 581652990 927605541 800509943 753848356 869877955 403846886 707774363 869732852 907304953 899432284 649844484 284074667 271474114 38472877 679206096 97026925 637320539 703207675 347123051 327593996 800546119 561664952 739922059 338970417 981176345 362513412 780600375 374819769 32542806 335626265 59889601 88740493 851630754 555118293 665898116 651322114 949427117 16413896 580825730 6367741 378329905 570580740 433219670 882150663 573192727 878710352 25243367 849605829 23308882 482538597 404639167 138483424 292295397 186703638 294836628 806960177 541988400 102304232 869939401 261421176 857041992 226301861 369843840 237871930 643107369 315358528 53468627 171842085 304875867 402835155 222597545 374309448 67468606 561063792 800718088 471328027 48882920 462105408 892451247 811630738 294457711 293702005 740483186 51076622 819461246 412822258 283881019 700637982 338646828 352663698 795539600 262180207 332996988 824773266 330504435 597000658 407140365 631626011 104936701 413348938 456538560 601422775 258950036 541033726 842742231 159654896 233125426 680967814 413977496 844063586 217795846 72087297 490211500 46253111 232163969 439099467 467789030 646671237 385167701 233519904 695126063 339393623 811692982 848717921 100363895 512628384 866964590 100834848 706849614 595632088 567356820 780897896 88640211 71418706 671885643 102878925 147104617 338740726 489167982 172282714 693009767 102612792 604292649 910220047 678101930 595090778 832720947 522643151 141424187 260209546 882066075 147647124 532497520 739921527 92053124 859933811 639116438 77029577 771945400 234708924 669631293 701173972 288110951 257533187 49964742 954339206 690392593 278864658 839752125 113946919 818395650 537048647 615859792 896364373 115724730 899423639 338716653 221536205 866823344 820588421 987404336 178605933 302386107 634953006 907057307 48558932 526977887 241565606 196445356 576974050 194756655 824626567 342332258 993961502 933928893 446457958 819894959 406355931 937608205 579598938 680233654 239292104 327538668 296610316 236866982 31064910 68332441 777324053 93398286 549511279 761834075 81767037 535066415 626115023 946040804 716346213 7356729 503998147 15011012 482567325 239917470 982417368 181520894 854097239 679453343 302775664 11264934 126081307 417490957 345674282 21105604 117130806 402533777 307361770 73566789 619007769 578240609 865453710 39368233 635972717 832454681 629736347 668487094 490325880 367553979 831819207 427945023 383978947 761475374 119266786 869118791 600454934 401771421 807702849 401483742 886833327 776607449 125154164 264434823 328562635 802501618 995648740 87394001 394209972 76220538 575227095 438101169 70131266 311665916 770760636 920201830 832258373 853333021 81255386 605378727 403406124 468630654 321628813 742482974 945884130 131125864 239021582 499152824 715494747 546336303 992962938 416415386 619658272 180457559 267479991 336801320 84757409 787718402 129931923 100516446 137384578 696362564 496587254 227531845 573806522 629668118 361876209 560483114 664467967 138885217 935017764 484011705 961518014 492818300 663215905 362482290 576837193 600163132 812162738 923379466 470812785 548365218 435281037 984364621 584814666 933657972 621108105 440579491 358562913 193389681 620110738 177555499 678135579 29121381 833363204 165366448 69203990 799681486 720754498 826067755 14674655 835478835 506814023 646923006 178172087 969047809 662077292 276789725 956628535 714054490 319676240 758145187 707399702 107604947 473507498 270431660 779637189 633483622 111065873 341987921 827387381 401109746 748112731 252105856 26428796 8961108 973969740 367081962 761750019 901266886 717713187 239584970 276462678 139311881 819159735 175828095 204250860 441362329 535670102 486308083 265741149 671659144 411765972 957473750 747550274 163287658 401948710 732420194 133070856 145058811 90273983 348378571 452801393 243853339 893378656 767572094 647279978 906222599 475279191 812495770 859614611 697571667 172936409 352330267 175965085 487329124 879573256 25422651 501789549 782293332 958172798 256678263 728647383 765703444 970190279 339287223 485232113 981406967 71101501 558821279 793560294 340301215 379397629 287407514 515088219 973700415 497613482 73990527 413196254 169653836 498720840 484710620 131428838 503550602 945550300 851640330 848082314 106905367 959950609 750917435 684834257 84130181 115592129 948641619 991134853 830720893 555609462 352360591 748945976 199425088 259953654 224498780 853777906 871491112 863666589 370859827 507317029 247840945 622637605 360520939 468996138 451561168 487725597 284305954 248946308 880673166 688463029 865172282 907178204 822792364 723171906 176141576 689989204 316977404 496255951 701063449 169704110 860353293 474873009 676261077 915789289 700584516 649756438 369028151 933315098 729738 749366522 222499258 600175235 185181187 530080112 661495683 176876401 97317929 994529811 688529396 717268967 380615111 251733057 347028089 180857889 889551315 347196334 518820864 702359667 243345013 863462168 102912042 280921104 715747447 329526353 44954366 620401609 559654524 326768997 329468099 14438713 375607794 12135286 855796181 669231495 609317256 195194358 433490857 452566914 893139256 48716138 713177355 70757031 776830889 378033847 99653276 882533437 187366244 858788415 44464793 733226706 410842287 190117748 439150406 121178129 617200432 723154483 508068346 640670011 31079274 151806832 486384691 36765689 536092643 462256895 614668777 381295805 856718802 499940716 887404562 372395445 566865252 812162339 469837762 711419893 308598670 917876591 293034345 596224071 586259977 381895901 455899362 995104637 888100152 265399738 189592398 504753986 287173434 722522733 50918751 996344729 895496415 532978581 663157784 561382593 565704561 233020090 606759134 356141914 105556348 266392450 655063138 485537348 798112751 539060804 700916484 197782671 624776112 251439526 647869700 683410359 248780457 457767480 552665906 753544451 639252630 135341432 222169551 48765614 276184575 451668898 613365909 529807063 887099460 791537630 950411583 640039990 776225606 5112088 778932954 66112804 720577741 84959835 831167241 74838136 390091760 691150294 621911292 881836118 212174335 211111266 565033975 917895743 986804240 599901654 297004927 563604092 369566535 172480884 419606189 248620192 302097497 79629993 530098865 652426945 944613714 441791520 592055053 567208392 935452940 121605325 637074489 848602344 625795557 680754615 352512876 475596529 621980718 988863346 189152833 390887233 335393249 2944720 932412427 480296350 414026307 797853667 264377633 665585433 905486710 474200694 764229937 994003530 773732787 349540858 896676524 528364279 129471211 310344561 189553296 50576542 322528159 942954406 597472276 298640162 21259884 817956085 797244261 492670803 920711486 877980049 822532349 835590156 734806214 845355681 715278223 296154259 796511165 269301160 156913633 917913565 388410640 649693130 222486357 903164663 9839706 855636714 329946234 739387399 560716396 645753670 503840941 301946808 641842539 911225128 974309023 576828282 809153613 808757539 545141431 567235524 227369851 271613764 378316871 691067967 328044600 655293361 36299524 529107217 560900202 870857234 420678568 68074687 663933839 788054094 45213450 763937337 127544041 785593062 90165588 609430173 714104498 68828132 699705918 534576044 514441440 620817500 347802415 244038874 417810822 701841499 481927861 392052313 521799931 123933756 883681094 983157779 126356750 564224803 877003430 126243434 399546597 990282456 871123766 593148978 121303548 396719815 73247988 729224470 407479515 495007214 667028882 384587289 1266659 592600486 766982372 676292199 139234076 251983230 314129874 307579491 961057302 578339295 913009722 328763332 451525391 654142246 729678399 679382587 245550419 154575626 863964642 510871055 38883581 271078572 646815941 830665698 193271976 935748599 683026388 79244293 133084821 851436308 702633647 599461956 245552148 381457533 660808206 470773151 278088337 114245105 263168929 860944079 480203250 680477709 113320755 528702099 275479276 170307797 733034787 173601675 65204547 502834264 724910615 71685238 699021766 234251271 803610971 409792518 270359308 633336258 636510303 71150046 750674577 852123253 492345618 881108475 260412770 7373620 307630031 7243679 110772342 59592346 248835253 700683734 516205286 563429064 43442156 155859342 826741134 786640703 446742046 967956012 403517844 297223047 144580809 575880125 831087707 801103921 873006514 576369166 794999487 735657946 783528769 523170895 292225572 381113329 723982674 642463250 609523805 448903562 820367641 78861519 83041975 891003143 165404353 445307375 172148251 588110672 632539854 427282417 734142810 751521388 256935219 348510374 413304383 660791315 637667802 364895309 569860944 572704617 203204948 718766813 625299600 441294100 391804401 156427518 416782067 301670301 389797032 166845275 313870524 333089157 682835001 806024389 269385349 455093 26473617 636564434 929554922 157257172 482687291 336538911 530478979 211814437 315577845 709115269 292373601 206052345 45935906 501576217 415477337 824891636 457602826 772755370 434618431 469690930 709076300 202279933 987294079 355719373 226996387 157026683 96200330 233891240 211341090 470556627 402274427 491349448 866247986 519257902 208966907 697374827 468651003 194601843 342641483 813458690 137409050 740968370 423194795 191623574 941022182 271702475 137125627 251334988 852995467 217825239 425039372 586529568 565277232 150770230 890377777 384784528 652279315 635430343 313321766 111941811 253123439 926364784 745542639 399949321 137970177 411266424 79365190 137194920 151417275 500524985 689816171 730507521 135737240 722279343 572732148 744056364 104283006 630776008 933355397 518198823 331327971 215030244 13945549 997216145 576287105 415294462 219511014 219330400 118264631 277480660 538920489 9948500 458389122 94199611 353586718 889442521 266472915 444548078 435356049 143249745 57693239 343177872 26861844 717898855 622172903 650820837 878550087 310170065 850086358 693309150 397657864 751586558 296983647 458154643 500378020 331474936 852346959 74684920 811175346 231500698 544009202 926484883 905808304 96575390 925794347 225522215 784456577 850199541 253397552 159244724 968131040 617247913 572531584 939966029 295060334 368233742 367701609 563988728 324591787 428180965 961401373 2826616 602893356 26114384 731296743 824796940 629641917 481679151 541928018 119851454 281955312 386906410 802685557 238935265 549198729 229046183 335604187 708660010 442413162 998398 143466934 277878596 848453650 591581706 28579140 338564501 287045887 34593799 988861351 742666381 523084046 75785362 130327598 781732604 604002044 543178351 83420759 22821969 629795399 43583003 992486266 157476622 383313016 672485340 952594512 591962219 358290130 188570559 192573194 581855416 668350636 522915136 181280430 461046329 366655298 512244147 376405129 226513863 622107999 254311129 625947310 185073856 369473568 43423536 863963179 511729038 60050930 228219056 85375061 392995283 772843017 877801829 58300650 603706784 773871107 262217846 199319486 379998124 372878767 805688165 617520563 253946310 157661359 328958310 583687491 148660185 410655289 440858658 315123251 518381565 296865144 53692865 564700810 167713366 370854241 710286334 6182073 113849297 337039124 695081109 738409051 705019002 838730153 307617795 121778491 69461212 729295093 971815273 297503677 188495680 120888721 832441381 362599197 674285229 141143956 516653762 245413695 842827218 116410877 391323872 611697956 113877626 82468213 518719518 287636939 129806770 928293284 997055614 385012756 315231646 471018403 18897272 765150696 815102836 487131353 803319701 544365908 346190189 80342341 212726684 347506224 247934444 637891242 818055569 383113915 768541132 119535845 596190422 583583751 65317331 647803599 941918868 829731506 19453345 443242683 924742051 589608784 158522800 316858236 235257549 184149373 384095721 648411808 318036882 398082666 812690216 56658765 711111998 657367363 818648084 577605933 792322862 52045394 482198250 749138294 559827557 256054626 242861957 850132908 848109047 707130377 593975573 545233201 786126126 236292422 978346105 627754381 1807038 566841977 27901372 894881423 65065695 338068544 959443613 745332499 462115383 803626532 898380121 424820587 575413694 648687118 48681691 357873441 612797334 177602714 106842458 940436583 391886861 865901521 901859135 77800046 125542524 77808558 254408485 600279241 767384431 591875104 758398153 839082071 21023809 812175905 606076312 737582855 679442836 712810408 608819703 627734431 237260662 432730230 536766953 3835288 244043662 229066399 970007936 116453836 871117382 810661301 681638533 476175611 297916642 261091203 841303703 771645086 424408287 469114774 768351208 130111207 253858663 674790097 624061503 186239069 459465757 409520533 473549526 508565101 566568795 15901447 679956083 429637182 706010251 965101300 326729496 953929832 557602733 166935715 928401413 390315466 266621210 8392001 905984928 374001420 785093115 844718877 238522300 941626667 79606319 875925997 149300580 482904879 490422172 898193788 39303595 262765407 148143214 179312429 646387149 228371075 436270158 660317569 974991712 628412731 640288168 328725826 555108983 696654765 536036650 675449245 29564404 778720287 566902359 256761787 227537830 748534873 332104691 184355656 869193936 274120548 521745667 467757509 747305820 607070487 901514665 791201140 217089084 858756495 760476810 426245948 469851195 605602300 237251618 749763527 411681517 298171603 271076710 416390382 732341458 521391089 45045737 392369518 455404469 586443118 213752779 325974056 913470168 613626855 145107888 464209202 246552308 672509413 429938161 861233620 196187203 946482896 434489554 483588100 40607527 509741087 457257159 943899770 166513706 594376568 92095152 910269656 339736497 990320893 146235329 288442786 980580239 895015620 587833500 5503241 117719065 281263712 779622027 198547953 394529704 460448361 717690311 473532103 191480732 563168384 977020494 107829052 310441784 929038616 724635039 921157701 974194244 595068567 764613509 886187346 644633544 351934725 612376389 656897341 476223491 858462432 407751766 708810300 676622172 283828617 379403614 957282895 53083193 901050495 714022570 572574410 141094347 222466274 679546842 496153009 505220949 79059423 230176018 592169699 806671301 592110381 975515333 846289474 767705360 668878114 713375924 407302492 760239405 657726729 1511246 25148139 402340528 801815205 273794166 278026226 11226896 449571222 350857957 313388133 724165815 734555908 195590565 309682354 319092636 81417912 818749696 23850857 700132582 992635492 332834063 865334542 14990264 702613298 851041298 771021050 125245535 220055117 509677646 447101944 680132308 513866747 590812567 515524326 666896813 476359018 813965420 686433183 980219410 206445493 309764415 45882573 325342838 511580344 623974122 688593635 754896928 228502346 754710329 607176488 69540879 605056601 624363679 55755695 985762850 68115385 283551977 182542999 865842336 507247736 779830039 902913426 993260592 579391591 94914353 909840864 380777903 462776127 574773565 797650842 839675384 671265331 976410024 592561118 671017153 485437731 281672022 512365709 315343233 792397608 656357760 14457998 814427595 299101672 401195797 584057231 50179936 944598552 389973789 916978974 618626724 240404516 511851132 877936691 630443641 472610014 666535585 891431270 665330605 90401530 199329993 211380857 620127097 358126141 897493676 322122908 894933958 254379092 908322536 583083405 842349615 87206338 655497649 288210169 41520838 735958925 917885768 674999040 703159795 842735980 869803608 600787966 13475793 533580672 765109865 355134040 681759031 930558008 582292720 221852346 316045872 200202606 800493185 255795675 443026957 32196873 248507408 225958322 34944786 262222501 271221547 944247033 434509637 379403082 955454544 717821582 772073479 1662600 700982319 361510193 454427052 486598688 563485190 684153563 775340624 811168430 52310330 972491445 381444233 740891895 999504942 522653392 74775094 841363952 874636296 803600996 681083258 13127466 950888521 511633145 632193389 469735485 942742537 489782176 212782677 895685142 450544117 281798372 102998359 311485036 900494156 989137060 918987939 393941445 422575414 898993517 125238353 917918486 550771055 908531745 470696277 267387556 533247374 767579276 950536337 729770435 441903240 863435967 824617523 952791618 304141707 351171704 699189612 92931190 532148927 992667146 621949729 689618533 27701739 629706555 703941303 844825942 383449474 596303871 999863111 966624815 443516929 896798884 592697975 629690994 705841607 784126338 243994186 105071563 33742998 16425999 957020486 327822889 772005117 163262521 216713226 188087503 715370658 304107127 653817460 120202308 279264057 767086245 953864662 892350433 6304433 961980455 67877581 38008441 18006571 553205354 881914588 32877833 168602205 559692828 612727376 248966657 70015822 86116004 434353761 258520712 244702145 692170005 726478552 390805704 224087943 806018803 993760805 76533487 289241451 325238832 414656993 770153225 914316048 647764763 790332251 853844273 668599080 259835018 696577625 40740793 106966015 419968082 834810244 514482005 81590147 509640140 162870171 116069998 176624366 31282498 684010987 68261419 125636023 617900012 346097887 933766766 71383328 316369727 998306080 463195742 606667364 201837309 695351764 407273232 566303460 664682097 286536364 284068150 838635989 5697554 637909463 239060817 716462455 646133917 287934726 8999944 184962269 605624644 589862149 321186455 257664724 266473580 542932700 147858727 31540651 930763227 533373990 447170439 209706387 723461580 234387862 48658815 514820091 167610690 885015483 329751655 319971500 875583256 311510572 138161298 10955842 334824807 984993977 98433400 667172389 767197566 366643860 407481776 8181329 108145060 789432772 1315071 659144908 245176556 260721064 226251853 130913729 707318705 805759187 820627789 636571350 726370822 126440274 429020993 462316745 202239235 666362552 561839448 320703000 870226548 206415568 393963124 390877790 431652664 728914181 434886958 717131844 186824402 162780130 853390344 394000763 614649359 786203266 386284236 468481694 918575639 477947437 504046958 180773966 224544532 680724424 68008187 82911502 202044257 163751562 190798309 677575117 185428035 3007629 196321932 319598967 409727481 47606386 597502866 55585987 23854581 496456382 670372768 597523215 155398364 799956530 53389359 819988192 615742486 798262642 210857369 773132292 309845545 232525729 377904172 822107281 415098952 585337489 437670648 443211428 385707814 985591413 355672158 328019729 263216011 714800753 473799034 451933568 499770343 367617553 145617012 210851650 976437821 896172587 555898870 195547207 869766368 544102036 532692764 435708898 464063168 958578049 383303307 32505566 739028033 961195622 478606186 418211019 243794553 815646939 770577761 512275136 532535292 953655719 803827894 840034883 499064911 281448582 998138500 453568404 935468767 505199802 848588379 106589226 98537007 756069057 378119233 219095655 955621991 522946391 674533008 382560236 946136165 716499961 291363865 20519872 450758247 966488224 165206183 780705977 962683493 908786839 72572215 481382561 525473657 169512590 290063258 499451941 23990108 898589463 587940033 110504879 975945987 501478861 399794376 997528961 141049526 652753327 64638898 832559352 242794260 247170758 857614690 322873427 424693173 759875118 859982223 972134207 836431913 499365092 496129867 230950477 641362143 704466520 314307562 468150657 587388216 697882089 62579127 624436297 44357994 854510603 411256183 591099581 476570222 916180442 87449728 954257411 189811715 348029712 15894132 446996076 791108306 467747268 736431341 105219459 438261168 665903436 840226536 429163569 521365819 870434693 474975153 428179901 356914777 950030937 557439941 81280523 412801643 742089693 415946162 227730547 53754577 53739947 677768100 766127049 665228727 114183393 164523095 422278159 158419725 513521479 316861428 769655805 984998233 675736259 900249569 852957163 613340240 482540991 787758701 481734213 142297199 452416757 693000191 476068014 574484822 663414873 560788216 898798007 219114674 303154315 227128722 750919829 549014923 234557171 847988416 939413148 143869126 210151272 251754071 873604349 766493065 82526999 318648948 74539152 201360770 593834593 266915539 437736217 144398067 267641985 181022942 54220210 581070583 237791332 264205930 944772250 693605208 225572489 55478523 574978119 912294714 417374715 196342015 729308393 551760442 680594749 727366460 563288084 247670838 169635216 779398454 239290641 801428707 199812916 357747357 23916027 161037963 848721113 527941206 790339300 476057108 582056911 641639847 683502262 613377746 675592752 807913388 86282919 891078022 493503250 693634335 955679181 140809860 632695863 861595513 741956826 254074389 239075580 106552385 796984645 692095924 783984427 71596128 769988970 304656683 743532211 168184319 697001363 854332915 671299778 496278295 852682252 494170644 602912242 758812182 573674719 858094953 14303718 815323084 472467571 606469859 354265417 156980133 746124514 928109079 566932284 812611081 455369889 302052011 51237153 622581878 111778088 719735718 430545306 504935664 519667010 65260407 165497054 962954680 315086543 382931971 525688984 99215972 950969119 122093302 949367932 822689156 629601485 439492748 304391880 173092950 52629131 331331296 183563508 399745166 736397692 169192060 977198315 130611154 428699266 906058078 662389709 772009905 373073612 548727510 858028320 966619894 171506393 833454575 174893770 692204984 377613301 66809059 442513577 405502204 500476706 134053327 562589834 31836975 135316827 737487627 619686734 854094978 276985102 323127590 18411689 884623532 660786793 591590085 286966220 928307781 485049504 297482796 268538804 401547449 133938947 1076070 923769289 723882525 251652725 773500569 2610358 553257889 188599154 874642015 889886874 999242400 471589904 466896733 731328663 396819033 387028504 821997689 153374636 386003739 718544969 375911566 560871208 330218618 301743983 312424548 324786100 172221135 343613713 213815023 539182765 859827145 419502183 75958528 284796591 351236608 25839340 230632341 386241011 180664773 213783901 347306990 620246797 599115890 137388568 50483442 596546729 780293145 365994022 247109179 412889689 696933666 56144986 394797832 802817227 51856800 351203624 800404474 96145401 547041070 914427103 637834584 105701052 606898651 874667418 370770185 591896118 568603163 919975863 408758975 868222105 515927848 9658826 339045961 827940927 497752334 866756578 950507742 144581208 217618690 651376378 486693517 294883045 385926732 689390970 205053 821197029 269685397 465352869 589682998 883806779 775537996 149992712 566892650 759381821 9330050 513418936 637098163 737153398 224909484 976422526 905526610 810831940 172802478 33791011 158535834 449388214 33630480 178385818 75890166 886470104 857722686 117561194 762633538 716801073 434920208 283977577 527888405 271945865 663094742 754490347 369828279 878615257 157501892 510365123 757907383 928324938 61986878 598150044 327999513 844499560 782306499 353589777 372915608 75848138 321986051 354673993 732915619 244576992 152196389 149212002 676290204 890896078 133687178 111250743 365113163 113917127 396118123 867186434 943852954 888993247 720595430 582545819 281350561 542672020 417788345 40287396 492093982 563339555 996385294 899402891 456011082 724447509 585599233 712972402 230919887 954164045 838248959 79671888 775925159 894569937 847147989 717122002 609955390 137138262 320111682 518708479 258062394 141904450 701316947 44748482 913800008 148458956 919986769 477763631 424470664 37883687 911103699 591939742 505167749 289972286 3355291 118925375 193012094 341892560 727035556 728273387 235472078 122284157 63504674 391471103 524089526 461468604 541630364 431493596 863127407 989952483 117910718 548402591 417018009 141307014 908222520 723937055 61178238 331764344 660214228 1407240 414150529 62449718 489356709 294087705 236686900 874738706 73461586 532671351 898705971 796169089 515283729 538945892 432756830 256169006 905453061 159959333 842605108 969637398 592497411 937652760 924472460 839077815 487590735 638108165 17184631 77513032 724865262 121702016 64837334 573546241 706765425 991740934 286650345 11777383 862959162 426318965 943450097 889171733 992588942 489875143 56049226 641136043 256737581 855395585 989471156 539809727 392254340 333456902 231334182 546934670 597024864 848744255 259008822 309038634 358486571 461442536 964696049 10674015 974762420 365942950 80152151 16412300 536398942 558889109 518633201 567586378 891750736 424107707 756180910 912891086 184091917 71777274 881978295 202164489 923734842 138242162 44247338 943968265 23774116 116680867 824211474 579874514 171949815 504363897 633977983 111627798 548017689 928231838 209766503 372018656 256402953 775907603 828484365 521188663 752905253 825094195 453158232 706042304 291905042 961277284 926266497 91438531 713967242 77770387 52875181 281785870 631963698 659675312 953042323 486757889 726643605 861123762 516808042 946838272 148595148 560600420 249301418 813087487 990652728 857253196 208559262 961597681 30239911 709196798 193258676 671288872 882264777 419674950 912410956 315412792 88128560 848474531 781938089 853285806 29406666 666239527 215835825 39149049 414669229 555638456 406054021 339043700 419695166 176261941 722391196 452277772 150277997 682510481 214515933 918017571 126527788 864980097 41724860 804994437 263497040 200386146 255821078 809945495 157470105 491559056 661421735 947423605 165986760 625968590 132973899 842411460 101824235 793442855 347966803 486153537 752234933 55909842 121860951 409514681 166827852 756977447 605989064 532890402 370437020 539473902 35551000 162957286 107829052 557325694 867030957 916251464 674717878 208619245 971664584 522090270 998228940 563058526 335010076 49013792 476887959 968599200 350702214 641141230 628590818 452770803 405180876 167738769 384734786 542714580 898406854 828362404 21391288 7048435 635906483 183529194 662559949 403788898 495361127 816102331 732128525 560284545 25993221 249530178 981063162 312996182 380475993 244938353 15532106 404970470 652107479 22831944 270203831 879139942 839923562 865390668 212850906 698390681 719456950 455247928 851943836 470612620 979760427 611225141 691133669 479546496 737235725 564789388 151336012 436493598 230806571 120913858 617946030 294428717 246532757 436314048 844418031 163442470 73976961 72285201 559286779 553615393 791543615 320804213 558608479 883660213 185817193 186912847 528309350 320193211 217782546 33210200 134636532 586520657 924964028 512468917 177542864 478035882 560276831 895746854 38991976 759674953 653431494 669329915 276615628 204883275 264898328 52205127 652170654 730555667 368682484 406961347 208454724 176382173 498098134 640060073 623740707 76567801 962004661 615736767 344534073 868444747 239864137 86497581 363954201 546038915 158260125 954503594 464079660 376129154 990772295 522607640 371692806 574441464 293860009 235038099 756579777 757189582 511560527 565175088 982679511 367720229 15011677 93036393 5625335 365393527 208294459 964211397 774814343 382225475 971367994 855019993 676021278 581828683 47488548 663648554 758396025 71671539 152139066 318793519 711651978 280341490 853835761 565305827 445264815 170477771 156898205 853385423 199091524 926704200 415593313 611322497 922171161 82213252 517131099 796721305 267018348 288283984 692871713 569421512 840748827 515549197 567483170 376091 543050538 214046443 261944664 779634263 339708035 231754861 617762889 814138852 464286874 274370721 687168008 274598949 913802934 876415969 439050390 336728436 502573584 127337758 472797145 272732427 571347352 723491638 86658910 811211788 609547878 211417831 429301224 67399579 308044326 672156298 483699820 385178075 963920526 568388767 816693782 347909347 398936526 605389101 530704547 925749260 646926730 236510409 738862581 794176350 4090515 454302298 927102269 998946608 967298726 269023456 969621970 116521001 59044253 501312212 995138685 531477410 376746141 606909158 746336516 657660362 548219583 853721248 341623102 843858234 744286587 445097368 667417508 610254374 136521940 35975403 579420718 783441388 544737377 994144643 440379592 891076692 703829583 588542124 509459127 361090711 737222691 828807156 176098218 811860828 123467724 951797310 812172580 54673341 326918755 236939733 81900037 59469321 590985201 685580387 861618655 893646518 331238728 963665299 340499784 411568733 290407462 946156248 507278459 85725117 472136800 520395185 206649648 792420883 556144521 173392998 805523245 131709335 963346498 612191253 671898810 301672429 644402656 7177445 685973136 653473389 401517923 502599120 894911747 773623195 708891297 304228423 980484878 772147826 587584790 338674492 83794489 116896593 253385981 859036061 763460798 988172677 787460249 943447836 695226877 447809770 528044414 886493911 446988495 525954718 289303562 967986868 830521526 164651972 671791346 333438947 877146006 917138042 267448736 949372853 431797900 960076427 494989259 974607342 434764199 577387680 713282425 126856431 552684127 588106815 550638986 66268547 565004981 152955420 773095318 120965595 89674818 757229615 782700977 117824933 628428026 22486144 626291514 178242311 828755020 21865167 920673315 162703921 784471739 890521417 117240398 470632304 743256103 508664851 139357633 29018838 619083446 391235427 393796608 84430495 89458560 919382284 994398939 441489078 937055856 946327951 546487125 710422127 20548999 165742572 628654126 565562783 996842947 156858837 268864255 435180888 633045653 737299432 981319453 525371380 273857873 902056773 396810122 82452253 218070092 978043663 793382739 18811354 280406527 985473043 993196885 901144925 703083320 178836821 369216213 165809205 738502949 570975750 328566492 627845752 921621605 868793872 757393737 835983836 32588691 662295412 843822590 370482240 143521996 3220562 250823603 447054197 510733267 18010561 290693412 352870513 254217763 589440672 909599203 490140877 390800517 60250164 601179385 34878419 701375733 710973545 857139082 656686137 245346796 634520490 573389168 418360644 170220948 489070227 157980160 774331287 897460426 798719098 201922163 552537561 245162458 61924501 142071099 68407586 282870884 186400132 319247980 509382120 939332417 460905482 865875054 922190047 266951050 628615290 135752934 277682155 445845493 216581157 263873164 975003150 220046472 451835148 163241507 813567484 477700722 353145956 465162147 407354362 128609770 439644501 265849810 854635357 937697980 766824501 713987458 864459668 620324602 756091933 356116644 275493507 186441096 584049251 553937253 776405688 84378359 604830102 714766439 923853877 376475353 373316071 995610702 981959449 628964947 556147846 433410791 753284835 456056568 359629440 440606756 888089911 954813883 295496574 957863573 682287706 758198786 494980481 250876936 769891082 421087942 38310617 787834644 55195100 346741075 746496116 383467562 339605226 112302374 197730668 845038742 992362709 247118888 419540221 225507851 461499061 299470082 937786558 267908916 493606325 646865816 292819417 930457859 239838601 958700010 600344145 5047317 646816606 36403530 412756955 984541777 290182426 251547123 241493121 231721079 243591196 470157760 855972805 832205705 895724643 574326552 906833335 913960273 259913621 425178889 108866718 179085398 229177853 385259471 724610434 620471966 888440765 332124508 392709599 387039543 848271972 164608481 200337468 923961208 590578886 566197459 58764022 410161859 545404239 983113889 478180852 912318787 191341215 627369213 104122874 684195325 885033172 794081521 172279522 447929470 632259889 467267005 401852019 154408711 333814406 525497863 501708552 192151983 122347066 66575910 598727796 106245155 381189804 481111773 911388984 602684679 803383541 655762053 155087942 86624463 445609285 922363612 695809550 476590039 256978311 462627832 983658524 584724625 270034256 921546726 587238325 278009335 425904670 499889511 369589943 154754511 897915419 365015142 602302570 628262840 181162326 166422734 20681334 914753485 241160355 157672531 82269511 857151451 194962938 849514192 654730904 774349375 612198834 489322262 141650021 91173329 933312438 768050761 939494544 132797408 426293163 324186669 375560845 530216969 964373524 103658438 273356995 62964162 173527993 48135194 759061025 243068506 605883329 488754352 456548402 854736304 613718758 913881936 531918438 414133771 815726207 106559035 400688402 778578509 289481383 806937434 150312045 362756536 394193081 959263664 838897600 946538490 228453801 94874453 205399315 204829277 958158301 162695808 240929733 924023452 511870018 468114082 39960615 429854637 849744548 768042 290707510 132627567 147490317 486863225 269448657 516893827 77391736 179965459 867268096 163737331 672816909 65692125 655647008 446531241 973557307 81412858 222170748 35161443 691057327 436888076 68379523 3249290 355243499 328080643 12924242 445522569 871184148 985422769 675073786 714381537 314504668 679267276 934551998 902543021 792294666 496472209 342551841 328954852 595477276 886876685 261553910 98621063 594906307 147303053 272520292 822405999 24220198 914237046 955225651 900840621 411510612 469473741 138572800 79962493 18845668 587985785 527006216 893255897 706323333 52192625 961600341 107794472 997114134 189531351 299258080 482666543 703336818 841889967 671380908 906791839 10940680 947741342 108823892 983208319 303332402 130115995 974706560 941897854 623811862 844813307 967983011 59609104 625531286 635594731 776616094 886894906 586741038 905583534 948150982 420959730 675507100 708915636 679549502 1312677 705824583 74634912 179164134 40031371 716979825 383357704 532627461 577622691 607577882 903648251 875405701 680618822 269718381 709048636 678490423 944234531 917639585 829583743 916219544 948915067 72714525 901863657 306500728 827383258 844485462 961567623 790827144 767600024 453194408 912117159 834912388 737570752 423624252 363978274 841663069 734197207 45630937 331674303 22656384 563346338 311324239 44112742 543668456 457624239 985153045 220891421 351030192 307269335 38144234 825254726 550495612 197787193 424905042 703497349 767027459 660798364 684911530 913270934 284826915 372626998 513346185 392315254 666086444 58592851 391666480 655675470 590549360 201009384 993816798 431467129 446137827 781435216 73414637 815206576 318652938 351357505 596000897 619869343 317444766 761489605 801338001 538039497 132599903 504409649 941143212 856963389 865350369 504127024 597155736 372483358 20576663 352168273 985295089 22528704 404009944 274840743 870812546 287288878 814122227 354973376 55595563 806116292 238533871 74747829 812019497 525026112 552010615 150673273 717866403 679470234 572055045 901943058 286330480 74015132 820151782 9309036 447990384 505338787 175356743 90012106 101973860 166061240 705068212 498364799 455597585 517880953 459213988 898666603 697003624 406098576 806190373 702401030 578813573 439535308 878293397 795005871 686327581 648431492 416765043 780793358 25923795 104587044 423460396 597192178 120285433 353441881 405851329 655360393 623067860 837854614 302242334 45012753 688507983 288927704 729776686 634181606 457744471 152381126 437943697 53686481 585546299 343175877 146667180 380034167 900179611 389966075 64514676 632023016 491420603 393782776 900245446 419977791 512580371 396130891 980510680 789479189 292234882 587392472 915885182 947792547 288823698 376835650 773457344 581022703 15764058 194656506 529181697 506999425 668180795 11296588 311001847 294865356 775297000 123476502 480854285 818699688 267327972 359530222 722272826 557529716 255671852 760070362 983465674 148779885 449661396 590896091 250019751 622884320 209014654 948848301 612119167 400795334 88836386 58112056 650247474 630609625 968930636 80738016 677529631 348055115 231898501 721020365 116163896 222103982 787834245 678054183 625720279 471054712 945656700 277058784 385987779 591663900 732863749 596754874 29705384 689025619 434574408 218187398 813180853 915416623 258308577 308371905 652283438 606168348 465561945 517589949 118933621 948861335 237514692 450239680 670583307 947275975 382896061 74324490 893888844 732856833 604273364 825923849 880910704 929325763 89582649 707928111 117746064 613064531 597465094 886399747 75397800 393261948 383666929 848273967 831512110 260984537 34593533 219085680 634330965 560664526 424599275 491302366 274783952 565232411 261913143 958610102 165391186 547510161 241781731 552652207 591016323 882854898 856195713 301822852 43957265 87208865 792924022 608966269 867479699 969129471 486005907 566985484 889434674 4601634 718371670 168296837 200686859 317744548 885148882 374745156 786445193 222818458 568595050 400887104 901452288 878413895 317440111 436124523 136647226 539535348 317631099 105447022 367360996 183359220 531773202 937170901 788353743 147132281 832503625 140151643 885275631 831075338 725606604 965166869 432945424 834511526 450674856 271260250 262080590 949074135 764454840 550649626 872906897 75847074 66105090 333946076 245942902 111127851 937072880 522205581 372984236 312630166 164548365 299549882 7608631 425804521 927618442 95253237 112535390 857376221 261014994 58367017 303094332 964776381 613260307 880940895 77135977 774306283 806678217 38600956 790622058 835369376 495549854 182142935 92173223 547228600 140502497 991418010 523542497 113516265 978109232 770800935 922779636 52364993 750086052 238561402 925254766 393151957 5791186 606192554 289016548 904061482 824278639 843514030 226132685 904944203 643593218 12845373 89463215 395795066 766747627 389591414 975289765 365236587 625588210 787903804 915062178 155487740 162068181 86498379 411347155 705253614 819650771 486493751 352863597 83161941 127042099 432253425 268099904 773476629 622520432 708490036 232055574 114867944 792069364 333341724 999120306 375272900 938434135 825824764 366563262 17129835 469672044 184787374 984284821 303534562 233131544 206649515 978736194 629265926 245013232 553219851 754459358 303067599 999856062 648918405 800940597 7450095 962000006 495233713 362036607 117034647 419329283 602859707 580272184 620093448 828914620 752414483 144712213 179424016 338258335 159917970 909356744 862018453 991459107 977870231 453504830 564731666 660142674 202489275 440735500 352203518 91848703 710576008 319758833 412762275 233215068 577365602 802965921 407355692 655221807 917728030 466643900 981947745 160947922 392736598 133325684 176233745 698936380 88889054 620537402 369736642 651711139 988075188 565083185 350254536 389025366 422439621 637165328 864534680 120041644 241873235 948719690 239159237 830535358 629860037 798157971 630125239 383568642 459273306 707840331 176523552 196845287 843422659 264068940 149056392 566751936 379903295 68194653 545063759 218767943 13459301 603347817 162855275 233691740 280944911 574694430 387308868 285749935 68878406 108372224 151782626 993177600 507390977 327280648 593991533 842564144 88820293 392517813 204383594 405848004 529945117 259428836 184320943 818630129 335735591 501925209 757871207 19940657 215545486 972483598 741968530 807859523 898864374 681298053 630548312 728249447 587075267 192132166 827719216 56431867 169309765 85183408 450163604 834837642 571114469 424447522 383090906 113510546 972189668 188267452 875857635 367666497 458914738 503421326 106518736 680094536 992940328 814921956 903227306 524974109 475371892 304854720 682574986 712997672 91803217 301260661 207165954 520370846 392638843 834176366 26622444 760248715 904732467 755735094 223031657 545569824 763741694 847588086 519064387 876014442 66913996 128461342 539847100 974591781 196134003 523694383 824907729 695408954 755637738 171552943 655186163 936427830 897471332 576519057 72843003 705909437 631118217 823237648 337201517 635909808 207978850 139873407 555636993 584573537 850404893 279677155 896673465 30566027 130529625 368319660 52197945 456737794 185631791 512262368 771740846 280339495 105856928 952509924 365207859 474926874 763245870 50244441 259834752 857183903 572054513 976665783 210276026 340072588 89188304 8044738 691979682 834145643 458111950 981672967 727639908 689074031 330146798 130148447 927318527 818061288 28348651 705088162 834125028 356800264 33263400 942130604 591855686 882111561 833472397 857066597 803673481 913837913 830836470 63751123 346223173 215498670 197278069 6996698 797905271 288088075 520513688 496599623 251170866 826331760 731479618 252714863 665107032 694792898 839992988 656996559 127465438 62615968 540116026 497856739 651878453 808944803 5308795 752418739 81481486 918912262 937110519 846567045 433808195 606622011 359977767 157238419 177917791 963763985 480683247 419590628 664642995 257508183 519925695 956383948 360429967 507900633 853186588 482295074 934617434 486747 29853679 941309063 827722408 368012031 890845272 646602077 22403418 105073159 419638641 412838617 51353129 464608069 374225126 985803415 725591575 127691139 132729312 580827592 15210911 741899370 350463878 85022212 816006970 881727058 531692471 825251800 291735866 506326445 470014519 873752644 13255146 105960136 567790267 895821999 362799628 960650721 641637586 627849077 95061717 850983576 463649937 782966046 954384958 132736760 940665609 247620830 197279399 434104386 999486455 390639321 665894924 166458511 361946167 356100551 783441122 920776922 803740247 527894257 523856111 716096439 901279920 343913495 219145131 918841905 97721185 194608360 562869001 741844175 554181175 683581131 206937327 53641660 546876815 255602825 928451953 148391126 7211360 205937566 664106074 958500510 87141833 321352306 626602601 884469252 357028093 337060005 436862540 847576116 847820171 503868472 114814212 811467547 313082765 730176218 594259927 429073528 477024417 217475848 170215096 588946577 960365170 260764688 571229780 173548076 643207518 896646333 357061476 666738011 89533439 835153517 932259876 286654468 46792027 825204186 780522570 476172419 643084227 816696442 391028745 405429320 646595294 909931304 395533322 232870465 912876855 400499276 963660777 318562498 89381287 707066404 932810762 633038471 502140403 122624903 689190007 407484037 329334434 829782977 740238333 741916128 377199139 844700789 235051266 513494613 385948278 621253341 589079843 655479162 35885495 660180180 822703520 182937344 580510121 277546761 734253599 879850561 232171151 133433281 690477447 971823253 118678394 896710572 604114296 516195843 253938197 68630760 371968648 134910512 544288635 279956854 757423928 714966870 137014439 83011651 501759624 693463962 978415265 735722850 772789684 399490870 199019704 697956170 613550247 84868065 668031835 918492913 788662968 351514844 44780668 294873070 832921245 289920283 333140229 517548187 812184949 59796235 152936135 846141046 393317542 376616732 775445827 330112750 711678046 454738272 967585474 825676070 840828095 522893989 227734537 569642159 364058207 577910902 781020256 844805859 820745627 381439312 490207111 207250010 789987 901060204 914868663 587701830 23830641 553320000 889703068 150977710 805245541 309020147 122576358 84277678 193131661 307285428 221686628 348362212 278421103 871687952 502311707 62477914 785798680 13199020 228178757 354713494 905378714 140343163 456203267 386647060 922779104 963391319 167364773 278326540 524411652 304229753 992154564 512534353 853014885 506651098 453251465 592045477 141633529 850219890 523679221 998519944 875790603 339888516 951679339 147030270 5975125 610195056 96161760 288956698 574832351 267307623 466338798 685911424 252194168 989508396 103188948 174174772 814400463 595948894 914043797 506475804 753003540 294972421 923328660 968205919 358804840 186258487 322364835 915572499 89306674 762100873 837305723 485890197 245822670 221959943 824358572 948356999 189364436 437083586 217138693 100716079 314195177 101540014 274894741 942250038 785769553 751501305 431469257 503972212 700336072 598315762 973395712 326820867 345369978 44471709 283555036 690798110 810479224 681888440 715741063 43072682 559379613 817449089 984982273 211749267 654678236 431517536 865843666 874393305 425308697 766398901 959245443 802182418 397797780 130366168 702560497 128719229 483514950 362675273 115247925 938017579 18851786 336520291 283432676 111276944 436423906 155013994 11457518 938297943 938592937 408883729 391142593 577335677 108202915 430708231 679302122 43493494 745480528 272668986 913615670 530349836 489044026 568803461 545696573 189186349 244678205 45109843 860983048 386815172 956917943 605155420 541167125 509164931 782067631 764565363 516832248 566497773 145946586 18146221 644793942 127901811 547529845 229574459 150883679 383433913 838326897 945399345 610960604 378514775 15673884 207523458 970582097 41341953 430704108 738228038 854409789 150551179 142272195 368466492 470007071 792132672 113519989 532695823 332364174 880739134 274752431 899922389 664964323 336653956 869151243 989330974 723792484 339403598 431430820 8523006 35301625 14632228 522294425 404054898 329335764 961210385 416857877 410644250 112921888 831305960 416332128 457520233 873880856 954790209 738865773 653277480 82649093 524000017 320325413 340775094 132423279 396226252 277912777 234613164 464707819 908206427 65169036 981564173 910049541 734255727 208957597 501260209 234433215 405394873 871661485 710619499 477116320 286446855 292193785 351318536 328049521 709557095 680930042 239321231 885093421 267482385 996186991 457770140 280243469 913677116 930277910 184994854 609837419 541010850 892860222 602551546 316072738 517237632 42788860 188695712 833236987 257517094 487865646 644302640 944490024 773838522 641728824 242621227 917494748 740553144 514794954 304858178 450877415 781555315 572909836 892930313 737997150 424541420 820463534 187420109 435998971 15043863 550967097 160849901 185041138 217943875 913256969 947142709 666372527 479296456 111911487 955501759 140628182 32544934 147453875 843895341 674857794 604816004 352885276 592904391 722308603 402302091 676562987 835377489 18387483 825663302 448144930 718205686 493653407 300481015 79268100 720191908 852771628 833807956 91158433 95725121 456354488 333752428 158361072 735954802 644267661 216203570 655086147 40039085 942617384 730871010 499981281 79512421 444702757 21244057 339294006 127962592 984366616 660588889 376060925 450712362 31427202 42705868 138925782 820450899 294253556 700392863 307164531 114374647 534371623 986516561 212070595 499719271 999134271 969944096 504311096 993911893 277737217 108346422 856818951 816447466 467029201 140450494 757220039 974082524 688297178 662004275 13145155 130291821 74063278 660159432 921127909 360406027 59146131 90447681 365910232 338486430 155571131 167779334 632535598 386950034 397162705 730875399 383343207 152358915 403464245 399431020 975020174 558153486 341756102 766213499 152736901 407953660 434281010 171526077 682256185 340303742 649706031 972431329 882902911 6732294 527649404 491043415 235394273 279291189 363863894 804439428 526724788 229923717 923082876 572328626 374078427 895057515 670264506 631665778 484509524 928062263 846093166 787708826 229551184 183478521 290184288 600061919 538613658 219948983 986423727 664872021 30022456 625980427 887918208 506508788 67181592 257741864 11087379 888069695 70235538 989819084 122458653 435885921 222761002 776601331 869237161 153745706 373492961 71141933 104490619 547063547 414816859 468334596 540217372 110120376 716103754 4887451 683020536 587254950 405496086 206207822 781389331 485417781 680235649 957901877 736133022 595376063 839762765 474147228 202235777 505505569 794323980 705819928 575184003 292426934 632618989 594603998 228107602 311656207 28474203 994279239 415473480 746881018 462754581 199244740 873238732 408058863 120357918 630947046 159770739 599048592 947859579 256483950 793900109 806789804 800401548 890493487 34739035 557743713 314600960 692237436 490722087 258177572 409769509 80841091 258196458 508406964 935406922 863672441 367759597 837853151 301956517 562907970 137862979 791454904 527147861 298546264 861188267 586473043 167295613 162811518 451484693 368889565 460997119 302392491 199721944 162854477 13453981 925327916 761745364 619843940 515164694 131092614 140051228 50282612 861587400 345647416 119817805 547461882 113506955 173896935 846686612 313997273 329445356 691343410 662533482 857380211 168419463 950334044 216092 137247189 512944791 375705549 72241577 326168236 236373951 144142973 641045337 759641969 536634219 895445875 513554064 273543727 98182030 701962795 634209669 364406268 17190616 932533856 373393344 62666242 265471691 903916379 421051367 98475295 778853154 547648215 720599686 704081086 420083659 292889641 962566719 802922031 511915105 691605287 375284205 290237089 414278874 392546408 667651056 897059963 362082625 978072258 762845141 35890416 563123829 935792090 599259397 24556023 781521400 878725248 348989706 33436566 409268099 561720280 932852391 556499099 968997269 430473619 441528978 393866167 130023161 173821391 996898940 822837185 881989733 736517791 846597901 209571791 680919535 234058421 709123515 253971181 204988877 3530851 888517240 297409646 198051464 931014996 947753711 274340264 242418801 400535585 24912463 910966576 165411801 464948815 506581539 705281012 425298190 173070872 28615316 877335930 163271432 141353298 793697816 543235009 107857913 993132646 436300615 988912689 938651191 971589173 622415628 206121771 420087782 769115293 46455404 300698603 432182536 17780205 83737831 792601630 35805562 841581141 296773640 550128000 861617458 297881929 957032722 221766029 590662277 319279767 647166795 147350800 621793587 463693295 289967365 915836105 788606177 680805288 493867803 650137084 208787889 459288734 34056878 815021706 705881773 999602830 773617077 776444524 964812690 903287289 578586276 646788676 772317933 950623984 329745005 1458046 719477033 459030980 127962592 18254217 600898489 166076934 375083375 368711079 368238796 217689978 689177505 959694451 380258538 677385060 974916168 587091759 855204065 205133315 611904372 587885769 678170957 751445977 508497670 780018101 50737472 505841128 366730842 621365194 560706820 199966930 679732244 656156132 49124581 9849681 903605824 54259977 385429179 846058054 469245114 917238989 978854697 651681347 52377628 66893248 63227103 323005230 768454150 214359525 395796529 244072922 885404109 184941521 990934289 599906442 182465859 946255333 596819512 405964645 154132071 871853005 919932771 409782809 876615203 176436703 143228199 753323538 492516523 616895995 891638085 501782633 712290378 588951099 153369316 324222712 624173090 831067092 216269006 280341756 783549251 585629956 105309500 668318051 236914330 128597135 86740439 203253360 541673589 812964861 524950435 254755349 687116271 774699830 409937089 676457252 766530438 99982451 371960003 820808137 162413316 421146728 212291375 675694497 686451271 50785219 724533560 312859724 219129304 918109208 328625677 331237930 271838401 36271461 19323670 43944231 784984986 351040699 172541266 1732159 737978929 1896946 620319548 587080853 958746959 547870192 635939068 847666556 546747140 960076826 746987285 872596741 875755624 971198818 919107772 524223191 611438473 365399778 110574970 612577086 678666648 333594956 954204078 898069433 175021849 151794729 196382846 657435459 65102802 328938094 908278779 22420841 618789383 301969684 857243620 160527110 910941439 621304147 573817428 517643282 899539349 300823490 423306249 997418704 670822973 600022817 908461122 328159911 834136732 649597503 620830933 356078606 155209238 114808892 484958266 583299929 743046628 151817206 551785446 481653083 196698455 753670402 552792788 378297985 348971485 253608091 962796144 852751279 538949350 269494808 638166286 76222533 419666571 909414998 170344505 224442122 3187312 543617517 493114757 387434553 538084318 996959588 18336278 714190416 631848653 558548496 998708139 111749493 237813676 798437271 587868346 709393239 429948535 122769474 255839698 326117962 529700663 407908307 371951225 318051778 809528141 8436556 965226187 107430584 977445429 912057442 209216415 496943694 390351243 945565063 289166971 674079345 342116000 743850746 832900630 168023921 79089614 695443534 825546661 289912835 31376662 841821738 334416231 308976789 47856692 577938300 592381302 765683893 370474659 358729429 991072609 523194702 439120215 426822237 450432796 949413418 430677375 755810771 496591244 835020650 44556829 476753895 788387791 739880829 747794329 913492512 473349228 123041592 464494753 913601040 795985017 237153331 318391061 337205241 855217631 401174251 237059167 47591091 13664786 701692273 836190784 308391190 684781057 313969210 828331149 583923566 436291039 287675376 136627675 499485058 416162021 269421392 615073097 463783203 624747384 489230093 987019301 269516221 805419239 661042020 679123104 243549966 212596477 901254251 618566741 125199384 380319186 443064729 520641501 749271826 659878669 59069789 491459439 630990005 477277915 996187124 868402586 83521972 993552527 778980967 951662714 881157951 352729799 110668735 715162912 978991953 851930669 852300941 159308431 636274228 497226851 780994986 65491694 844201640 92720917 330888007 45648759 463371967 545280283 510443460 768440850 323658260 916576649 533313209 735644646 296058632 906707916 891080017 640352407 766870253 202433548 170244888 984687146 91856816 526578488 843253483 72665980 257203613 750039635 708895686 953677664 125307646 933841379 424020592 356129279 8533513 176156871 491983459 695808885 93427679 339426740 271173800 784282081 871814169 34167268 904062546 73730246 33322718 963591883 554461406 550528596 1930196 206766289 430745471 15934564 401526834 123308789 516946096 517323284 607955203 869146455 4723329 503483171 857210104 916223667 869446104 471636986 158750097 640660701 89982713 934268575 47365523 165858681 596835073 638561163 358242782 977457931 499835779 686422942 274255410 662747878 929215506 605268603 728805520 441183311 344529418 821032375 594335072 316712468 352376152 876626508 208572695 974821472 956210250 816993830 852660972 19810583 834376398 548799330 845035417 53140250 593405003 206492043 237700892 582925933 624626886 925847547 910997432 223669126 33167507 128987756 941797306 67510368 978022915 71241550 188406969 384719757 347737378 429053179 642716349 825779544 795797753 199589875 917358955 436560364 853080720 15052907 478127253 135917987 808463210 147476219 46656899 149028728 315463066 85432384 482855004 13018273 857749552 733404128 401747747 804200693 625744086 367505035 134232345 799924078 454291658 376135671 688359555 839760637 332730722 329788629 57420855 345366786 731255779 250302642 690438611 490481889 90258954 241424759 265559870 730054124 884518462 731448230 17002022 339692873 808983905 810453156 443647136 250960992 244642162 405122888 366260953 918252715 787744869 19197586 128274344 844565262 895049269 553194315 391139667 695768586 456992888 21598502 512323282 219532826 292726849 503151469 909201932 192630650 4844359 497654978 174257365 281840799 234459948 576695282 266002760 118717762 699796358 334826935 123076970 85990319 930949959 865457567 67744847 457280434 4083067 528894816 425950688 981250160 762365410 628146199 658282004 714262502 545141830 194540796 868884578 73350398 351154680 472795416 603311375 905225232 568776994 913747074 534641746 168869003 621864210 19790234 994630625 339620255 101365252 287472684 204125973 569283724 489759965 236661896 854125036 986817806 627923557 477944112 446483760 31266538 228054269 608680319 393151824 487044903 71496378 980514803 597927668 429400841 895218312 845974397 321013555 194393964 613753604 982134344 589268570 182093060 820586825 455370820 925840232 369440185 549901501 896516525 104782155 753302524 122773996 758201712 473120335 439948938 618572327 251800754 807603498 839782449 209070248 517565477 991421202 162920046 154757570 837372755 857797299 88038253 896005805 951961033 138677471 652252050 119196828 565763746 313506769 280949300 275456799 798538883 713414361 574985035 381697731 967172908 802176566 620144387 245393612 62111632 984644719 486763608 426913209 599804431 741326539 644714408 813420253 74586633 828429569 588057605 885353702 569804951 482218865 436461811 411332924 314357570 302959204 668291318 523675763 787501346 787015497 934397851 669042635 165294761 266595408 700952926 365868337 29233234 670373300 52462748 37526050 960861393 274879047 880859499 627036846 2424557 383064439 381817564 928631237 452196908 71409795 327772083 854052950 861563194 636813410 969596567 350036150 68853934 40391668 234376424 498480110 725467486 259077317 823297764 547310262 634727704 311060633 916984028 660566545 443877359 614625951 539159889 608237429 449374914 883710753 235618245 961765128 273868912 11746793 422013356 925863640 959741134 482444699 5104241 972874086 653650412 408041706 904359402 837261700 235589384 809092034 816579003 475138610 937776184 37410872 949510242 112760293 829825803 135576975 921993739 324507598 986607400 188479454 938244876 848410159 137529016 922204411 322484934 767358762 367197273 240480725 18282413 157785315 473431023 987312433 694924701 661741068 17629117 596989087 752055649 82338405 361775927 996009037 674199577 784529328 245881190 506060711 594311531 144288741 953703466 873262007 748816700 819621245 508042544 669871225 398568 838894142 443817110 11589188 609147681 743362370 299022936 19246264 625570920 792795943 893288615 715263327 409822177 747264457 757428982 962896426 845153388 585972564 988657595 253626711 174911193 406157761 363644710 843061963 76185559 842447104 925959533 51030471 613750545 6175024 874441318 473118207 766974791 313644823 725577610 135812252 794984059 79982975 964983462 581036269 630436193 408607887 528695582 634127076 301434891 631608455 571015916 625316225 300147185 820223469 491595365 979087713 539254984 217534501 420670854 604841939 804291000 903190864 191847679 557524130 517175255 830259117 177239092 5972997 942860109 676277569 722194755 421393576 503693178 559125583 17492393 972741618 872068731 90379585 935658558 590299187 309669985 187899042 459329033 337827814 773244145 589776763 483467868 993773839 453123519 303165487 95071958 865816534 529832998 674993720 127864172 24965131 588824483 741430545 991186324 449673499 202534894 129524145 321278092 685569481 1825525 8839413 31125957 544525508 825447310 868570831 433116994 834241004 204772885 110034458 262211994 363638725 392699358 91515671 397757215 353532587 353788745 471932645 123563484 549364181 139871678 294115768 334946103 309621706 504971308 989521696 19521707 898973168 674270998 631626942 852015656 128178983 236319554 967722331 727596816 789221568 931872846 627481731 735574023 949667581 606601529 745026200 990794240 920684221 455915854 165296756 252035765 585525152 367405152 408625576 164442763 861607483 184255773 325533028 6883 727009621 261424900 132833717 986686003 774990169 832297076 134666723 392060293 139054792 163319046 574883822 646869540 290607361 744702345 277371999 393110461 518806500 663319645 435209217 479294727 665971399 592158926 90086453 727609052 232741854 927456182 707586168 325422239 752466885 718785167 552256931 512238428 919893669 770132078 891061397 452670388 485733922 422241983 381780324 657521244 451048453 466160312 769279947 979317670 594628603 1572160 968338786 149207879 619573285 90804919 971318784 629207539 955513330 184438249 520143682 963649738 101975722 14252380 823974202 507077762 168410419 920394680 493364132 675950123 788590616 825825961 418041045 541855400 803124457 105422816 508526132 904936755 810638824 460332385 387650279 613006942 341737216 527421575 528375318 196896093 852034010 28271910 872269827 243666208 165611567 84165160 290321145 66593865 684660426 519001079 705767925 322460329 947460446 722384280 701682165 289445872 437180277 440622583 110401405 793076573 207736790 839923163 755262146 214427089 927063699 274760544 388848210 669141055 476342659 149501676 877499520 790167597 667517657 996026859 462391890 448273674 151378971 47762395 793488474 454281151 16405916 745368409 938021702 863627886 611789992 241621466 515962428 347012528 787174432 586517066 376997378 745366281 900098614 360431962 365163304 90965849 285816834 694831867 694155296 343547479 446755346 10864471 709851823 893186338 238162801 58012838 108280587 482224451 643139156 486132523 65785757 873378 180198608 152459197 176332830 712027304 133599531 555070812 543028859 741576845 62949133 181111919 163168623 43580210 893813433 518367600 964028123 835992348 687804679 511044354 58448546 705801042 182888932 192271683 252316794 264510234 20305875 651076729 563906268 380159586 617114115 214369500 822273132 447155277 191091175 220078525 661007307 613011730 270590329 135576842 32100315 295218471 191551222 510342779 91521523 479219715 699533018 724919260 547175001 781279606 150278795 46583217 594656666 842425691 557139095 93080948 623557433 140488798 595922560 71999783 718656290 875391071 648213771 776590957 305266089 14180560 546679044 568831391 815671012 164863043 773134154 803049977 641292052 649352650 618126910 682276268 305625588 458809934 917597424 952755974 419124197 732655604 945818029 87378440 881528622 770623779 109773246 309595505 124294718 453100643 864304191 797560003 246714036 508563372 450997647 590890106 19668273 666600223 423080947 805665821 241387120 191496160 550952201 475996726 580027730 880882774 170732865 772565180 917513235 134378512 827478752 828074459 500445850 603950440 796730482 501810962 411075968 665473979 272295389 893274517 792975759 768398290 138181647 131380825 20883228 457628894 4715083 931550720 198755433 617720728 74880164 378817882 167819633 932678959 998337335 864126636 446044062 607434375 665784800 344599110 379637694 458294958 861924821 499930209 534323211 608546521 125418568 800318822 444589840 29695143 951994416 8533779 44094255 941712452 781085293 766800162 796034094 391523505 731388779 379756463 715326236 359803537 892413741 216413444 177259840 563389430 340991086 491668781 729193082 422788746 116083830 317276787 347529632 244216961 42383742 111146205 317476819 163841071 33314605 544952571 503218368 748872161 636356688 80803452 998790200 72597884 543311617 197767509 555794199 534119854 916550980 543194311 493661786 868362553 836117368 983531110 608151511 152760043 203184333 304959391 166790346 876915517 911184696 196988395 353904721 447733694 103845436 757907250 290812713 201657493 618090468 92611857 156306621 31619919 28802314 998204867 271470390 4784509 938405407 284131591 531167520 461783814 302989395 33240923 11110654 732877049 950062724 429424249 373850864 932726573 620195193 407810685 143993215 546571048 365767789 729412532 831209269 231206502 443136150 154826996 7959485 775966256 931043990 103128300 789168235 840029031 166981600 106555444 664362764 496348253 598207234 49381404 460450090 198841750 236294018 601585833 654143443 12700536 248812776 615642470 623330269 963110157 799489434 555905387 701775132 984174032 202891201 774321445 585360897 741510345 399644884 246446839 150932357 852165547 37088879 759132047 986537043 214827419 182008339 891297206 108907283 896657106 735415753 94793323 638811602 780852277 976268113 368229353 435999902 599890881 368930130 942416953 496528867 814351918 554101109 309417285 725056383 504770478 587592504 335753679 846146233 18393202 464227556 342909345 902619629 610362902 185731541 200227610 844630964 374024695 659892368 260576759 553127416 478020587 780454873 905806841 826307022 903439707 295635559 544997259 331723114 963141279 758019635 66178506 204233304 348575943 884963480 25384480 68213938 83185748 517396168 924300358 376298995 653698292 307970112 122120168 35030438 607800657 111698421 238344878 421367508 566852750 81027025 359890652 622843622 366945903 934212981 58383908 509252046 999381119 957959599 346292466 320497781 387257264 484695458 956529849 929956449 750781908 287233683 196785703 17944061 464922614 592436098 794905190 643416062 707475246 718728243 732586045 344772675 33697246 396464455 282374395 331009170 230115104 384655119 230659606 763737970 622033652 569741111 200208192 661230082 438399222 628189690 30438081 435425608 291881634 972877544 998483236 869615679 607718995 989391356 573738692 561833995 173819928 121040075 768298141 414775097 188283013 455812247 758745815 169667668 678725966 635952634 189850950 207425038 154249776 998404766 596876303 990034810 785645730 109069277 571876027 223808510 36157081 934762271 557415336 506001526 300086936 220312472 350914482 839994451 786273889 614207134 814929271 627224775 535818131 782241462 109585184 221068976 196233620 445312562 966821921 403843960 897473859 31825404 187344831 815564878 467822945 480988881 906367702 235624762 55467218 724694756 196619054 321786950 841292797 455904549 875035429 512226857 786951657 496158329 407120548 403245593 838226349 327455809 833224485 792914712 564812929 965623990 261855022 909054701 9062321 297110396 543925811 123255323 937403385 799896680 28609065 148857424 269930782 188756626 445204566 381076222 621853703 173692913 36394885 256859808 373453859 994953283 529670472 779294581 983289316 530951794 223993912 420286351 332718752 555214984 764903183 795461529 133500180 443212625 672299406 742002445 135530957 432778775 974288009 86792575 218707029 567871131 316865019 577211721 441399968 327660629 351839630 845362198 688479122 481225754 546801404 962416030 126189968 338031437 616596080 488653937 368700705 271777620 63131476 18614780 271804619 657794293 530427774 44897708 674196385 764717515 713803785 240147294 195307142 792114451 925384308 784727232 809800791 358239989 773992004 51286496 628473379 959687402 995647410 440742815 408800471 303803355 799901069 257152142 394781473 845170279 976396591 939702556 369892917 962976891 422216580 413841969 184708505 229593212 106193418 837864456 167331523 717488949 286341785 337812918 87042881 874294885 838891083 217035485 434630933 675076712 88637285 469403118 352194075 56796154 496957659 671650499 262068487 232921537 310332857 384353741 776032889 377516743 771347964 938551574 690198280 102659475 325821638 368648835 39136946 466636585 187972458 541296135 166822798 555541499 793786128 837499770 947472017 220481116 529131955 696913184 925777722 816074800 826236133 50727231 400892823 277594109 992083808 34011525 119385156 685981515 520145012 447546563 794237663 890720917 767305163 212256130 711551829 373206213 241792903 271727479 929245830 95181949 619714132 134981002 627803591 522087610 803839864 268182364 843999081 34690889 495398633 919444395 30214907 916285911 207594347 777604018 424317714 453432079 8112701 976413216 558818619 302984075 14049954 658102853 875273100 273057612 405803715 968517804 764166230 802593654 515646819 211334041 685478642 790495708 828760739 144514575 864723407 662833796 141932247 472033592 999403596 568133407 431364054 370650751 366545573 73126027 216720674 655364915 490032482 844616733 79667499 972273192 575066963 721327595 9184282 477280841 259374705 103307717 547402298 846674642 236836126 8543089 194380797 869041252 89187639 996882049 911463597 601413864 92865488 786226674 339604295 629888100 960339501 327146983 789223297 336438230 570894753 414786003 485736183 63406919 238636414 719986689 689259167 763209827 336073544 458412796 855123999 409486219 226387912 606880164 423899030 835381346 730010633 317779394 51481075 681338485 829273720 835513016 184310303 535364069 14045432 949857771 134033377 766306732 12336781 547406155 785167196 651977804 127315547 517971659 740975419 688832503 936390856 470117594 853376379 514639078 698098613 251519725 470385722 526191192 735196170 636177803 800996058 538019547 459481318 87465023 851317938 739775626 144591183 641196159 415718067 563180221 847426358 229334793 581504562 892265180 26584273 19243471 884809865 381624315 507794366 596773627 648402365 267115571 139951744 326808764 699948377 11871148 927497013 229588291 562717913 369203179 671550084 723588063 922124744 772262339 257510710 219025032 394917000 808658853 927337147 9045031 436971068 501811361 348745252 292381049 393409844 302995247 366423745 385852917 315757528 17848966 282990717 982277053 624796993 814476406 537166219 739317574 467398941 84834283 855806688 685854500 764533310 890441883 148540086 62671562 260955277 44146657 489169711 848822326 433141599 302273057 566557091 329653102 761216955 987920376 691897355 430667799 586879358 641685998 857371566 938359256 994170179 740126879 354708041 82882774 257532256 484733762 484350190 566070311 671044950 3866676 736024228 82381896 617228495 68626770 523335150 165971066 628492398 938191809 501624363 934334543 210670371 287916904 457735959 150474305 342077430 938578972 873145233 90663141 191576359 438488199 246237364 765152425 917804239 654823073 25085629 975982562 262615516 963196208 257738805 649603089 376510997 987005868 144975154 738067906 934449588 822327263 99421856 928717022 595318075 222760603 32713844 913347409 728939850 471945413 10930439 888712617 329219788 286613504 246266225 438209564 508268511 241922312 526498954 717149400 742154996 582661263 134894020 961946141 591641955 603628181 354398816 664052741 593119718 285000347 509263085 924693639 458767374 724050504 568867301 578249520 370748240 566767896 395387953 84865538 603993798 539906817 301724166 241294951 722049253 395349250 168256937 379644610 262464561 389377816 349983349 786358610 452169909 713594044 707274283 137886919 422980798 186500414 530512229 669340422 77731817 390662197 328813207 148733202 766795640 905908187 813841730 682981700 724407210 252534116 189150173 31913051 968237440 156590177 636730551 854266415 130836589 556288161 808754613 857366645 42009879 360314789 847517197 108361717 695629601 378347727 620513462 465888992 749249482 582026587 102307557 296918876 793787591 973474847 661651160 516657619 434372248 665988024 960205703 632283962 252344325 934339331 465713964 88562273 539817441 928106153 251829216 824457524 463997865 822865647 255920961 356046420 165118403 105211878 272081392 810458210 546102755 833908105 857021643 420051606 469622701 98913397 428694212 475490794 442031718 466730749 296772842 608269748 178855042 714741568 669418493 100912121 867437538 410579213 244442396 615426345 169834982 665083225 283717163 440470564 549302602 609817868 802567187 182692358 837249996 30380492 512257314 644884781 930833052 594453309 590401597 51850017 190269767 601630388 858111445 416668219 228440235 423153299 827106751 907512167 733456796 126256335 961444997 591388590 332525769 743458662 603910540 143257592 2372687 138284988 607156804 551757516 253582688 663184783 940873887 58627032 209733120 819887112 24432333 903724327 522912742 817741290 665482491 883292202 973418189 859107881 856140252 572017539 177392574 158166493 891295610 156498673 873254559 234611036 428019104 201899287 40604202 605682765 144692928 833605796 666562983 642046827 61669806 978208317 356321996 179695469 143151325 385284209 747055780 708098484 625553098 661111313 451146607 763898900 447942105 209378143 297738023 273767433 738164863 278597328 569893130 637230099 239322162 567184186 377447051 502202514 263086602 82102596 207618553 165020781 349571315 254867601 688712138 111445322 590834246 910476205 134190583 394424501 612036441 485958027 18640449 998172947 283229319 438913001 9812707 157628641 148846784 428755658 885482845 634477132 212630924 874892454 765139125 301204269 472190399 680494467 166130134 211467706 741494252 824722992 510002299 823077250 257139906 347098313 785103888 64587959 704221800 309724914 486765204 64721358 34716824 280681970 871305976 688790076 764022590 802366623 369895577 682464729 737169757 343866812 317612745 438424093 485943530 259829432 361839102 414241634 713858714 523068219 949514099 110787770 801480976 728041834 809442888 711778860 542088017 930137462 473085223 846349058 23771057 618209902 788029356 729375957 249645356 496041023 242436889 544663961 955348277 140704391 703041026 279392402 820408472 70059978 394539147 921807672 599194094 170152719 136235857 654257158 238828333 697064139 224997264 75581473 508027781 212369446 648795380 603364708 329303046 861563593 781033556 878169308 941376494 255559068 567368790 948239161 940024416 222053974 634210334 829619919 229168942 272431847 545281347 17298346 919264313 115395422 257391542 477596051 808163029 901211691 799913970 509453807 961761803 806439216 758987077 725764475 266996802 368989049 605022553 498241641 130915990 741466322 899054963 61435992 790814908 582240850 190965889 381025815 70034841 365419196 501113643 380507780 980156767 11075143 637101222 869188217 988179194 113174322 980143467 589699224 480997659 836291731 545389210 723120834 271080434 960454546 892816731 854834990 751740306 800262164 334698856 571960216 309327909 750200166 990819111 614958717 932292993 295249061 476358619 263498370 4736363 959656014 909851504 282973959 586661371 29202511 736785121 670835608 755553283 872941477 715611654 801648157 86604779 254569947 415843220 461287458 223937520 17308454 213130206 70443018 864546783 123538746 29848226 817357452 852511613 277165982 408500024 356969307 228204027 843598751 761210438 514819692 116789262 378494559 727179595 518775644 246893453 897662054 302002668 833206397 813402431 464518161 121307139 80187396 134451529 552106641 691813432 861649644 394788655 591264767 721325334 818972604 363266192 112328442 810328801 527877765 775110933 866009384 460428411 882917541 349288291 694702192 12093125 962175832 746883811 681598500 879317896 901761380 246045578 221338966 722520073 270678774 903285560 62434955 663265913 435135535 181877201 700480643 280746874 862491401 257917025 734896787 567378632 362728340 129828050 531392955 697013998 405597033 42923190 219889532 177820568 802231495 371954284 761272150 377806151 920105006 540688192 946472123 375233133 34522511 615661622 892424381 590729708 537164091 607816484 643846184 95260153 387406889 149928340 328082638 329376196 89133641 219761320 251926040 886925762 428222328 837541532 957573633 633583106 44927899 277558199 779295379 575827058 900982532 689569190 661834168 756774489 906866053 400128206 411442782 279959248 343991566 76836328 358956726 778121255 549871177 327654511 607061310 97047008 36632024 737883302 917860764 814897617 691653832 425130610 681874209 275869232 690010750 554187027 138110226 932566042 511007513 473875110 147473160 268500766 19387909 964320324 246762315 348629010 119626152 454266654 531237744 619426187 841250636 748094909 528254288 311547014 580656953 48201960 119215315 170962689 415271852 686156942 396732716 855819855 994104477 778204779 584600270 546828935 728479537 438969659 844691479 68027339 281551923 926292299 753612946 632292607 137256100 318174138 144177021 596890135 986240453 255422344 598343293 803774561 860220692 384059279 976976870 804440093 223142845 878751449 4533671 712343445 714973786 966436354 239912283 57906571 589170815 790160016 449273967 985644613 274457703 105506606 190583248 134199228 73063650 259716648 260344275 588910800 388230425 229340512 222852506 590580482 287237008 124859968 379298677 24318618 687936216 944670106 232920074 36615665 122410108 69489807 442234543 402485897 145723013 573008123 287111057 543465764 742541095 181593645 602428654 341761688 800260435 593112669 617678966 955648857 783664562 344761503 329934663 590616126 380079254 325051435 168235391 433029081 931760062 552220755 490698679 457507864 112573162 229466596 897238715 366425341 380302561 36513521 273479355 640832005 845104178 791233991 303185836 491754566 129505126 994964455 651545421 674731843 700644366 109718051 294075469 310359191 654948891 86265895 660463071 692623535 350212508 523960383 166337747 218349658 365617898 196966982 545652683 48672381 988244364 893827132 5828692 374859935 615113928 614271639 840775826 427558658 199504622 639136787 373078799 377813333 375237788 276660183 775619924 19797948 227263584 312349935 297141784 273572189 839409118 192313578 827203708 132398940 255819216 851550422 522169538 908031399 626005298 127852601 582014351 630104225 37599599 316181133 774838283 725014887 342216814 444264123 748031069 426872112 263572584 552468800 172386986 735322653 924278413 202355078 109419466 207335396 152827474 630454547 503945346 455454078 534437857 268656110 544704925 360959839 403433655 668872129 957560599 584547203 15106905 394707791 510011476 124382099 541968051 574285854 957511655 119824322 801046598 855084897 931153449 692597201 368553474 765884723 796094476 791412078 536527952 778706854 592333688 391273066 404377423 234332534 636911298 980167673 145345559 518220768 867128180 593354995 581474105 300593001 702208845 716215740 732862286 136772778 698584861 671621505 645553372 560678092 969237068 147899159 819607413 3377768 734998798 150869182 573735500 561990536 754414138 574727680 106501180 862479298 757409963 556769089 247154133 607680824 42689642 203875667 567483170 454806634 277037105 366397145 368583000 942297652 667031276 420805051 576742231 738516249 84017397 640385790 220776642 993621288 628599596 199158822 440100425 124167171 538883914 577838284 197922321 658108439 880932117 79066605 610496700 385432504 496213524 788138416 466501324 622648644 4976162 456145146 89628534 497556026 353425389 711917446 64563886 183766333 495165218 821287469 756975984 728034785 561261962 81123982 811095413 128479430 622331971 813826967 536498825 789637725 881772810 210969089 564730868 251185363 807916713 340589958 301405232 735540906 630809524 32449440 150256451 955938265 566451090 291509367 219067858 683235198 534253652 548917434 784057444 869841380 599123471 743348272 189628042 724208508 279242910 988594686 822824151 750982871 499065842 710006103 607285282 787092504 66319087 755837371 565178679 719726541 711397017 985700872 293671814 421711712 289584724 172909277 949031176 155742169 60638125 702170674 819995773 726162145 364868842 480407272 791022255 921814455 833128193 591607242 884192213 504521901 745459780 267188455 98312237 576224063 681180747 476566631 792646983 547101718 991468816 927687203 692988487 701757177 485101773 168071668 309160196 798666297 204317360 199064126 351852531 482299064 892524264 398393487 372242628 991237130 17883413 817956484 863804909 993781154 491213921 535870267 871938923 254553455 555146888 588271602 197708191 618478163 381604498 268659967 428621461 74396044 628907491 326982994 232437949 637056135 679367425 227067941 353328698 823374372 893732436 218996570 35085367 711337300 346941107 566008466 264919209 21173966 200171218 102455586 140044711 636793859 768774813 742817602 498399778 407423522 964272311 743387374 335583173 437719060 501320059 665945597 570251831 475325209 448366242 312460591 560574086 13620364 932038830 209677393 694662159 459495150 602812093 844077950 504113591 587707150 365565230 666930994 792102348 626337931 222863678 608340105 335784801 191665602 697310854 475591076 878038835 719555636 436381080 60946685 255152221 107785960 240997563 389929234 459826985 363512375 818557378 91033812 776111226 87905652 670432884 480534686 569957236 517597264 227705942 205751233 13563706 279916289 677375617 782712681 163891345 705511501 720103995 164362298 161757759 202928175 512319026 385609793 410690135 87117893 883350855 266725748 63913782 724896251 329831987 341731231 994887847 624433238 815080625 80604085 311566033 586878560 299063368 541744212 86612892 569564354 701569514 505335994 829026473 459485042 328719043 575548290 413262355 541295603 856843024 328056969 936581578 934317918 455015577 98116328 14278182 664711357 38036903 340741046 645590080 581861268 732461424 708062441 887268503 903992854 691314150 826072676 534866250 683886898 999917774 586446842 983894200 144970233 151133719 356954278 692078501 113307854 149321727 614523674 788464665 756511548 736402613 631558979 780427741 276821512 8104322 504944309 839613273 760696393 353049797 552161836 867030691 73061389 249914282 64008212 857538481 651523742 976677221 641365202 483439672 464431578 262445010 46159612 243691877 139271449 31456728 191736890 439039351 206114057 720960 137394819 36715814 988845258 366570710 258287563 937985260 932031914 244485887 568340355 311402975 378098086 157698732 973452636 19501757 43048343 520752556 764462953 807308770 351487047 869188616 70254690 540081313 95186338 435074754 164311226 675906100 135314699 923412982 852381406 889762253 124821930 244135831 872643823 304330833 198993902 944783023 889663168 376951626 938898039 966224618 303259518 672544126 428840379 343042744 354678781 450129822 609661194 213729371 878598366 621307472 493101058 344062987 463566413 826697244 68537527 243007991 333446528 172878953 285698597 905303569 21988458 421203386 353838886 3232665 707036080 749057430 209931556 562703682 416629915 727230667 758353066 583478415 392137167 384186294 921861404 883992447 858332757 399503771 419491277 973791919 2688296 878580943 838751433 479852130 416408603 656387153 447289341 404462410 55149082 218773130 115801072 947922754 745774325 867258653 254745773 621123400 496803645 210817602 776102581 206643397 226330190 87955128 659199438 761856419 367474711 419709796 645256250 885504923 861064843 638341580 748732378 119005441 587785886 605376599 544286108 216209422 546813241 114425453 107749784 693515965 454925004 662642143 923489191 788997862 265196115 696411907 51458066 714802615 259840737 38963780 13771851 714144531 591430751 239597206 659784771 378307029 111323361 637212144 632818356 783056619 269968288 487159682 800365106 416247274 479746927 758548576 146151672 735872741 709900634 859701859 98205704 98455212 893243661 373458115 527573594 694963537 500986096 709219408 825794174 110918110 903140723 974684349 920194116 829486121 927894284 303157773 366737625 93790237 852647539 106185438 952629092 656887100 294206740 790272268 131852177 600107139 135934080 657784717 812347741 952235146 870105784 929252480 633512084 88954756 445886590 584864142 616376630 574917338 684098102 761879694 590033320 502836658 353389080 619853649 872527182 476842606 517334057 201235883 350807816 959724642 999818423 638273617 399837601 712669162 829439172 606199470 927081654 377400634 870678881 720198691 23665987 497941194 586154907 357885677 721607826 663282804 855562766 345623875 530281474 833243770 251897578 283432942 493403500 128624666 182349085 754908765 741835530 615907672 650109952 219239694 136026914 88155559 626643964 931472915 147689684 868724712 816457441 89090682 409949990 660926576 654070426 77818533 313112823 562171549 179867172 496042087 719643549 351380381 149084322 717407819 178393665 584839670 471056707 931417321 918898962 459548616 511250770 390890824 444755292 594819724 2739102 248138732 989930804 948915732 373904995 231048099 512319425 384588087 886943451 141882771 147591397 56892180 235081058 960084407 957908394 7180238 493867271 76678989 283517530 421288373 373489503 558970638 80496488 799212262 626941352 505073319 393185739 115202040 488699024 391068113 796365264 546545645 642846024 734405618 833090421 631373577 75204817 563844290 202523988 301553394 563340220 837058476 86822899 912308147 580827991 373616518 673926794 633653995 209694550 751749882 328559842 146168164 406549579 18149413 842325409 434434758 579057096 184102025 348144225 357764381 932946688 428325669 709289898 467053274 883207614 693483247 596552182 535481242 767901402 884134491 570848070 317759843 378340944 162082811 591969667 612771931 254186907 593746946 953338913 503139632 355389666 553144706 931642091 955118852 856753382 711648786 465031009 259082637 696303246 366157213 540794060 322210023 627701447 999314619 20321702 540376307 479753577 590809641 164464309 418454409 13855109 295460398 112526213 561897569 602785759 653174671 468556307 138061548 206833188 909536693 632885388 829467767 555176547 631000911 478456960 295438453 90965982 607027661 613737511 442142241 55787216 69234580 925072556 429785477 882124728 129283415 590899150 288642685 937458713 938176115 149302043 593121181 706720604 33140907 147905676 623332530 32041130 845417260 436950453 639868420 900425129 719321822 566676658 235182005 391746014 729246947 205667044 36092177 231775609 210832099 822456140 57605459 176408906 379696214 870575274 214604777 623763849 601451104 961105049 857751680 518157859 989255430 160560892 526504540 10786932 352092862 682328936 913471498 735540773 145508883 58261415 797740750 510278407 899244089 596578383 910280163 559166148 684357851 863603015 484993777 641620429 439834691 108611491 217436480 97078928 226398020 783902499 371530812 169134870 527410536 584487752 194019569 580975621 32721159 25914086 285315158 782807111 670518536 625061929 696424409 440487588 952843754 339161272 759028573 477952358 875461295 862983235 860423650 824981411 686321197 946385141 776505438 927220107 731680581 106663041 400860770 691051741 754010483 390476263 214331063 229640693 423051687 548664734 48791017 61044041 370181394 169469764 327359384 455306581 351273183 497606300 436258321 715348713 186090109 774284072 610529285 127789825 862275542 254455035 414857690 9209020 824256694 52722630 981678686 525527123 861937589 91062407 958241027 870397320 499271460 208054793 279103925 83972709 427204745 649264604 256483551 478845852 39128833 438748746 101577653 991287271 643487749 662319884 746821168 652031935 595609212 616928048 550590973 295746614 324558803 807368487 856709226 890602015 976392468 828841603 631752228 170646814 255731303 243596516 179070103 938526969 71124510 245303172 780518048 633738051 156658273 271208779 303173999 747517556 177803810 48107397 448955831 324783839 171809101 238568850 185273888 174223051 445097900 819754644 273299672 185154454 281197478 318951656 678649358 696946833 950181759 474694922 914250878 883725782 943379474 836181873 547397776 204156430 134709283 980013127 904481762 550885568 447950484 827240017 515078244 961145614 314520628 641618035 326182999 307542251 146527131 346613129 999703245 957500084 737636986 398288683 781440536 618913472 297426404 407166832 176413827 831424197 136287594 316274765 886658964 625889987 90629625 513349909 544564344 28324977 634685809 917729360 182168072 190444928 877802760 699556692 964455984 719650199 422105259 237315990 590464772 817248525 651197493 320426626 370507244 822095843 60608200 50696508 27427227 41668468 452197174 223647314 961967022 820194342 924276684 791619292 719184699 958814124 546345746 768103429 766756272 208848537 139785494 792514 808071658 309395473 452505069 152833326 477386044 102230284 81136351 847036269 156820932 300053021 218401129 484853728 131828636 606630390 672435332 869299006 253579496 299455585 696719536 607994305 501742068 528968232 345710192 8220564 454660866 722310997 12388784 62039945 400435170 180200869 743076819 864588279 780099098 396003876 671626825 752480584 43547758 148439272 567666710 725476131 744206122 915773329 441156179 279385885 137246923 538701571 554027959 264167759 506447741 848882708 384469983 899899247 688146356 276649942 210957119 231724936 804550350 594228406 537983238 348712933 665433015 789232873 306396589 689315958 201806985 53013634 174002936 806010557 89607520 529776606 903208819 136736602 594437216 260796874 363901134 978983973 959040889 336016088 205358750 398465839 851428594 184109606 223990055 601540613 786911358 656457909 227597547 890900999 47516478 229087280 636221826 372350092 351036443 120732047 927197630 577907577 603230777 400470814 121626339 317231434 388084125 207614563 858746786 404708726 279573016 827931085 714750080 359288960 782602690 225361285 727475254 855605193 114567231 186364887 724726543 192446445 360695169 425165589 888380117 451631924 539132624 936161697 927019410 159571505 372582443 33266592 67492546 180779286 703985193 910326048 759094009 68416364 926390054 744127120 212134701 687009738 898163198 8540562 999921764 259159378 820052564 224910681 240359296 680169415 60422000 501844345 884028091 710355760 117768940 565193309 602364681 976777902 792280302 249483495 735940571 528935913 739755144 92589912 40613778 39053688 430275848 437572627 48080797 203102272 124144960 363241853 294581800 298277604 574752418 237539031 574247550 353125075 456793787 451382416 151806832 494254168 177097713 407544951 59044918 784629078 551979360 915000599 727203801 91869185 600312757 871597778 602219844 866333638 287229161 39516794 492101563 420772067 898749861 48282691 629901267 776422313 437505728 660464800 832593799 451146873 344750464 544449299 214058945 589369384 520746305 254743379 798813794 168625879 64607244 805571258 351824202 956928184 171403983 422568631 204540933 302807318 670429958 382220687 315114739 769864615 528121288 593279584 76889794 72403438 412609458 617979014 713437237 583101759 308262313 951709796 64322358 405988186 69971267 260681164 493914220 318427636 771844852 868486243 191301980 84336863 294535782 780808786 736074635 298861873 831364214 844838843 841887041 694156759 784475330 759333409 437167110 55134186 439466281 216411050 30734804 15007288 89521070 522827888 166766273 441725419 47460086 541826938 696055467 323750828 524283041 398188268 339934002 764303885 952823937 426900042 213838431 645725873 86641620 691140186 656476130 411794700 273830076 360895467 103015250 81499308 948916929 502585953 911114206 151973082 737983185 673556655 872281664 5769773 312244200 296765793 783867786 563724723 821798322 28152343 661931923 945491913 700670035 827647263 943971856 816716658 121017997 983544543 335798633 408292810 929245697 623837531 986335415 801057238 657371353 477864711 828371315 584152725 657985414 780676185 107001792 960603905 235135987 774835490 964021473 54087875 818649547 603952169 874980500 896144657 529430274 344199312 174452476 969664264 948947120 538185664 844892442 231935874 129371328 279934776 42369777 633246749 352134624 592523213 665108096 46232762 832649260 231505087 351640263 341846010 726849356 163849982 748968187 58101017 348271506 268296744 916070983 308965218 377695495 718697653 945584348 173314262 98325670 381820490 453751944 4704975 209776611 279047533 832620000 942385166 15951854 2960547 65216916 921622935 407710270 919442932 698166177 695314657 535979593 607698380 377564091 635557757 252496344 333236122 751191947 543190986 176338416 322705182 270309433 673140764 96331202 526395879 352038332 968648011 744800233 575495489 107267925 393768146 265015368 886839046 225262998 427781034 534211358 135165739 757570095 880306485 730892556 600296132 794582798 460670737 517867387 544604377 763826548 447055660 378261676 952887378 463527045 18992899 785039117 630699400 145974250 826124945 83535804 5706066 615428473 754436881 242342725 846350521 724575854 415438767 270362367 422128800 574953381 66143128 195473126 185946868 657450754 498924463 523748248 221969519 295653381 684072832 156355831 689494311 750497421 983461152 789523478 173054114 176010039 882156 477444032 245273513 235932790 608096981 770829264 540406498 825962951 919981316 706987136 293337585 34372487 599857631 439659264 618791777 278364711 895206608 107471814 830523255 632349797 75067561 83532745 574786200 377386669 236928295 30477183 263000950 125253515 198797727 644712945 970199057 658046328 976654877 757119757 81683380 702179718 616325026 499843759 925848611 82371655 164602895 455081678 479165052 163601139 975033474 170391587 727237184 815242220 856527548 652170122 914578324 787412635 5585967 256109422 658703880 333161908 502997455 572131653 830113083 770256167 89876845 700660459 155375222 849132482 638137691 900342403 630787845 806634194 108552971 21422144 323220424 868988717 182988948 457088249 862386730 908431596 248044967 765763560 535381359 960896505 878152816 526627565 975499639 519582289 262653687 207365188 226272867 755400865 838443405 646965566 243667538 501756565 352166411 943861200 967990060 905974155 692076772 480590014 634215654 279911634 921616019 617756505 883107598 214547055 984624636 107083853 295608028 394198002 109853711 129533189 573695866 618262437 23677159 724157569 153009684 378832778 986637059 416124914 781159241 582356161 61931284 606085888 688056714 123113013 499767683 187471979 369151974 941371174 577552334 274808424 914449447 296983647 341262406 384298679 189492382 286636513 632596113 901429944 546753524 703219113 796247692 413880406 399810336 554688437 964314073 653499058 24081878 518268781 10682660 197971132 563774332 750594112 295491387 320583034 527698747 938280387 32430820 564129575 137061388 778041987 234685117 659830390 712989293 842789579 126848185 994205291 266496057 974675039 735221174 308562494 569362061 805452489 890226689 499230097 93004872 323618360 220300103 176296521 207681728 97107789 631852643 548796670 252509777 746387455 346723785 890149150 837797557 983964557 187792642 489284889 944283608 559165749 148357211 48480462 302392890 318699089 631434757 619288532 108455748 733344278 810664892 292389694 174031531 189468708 760446353 386422955 488806355 798247480 194109477 597491694 91980240 612978480 876751661 553172769 856230027 32535624 353111509 43297319 134704894 135377874 565103135 93520646 425131541 658143019 104538632 188966633 398664275 102329635 21269460 461637647 487735173 680294834 396653448 546280842 705646629 258595458 540501061 334608815 306119816 965619601 111706534 3235591 670287116 588663420 247052787 225761083 625785449 946260653 570166046 70154807 367334130 161373522 444001714 705317055 868842284 182797029 481659201 564758133 360391796 83089323 715142031 137293473 144261210 715824720 299084781 227860621 223077808 329106339 662669142 708407975 203439560 161266856 737074662 495280529 235581138 680242033 555130263 847176052 513912898 419747169 506929733 525859091 285944381 486513568 268272538 713222841 931265169 650622534 798400430 818407620 722441470 974424866 190758941 230607470 243254972 594724363 245656154 987078885 653950593 927590645 275523432 832348148 412430041 956597812 125973577 421057485 396377340 952630422 25268371 858154271 95390759 740209605 948400623 570509319 4962064 587414151 897882834 854457536 754158778 209986751 401902426 221768290 343013218 914998737 654513715 593129028 121368319 483442465 683786483 566995858 487249856 231950238 882786004 294526339 870284802 774012885 408980287 424350299 793064470 724349355 594999673 25440606 831869348 65120624 44178976 362794175 676657683 583182623 52782613 950848621 236530226 690492742 900523416 186815624 978620351 116745106 524777003 919332010 990988819 139008375 176771464 515071062 713601093 803452701 957063312 4960202 840877438 352598528 884778211 501882915 377056829 118012596 390144162 366729113 544990476 660776552 532742639 684530352 150069453 418342423 355279675 152750866 565992373 627636543 932392477 412005239 14420758 988633788 944781427 802177896 65181804 967085793 675005823 710870071 288393177 810941665 406294219 557947868 484869821 371734302 321530260 500254862 32218286 993858427 607343536 449277026 74084558 667687764 36472557 392330815 110077417 303109494 458485946 708725047 694472767 616275949 731672468 861575962 262924874 34896906 766583904 398486853 275490847 687808137 527591948 121262584 471503986 211235488 536771741 789671906 681239799 358551209 80690003 971225551 435312824 587106389 383333365 755575494 823337664 271231655 563280503 784986050 345267435 693539240 122550157 817544716 492225120 119671239 942748921 447717867 984675043 717183714 796033296 813560834 695363867 340197874 323563298 948301937 910788489 786284263 791163235 599249156 733538192 526833981 287516707 510981578 169321469 254914550 178110907 727523799 332741362 880516359 996864360 758303324 258219733 193729097 977725261 249999535 607234742 458067395 321132989 877673218 752124144 974870549 605768151 284824787 930185342 305228849 467629031 967513920 935520637 785920774 236628513 37102977 980843845 216081343 940686091 348776640 745293663 111130777 256726409 852003154 961975933 558050810 826161520 204116131 366271859 608206706 280212081 373182007 810414054 60833901 531492705 615098367 985523184 585490838 962962660 781600136 601784668 522199064 152736502 513656474 191702310 264413277 481209528 477528886 555974281 260662677 10727082 866975895 852728004 217565224 447696720 958029025 793026565 227452843 882172874 264558646 933901628 162750072 347302069 365216105 196152889 40197089 627142847 522795835 86021707 817355989 503796253 185307936 36877276 75765279 225634999 905321391 392735667 564674742 1416417 76695082 748883466 874699205 490117735 780497832 207873647 476872664 576610694 279710006 394941339 112876934 114752234 107488572 610140526 181135194 225064429 269295973 86879557 159720731 528601551 543251767 415251370 110015173 560508118 665193216 784653949 630941460 934556121 816997687 12475234 626083236 386463254 699200518 770967717 132077213 199198722 681927675 288215090 814878066 144781506 419011679 134199228 220534715 96813726 633814526 400499010 918989668 483401767 554969200 595253836 719904894 234759730 47686053 828961170 125087664 419094937 418178700 582209994 961522802 344501887 577302693 640345491 139880855 346964648 911872572 60085909 815566740 898637875 128797832 948964676 616108768 279143692 746846305 112381775 447002460 42759334 804716733 59084153 933480417 212500451 284648562 849722204 751646674 759537564 891940261 505572734 825641623 207017260 797144910 207976722 445999507 694505219 885014153 865295573 553193384 628701740 207485420 294453455 360905442 238654635 87807099 322638017 642431330 378174162 258553696 437514107 992514196 171635403 848581463 341643584 795870371 757837691 26492503 223400599 724313046 437157135 219838327 246274072 418008859 45572018 513593698 885861629 659852867 476417538 883421079 986288333 348381763 804363219 880734745 50780032 514979425 710930453 550176013 396365769 243745476 151872534 799527339 152069108 220961379 577396059 928533615 165406215 688262598 20853835 177450961 431061878 502656443 750442492 483150796 865394259 660952910 644227628 731814246 124960649 573655966 331427721 740162789 617966246 663526460 424121140 721719014 730791476 43933990 982223720 491744325 915414761 626877379 942445415 843387281 691621247 34521979 242111837 286198943 993978260 410706494 152826277 896328064 560800851 463105036 951868465 575564117 380235529 814492898 665950784 540193831 737296639 230195436 41327057 164218658 798417055 795374414 687277999 708201293 376047758 201346140 36511659 936441662 707820248 77153267 558004792 705737335 774296840 311688526 624976676 393129480 538190585 611417060 633625932 947416689 953683117 191359037 811473133 159134866 209696545 463727875 825274942 201004064 165969337 517695019 776948727 963492266 594935301 958511549 361315348 540160980 670619217 171784629 782093034 589750695 827436724 729328875 450821422 259409019 664549629 759231531 808545005 835035147 359799813 173592897 122367149 397159247 121549731 996186193 159700116 506141442 369974047 396731120 664574766 4437778 102937312 417984121 83486860 383631285 531103148 286476381 994865503 928868243 472608551 32519930 229480295 932164515 978996741 20543679 547397244 428289493 222154123 33600555 389469453 539440519 234624203 466404367 723337491 127367151 304775585 322783785 274785814 14935335 93526099 228886317 284998219 809561258 333110570 54025099 977912525 13288928 903797610 511084121 843199086 310839853 616864607 367829555 866802729 864418305 734377422 102655618 772351449 882152924 124969560 32927442 757912969 978633385 777187728 13523141 47714515 333783550 585252502 707257924 887430364 58783972 303790720 559219215 448034540 513481845 548492233 684045035 620765231 279699898 140505423 279907245 750873279 957422146 277734956 790536007 846724650 866458924 27516869 273617941 494245922 360918077 958808538 846287213 258563006 608405009 878478533 570184267 542709260 610106877 390507518 129677893 319788093 227024184 182265295 531342814 196376063 460027948 508377438 136149008 55712736 165718765 560311145 155538546 30644098 195183186 762063500 381554224 551078551 589649216 749082700 656382498 39314634 342778340 698409168 582524007 519145384 141252750 336234873 9074424 750807976 946290844 911956096 464854252 706756514 255696058 858543828 42541480 963016924 220787016 432612392 592783627 984740346 239552385 711071566 224085549 739090809 932688801 418816568 875110840 128701407 443179508 668909502 729620943 224882884 851585135 265805521 31341683 44072975 346487710 18539768 271030027 129942297 10994811 215944087 843165038 516265535 386728988 945395488 881767490 707396244 845725421 245917499 298533762 938621532 821102333 529377074 562061159 937563517 471649355 751950978 153742913 481642576 848395662 652389040 760231292 323807220 688071078 200250220 763360516 488744111 266273149 936910620 191696857 161661866 988225611 171608670 854254711 625805931 331168637 649943835 190629133 940258496 412150342 567776834 25975532 167974046 835830886 191058723 867643555 829230229 240548023 952821809 831871875 24505483 927921815 721775672 77647362 980582899 594489219 674090251 40942288 285940524 422250229 113078163 900284548 368617181 796708670 545922008 76264694 564321095 797606686 648208451 725828448 847832673 13315129 113683712 968275744 272277168 513844669 957607681 600389498 633506365 839641203 783462801 497190409 338272699 368552543 797248916 557867403 781231859 921290568 419962230 949851520 167604040 332761445 112263139 979122958 112841423 169278111 598692950 168741190 982438116 877496993 568827135 834014904 158524130 887129252 605800603 990827357 825869585 255431388 137468634 15542746 347004282 646304157 654700447 696510460 579135699 136662920 370734009 719084550 285108476 788809667 255579417 921089339 226541793 693752572 846877733 697165485 387743246 688591773 415399798 855506108 189022227 769441941 525418462 319067632 170248479 193241120 631756617 223794545 457777322 534610757 765167853 400376650 241995994 854938996 590942774 699541397 314640594 170674744 230271379 111122531 233645190 130885001 291562301 559626195 974484184 553838035 849442239 70668187 948836597 900134524 195102455 554114409 715471339 780486128 163616301 748017902 503213181 410387693 361786700 396331721 230996894 226008330 686026868 918360977 437197168 92309814 642772874 653350763 246208769 473237907 913634822 249110829 659883989 799687604 699674530 626078581 255920163 509508603 357251400 179583217 760236878 642940055 643997804 136775704 186027466 985310517 64045585 945393360 689500961 862093465 175526850 697911881 241940134 141591767 262515367 285755654 934717317 956347240 244197277 925280302 684809918 357961487 770929280 145699472 616027771 590059521 570646309 630768826 716131418 866485790 753855804 365325298 292229562 655863000 448418378 171398796 174263350 900993438 566870705 593751867 78046894 740609536 524766895 822764567 678517156 183983123 655664032 396673398 631813940 619407434 295817104 844501023 721303256 437466360 386954689 930079873 167407067 981260800 276354150 575378848 887502051 760878337 534700399 944740862 754589565 72599746 582374648 372845517 72865746 870795123 855309135 751738045 175860946 528107323 253658631 531051278 809938978 607370668 906055285 117122826 329714282 718436042 303428827 167061533 510081301 130779931 41079411 7118526 404487148 470291159 299890761 825574724 72992628 289173355 727668503 828646359 150691494 791349169 116905504 879747220 902440744 869245008 999166058 219359128 654615194 876429402 861293736 91944729 856774396 641342060 162588610 572927392 126385611 124476928 470123446 450346346 14852476 317432929 487930816 123519461 633808009 712702944 24935073 395047606 675567083 816672103 867191754 202766979 271163027 416056286 323351562 668812678 65565642 902643569 458332597 980240025 547758472 462675712 85794011 507249332 611642894 465780597 738875216 86251664 423343888 921834272 58092239 613751609 277802786 977436518 28360488 176518365 889047644 622439701 441046454 549782200 847016319 735675502 204034336 370155193 716578564 19496969 417695378 568568583 847922448 493573208 701897226 419234321 943614751 594486027 602373725 256564149 978906301 756253262 62434157 386299797 422877058 309948354 973430558 936234182 998885428 903499557 864778469 222210 250262476 565411961 785419630 738837976 524045370 525897794 161743794 489070626 477146112 24827875 782994109 913011983 214807868 575285482 89224347 184381724 296594356 980184298 507975246 795505552 238278910 120832063 92526338 876811910 494490775 35724432 905431515 384009271 776957239 789609130 182060342 273460070 98929756 328493342 875718251 213857583 446272290 168361076 148522929 472339093 523012492 237001844 10337392 798837468 906594334 571314501 823449916 813331675 61061331 726591602 411052427 859762906 481432968 379624394 55967564 54738245 911704726 302192592 283749615 233764225 170676739 504472691 100487452 904505037 753498300 766525916 632500752 438453486 264305281 68528084 470817307 317157353 82692185 447357171 144431716 478957173 712914148 470904688 489859183 86380807 705294578 866747002 19658564 94663781 635798088 142922565 352906822 945221258 16847476 571671473 124571092 201794217 732747507 721214013 285135475 392256335 562801703 239120534 131741388 771393982 910944232 555494683 255082662 368017218 115723134 258829405 576710045 599343586 968465003 742781559 928085405 199200717 375620961 842027888 522900107 61969322 937360559 164252307 744978320 486274966 782846745 167018973 201806852 611997871 146665052 623294625 103612686 488818059 553418021 776754680 740733093 592250563 238554087 39845703 77598551 535105384 519420960 859194065 131997945 416133027 354191868 621589698 918883268 759206926 546862185 758027748 720370527 174858392 897313062 513978866 777337220 684165666 658791128 547228733 839642932 970917656 65166775 956640239 262388485 511119765 20081371 581249601 644782903 738927352 572701691 266799297 712280935 350900384 735736682 405434108 606574530 894154312 536175103 934682604 46315754 881419296 690752757 493385944 421886474 959335085 532418917 567830034 225274702 783662567 334598707 482076555 490057087 803301081 364879216 753123240 929636185 125166799 126791128 95489977 382171610 920462111 296141225 12709713 786077049 967024746 455267745 227280209 636576537 46139396 844983813 786496531 918035127 58954877 856946764 711492644 623547325 431495325 82316859 156798721 370560577 192997597 311075928 683498804 974141044 543578149 148740384 26593583 271696623 644105534 25141223 690293774 487438450 324214599 579605056 196277909 396686565 947494095 97517429 825444650 522587158 630886664 478938420 514215074 204073438 29537272 548614992 590905002 33168172 455010124 12120922 739324224 464570164 208364949 862052368 382757475 731908809 973682460 650104100 342581766 301448989 694834394 672467651 912526400 830146067 885121484 765117446 940136934 59529304 735680290 857821505 796521805 44847833 596552448 642175970 50924204 624763078 114747313 829269597 917107053 69063143 770987268 122204091 306632132 623662237 18328431 193708083 841803517 205568092 175156312 557144149 692368441 863499408 405703167 883020882 863688933 249137961 868095755 969669983 379911275 999857924 519087130 117486581 475304328 155346494 390416413 428807528 191076678 544681251 544778341 372334930 88773610 193077530 857005683 436855757 39615214 466191567 6073678 990878429 276745569 940761901 627627898 214829281 899483622 622506866 642208555 853146023 768620533 196787964 950295607 408940121 181455857 148049316 591708455 759580257 851095562 356612468 499954814 786231196 787884253 501909914 652775937 978300220 24004339 441936889 727440541 6186728 805623261 809996567 698326841 9471030 668482173 640771889 219989947 662818767 782011638 806287995 268069846 901852086 312993921 99354558 219485345 614416210 360861818 116545739 22595736 860083436 791402236 869992468 623350219 44224728 859120117 564114812 311271172 994956342 516296524 241941198 297053339 100031528 870700294 460401279 291250549 621748633 775863713 426137154 875985980 167516127 216018301 372148331 944955923 407139035 534852950 252539303 412864419 995877367 478201999 100765156 48273780 497660564 963898847 10130045 286254005 615927223 614394398 212168217 688287203 823517347 268194467 575296521 345159173 484869023 754143882 783705659 522368506 375994558 684395224 117902738 464434105 175014002 192436603 53581145 213888572 772981603 561391105 683874928 418138268 713657086 634572892 455494377 724312913 385878187 676586794 893452072 931365185 265446288 603518855 734949189 185217230 936554047 221469439 703961253 732609453 844009056 156990773 818140024 990784531 64558566 112331368 615544715 645967534 667597324 13384555 701848814 713798066 772851529 833279015 628319631 641798383 563996708 284318057 693048071 677084879 739166619 299201156 149016093 555077329 547854365 405555670 727104450 157421959 926175259 408615468 483469331 232104784 981888826 189638948 677528301 503047729 410553411 141214446 520190897 478815395 172695679 628745231 518198823 981165173 350503512 443688366 874954033 616379955 99998810 220279089 751990878 123795835 708556004 346448342 430557675 932550614 314210738 63338823 901958353 155894454 376177167 135177842 675676010 193182201 580622240 81327738 671804114 865114161 52753220 333586178 330247080 638099786 350003831 719257849 556317288 207256128 290022427 538216254 972038048 84439140 573705309 462344276 820042855 452833712 563911189 544355002 583297668 363507587 293635106 395352309 713537519 887346973 865809884 171981868 824071026 925862310 813945204 887285660 73656564 783516533 541357448 450284767 694836123 308927446 192485547 58789691 588985945 559262440 593891118 963379881 480636298 681029792 900129470 244078774 402289323 274673828 212102914 636188443 24415974 262248569 280968186 426093131 62908701 557104648 48920027 260552021 617082594 628639363 320298946 425843623 801178534 328720639 419546605 23465423 514647723 171087310 686958001 509297532 62234790 701647585 605897427 74759001 66719151 592064629 539411791 817413179 860067476 621181521 723789425 24258236 481442411 97099809 278454486 213308160 488412409 219767172 810600121 584236781 307645193 629677827 182275669 570022007 947024871 737182259 166017749 426887673 352125580 380640248 592193240 129091496 454079922 240709751 560144895 582194034 883953478 996401520 547991089 437019347 576412524 611569478 349488722 301625613 353642445 157125103 589738193 223040701 771371372 662387448 173831233 141885298 753945845 563761830 303048447 68083332 141409956 178622558 441767713 129113574 580483787 835051506 52714118 207762725 176274044 380713265 435555815 773902096 881823616 439975405 885701763 268445172 1112512 991321585 896345753 797796344 489802392 807109935 531942644 581026693 972863446 3814540 609230540 752284010 38929865 287904003 473752085 667115598 749901448 33809365 684585547 491986119 247040817 12336382 842361851 530653741 594631662 952339684 286519340 498003970 472910328 649460380 499902944 393786101 196914447 924399975 443151844 675573201 764628538 701115718 42177991 828381157 325437002 496267522 669770411 421979574 125500629 800333984 594302620 346615922 205427378 261325815 885196762 343384022 99093479 402011619 651095881 558608612 609318453 76668216 609192635 954765737 315937344 27339580 147144916 200348241 995082958 251519991 363380705 756729269 962200437 780626310 498992293 784708346 502127369 561342826 875780894 342253655 410139382 812924695 568884192 735080726 504249517 680295898 653719572 425767281 635701131 356529742 409087618 315386857 457682360 73724128 118875101 130205504 93218204 117230024 737698033 759525328 141938232 755539584 276641430 872931635 64308260 714468652 265970175 16354977 193582797 34534614 946882960 455792696 993276818 471069076 616726819 97371129 729588757 279185853 825941272 449861162 804385430 946342581 49107690 772243054 747326435 569957502 270665075 905938245 214478693 897012615 157261029 472128953 828326361 874827284 401936474 454322514 81413523 659362363 367729672 184805861 612819013 498055175 257256946 396616075 121917875 560010299 444143093 542965551 490991678 429151865 594434423 37381612 92268850 920147699 780993523 149170107 276213436 531509862 448217947 953438397 858712871 87455713 144264136 278191279 221369689 692866260 500049377 851996770 178425984 74445121 279820928 153676546 387956312 490575255 245997432 880457573 334028935 977130884 246598459 539428416 965845169 209331061 399917800 831153409 141752165 380248563 435970642 745299781 725283680 376621254 828123935 435152027 830825298 210948075 233339024 839240740 342381069 902360545 58611604 771995940 813297361 835517804 533410831 498872061 647348872 151311008 960999580 995003025 48158469 425151225 943650927 476223890 327211355 32970002 910260213 901257310 718387231 851024939 750986063 540251287 351275444 172623194 623599993 432847935 884662235 100819021 299916164 599018933 51682171 503923667 646629342 87555862 945820024 71409396 869176513 727702551 131999009 33647238 965135215 19022159 456409018 640096914 782881591 351428128 979810967 513597954 345317044 418753393 749802895 359069244 962176763 720076198 354140264 717782214 105568451 29620397 422765471 957409245 782049543 989384706 982936467 320546592 791769183 89599939 475715830 618151648 964536050 336832176 835911218 699030012 234184239 85580945 306838016 108631175 238772340 94083768 355972605 997042048 532349092 41082337 452863770 64461077 872922192 286933103 325902635 337523776 510654664 912585851 633219883 322025552 342505158 640826552 239882491 25695833 53944501 955089725 992405934 807331380 876469568 458671348 918815571 507299872 978821979 317750400 668605331 840573267 538976216 648773302 721826611 951690644 714573057 853046672 951767252 816444407 942147229 66635760 485671146 609095678 669843960 724707790 5135629 15785205 21875541 885400119 963538949 2227451 317991795 71740034 462541914 125628708 649490837 373183869 273264427 834844292 945078416 710380897 489582942 248766758 463507760 497370092 725266523 93824950 57646290 861708563 52272292 118320890 201502548 274805498 901112872 336593574 838869803 921416386 342348750 46116919 835761859 606394581 740335556 293846443 480425493 670428229 597195104 808592087 307152029 394415058 715884171 180988229 729977383 957150959 760194983 694056477 511447344 329753783 734239634 524665150 9405727 506640059 20101055 509443965 657994724 347007341 682400091 469494888 16946960 946905171 343934908 388975092 119381299 804373194 143152522 341733093 331671510 366828198 755907329 947340746 785538000 192123255 150040060 874441850 848320916 215344390 173259599 884874237 357328407 532922721 641753163 573355120 700545414 497577439 980806871 582594630 105290348 734183242 877034552 870007763 642029936 63284825 754622682 525143019 142103152 619393469 415197239 447457453 909914945 357099780 381506078 729028162 449210127 109882838 594689783 156050463 935002203 189522307 213217188 559443985 174726456 574923323 414515215 601927776 409354948 298779546 476364737 146588843 596575058 430447817 928768626 311136310 274995821 1820072 520878241 794061172 213303239 213604750 41437048 773865255 547862744 473690639 869643077 161292791 285984414 646284074 42693233 992249659 260176030 960893446 962149365 212831887 690318645 987019567 811362344 400469617 451121470 956440207 950789835 347382534 774343257 453836399 837037595 435973967 221248526 950362639 184875420 118468653 444264389 154974360 745757700 138079503 780246329 877997073 834948298 815491063 980797295 656964905 599741522 907456839 838006899 474514175 450578298 426598265 634212462 36030997 644991979 267062770 792121500 599030105 656594500 769214511 141316324 148516545 713232550 627008517 419576663 153655798 400310416 501588985 581508818 216120977 530372047 138017658 843163974 472523564 709223930 485290899 75731630 454434367 489057858 563079274 774741193 655699277 402132782 918859860 463950384 654622642 375089094 718522625 55574017 393678371 210049660 899666497 22026230 734685450 908285961 184946442 443602581 881704714 974272315 545062828 233782047 360107442 929190103 759034558 942316538 704561482 708182141 145749746 824543043 350850376 62843930 84555515 826130398 810360322 323955914 926357735 878370138 599381225 130511803 568572440 852754471 25634520 954973616 473117542 475006541 486911105 784117028 580797002 549177449 322338900 836191848 819313483 835458220 180403960 883587994 986110246 480550380 122414630 966801838 880603075 381873424 277438233 667935676 381324932 687022506 970322481 578488388 430802395 772978411 220438157 115200444 333159913 616469996 267619774 504275186 484532666 884266826 33719191 48403987 839341953 394454692 851889040 657813578 746411395 787395345 911739971 639414491 45849057 664112724 859366699 685017398 902151336 817897831 542485155 901751405 185524061 283972257 868474938 786552657 207609509 294375384 934095808 442172565 199761578 189079018 110785775 60008237 987610486 585674644 823471329 560786487 313488282 849897365 271379551 796249288 655911944 281809411 295591536 934455174 487976036 704050629 712460884 46549701 60737609 410868488 275358911 36957209 306343123 3852711 531982810 310161553 197613894 645845839 730539042 475773020 408597114 981559651 135539868 873624565 913988868 771603324 24190140 697715307 308575661 116239440 852924312 956512426 428289094 930587401 762182136 623036073 103454682 693139442 606659650 153999337 686991916 823836813 200517284 760391823 237410420 962433453 80682688 666829515 180297427 263081947 171889034 359065653 715345388 983369781 545615310 189367495 968325486 90011175 233371875 665733994 17421770 449586251 688236264 257676162 324072688 234424703 984044224 791844195 430365357 640485673 515302615 21570040 713347728 980278329 88749537 749745306 924673556 941528779 907652216 184692545 200334941 800731521 196394550 804410434 505793647 663073196 578048823 758218470 955147580 482053147 963513147 938265358 876130950 960533415 126411014 230712939 725637061 774747178 616965288 599612778 762964176 500862539 960544853 782155677 607860241 667832069 294332824 876215804 3694175 834959071 738746871 525159511 23450926 861516245 89697827 737376040 539287037 141652681 184355390 455406863 708430319 522551647 49047308 13276160 556527162 475121852 824105739 247093485 541785176 27684449 740827390 376559276 681756903 835588959 271581844 191976955 790276524 595015234 149193116 965137077 457616924 916787055 702387065 251107824 472223915 237333147 739320367 364618935 13362477 261455091 998732611 16458052 730219044 214107490 278830876 42788195 426197004 27286513 935522366 224173462 267515103 463596072 614222163 126944876 171595370 720211459 66286635 571101834 109610454 516970302 330923518 136142624 849165200 206779323 183003711 808360401 947449806 490837930 386593328 148290578 989891569 665393248 66592136 832718952 739822309 817613876 157337637 619809227 283499708 114805301 813196015 451295833 92802579 120680576 907880843 310550179 785564866 398058327 262118894 907991898 594814936 920903538 549445178 336996032 289109648 995997998 238362833 588221594 769721773 512719622 360545810 602455121 224377883 349468639 176732096 10595944 779072604 694250125 637583081 839729648 125911067 85243790 592426921 507055152 665483289 894397170 88862720 186010043 682532692 921193744 705515358 413324998 206551893 685391128 231635693 276924587 145861466 107849800 848099604 934607459 912230741 739689309 338632597 941354283 572384752 777438566 857586893 967583878 101576323 175018524 352672210 798032951 453289902 40353763 224873175 844714355 851029594 258038321 35367194 923980892 536652972 994678904 544042585 741138743 483617360 667854280 767178015 697995538 506394142 499558740 464663530 614626882 391988606 74638104 997121715 691523891 87090894 846282691 271768709 742053783 675422113 53890503 2285705 835427896 561701926 689816836 981628944 463557369 269586844 261344967 516315676 35074594 305319156 867990419 491669047 394792113 554768104 154174099 942383703 378991846 301979925 171121092 801549737 233187271 617925681 389704730 509262952 828178465 227772309 604955255 338754824 358428583 322187014 806653346 178498602 721961340 968808409 829234618 506675570 741066391 437280027 710436757 831070550 242101197 778835864 315743829 377924920 213428259 265226439 549366309 2108017 437538845 732300095 141689389 424283134 924423383 112724649 15504043 889565147 963503704 991591309 713158469 24471834 994986932 298893926 585999563 983640569 314456256 679805660 349281907 528203881 630070576 260653500 56533213 842502033 656823925 299687271 375986711 855282801 844038316 51023821 421212696 55192573 500742839 970751805 480933154 719476900 587009698 286905439 587812353 860313659 139688271 168450186 567473461 297065974 40345251 917286204 407241844 591736385 529946447 81596930 755362827 914380553 41539458 182694885 284975875 805375615 86760921 468070591 827589674 906134686 48947824 447120032 867513614 246810860 358486571 51434658 720209464 984287082 21458320 696412173 56818764 395724044 524061330 270430463 485004151 270660819 315877095 883340747 752258740 51160146 721036192 359076293 823644628 397613309 542762859 217319174 292014900 591390851 386959477 395518559 466438947 676685746 566390575 575462106 185069733 486998619 60996826 147957679 509810114 913666609 879228786 262963710 805073971 313936492 615536203 744299089 88966327 620756985 569419118 265941713 840550923 289463029 51637616 464217847 92497610 557968217 179446360 773829877 69267963 680908895 641973012 845293437 283472842 755285288 84132309 982553028 238026343 245305699 525740189 973272022 466784747 458548988 204141002 496576215 661642116 339002603 614617173 408606823 673768391 827817769 297402065 234912813 790768358 980483548 135712103 899586431 610046495 718206484 891299334 685791325 458284850 545181464 594266577 949955526 633194081 26909724 942873941 341484649 305566403 544960817 358824125 596294561 147827871 20429432 81673538 962056398 145707718 279578602 377283195 710991234 798385800 961064085 917285938 440748002 159815028 421260044 318239574 15724690 301207062 116689778 85289675 417825053 66612219 991642913 633090740 726861326 97958723 986940166 301138301 958361924 375026717 522860872 73891043 130026087 28108586 276699019 76188618 391388643 661924342 351619515 408175105 861270860 566134417 438620667 67201010 889389853 611138026 733968979 40482374 566018175 964770396 103033205 311504321 595037046 902762205 987944582 415802123 629646971 495339847 694502293 528027656 396864253 768969126 261308392 878853194 741364843 57222552 931612565 258205901 614966963 869858936 553231954 690229003 351198437 478158375 929809085 613798425 985612294 554186761 3305283 996282086 147892775 104736536 697506231 128502306 909190627 766344105 256522254 390532389 834672589 149755307 4400139 364413583 402740459 638966414 672555431 176112050 238780719 799725110 840573799 779271306 14838112 632658756 332677389 880042746 542224209 894385998 71274002 512559224 774194430 843876721 168481441 174523897 928621395 803851834 233394485 11616985 978555846 295704187 241901697 650685709 634910978 360980720 362834607 202531569 188339006 765333837 371348070 706274788 588408060 480892589 846191985 874011196 829708763 4273390 92328833 857583568 83711098 409834014 795271073 757282017 964867885 386324136 294608001 150078364 901519054 579643493 862412931 123520658 774291919 527259714 886264087 968783405 578390766 691727780 739358538 26206021 211572909 485594804 584302483 559133962 693693786 254977326 265563993 854617668 240836766 941139488 747312071 580133199 43672645 723115913 775659824 581163683 309222573 55982460 171560524 923696804 294537378 715073403 368629018 246059809 383690337 493257466 565430581 881451216 151823191 476294912 855120408 643774763 61152436 926155974 587727898 606022181 814683221 605767220 365675487 172438723 512774019 99231001 104275957 859566997 969130934 100588000 286217297 123305597 763726532 308769575 516154214 124876061 137732107 788099181 340630656 561251721 861263944 144120762 232539295 577437688 626914619 339139327 187133095 147325663 108538740 72710136 384470382 837617874 804432113 278615150 122118838 837201185 89543813 579591490 620731981 61636822 982052017 254724094 603880482 307358977 192793442 186009245 533065031 80084587 435912255 442761223 569142079 413114193 840710257 574646683 570889034 227637979 18586584 652830467 204160287 643368581 490207643 443213024 410203621 477845692 385741995 260368614 279755226 279715991 581997593 606701678 443209965 873010637 133726945 539313903 825464467 659694730 472804992 743047825 852084284 119543559 99700491 802108603 585175096 951043998 193927267 579265640 649761226 96190355 138626532 394767242 319745799 306557519 326900800 671235938 428831601 768361715 307929015 744909293 485848302 150721552 145159758 664592189 412510240 56596654 527969136 599531781 466666909 757852986 457554414 811028780 94491812 870571417 802279242 212751289 346442224 352744296 454043879 2543060 910347727 522897181 689669472 166081855 810841516 353450925 828291116 284471140 461502785 411279059 753462124 833309605 41877411 105100956 626194424 13375245 165833411 31823941 229106166 848935775 745749055 72012019 326350446 433310908 650713107 162275129 367132502 941483160 195463949 845046855 204104294 459326639 393413435 311770853 484917169 971997749 928489459 361719668 48802455 271929373 732193429 190817860 609625949 128622139 219013594 432433640 110927686 834806653 860753091 160537750 702429359 739053968 680333138 920714811 182603514 566562544 819234880 602500474 727850846 97925872 256763250 696251908 70801054 396392502 680259456 925673317 806448393 686228895 875556257 348552269 706284630 464048937 679028275 936378221 252264658 795679250 342784857 385646634 58679434 637259625 745242192 705947608 940510132 224331067 625073367 201449747 676468557 508119551 874643744 953204982 156190246 878002925 282056658 16489573 788531431 54171266 255486982 525680605 213222375 610222321 381621522 408140259 147179496 828643965 872559102 589371778 210783155 732200877 590169911 349826675 392153526 995046516 751534156 182487671 704690625 667591738 999545241 662056810 484874875 319488710 134137383 303938616 207238705 515226406 855486424 460081281 432414754 805481616 475582165 930880267 990252531 184775537 134801053 409339387 851421279 15548066 803433682 585426865 555318192 974694989 149131537 534827680 458063937 54921120 140946451 6743067 700210121 939615308 262416016 806316590 528275701 143015532 14010586 104058768 777139981 764137502 160691099 84321834 527392980 785232233 147140394 641522142 351046285 611248017 792943041 555059773 415839629 895976678 303887278 973737655 907417072 760004128 585273782 600119907 658380557 950056340 628035942 168436354 162815907 914493869 328032497 185779022 165609040 731783390 180159373 321050928 302631492 641560579 197832280 426271484 274317255 176595372 411309117 277001461 566712036 965823756 119533318 178025255 640604176 815757063 431513546 107066962 568086192 935484195 350039741 331630679 11297918 972050018 255057791 347722083 684501225 119018741 191117376 734884684 826304894 473257990 919651476 390100538 42672751 113924841 657754260 709078162 213601292 31454334 810014788 116934764 244202597 973896856 569199801 278058279 92297046 885890623 259930645 70410965 919029302 304463567 152331517 578336103 254194089 275477946 654089578 517495918 522059015 685724426 674608020 794828981 228657025 949928660 979059118 187753673 334932404 298269092 158405228 66916390 572635856 896831203 692726876 865266978 500426033 686175296 232884430 281529978 415682955 708119099 465756258 825652396 632022218 376979024 845588697 454219040 852938144 516432716 196995178 497608162 643184509 408850346 569112420 731343825 109820461 165217355 542347101 998848188 857562288 850604659 240592312 271167416 725735348 976000517 580257554 206973370 467937192 597123018 962379588 861682229 430982344 46884728 980489666 852153444 722557313 243069836 765127155 297113189 650885874 648917740 750251504 881321541 902050123 994924688 102329635 426265499 481392403 218532666 800005208 800749875 723781977 616428101 412643240 33484446 997120385 836742734 304503866 252908644 617465634 273227320 236244010 589390930 274066417 765798406 307529483 87900997 592252159 876301589 506537649 746192876 445721936 469402320 349905943 634665327 260859118 365609386 762224430 263066253 667757855 948230383 426206979 96842454 280467042 248010121 576436198 851884119 128866726 459027655 551526229 8330422 502662827 390637858 115942318 140146988 431772364 467726786 765917973 340628395 119469079 371174239 928166668 675053836 404299751 510997405 909737656 24931083 968831418 316703025 611640766 37815458 935936794 281553785 387351694 691650906 102708685 566295347 493691445 747743656 325686111 451319773 730828051 454085508 59467725 831333890 94854636 887579989 263267349 912709009 703808303 923439582 845120404 772470484 282951083 127216196 433352537 696739486 41928350 552246424 394487011 235258879 264877181 945527690 320977379 537819382 536159941 90132737 401460999 796783283 151385488 742636855 640165010 468657254 353822660 582981261 19238816 999132409 445591995 28934915 137832389 857021377 635446436 62601072 723633948 595333237 936648078 379783196 993642834 309529271 20326889 541591794 224879293 660735854 380202811 782017357 803316509 152015110 698530065 449511505 735376252 891247065 289296912 923539199 43359563 919608783 555226023 498916749 213782571 445977163 223306302 716989401 538527075 88352931 554534157 934566096 27835803 786678076 220446935 236876292 123230851 385036563 977330384 218737619 315901035 90952017 655920057 686707961 896051424 584659721 582232737 184852012 851595775 765438109 131167360 644408242 328052713 297700118 302644260 332231573 64010606 223580681 702474579 898449148 200151800 932294190 290600844 893299654 416866123 234690703 944869473 988295303 957788295 327506216 345756210 765528416 135461265 843173151 735136852 297146439 79506835 132048086 656896277 101500779 488429433 489292470 737863884 304215655 651389412 161800053 589626739 387361137 206356516 216464649 527061677 318409415 245214461 66270941 830572731 87288665 581134290 750072087 135222663 535532979 425511256 898665805 417449860 232395123 638172271 125629240 685438210 777187994 50406435 54147858 35753293 444939630 593419101 777800326 296416269 433168066 628391584 87580999 598879948 843855042 429981253 436786597 813756876 941481697 517444979 291662716 730691992 483724292 918111868 3460760 131496668 545257008 607132598 425014368 420064241 484664469 519276921 503565365 726880212 546033861 737446663 402263920 276416261 739601662 836113112 639289870 298805747 807519708 250789821 820195805 484982871 508435426 430782977 908680838 175079571 788665761 842245742 542130045 139476535 455282774 832483675 206897294 621098529 454439554 227586375 77210856 976981392 238255236 340934428 349365963 17891260 178010359 266220747 800246204 563049083 917336744 290933610 142461454 106731137 760418290 832770423 642713024 875173084 214806538 600666936 823692375 126062554 344074159 758011655 916662301 268883939 280494041 359933079 447194379 493800505 46698794 243941651 441434681 344196652 11429455 762677428 388565319 200741123 533872607 907629473 441740980 420658219 314445882 68202234 233311493 424755550 513450856 89532907 845185707 401691488 44972321 667882210 834227571 486328432 842630112 689421560 664421683 769316522 919221886 913434657 821219772 802457063 890571691 604477386 180878105 818523197 750640130 673287197 870607460 42652668 924025447 615883998 747251290 537106502 818603529 331733488 599709868 581732524 429772975 347975049 38690731 238340622 450067578 675833482 925178956 314825597 546044501 697059883 102880122 125902023 469179412 598380267 398548033 607531465 692985295 87548680 532230722 833398050 320414789 268672336 20080307 946854232 413982949 427304495 81847502 439184853 873115042 542002498 621891741 949359154 941554049 666957062 921542736 239522593 252519220 675025773 7700401 338165900 835804685 521738485 100658490 932806772 613950843 864296344 359390439 408994784 356701445 883452866 323071464 186485385 867739182 256759659 129090033 571771223 265503744 589976130 78733440 283702400 707555711 291344713 608678989 119657407 896298139 83538198 398500818 169577228 205619430 583239680 993681670 687464332 703915634 518342862 52540553 498919143 52963759 707163228 194473764 55610193 107342671 106112288 791407556 487785979 968930769 138172736 824935925 483819254 933836059 448525975 868691595 157121911 534874895 743857795 28137713 804173827 883193117 499081669 595967780 951784409 492244006 97221504 846437769 465859732 394865396 199744022 395006642 469677231 929684331 475868514 768493651 683533251 803811402 430333969 795411122 533527738 129839488 580402391 587725637 748299596 738621851 664911522 587441416 182166476 233636545 844107343 362662771 481470208 941808611 106194216 899741642 929906042 371683097 101333199 442007246 295033069 386617135 377169081 170186368 163895601 489271323 658943945 532369441 923661559 566775610 576947716 670555377 278289699 338273497 45207731 446231060 817563602 429666043 725375849 405143636 299881185 773135351 469044550 117088645 602923414 552379025 181367545 928210691 932017284 374255583 253970516 531919502 800133686 788453360 758297073 689782655 67247693 84300155 89285660 950992261 83619993 572582789 571825886 402227079 425079804 950616137 804235406 893018758 644530868 526051409 551594325 141497470 363729165 621600604 379962480 414394850 377736326 229387993 379732656 575719328 390739071 844826075 232215440 891614943 859317223 740185532 145445043 647014377 792424341 200345182 615741954 197542340 365311200 598951369 3191302 713903136 63655762 586848502 469684945 725639455 781446521 199111075 10200003 614707879 822652049 878633079 907092419 366724059 933390110 691325322 721939927 19467709 434295374 524463655 937473343 780091783 836353576 384362120 783598727 853290860 825044054 597243117 845917872 187424365 988721036 29547114 664576495 200752162 196310627 635447234 414001968 495451035 944299568 418591000 810680852 474475073 373393211 533129669 343104855 767590581 579868529 38852991 443459473 529986081 577403241 235470748 663203536 203589185 4872954 107424865 848042414 596915538 884862001 996748384 792242131 235176419 882997740 717357678 379840386 95754115 326636263 588387179 220399853 518354034 251049038 463346830 856581014 168859959 34799683 793402157 754461220 167358655 331043750 301414010 811454247 812762701 919473655 511082259 699596725 910091835 265886784 362797367 265382714 403687020 952140184 361050545 851243857 139134592 228544241 793418782 456851642 925368481 264752161 733750992 301249090 912136843 963904300 665801026 384531695 504638143 663573542 659451340 162517455 228302181 597664461 568132742 671271316 843849722 366781249 304328572 957393019 997146985 401463659 611940016 134390615 486933316 550188781 689127630 198001988 470535879 605524495 764873923 613751343 701974366 282454195 542894928 738752324 230237597 103042515 314645515 359127498 666003053 871081472 581863529 434025916 354071104 558619917 977447291 185503313 9338961 302593055 704432073 167434864 634508254 818466406 389687440 283005081 486854713 974516769 941949059 164210811 423902355 557112894 367203524 106964685 963621409 291015006 405117568 34098906 730521087 879799755 27311783 510686318 66896706 844129554 332719683 827847561 902353762 858009168 526776658 980968466 697108295 393664672 54133361 522045582 819236875 544210697 70187658 303556108 136899793 330812197 747672368 881267543 889600924 69328345 965405205 870983052 774240049 838214246 99244833 167253319 530501855 105711692 532618018 920416625 670331006 888145771 250948091 694264223 366653702 74357740 553890038 967364029 3496537 492038388 571990141 249760933 655106496 63147303 262305360 263742159 24906345 20391128 591537683 857368507 601068064 77446399 47539221 518537441 78874021 75279962 957707697 273619138 789937773 293916933 59544067 732941820 434743584 735686541 503554858 468636506 105239808 189629505 393656692 77318586 587136846 998536835 592038561 707547332 394462938 75598364 344392960 398537526 609965897 859247930 858634135 971642240 652845762 800516061 169721799 604220164 622439036 400612193 232381424 311957851 655888137 989797006 324137060 354272333 217467735 515588831 755630689 462837706 903569 677871308 437369669 627607815 419683196 211078947 531135733 962499820 28802048 785183156 569800030 907807560 353466220 69473315 631860224 702849107 122790089 719481821 330481958 42685120 52112293 183245372 856722260 156269913 681051870 722036086 627659552 412837420 237841872 505376160 266591152 717993817 357792843 639501739 586535819 228764622 730396865 374255450 613317630 984582475 449856640 198220108 145692556 109119817 740655953 374347220 516925215 436006685 840292903 504677245 891945315 307260823 267267989 354488724 30465745 543493162 456769315 132046490 22120128 447089974 670105571 97700836 299863629 309877465 665530637 805801215 537109960 667679917 374664159 639131600 147198781 515871323 820732859 975842912 997450225 62265646 119258407 713499747 128898912 573937128 328823847 546425280 305132690 313578722 184036190 335549258 587170761 463918065 702421246 487203572 795393832 145997658 420341413 859473099 861701647 929493875 181576621 480316832 160375889 119584789 893572304 945041043 238085528 308937022 931906229 796097269 403669464 792293868 479778049 608612489 530793923 405315206 753924964 641410289 526147967 79789726 404430091 841027063 111384541 686571237 860467806 324951951 720205341 809067429 774294047 144508856 308748561 948643215 697366714 817303720 883253632 955346814 784580666 252889891 134207873 276282463 675180984 612519630 502883474 111537624 538605146 52082235 158902781 818752090 829940183 150579907 281242033 363436831 564445982 426811198 669272060 915221113 864343426 260671056 441688312 361387168 810802414 17860670 148607251 273792038 291129652 623670084 874289033 770494503 465325205 584561035 660584500 864472436 287648909 239869989 59818313 313175998 79658455 421183170 431918132 538477865 743227109 291696365 501657480 882048519 527771631 853777108 582354432 760917572 243363234 778113408 780911728 724958362 262850793 34718819 168980989 616825638 827437389 294652423 436405020 812970447 581053825 544109218 67667308 602181407 16139118 532832281 572231270 625559216 387719306 597391412 704069914 676393811 327920910 39634366 92669712 28775847 562781221 168781888 575622238 504485858 243297798 188227818 235568769 158262120 472074556 493854503 924712658 354189075 952870620 761561824 608949511 201187338 779575876 132921231 93565866 222133375 756831679 1284747 591975652 145745357 963636970 951841732 769282873 59967539 75675903 114645701 97028521 579199140 948877561 844807189 680264510 816010162 208520825 270268203 181208344 233761299 897974604 931379283 807035056 53919497 725190580 45192569 79873649 369561348 735242454 679024152 369638887 106759200 300607232 811175213 768219272 101299018 179019297 280465313 664457460 183628146 50696774 637243532 877096929 40958248 360956913 603493053 724143870 475953767 109745981 780150170 406711174 647286894 605534603 549374422 215763074 656739869 346153215 54143203 194649457 519269606 744142149 167955293 831432842 850785140 213427860 14180693 593947244 299024399 516994242 178318121 179865044 774620695 246854750 826352641 902353496 798288577 925181616 553426533 961322770 289798721 554614223 37943936 823371047 32288244 475582431 682835267 244912950 297147769 284844338 607236604 708575422 39311442 431395841 446877174 339504279 597674835 586410666 626196153 631949068 569134498 209899237 771232653 111357276 949470342 244302746 68501484 358572755 796045665 628261244 459000390 101386931 325545131 917127801 664885321 48751915 565577014 845312722 469064234 46515121 367379749 935394021 255349194 174991392 896067783 498702353 505192487 96648806 222433157 594635918 820820772 184617533 679414507 659568247 36483729 126921468 65933254 390466022 889008010 537325287 155098050 478409213 898849744 914849644 719867654 310397628 273223862 924898060 968539350 5460016 249948729 478884555 124523345 752766800 637739755 91646277 181509988 14019763 701452873 33866821 412522210 563836310 947026467 357275473 70320924 770209351 260305306 120889120 421667024 670073119 140599055 205959245 245400395 476896870 199397025 727787006 337883674 704600717 367325219 667557025 517608835 634296385 916217815 89029768 176652296 538421606 904377490 976149211 712039008 451197413 60420005 214404080 725036566 518155066 30206395 195735668 611771638 795702126 243501554 631386744 446553984 257315466 957325987 661549282 301126331 210852980 511055659 360039479 878282225 575411300 486761480 502539536 450176904 135834596 283992473 784194035 547208251 109225419 11018219 160195408 100738556 159203627 239490673 866228834 808310925 782884517 585336691 409438738 451563562 302283564 964910844 90024076 838597419 439591700 970158625 925909126 209590278 777141311 181114446 592218244 113733720 871599241 412853779 536398410 624258875 488673754 584198743 191717073 49657113 664681964 759436617 344797546 411739372 750107864 454226089 274331486 797194652 606743972 260653633 294479257 242042677 394008610 689566663 654509991 316730157 899998864 246341104 601775624 152897964 159830988 508656339 122447215 938668747 489039371 544113607 437519826 301102125 782873079 508169027 584934632 754075121 987318684 12913735 514603833 990952377 468679465 162113268 526699784 480054024 448077366 146643639 103329263 481240251 290105951 701883128 229921855 265630227 451532573 97790611 779780297 20257463 266537154 408134407 593900295 463597003 599091019 64067530 513611520 203108257 296077385 465759982 478494333 469118764 510012274 128855022 559898180 134859573 806073599 907689722 709013923 136311800 205892213 504874617 53300382 987431734 489345537 207756607 598419103 680732404 642347939 282965181 324090643 6530799 553117707 689256773 668793659 134719258 181484186 552982845 186468361 982856933 772207676 764936965 152609221 695490616 981044010 805904822 99886026 520211645 245952478 29350939 168294310 672188484 260976158 192584898 108973384 135141134 991856245 868800389 82911236 936955308 457911652 57443997 697181711 841225366 262494885 597501935 836389619 784255880 865676884 475742696 572747310 712162166 110592260 247190442 33348121 61497438 348493350 138256925 584751358 266528509 644305433 310367703 80304170 567917016 31710226 364003012 495405682 668122674 24987874 250234147 526338290 381958278 404214099 216255839 350989893 416642417 243039645 91561024 497197990 379461868 199354997 370290454 721254578 855694569 143479569 730888034 7983292 1773256 831015887 895767203 77389608 90500615 760121168 505289045 199515395 894545332 207377690 876311697 662957486 452621577 455131420 932676432 148020056 760545172 372869723 537724287 881892776 409831354 655072448 400857312 564475242 313135566 694926297 807754586 204124377 516463838 81381337 534214550 967988597 811001 226013251 941473584 395346723 310059143 86497049 931924982 272258548 980381005 301134710 245571433 241938804 148105176 394332997 842067921 452055529 200469936 522993473 441443060 803521861 522569203 931725881 25316916 4342550 157119517 783180442 834525491 76881282 923555957 745932728 560867085 530301557 53658950 589075853 535316987 531109000 620967657 520942480 773714832 20715382 275730912 696874348 30980721 402122408 974496287 538398863 69310390 843689457 676621906 166482318 387230132 231040518 387987567 75689735 182326741 907026717 146479650 618923314 657941258 690768584 684936268 881191733 931764052 191324989 954493353 23874265 774023658 794826055 354991597 323288387 253277187 126369651 277754374 926923118 878526812 372403957 401770490 482190802 722341454 388556275 245486712 895798458 17166942 432640987 974736618 573227573 393050611 212973931 102733290 770963461 47943142 803257590 66054151 723098091 754302950 822705515 553968109 324085988 802026808 441753216 956069669 202844252 392091415 843789473 613343831 123318897 62474057 881013646 730588651 705323439 580144371 821156331 787812566 173473862 226519449 858819138 713471019 481921211 815533623 128663502 254197148 423445367 223598104 651386885 740803849 979739413 526150893 541801402 933836990 364426218 288669152 292365621 187814055 576877625 360101856 242381428 132879336 877846251 985066063 630558287 174689216 790555558 705548342 919888615 827976305 697200730 721698532 650446575 236908744 89199343 794738807 206157415 19059665 622775925 923536406 574108033 871345610 977546775 370656204 260554282 624238659 636447660 139475338 969405446 874811989 893165590 619412887 817070970 156555863 449819533 422877324 603928628 227164898 330141079 24614011 480171596 356481330 623301940 384051033 424039611 541159145 293319497 678887827 469702900 717949262 730811958 795426816 433454814 905191450 781760534 427265792 27499845 130956156 10740 465153502 108596994 842611226 117601227 639744198 860301822 227474123 614502128 102729034 203590914 518437292 441961361 584428301 525611445 237182857 820759725 156917623 24235227 747431106 177684509 525752824 242598883 521082795 745447943 9176967 658990761 141090490 212714847 894507693 128807408 556558151 719157035 971343256 968035280 341911313 666653955 800972650 482558281 544218544 492413315 902609920 790619531 493342586 628762787 739100784 189252450 670180051 823226077 772404649 953267359 894804283 322688025 334882795 818256798 332922109 537067001 479780310 789861431 860553857 828868735 394903168 808627731 846879329 776941146 418813908 380031640 400964377 222843595 418491117 772370468 153203864 772223902 165222409 434017404 188503261 986229946 55674964 222996146 783145064 762067756 460214680 259432028 643884488 537190026 745190987 342312175 332343293 712816925 755816889 539453154 602656749 783427955 374464792 711108540 969907920 865928121 564287446 107220976 268648130 929493210 299991043 100169183 993982383 596842787 259972806 267058780 357261508 127735827 223513250 231855675 937121824 107236803 867154248 675702610 792828927 788735453 361111592 844821952 190236118 186404388 173743187 244617158 579124527 261340977 519056806 113679722 109500596 391405135 146817337 263759981 256975651 262865556 625109277 874934881 448355469 472282701 246620537 866946502 928902424 534702527 695438480 6278232 793743435 251221007 619599087 987502490 4757643 491133589 882403629 851840761 949461697 589189967 847626523 13723439 83559212 729974590 299014956 314368077 377762394 530701355 356274382 602265862 413139330 851521561 426124253 643946998 334712289 777825463 911879754 165332932 330600993 555240520 114921011 880237192 152783584 169058794 164820616 461105913 319542176 865979459 830319898 986922876 65359492 128844 908686557 659129746 956504579 123448306 651956258 560189583 109250955 645720420 698880387 755443026 522797697 464225428 145283448 404056494 957079804 386381193 300161416 401389312 674672924 109458435 666944161 259881701 56883003 163894138 291204797 71519520 871735034 356660747 490759992 249845388 412763605 282128744 757556263 492688492 159298855 92505324 526449744 131194359 761320163 377294234 238694402 998752029 485455952 198194439 957537324 494589461 970324742 167391506 131778894 489067168 423934408 357994604 829067703 278970127 88783984 105942580 143656991 483916743 692090870 556868041 555512771 215048465 704710841 835919597 870617701 5295229 189236490 250130806 137134139 519181161 332229179 324804321 754342052 221413047 774392733 572330887 807244531 945399212 880423658 374643810 39031078 572560046 441059222 988661319 665450305 27656918 919226142 473173934 620307179 690729349 128539280 397928386 923591335 259069071 461572477 322011720 866315151 346390620 821893018 920288413 67016938 713091836 378092367 432052196 732423652 310795697 844295538 152026814 183403775 476766796 109004373 855501985 22365247 234773163 186168579 162825483 280426477 455951897 106932100 108983359 552507636 139726309 63797939 286170614 153768050 458670284 491913102 736990872 384863397 219797762 907607661 36485857 581415452 269690584 176218716 862489539 194367098 301416138 669954749 15133372 319778650 841382439 273103098 620111004 470310178 985331265 838743054 325489537 176029989 134637197 803485020 943654917 193071944 646983521 246974184 405766475 188930191 960885466 590336161 624569430 582259337 61523240 655097984 281587168 392079046 201377794 842264894 640826552 700097603 326940833 351891766 520688450 816021866 397631929 814454860 982950565 625015113 301317851 958767042 628116008 362668091 773350545 945583550 148375831 43578747 628157903 536587403 151324574 82683141 72891681 549235969 220095017 371398743 226649789 304541505 367410073 622415761 966573078 658771577 463572797 421840190 912817138 819412967 181870285 352674471 338884100 415008113 9853538 445657165 229335192 983876511 777863501 323135703 697528575 60490096 182193342 687633375 742974675 406633635 240002457 632687484 828478247 384179910 214381337 620271136 872999332 205600012 71210960 712143546 3987307 774595026 443598192 728463178 125578035 788893324 218650637 493624546 371520837 105364429 570647772 106673548 536792090 427067356 376128090 254875847 653022652 734960627 497921643 183328896 579075184 676641590 859667944 249383479 581213292 129629481 25200142 966855703 26976224 738791958 31145774 415930734 689701259 881629702 536554286 640262233 840658653 17789249 588891515 98396027 173421460 429691712 531022816 721915721 892493940 472283100 230893819 293182241 877649544 703109654 998200744 705034829 796139164 215465021 959496547 839232494 733697127 352142205 814444353 751847903 205820526 700723900 608122783 155661438 862885613 909223212 516727710 273009067 583917581 304908984 116185575 801440677 234407945 993624746 15961031 390870608 711343152 478781480 976570688 309061776 595813101 837951172 702963886 978272955 174685093 352737247 178320116 229544534 784657673 210448128 499650244 945350667 297689345 653811741 188393669 510453967 810656779 380030443 339257830 349064585 535858696 578936598 220155266 547654333 663757614 899542674 676754640 888523757 112469289 865757216 752005508 486643243 124787217 164765554 353774647 739668960 956264780 612255625 301354825 771272952 746568601 714251596 755187932 239442660 571797690 687355006 134685875 655229787 224073978 233810908 922865820 832233901 743343351 734460813 493370117 959682747 593062129 321021003 756953906 718711751 948870911 35389937 109126999 562261989 244467001 398211543 98251057 539591607 840043794 119018076 598119986 981867280 63556943 138678934 944825317 301903317 58533267 617636140 93951832 962041635 18679551 779349643 405739476 728393087 105435185 317694407 472610413 188934314 614837554 529727130 167707780 622129944 919290381 271776955 63612936 308232920 889984762 182528103 873299912 208748255 573699989 426075309 282460712 539087670 82993031 408415303 696142848 3984248 850584044 723465570 275479542 408089985 115331316 650435137 951996278 984004989 608266290 184950432 160984364 481104857 249723028 955879346 487592065 848381032 127990655 927414154 922367336 325836933 579245557 43180545 624827583 415803320 482321009 419563629 530167626 80467627 514495704 309526345 742362609 998743650 440411512 279078389 85603289 65856513 635815910 589513822 9101556 494497957 516415559 573844294 556278053 407037689 189103889 962902544 255553216 251247474 270965123 439944017 50626417 827845965 387105511 551848355 405402188 489288746 239465004 46074758 837926567 299937843 287204822 663777165 151531389 239426168 982161875 673837285 166859905 782919629 917374250 632792953 638808144 882831623 154500215 284236794 872028299 678139702 714600322 538774455 200708006 582937371 769501658 361684955 725333821 822385916 199639750 335984168 539597193 2821562 779083909 384829482 616083365 310595931 784197227 407226948 283157100 774926329 630604039 838139234 761782471 479749188 743379926 166827453 76695215 372400765 781143414 433699135 965832135 996736148 661364279 683543758 449061965 948196601 33943961 861679170 803310391 782093699 572703154 408497231 854850817 592991772 58804188 874253256 118705659 399949055 819888841 759673756 241536745 176932261 193291394 7467518 184034594 472132677 34258772 353222032 116862146 953811728 114673232 916824960 843174481 969223768 321205873 525570082 617594378 729179117 521279901 676613261 766723554 962077811 293496254 698344264 590245189 893494632 410431051 292412171 497625984 130264955 117889704 446157910 723140119 977612477 814932463 927213590 461096071 38361157 131705345 683482179 151500267 616275949 89724826 346358700 928068514 394067529 150401820 362263372 966442206 957920098 840154716 674983878 577647296 477641138 511623303 767714936 270287089 681614593 692988221 174573639 730938707 777004720 438685305 26426535 313576062 971228610 308019189 701431593 497885068 672163480 319023875 47863741 574570075 750270922 173806894 473581845 770146442 323666373 795582958 331706090 580072684 44217147 566674397 9195321 165748291 705143889 858937907 653028504 659056729 36508999 717594152 923811184 963158303 452411570 251907819 873078866 923335443 5248280 574752418 56035793 136699229 862019783 63607483 519651316 659325921 901724672 76462997 442795803 420960661 632111062 544243282 645421170 323187440 770798009 181056059 876639675 959156865 456988499 557552725 671485845 581359991 70097085 526108599 436507696 474066763 259135172 301825113 318066674 132643926 241490594 768211292 539152441 737084371 258061330 302188070 681776321 302996710 953278265 206323266 157401344 636528125 318783544 760198574 344226045 821722778 857006082 304883980 902096274 99711397 351057058 688271509 880417141 559573394 258775407 450809186 607762353 704374218 338719180 712452904 649297588 416714769 463283389 805789777 415388626 199513799 500666364 318375899 108584891 811915624 800977704 747935575 279049927 295293749 873441424 166602284 581252527 812508671 170122927 683675960 87063230 872400965 79087885 144332099 19122308 989229096 861031859 980855549 315903296 410775920 426066265 89072062 998233329 601389924 852348422 674783979 831692591 467724791 90849341 799339942 685287920 849170786 944117624 816866948 860969482 622010510 715014351 731574580 537291904 504609681 436665035 509904810 160139814 628154844 444981525 647110536 746638559 569442260 514906541 956945208 740008509 201154753 316669908 525228937 864965600 932923546 563678572 90234216 912321846 928850687 584240638 470449562 50647564 882438874 605734236 19583951 416151913 887723762 950955819 432204348 492529424 417521148 960678651 318629796 583349538 888598104 257481450 723891436 210887294 514320410 36623246 167846765 599434558 960782125 464110250 791399975 9189203 793762853 849885262 293843118 469552078 995091071 812699526 922062234 999543911 412110708 829644391 981460699 548485450 86621803 69295361 16215593 66770755 969714804 305444309 439561509 818831358 527113813 75130869 286357346 872823107 600792488 358797924 673513164 467101952 720899468 641589440 263991800 89908898 26433318 165888340 273388516 969364349 678247565 641065420 377425638 668415141 49128970 58536060 556667743 574544805 143018325 385804505 80318800 573697728 946308001 85543838 474121027 95468431 760261217 846483787 442009773 707072788 966267843 473172072 521358903 954281750 204160420 232440210 993591097 648130380 184664349 993013478 271844120 280401606 160996600 873679228 817959676 423756986 48453197 637127689 613671144 205757617 229924515 660261576 220382031 47934497 948614487 319426200 734496058 176054727 952895358 401907480 505508495 42124791 651727498 142385112 540788075 952299651 690129120 475465125 983556114 23561316 229194478 723934794 322081944 707476044 172134419 927178345 897328490 137999171 667808661 285417701 36055203 442635272 19252 979209142 804970896 52641234 43506927 336312013 195932375 740158400 971045336 365250951 123587291 953269221 576902363 385639718 113202119 390225691 339695533 205702821 555292257 712724357 198673904 341247776 589903512 588922637 611437143 260957272 975391776 76230114 587365207 451726753 282986860 835973462 692392381 181952080 555021735 130854943 48566513 577668044 150886871 627174102 866687285 489116378 229842720 316250958 773898771 684067778 861100753 972554886 948117333 799225429 199019837 607814090 59982834 583923566 374306123 328741653 601880295 411123981 97210066 902944415 958517135 361163994 621237647 704158093 878156274 626995749 352520191 467539788 231140667 955555757 815195936 221289889 138102911 169629364 997311107 269379763 717141420 2248199 939007764 286997076 631272231 406242881 700537700 785298201 866097164 892320907 984974692 824140186 661044547 232367725 955069376 979293597 368363683 459703960 316598354 114844935 762724776 980321687 676951746 525346376 221901290 855359542 99192298 35679611 802342550 709941598 147313028 85385435 16750652 644603885 809007446 911439923 857477833 555661332 425383842 771926248 156571557 744268233 587296712 579299821 860032231 334791025 500370572 940894103 390864889 610010984 18567698 729262508 773678789 379647669 635743691 466060163 40605931 375492483 776847780 970394833 395910776 833950000 594282005 564205385 160560360 588048960 391588808 766586830 767206610 276127385 969810963 598592402 165973859 935928681 495227462 394125650 503624284 174728185 210501195 988207922 437243718 778681584 541877345 388769873 428098771 70326244 10838802 731708378 493725360 637798009 718267930 649473148 121020125 254063084 264843798 989914578 683215514 604038619 942406978 674879074 174903745 610294141 727832359 569781144 881938129 183681346 800688961 972312693 391823021 835840329 436997003 179417499 488036019 966598481 403130016 318995413 749577992 193329964 917556327 841655355 719218880 190966288 801082508 602287807 51466179 108307985 14001941 233060655 758276724 561953296 106312852 28531127 876946506 796721305 99153462 851147299 682948583 825786460 663119613 395944691 334664941 694029212 168576935 637690545 433981095 960247465 479907990 692853891 276326486 988112827 855580854 484345402 718081065 545555593 296214774 704913666 334859653 532717369 56755722 524156292 196049814 953925443 750033916 461387873 38007244 686137657 119773782 724362389 434948138 228589860 117112186 351514445 880737405 916921385 784539702 245809370 985641288 767353309 584067073 742567030 824340484 529454081 995724151 616721100 880773448 277250038 321116098 121260855 117466631 157156491 901017511 568617660 36367088 456993154 625535542 30171549 151927330 724145333 405754771 964515435 519080347 56035926 116239972 842502698 923771018 568362300 924456101 31898288 608639488 591516935 203877263 815435070 718555077 243987802 889524715 496378444 614814013 400285013 525392793 679895435 272008774 955637685 453236037 33672375 283563149 171826524 446884090 177893186 849577633 153481169 444595692 226057939 933950439 973276411 807400141 492884268 873749319 715249628 822140531 174044831 869623792 316478255 481990504 181479797 733714683 837639287 53759764 658405428 833033364 635275531 807004333 364855143 13868010 397626077 229161228 499832321 477884661 264074925 680079241 562522802 370932046 427094089 287722591 399786263 922962777 892037750 516998764 831737811 153346839 650458013 688394667 661178877 690825907 241517593 139492362 456292909 894758265 525157383 624864291 503251751 512225527 774234463 879370564 942498881 337161351 513138705 368221506 969932791 585311554 820544531 322402075 366642397 824624306 267938176 42206054 765624442 695424781 434911563 95848013 927240722 48881989 392512360 314019218 991051861 909812269 596483022 34996922 837826418 532912214 596852230 964743131 404648211 687949516 939129592 338369390 679725195 909387600 636201610 283140741 949938236 159535994 418046232 45489159 343466748 65481586 208474408 195193560 441979715 416909481 42008416 81058280 673070673 818938955 58792218 103942393 795092853 32033150 233493836 909158707 458778147 132308234 645921383 869810790 30299362 482414508 793455091 561606033 577355095 645348552 118008739 250736089 478680666 826881050 557830828 878003989 846683420 376074890 865780624 233482531 110619259 146118023 756099381 26733898 463556172 19475689 984198238 139165581 158122204 218711684 62719176 229245417 376427606 692864797 178665384 91177319 167118324 91500509 981658204 316239653 136714258 631840939 514225049 806345850 592953601 314250505 970937872 64713777 447779313 680450178 168083372 452799664 418060729 836648171 376723398 20187904 442599229 376633091 80195642 286363730 83679045 499247919 699809924 119868611 734724153 59841056 560695116 462268466 955186017 305132291 526673317 488337397 69405751 660575057 764033895 977347674 64057422 556669871 958844315 473806748 102683947 674775600 292261216 868741470 880567165 528582665 234282792 415502607 840692302 89153857 21627629 1541171 690493274 68894366 998380427 168602205 416539475 839102154 191323792 253451949 463006217 205844865 943790843 796663849 682146194 234747361 873792810 18847264 308619551 740100811 648014803 525536300 625522242 795990603 763943987 900518362 345520401 481454514 677855082 501982798 836043154 318408085 438284975 638396110 355665508 536794617 752319255 309763351 130824752 61586681 334973235 152184818 534736309 76050830 748305448 518325971 80236739 144559130 830442391 475900700 849580027 918715289 811496541 348225089 754515883 591232448 157829205 151943955 385541431 708085849 704414916 738107939 367986229 289200354 337984355 118695684 251802882 349294276 954761348 888264540 531228567 635199189 441877704 498775104 567207594 80139117 424704345 609726896 708485913 792411706 187312379 835085953 43265133 862982703 843631336 183832434 322694941 774166367 636642239 744749959 728718804 678835292 286532906 605810578 234346898 716785113 861623709 576894383 765372806 608705323 495590951 466922402 821440153 550192106 380898268 492570388 624838888 664411708 794927268 79249613 771728344 753629438 502951969 467316082 496070416 482934139 739082829 796917214 229657584 553830853 760430393 321437293 117427529 491442947 816780099 590078407 413080677 215254748 742935573 553559001 322349008 202740113 458544998 831634337 363850328 728640600 609501195 686559001 724348158 216725329 545640181 572260663 882551259 972969979 399255726 866887184 353575546 620519979 267924610 278799621 789763410 582703690 795654645 276520666 913355389 592729762 860850447 317125965 888082197 216671065 415842289 24599514 523310944 582167035 736442114 6855585 249677542 222302152 381147776 96817849 666798659 532676006 209581101 952679898 833399247 945891445 889825960 525863879 624953534 14417699 513290857 754002370 784635994 510904837 163456834 647088591 542802094 497012455 550954329 310207438 549785392 568615399 882892537 651685470 29804336 174563132 980776148 927975015 124509513 596022443 985526908 632206822 606205588 115389304 294179076 569311920 113929629 934818131 734948923 103324741 118320358 582446468 383828524 219186228 1393940 179373476 875165503 271020451 830114014 373666792 808486884 818314919 24430338 309412763 601738517 126078514 737339332 417778370 415320264 191715078 218864368 60649563 377437475 184294476 24173781 508748641 578994054 897997214 98156627 300779334 301170088 747093685 394177919 433054617 389969932 728340818 486395464 614357823 181884516 193053457 922656079 238063849 254424046 736637491 155233976 942231950 427875198 252169031 187447241 301237253 228963856 468294563 207840397 580074280 243483865 375978199 200527658 961707938 342407137 453055290 101504769 525929847 406553835 771267233 794067556 842683711 4925622 835825965 214445177 140253388 877728945 333538298 477136137 893787631 37789124 809264535 921210236 325555904 921249471 304559593 664380054 413421689 453986689 234978 827664819 530869999 637196583 134363616 662607962 88567992 962567384 875748974 877849443 357492396 89398577 654721461 940975233 122391754 602350849 647889251 474717798 406114403 977300459 587854780 159696392 116599870 226717885 271743306 235267923 714267423 319662541 113486074 543618581 709741965 508241113 465615544 407036625 823987768 793053830 778514403 234290240 949719717 49417580 623787656 719342304 292321465 849726327 444280083 563691739 932514704 815653057 96994739 731415379 200524466 267290865 46284366 880787945 109447130 401769692 477859923 515573802 913143786 308462611 122339751 782627162 152609620 866088519 480383598 256368240 764697432 292659817 61467513 258574843 389920057 889425497 207591155 808125390 347273208 448495518 113624128 479842820 348789541 530923332 908104948 639390817 940106344 51555156 752893815 871013642 41018098 773261701 476695109 950883334 448016984 35272631 211739691 211026279 611915810 323600272 167889591 535935437 955882272 720315066 63424076 162061797 414415997 4750993 19447626 594563034 462015899 515871589 262792672 175042464 952296060 580591251 22780207 967016367 488880436 650190683 389954371 673112036 505988758 562626143 930686220 617897086 301924198 667256445 58937853 49913803 970153837 393863906 796409154 892565893 732803234 496565575 833512430 375983120 902212383 941345239 265617459 76146058 441127318 327386782 270991191 880993962 335525451 270971906 528570828 572068744 73254904 390954531 279460631 959746188 628853360 734570006 244224542 531555614 838828174 791409152 557714320 706077283 760785636 318618491 508378768 132451608 251464397 33800188 855036086 571741830 408856331 437649634 310109284 741628848 257469879 761982237 501745659 280754056 712610642 183034700 172572388 32554111 785027546 303160965 505736191 582477457 39076431 224834339 453142006 250256624 571083879 621084431 645684643 41256700 98226851 622036312 549974252 167909142 255712949 250748325 543468557 146891551 203223036 663025582 721155493 207579052 293808671 262173158 542161832 314885846 985895983 754913287 844136736 113710711 854331319 610502951 572486630 189704517 358690859 585981608 596045718 578199113 657640811 590848477 843837353 267053061 549990345 964658144 500717037 978960698 880852184 666495951 930621183 440179959 631252281 736636560 585523689 150540938 527077238 960626249 367582175 333884098 66003611 533049869 937525080 621801434 274288128 716167062 316841611 29425153 239326418 887340057 9119378 776007619 733043698 784375846 246041987 433720149 435850543 653293573 772980007 220368598 536681833 133440596 984801659 986171160 959502665 24891582 625092918 829074087 259327357 401232638 889338116 50562444 119499935 412173617 199496908 383268727 447984532 215408762 353221234 724832677 503999876 838645831 4405193 239287582 54182438 430632155 774686264 984939314 307734835 333648289 699434332 752864954 781746436 672674067 783513474 436688177 662699466 761872113 290306648 52477910 103870440 26474149 658567156 169181420 790382126 259946871 571756859 556633163 103807797 333574873 322917450 797982544 420768210 442752046 214014124 512177115 53595642 827069112 654346933 243524829 538489835 409722560 324400932 179794687 316189911 233113456 828586110 395330364 479167047 767331364 847596066 460085803 692173064 702325619 157144654 72523936 341168641 7728065 706822748 153038279 27054428 253524301 932430 594022788 895469815 590616658 380438487 972773405 729928572 737936502 963843918 793306530 162995590 816192372 376484530 837085608 497600182 370432764 893810507 670355345 882441401 204330261 161718125 852399361 869385722 21677371 282582274 886574243 721551567 354842770 929416070 133508958 376955616 259920670 515633253 262526938 653810145 885339205 756944729 105781118 426810267 888872882 800866915 473466401 323161771 710874992 247653016 193089899 433374615 844387308 358284677 907047731 690318645 415128478 813257461 10653666 251165413 277382905 102630082 997785917 248609951 870139034 568695465 997288364 452848342 721491185 671075540 736813450 791786207 94613507 443647535 311241779 8177871 627182082 906323280 891871367 347880087 86620340 783099578 971462158 688819735 925052739 366407120 15888413 511654957 761470320 902829370 55777773 81457546 783510814 638359269 854457802 729857284 588204437 112168975 278245942 866852471 337001618 550498139 322368293 479224237 354731981 888064774 206488851 535240645 190938757 923295011 988364862 217911955 303063875 395692124 42613034 108695414 570777580 976862889 93481012 429411614 745343405 85149493 77984517 226661892 862453496 973017859 581286176 98274598 302732971 756472579 751258580 602270251 574595079 667193935 183073935 264117219 503235791 641962106 148886285 367796305 300626916 557402834 804748520 500710520 524010923 889916799 247891884 627783641 774899596 36920900 905713209 73963927 925232023 157194263 685473588 614477124 854338102 277049873 627909060 269183322 769223821 686955075 469188589 194589075 192685579 329841031 138320499 595169115 317180495 481374182 54505096 172594200 843052919 875991832 166432310 825978645 8176009 201780518 208735088 163025515 790984616 59644615 181344802 305483544 809962519 21315478 893819684 81383864 910658814 45258537 675973797 519715422 536398543 330736254 715170227 253598116 614353567 780763566 337159489 735212396 260893299 924308737 353707482 76484277 71224659 201754982 303326284 112591649 732400377 316460167 722160175 286524394 981448463 608249266 876329652 667345023 150235836 463140148 534973448 179202438 540421261 770170382 278366041 306010224 900327773 749150929 379760187 937801321 667237027 444459633 960462659 94341921 4199575 599966558 630201581 703333626 664362232 124186988 647617798 62934902 531281501 639595770 744367717 857510950 862576920 349834921 243866772 315337647 399009410 115233960 261785995 419786670 882280205 57824111 106285853 943334121 256035075 512692224 724288840 129209733 943906553 774930186 38711878 152626910 121238245 502802876 352249270 487693012 937767406 526009248 108191610 42457956 92675697 475356597 599048326 441015199 637344745 895058047 19858729 332632967 132614666 971290987 655139480 536635682 904229594 842253190 495622472 399538218 975784126 549886073 838884034 195335072 568885123 144667791 49207706 17553839 301364135 6497416 587600484 204955228 876109138 655198532 303141680 631455106 708351982 883830852 168550734 507829744 642780721 960034532 728512122 296206262 141703753 69349226 704656178 496805374 214650396 679315422 833363204 243558079 839594653 734377688 245118834 762040358 603797091 231436858 235353442 652275458 674815500 461585511 809805313 654238671 105127157 424734137 217322366 304556933 318343447 90515644 679318348 865492280 95990988 160583502 37309659 152118983 837591806 516836504 41243666 398181884 500752947 103061401 485453292 790430804 904109894 985229520 709581833 243917179 451276947 353007237 80439298 831695384 848564306 322511800 639733159 274758017 753882404 726839514 802572640 404367315 119711272 77917219 206100092 660353080 694454413 569037408 21659416 338063490 930786901 532480762 499401800 1059046 682655717 676189523 647917314 882024047 107152348 675254799 240949018 845359671 429076454 791088223 89594220 499323596 757905654 787462244 863717794 669486057 288143137 526508796 525637646 591646211 372914012 405718728 627740283 552738258 876940654 80196839 482696069 872411339 546484864 788491265 671135523 252852917 858360953 141792464 557812341 362277470 443582897 610469036 988301687 824121167 526882659 449610324 216572512 28404777 210834227 938301401 614799250 401677789 342064130 87394799 54616550 793458150 761383205 11818879 422554932 642747338 966345 464161455 582557390 337089132 498570683 968977319 307567255 118204781 622423342 462037844 892300292 22056687 991189782 522890797 242055578 563265740 626958908 186509458 728788230 260370742 910242391 346207213 148571607 836943298 272888968 238150698 123536618 805384925 984517970 662291688 26768877 166646174 283973321 913727390 853628148 705181794 322219599 11339680 130067849 396025422 461916149 580885846 146445735 935798474 864856407 925856059 749090015 168545148 542893864 806356889 44821898 13121215 197586895 148456961 582700232 3140762 754652341 640914997 537278737 675841063 436367780 831258346 246633571 899964151 195984378 697045120 97005911 130861992 109121413 548751450 849850549 15852104 821064694 79177261 453706458 584696961 412108580 582864221 68697260 562345380 893149763 412309543 9236418 776204725 706807320 168113563 496201820 196865503 309437368 1192578 855871991 650252395 154413632 688884772 879574187 62110967 92519289 90848809 361529611 437469419 563640002 314242392 44224861 146973878 78589800 672191942 999317678 539400087 808970605 141017473 583776069 135364042 606364390 928342627 846765348 542896790 516029460 956960769 421187958 930954082 852448039 579793517 764957846 330763918 847469583 153450712 385451124 874144861 848724438 104376372 901118591 774625882 5447647 421473243 310242949 781643627 231720680 539954564 922676694 186014432 273472306 173766861 875698966 599321774 298112152 324966182 307933404 160310719 786585375 698289202 654774395 658993687 402562505 377254600 932037633 536149434 95027270 541097034 246839854 612529605 653753487 312610482 781191959 721565133 35298832 293741107 828745444 762719057 513238721 449353102 49268221 36266673 261105035 738249584 9933471 118055422 465214948 972082071 607140578 482685961 93028945 610082937 649486847 973971336 102569700 511014828 391141795 570483916 234833944 424493673 391657303 336664064 780899492 216920307 812254774 401110810 608149117 3817333 386710767 959814284 783097982 48648973 704447900 683955792 429087759 855095138 773306522 781659321 10686916 917080187 249407818 11636137 167859666 378584866 969989715 158678011 894061079 859268146 528717261 786690711 564078769 441312853 395386889 682985690 128697550 251003685 153738923 789011561 816959782 712483760 607295656 246330597 717196482 821605073 311805566 217910093 700012749 372693365 747889025 545909107 118554970 762760553 671021675 369193869 320315837 478313852 119538771 895472342 115262156 150993803 963112152 167110477 888763024 586808602 167479951 575868953 780609020 442956068 192737183 934414609 307180890 986696776 908470432 395138179 90140584 984127216 538540774 60379440 995379947 665589556 296665245 529379734 47645887 413876682 485853090 724905561 503025651 140798555 596215426 655574922 740157735 316493417 715176079 178597421 388171905 189683237 672617808 275532742 211444697 250812963 513422660 667844704 735574555 905626759 226109942 587853450 906527036 1384630 664032259 858458309 952785899 615159813 134291530 571877623 374033207 510490941 121679539 30435288 317539063 310348950 113785058 873229688 164117312 203311747 886314494 908667272 998718646 520296233 115153761 267697180 699017909 798139484 683281349 631554856 647572179 908296335 540717319 970870574 195336668 30075656 516444686 130702791 661236732 64198668 372988492 385253353 701735631 638579118 747630207 99926059 748953025 209727933 86973322 797689944 46400076 890111112 826779172 987253913 953921985 76752006 489558470 44702065 252202946 21953080 545033834 677029019 456413008 809361891 313579387 684508806 462855262 740050138 124787749 318795381 516434312 789020472 358027721 555449596 994278042 116358475 853570160 58330176 602452461 615016439 240375389 209544659 685021521 964330964 356453267 963267629 76425491 194845632 833621091 503374377 136638049 899892996 668251019 528057714 659518771 159958269 958240229 875563439 262108653 59213961 207931635 83089855 427502798 852750481 55241916 140317095 524484403 45115828 548973028 859778600 300083744 831687138 277249373 711238481 124819536 122382178 999876544 441394781 231463857 340367715 959512374 497143593 492616007 245718265 253470968 78017235 242056110 467025610 280575304 744058359 191326585 763707779 46442370 30502852 3643502 19507210 262041089 189031005 225943559 670082695 229378018 241158892 942494891 70825260 871051547 953168673 332540399 647734173 578462054 855187307 874158693 468986695 228042565 81128504 544918922 850763993 916024167 46405396 418841838 185535100 893574299 274410754 651311607 902395790 403912455 893040038 386370819 83716418 177538874 480860669 362944066 129945755 630301198 359232967 31963724 851708027 963919861 214966005 640212491 731325870 63001402 556249724 614623823 424588369 793490735 356027800 9779856 949928660 211430200 248092980 464966105 310866985 244311524 240339745 837028285 761265367 663852443 505186236 853676959 577005970 540726629 725794001 321389014 424328753 949438688 991373189 1664196 35317053 79418523 713212334 325775221 220905519 575554807 971178203 935515184 671616451 897013014 611209447 671594107 566031741 172405739 330247213 860492012 732170154 905649768 880811486 152578498 529201913 35555921 373655487 213721790 350006757 811255678 783750879 844752260 593566465 400621104 577541029 273419771 488947601 156789810 975575050 459167704 507408400 149263074 691760365 225631009 559126780 565751377 452436973 350423313 648997939 514541323 527197470 132155284 315218346 350284062 812410118 175694696 602489435 719608969 170944468 112637933 757179740 136684067 707411007 160021045 98773481 992073434 990310918 327199651 122386035 418125500 518129530 872934162 934369655 559964281 186571702 105250847 923875955 117796205 25198546 524895240 268711970 787927079 546578895 48179882 950265682 196439903 941591821 762761617 63365556 290325534 299502534 196072291 504935132 282641592 956201871 166299576 34934279 125708242 997210027 777524351 791544812 744494998 540825315 9835716 671831645 658876381 613705325 627573767 217111827 971869670 251601254 612571101 334583678 906164345 938820367 960520780 64844915 589002038 317662487 218215062 794762348 410203222 118405478 38054991 738517047 771971202 920016029 513149212 44327936 178045338 192149057 310787318 196879601 493154790 765674051 668025717 758557221 484820345 54270085 599983449 16997899 64227928 365279546 573768085 38424465 364330325 331717262 123087477 959402250 846450404 530571946 834940717 538786159 217521334 133023907 916366376 618461671 764842003 715140967 578196586 359241479 17409534 377339587 734028962 451792721 860838078 328497731 424698892 318760136 100686287 420864369 288939275 476330689 971656604 645449233 136385748 888643058 600639538 848069945 482758047 668111502 382640967 398808181 371322401 561950902 846423006 641943087 828598080 315904094 173677086 45703688 837976309 155838860 118782001 640067920 638697355 832290293 560994632 597620172 448431412 117493098 608083947 228051609 853513768 915353315 693448933 49621735 763903156 209371759 60417744 572091620 323577795 289070679 893803724 528930726 994871355 389699277 373893823 552441269 167089197 403762564 183911968 756245149 548302309 17813056 507567867 354395757 349311433 175375895 87318590 786151396 341269987 977547041 634561720 844075024 516347862 342838057 676904531 376922765 193967167 387036883 831814818 454670974 403246790 368761087 248218931 858009301 851051672 210968690 599091817 247317856 869929825 20442067 754838940 800009464 206121239 224251533 283522584 329090246 178302028 356938717 983681666 809694923 811425386 19874423 455569389 151429511 837664823 218786696 810056816 62843531 487835588 434620027 417270310 525152595 893586402 589057100 948854419 741437860 225465823 312882201 368672376 474086048 743420624 871777328 113049701 135590408 83718679 837194003 26803457 962515913 144049474 742153134 774102926 352179844 947879662 243280508 350408151 25843463 641865814 241735048 317097370 184173978 163651413 828249620 38949948 393313153 306292184 263732051 10490608 517716166 403734501 466042873 120239947 451985172 844213477 329311691 870240646 44597793 540346382 477974835 694422892 37058023 926467327 401897372 603850956 796426843 602066628 509161739 811000052 808223411 933371224 713130539 520572740 46640407 375773512 145873569 240372596 263081149 384008872 192666826 994400934 46775136 474022208 408623714 248747074 525644961 896726266 26573766 524330522 499263480 930215932 563465373 671078067 653116018 871031065 458068060 182761917 671160793 883247780 647883000 902877649 201223115 266232584 411235302 183286070 350746370 917709809 490701073 692280395 537967411 460940461 658285462 316034700 891677187 522513210 809801855 227136569 602369735 434743052 33910977 542391257 701249649 544005611 169705706 289017745 682551977 359790902 391228644 438449895 849837781 766090341 842792505 447012568 899842589 738794485 645287904 789235932 714253192 966188309 630725069 437127742 369628247 138629857 681402990 749944806 961712460 406426022 797410910 346951880 120527626 604033166 328242105 549773821 240358365 124785754 757019076 576247205 23069615 443601916 449597689 970409064 833189373 549848833 689152235 254491477 831062171 399784135 515962029 496402118 82727164 698804178 564366315 675352820 237632530 493538761 581729864 321902394 34206902 424664312 536827601 319930137 905445214 985453226 802591659 72220563 647299130 782244920 853268383 293739511 544896046 590598304 581351878 561657238 40805165 721633628 529182362 286248818 453438862 509645194 366628166 403255834 471284669 855091547 243974236 108280055 237991896 327055346 146751369 192563086 434953990 398942910 455294744 830800294 555228018 661817144 633224006 838969819 950720143 866968181 200735537 692819444 514629103 371775399 920189860 21533332 203888834 142881468 158119677 841345332 435625640 880756690 68129217 753910334 354679180 110308172 824976091 918571915 462489645 130374813 521183742 705840543 246245876 161840485 485218281 952607945 420564321 488476249 804840157 169698258 944653880 241042384 642010917 324039571 391902954 356534929 202200133 965716558 752154468 855700421 95226770 539000954 63512521 656342997 198109186 610997578 135526435 800430808 22652261 744705537 628593877 586903431 408862848 318665839 531259157 551024553 768663226 539147653 852991344 615594723 520762797 65671909 931661642 757611059 400975682 881513859 957562993 589001107