4661
521239034 391123273 723627037 140708236 405699972 353535317 684244364 187041373 721858449 658807327 970880165 849877243 914229771 140945363 670900662 398996436 726061248 682168519 728475162 268426294 407397157 8804222 173443617 73015383 912551210 85005401 141958774 120421004 480283083 415612341 723235281 49419098 299192146 157575996 698291276 554478329 859586278 94949882 967887079 240850509 943031621 217328505 573504986 217679461 911643705 215800292 950837325 147434364 259750145 229241080 922857238 491205992 800613207 286158449 998205064 67489103 940462885 190688437 397774104 38374925 650895858 365529673 671022806 284114118 341949744 218675825 388107054 265646071 285975959 25199585 730558520 320161820 436519220 72036502 160160820 153586082 656601931 466269186 804562246 788222350 900549112 135710794 399204276 25927403 746650968 459137712 661886352 474851449 865903229 466390366 791024817 432554942 453962542 270790998 980476375 351414199 749795157 7514044 311076348 271031684 914438216 307304782 552308813 258349339 293143836 101179503 663171106 425044354 752216859 585840497 776248740 294445524 604503905 367388923 862392070 736488576 919894890 637578383 699772596 373292990 748808051 160546489 374880191 35492113 450740405 8155169 670017591 427334958 797148535 44517027 449138737 438789399 778409467 378719094 838758534 264544362 427739171 92268892 313468448 72975396 386813240 382519411 706288768 359778055 424023898 135533739 844139667 427168111 445678271 215142672 457509967 58486567 620211996 484126387 777229838 284431710 648727206 117491314 943550018 928219184 971081870 528444918 781526260 316465648 969134002 729509718 959164007 281630513 846020544 713164504 768547467 587252635 612851494 598404366 883258238 300663081 323464919 17362886 434312965 341605754 941801900 828577061 992066216 196884377 404730113 345297032 856594710 17307913 269737257 180501799 772530601 561776551 762603134 247921295 406304323 269714739 829279070 689838197 919864279 900256162 958400343 695352529 770813542 82094931 333393769 86510858 103052686 16915345 985837097 911402053 920258551 787972026 966647387 254922421 560758426 543538707 957349088 430167791 708807395 74431493 439136921 133200652 221720403 27771131 545241328 334562279 425633348 290051416 701533931 238094677 302457184 66937006 989537334 69868383 555012391 221913303 787786494 642388193 873348829 245429529 736900830 658482606 786446935 486836761 705734286 458006224 958825946 811328109 888287403 592640828 627903613 419050161 780049589 661641529 970933583 402802054 934371154 925719086 975324544 258417189 885864325 566764904 570770505 315696315 421324293 180084322 296143642 96020378 490926583 67446381 388032841 291100461 867315016 562841531 734145511 353548931 582857355 408431774 484860183 245680067 353068548 273985180 289905704 261468100 600188810 328500237 861543217 676464768 863984128 441540304 675864425 368949848 894625996 501783593 695968964 656915983 829900984 595778379 834751754 472623946 638512758 636286397 853597511 267986767 305640569 254777683 496902082 31371893 435212607 167091331 736785700 693923829 996035800 250126982 386344773 343122361 998650035 384508254 749080698 680584677 788409434 625725241 868482632 58714544 291084218 22430104 77234996 32974502 196702673 166212942 994334353 691651824 718230177 33753632 77091240 56174794 890153390 140402815 351771022 210436066 942716654 315295585 916666251 470964857 497860344 165376653 274278064 260133770 384848383 172635833 833332997 486267979 525859668 182413718 563431943 440621697 738867823 516435846 704410726 435661508 477885187 94487847 705593507 62700845 394522129 314769763 961746218 906101363 931821169 866043844 873136131 156827940 387737660 36692648 817237113 377126073 946201340 337108965 460972532 420578338 719467450 669443343 888215771 443350268 680193092 461455628 969441636 431571701 918487684 667374135 724046883 153793790 853576651 841606955 957315045 67526123 707979031 187941033 483561004 433149209 614108874 510961485 902476138 792772139 904548520 124253880 947770113 730462903 876422114 455514274 730532758 721771631 739063562 25663548 331472395 115861697 856552740 568858596 697213908 109527062 165347068 105705596 317459515 269083889 935495723 865806465 896472675 645953718 876737094 837037361 918434659 204232422 330606979 217681460 772789164 491230244 604061069 599597249 658731333 138521812 598390908 49602097 637170555 42406735 252501236 230486421 958043322 676402976 971236152 412503672 476759226 145481795 319085517 67643612 298863225 65106393 415444700 405966360 795383816 600583816 779687440 363463107 852774546 164000642 456446763 20257756 517842309 128852983 839937154 124970779 148375063 86161087 932136243 422116939 554322130 448725050 788047619 455296907 651650880 276896173 562361373 311744158 915315864 642488835 783612079 758694131 824259441 775443907 857035920 760774333 801533814 152928404 763137314 140472816 638455726 171736651 975041179 746151416 834714143 416308694 828047439 575702592 806377998 319761581 949002435 842712704 898438260 176120543 601566159 209847751 853604739 833542929 922923504 210209900 817840267 526689092 884203674 269239370 563613157 342096952 409032939 358137509 514035403 323541061 748159117 362982755 596769487 181180829 339755876 14600611 266318230 7242546 606580970 67927362 403825628 256620372 347638174 46750451 580346952 398182929 478649393 53504792 648399771 409240644 475154022 60282201 371624369 103048448 629832261 409475992 956643628 702317658 867906059 612138830 813413279 247080337 894334238 652090301 901083043 405280004 882842080 727925102 945088629 494601126 699481029 546786564 556269402 353193401 452803695 191553843 732640630 155043260 573007373 265929370 355322512 109695022 568218276 227354222 846216858 627811027 844265592 682200348 761006773 163533231 809266637 798760523 889520170 389700154 524637928 277488481 802013111 583077668 640691380 79004144 995391934 634535203 891778753 815373780 970908722 213976855 231888051 121718577 659167533 194352523 545434077 413662175 685765918 65677022 601347336 340565484 440894779 113028022 338174079 290322588 386708392 364227936 784711656 4758219 852149057 458632336 881389247 426745472 747771585 733729879 784788408 290046500 430403811 297161369 298605104 180754738 224345187 165350235 512696604 95342157 139228975 86521889 631234959 171433162 486842463 472358804 611017284 303075901 369659971 73703574 558981988 469133870 854449282 809249987 831215747 376752826 909548383 580041741 839240434 804396452 921573669 585818201 708302499 71623932 775855004 564821442 785549943 500755837 577550984 40719945 542329456 315646802 609630905 23971520 592751612 123904550 435850690 106606804 794257861 275100170 756569093 632194684 696417179 226374327 636370316 149228741 654178239 62216255 572684273 20923542 354560894 235273210 998206096 683219530 977680176 478394073 828557078 660834345 933586149 2717970 413815801 85139892 711365943 584846987 601491589 249836081 357772340 210145433 862614766 833132642 902085244 1293290 273831054 45288929 415421829 105953775 528425644 37387123 598527100 330778225 874345697 53875671 191338612 7024886 889843622 34088339 878599893 161435731 752126346 499749245 954056603 605345953 684020388 118025143 203887472 172425553 575801455 386068801 715554322 696791438 804756171 73102102 775316232 174672284 547578574 446930110 828852006 745914697 782729117 514583199 611657576 161196164 849620432 535223537 992504440 255949514 425735974 271157661 330948389 56733634 289546484 45396378 893411832 649754443 918345222 66454721 592139307 251208493 689778498 290210774 359899213 113964751 860099596 797175402 811945280 802693340 822481768 778739431 905602647 374149717 654819625 192949531 677947275 200164392 928789818 453206170 910981847 633073388 847583711 632601873 698702539 544479333 914439524 344953691 944428718 827497648 972198011 698403565 894728027 140105136 616612739 55785960 377285041 217549220 343977531 90662464 864458922 746088501 832570549 314359138 653659466 449524831 801216294 117553646 779528982 631052420 999207287 458214300 989830824 378443265 811141351 622190373 807395477 791381756 807551645 650852167 704056421 539648997 758715859 109970226 633599791 15426593 610662737 399145454 649462515 244052288 822273986 647024166 973655339 657379255 839416132 241713683 527524462 98977403 640635207 352752677 479810523 291682851 632387698 428456590 847812773 106562069 402780983 288731179 837610122 634171467 924087633 818837017 980724640 691731156 787266132 768588349 791283778 512462372 570981277 485261969 829780641 194732672 201209419 131388503 879648378 729736982 903528672 325783333 815354570 501664438 787354816 83346114 379669685 264287799 939112154 572254506 882364988 434459907 782751136 99903040 337277637 334010112 724839288 704882289 768473855 362962318 737872459 490196269 747350020 413490418 659640277 309766839 460481653 16142269 249601867 208955902 261337859 245145218 866923232 706564187 725962095 112504306 644182411 561868240 964343929 594621089 721088250 685933350 817471322 64390585 110066288 78243342 402240341 367621049 945645887 725609865 792077384 484303258 633502925 541844603 961272202 241053869 487661709 62450859 318944617 171641271 761135968 546299495 595052860 259471558 689881381 31600709 457761465 248059594 462997297 250856203 650994657 207522719 714482885 44641813 456151225 31178998 414021621 120538541 305975564 43093480 888753388 619943118 842939122 451217693 509690412 52089802 846476032 39456030 905395024 330372861 631559489 340259489 739611930 318780350 804420530 307322577 769613022 613136626 726862870 390442039 685728400 176219551 201167271 174897026 513676660 396388734 757634942 570290662 797152184 207641589 456597650 303990007 511164416 270140353 743413672 412913002 931406387 162239899 532128965 115410800 380051806 162892533 668731541 667944685 674103313 368145563 384598710 126884396 490777882 126300742 886885320 183837063 539084309 389117432 762615264 470364206 711001018 498967578 807983896 442851502 652896472 524632231 817152780 372242994 390865141 86149805 104148626 76611775 259765232 103078054 225165644 97139903 850235227 200662220 360787059 254989994 519937653 330164138 646598418 563495659 850743464 395890897 736550012 528082904 936793115 185131509 891618204 229567372 555524300 481083870 507937813 472366149 587933755 532327577 910547192 176309817 308468594 92750395 352599205 42460102 370321845 47553677 511117520 2187702 880255094 754624693 797100756 413820816 857499149 552055923 866213626 226370587 521725604 46726999 404962636 112723808 329816960 56741725 214589764 129409166 763095251 759496266 831481363 569905023 678235515 332988184 598644603 206353779 813998519 332824398 726840835 185756245 665677179 25328683 540003024 337091702 837681679 199214236 232587979 198517077 865188107 1020166 272261990 72095220 123423055 56936624 312055547 182682164 726276807 33879271 940609928 832975346 845412251 286132984 671768277 240631189 898188036 238468079 733627030 484607311 836019391 477094218 689071879 29669583 209775125 117455133 863648022 471131771 581380635 29572893 214405833 23399290 280971012 59491534 516295762 415867924 892412488 721858357 933012553 364234863 472924755 31846436 673949404 198348963 626848723 82602025 523313521 505737829 748556050 661709199 961005180 66863711 136134687 20895940 892144086 9462148 668526553 156738719 436445411 156931311 200998308 124659388 779865619 519018781 520760131 145070823 388198409 78492397 108837326 56005535 641500823 262744009 480694319 301879284 539458489 85186775 869271934 565315203 962245760 171177040 371529356 242324824 417306863 117206004 792174532 115479962 160451383 86387576 91362077 58297371 743809407 667855884 714666265 46161478 575965856 250306849 493911791 187416278 677964775 661002785 698854542 3676768 477983592 347944869 629802238 583948711 802186313 235643907 483420247 474013270 639872539 325652050 665866013 343743011 482584051 308057498 594309366 196748902 817629131 290313011 542062634 268816788 577294997 538100187 729419619 426929128 940963164 455474017 523949477 219358483 991113873 706749359 873004415 193732342 316254419 225318779 938431518 78820406 926354292 593714976 777144489 188936563 569315125 208238043 678548630 629314937 728447064 180476547 773748386 475787954 635801877 281092202 788036178 664770891 841915504 55928553 450644154 311986266 764526188 629457020 781049336 485185410 977218342 56204420 560996674 386165422 678884444 94280003 901746656 809436162 884132676 600354619 810271781 68511270 365723958 310871983 714494809 652000354 683543851 646294734 848996894 386707632 918965418 94263777 178671454 54587780 546098452 246236316 511179444 279294895 462347611 388623002 657800655 606599924 819620128 653125431 761961792 415500261 659362093 328016691 511569304 217090884 575768045 84714437 193538104 29022994 743387415 559369390 892876324 683637101 738449094 557468996 683750499 549404074 720407330 149260331 344820206 49897089 848840340 567225186 858840533 370106934 597563793 192965076 434073834 406899340 595595697 592328119 868940192 279761407 747917288 473018004 700166684 309980268 700455009 355547790 429870756 216773520 353046396 271421621 751450783 740788316 825741040 730112543 876333150 210391617 612595593 349433838 382816816 281049979 583418524 273564074 565871851 429374437 508113990 442337839 501512277 189148610 994643241 820187910 936703113 658068386 903162085 695985893 789571268 464496208 677483195 128795936 480761593 439950235 778861434 557983746 813202894 7953180 299695507 147446847 419784727 190521765 410941416 230379239 863840139 96749036 450701613 225260062 706684612 164764656 548910180 422264080 906431426 736999664 814075537 707206151 844330013 623719683 652844451 228609867 587844564 25066139 99237810 77334836 448412958 107980128 197316816 177809973 379214622 341624998 890059513 616147428 663133100 605691451 811694798 71425105 663513856 434672081 952201301 309129403 904714943 751196213 820360450 222604045 653572382 236611123 616605036 538302304 884754942 684855039 828202325 708088209 885793648 433114868 838547315 127221904 964263993 685148032 915074526 707433282 761163525 597367888 662935039 319676860 827670190 414077552 442466158 61391379 635367562 219884028 614380559 3649608 456554165 89209124 486059402 38300528 854981171 362115768 644082075 516422742 555326273 229212344 973838356 483824087 732264078 72837990 87357201 66412135 929853569 293479331 321067151 181188350 826686754 598553071 746902640 311383629 919969401 386998888 609638321 186205817 195258976 152019506 444235910 80353647 585437153 50214446 147188791 28160674 610296855 295131615 943077222 184876783 316970195 83063640 673099004 654749790 833158541 730671356 821382546 799017644 989243089 490227335 733668144 254370138 390286348 49184069 726678698 228237429 338829974 334120598 833867386 497250819 741783401 370226480 559256855 236125504 418783257 353941951 394927338 173389481 907902235 246142032 896733259 14415406 182059064 150313931 769519917 171890563 536567416 227949164 793664995 597897056 779188104 504067979 933624368 758505772 849065649 821419059 912410563 519191162 990760091 767824982 885155464 477226057 839484970 43117461 159404438 151406313 228012513 45420247 975575575 321295304 886829543 707866255 982528584 921395458 954348322 88129921 656651060 586545690 948252187 406563783 829365475 813128404 840248227 11341990 836113067 446151957 824624854 562126070 573826881 488197662 560506247 67362450 238611775 61086506 641425600 245319783 838477111 289363785 319186016 94372453 658626163 618267727 923485668 73062956 263866962 102714270 220568002 77155565 655104823 321674265 981509494 371857184 717419141 84973400 770963589 409204822 890789457 278428812 650618697 25895629 620087279 349828902 815676245 220872372 839300030 668417475 672035212 561098186 928384157 101061639 837879082 401039963 452284475 160464333 916778888 227162091 412204365 79582553 832389265 820885754 884499761 876825374 961913082 394801402 846586140 224386455 578272839 174012605 631225986 530422208 616220258 557480785 796315306 361837930 365170046 331980733 944862490 436702769 984926996 257716162 686162467 450812274 831336423 122594790 484308303 329749734 991668121 984317704 984795145 175540623 977286395 898558625 948849989 140089624 819944452 421232527 895051969 398357122 926345488 634056664 693124889 179773317 726961719 400136833 829882167 90191927 620381822 172738080 816096516 452298909 583775799 558368097 656216541 559697331 973413174 432344207 923847761 221715902 232177747 102478881 933096218 346123497 468479826 131894593 609314555 91850904 348040805 227186603 767108933 203965910 694035710 579411119 657867600 271491906 808996278 78008981 563718079 443521547 478666799 437853060 455589196 155317110 636888852 11777907 802506148 534762163 904409829 495426413 703749680 1466149 83907405 69208365 755579626 248069516 494160214 68346080 74883101 23438473 87207459 73678946 332270697 150907603 777428080 77579443 701995675 144370010 972576720 193623308 644982965 586472948 790006164 533824882 754599444 196583532 441618162 437163972 634712737 348421004 396364021 160674671 510896939 400091729 849620528 594546404 626019606 40739541 670617208 316285644 820799206 86063572 436342600 105285255 488139000 406918390 564692771 546959935 743458141 293368770 514981789 117231486 185465985 166119014 552177118 406062819 753351186 77260663 275126165 100451801 331448248 60487114 161342118 46797776 192828867 143844498 287942483 165480772 393267289 205259058 536006860 385665754 721478275 484558888 746981235 412420624 722325059 196216378 735974585 269224725 871150502 224716008 530049008 187201710 445102458 217722038 424648981 268307830 563180733 414017798 770734314 640417184 709540190 132660351 508924611 91219577 240326557 224071948 867599904 404305549 628445171 113280875 278249590 1704277 345654722 265146090 458645100 129659708 682362582 647538036 721368680 26734792 705139348 557914895 811681626 138608286 168930942 107315169 650817333 455165639 890463919 402856279 652686932 514898272 921050414 530386845 884238652 89839754 894005541 395478659 637148497 12431638 583830279 302179123 992954466 389111881 675266649 166739446 732359977 349714255 707522633 255499246 690392511 223056271 528474791 342813782 359501300 351124730 719093028 552602503 755212501 45931058 880514703 674327008 944850328 159299208 997379599 681726447 804060925 798307682 980337163 87736236 698487149 320460810 816692416 630689140 924255746 415391370 919496340 825129491 966138939 95318533 783572399 460699719 809783683 695034152 925694800 103728335 759292444 386290295 547637935 52163493 440754155 277788530 966405599 180888653 777734935 151967570 799376542 87740288 882013981 349780175 753860872 335868029 899413385 430040762 446925689 77724354 479337230 186229945 722968698 578283446 596120432 185159314 462658922 412056914 833487712 593658646 951903662 815360000 927600962 434777190 487144872 72523571 895167045 688969727 799969382 546413869 933112636 654606974 707707961 208825946 920946708 897193649 916456217 103086925 773566656 88137038 399830293 216825086 803693062 291065666 636209089 343933089 561123171 534860478 854432497 846769506 904838774 100438226 293472765 122663443 511693095 208131480 998904842 36300929 179186916 47631629 357976100 96322103 880051997 92745375 886258317 381500152 985000670 205848800 317775078 141375731 431289752 246477296 556027016 325855397 859258977 621913369 822051875 132341580 177814929 71214783 101157367 29973436 288393129 240695981 386931831 157973303 286742318 29798766 628938585 314220230 456270740 441120306 551479632 7852596 964025436 27302721 701930344 539107582 841058013 370409411 783701964 514101716 822280831 196032744 947963033 660073148 675451189 299253080 470682060 419331128 520216372 285890395 395084587 364668337 371471977 50413531 53689827 28943917 600237369 271945328 794969514 359566934 842203129 39489922 241718877 117269019 971455932 187076058 764229751 478751439 965332923 446210369 864177460 28628100 344714482 248847248 499057999 412225011 791819664 368407910 579837456 348745196 790973718 352607215 942224617 176796438 274471080 73660638 287858345 88270718 605230191 552195255 787437641 275722191 815634971 713834853 862958245 191652388 644113211 363635453 437177453 139739908 828798860 344363339 601569537 411358351 684356216 177666218 648771475 373909693 973589831 143048419 713837043 7262210 349981753 28274737 688738558 507684763 766320495 158584509 824010096 648004008 918922192 126377173 720634329 13820038 989766296 149725261 621572373 286693433 426878137 4880785 748167870 66396477 72147017 42429295 173394551 86491881 209159354 208117578 698959501 698953969 902037933 874566742 905623406 327979647 537587091 424890788 642846182 2693126 249679977 19668052 601660230 389751832 618808437 67415974 110484462 62998633 661216112 595844174 745569270 64530266 700778910 472303048 663743639 638893319 914396196 500663745 997063011 644170501 916234706 222022507 320153816 111198542 475132925 304531443 485360695 467766682 927975975 516911842 636645672 318861764 746887861 587046216 933632490 555636795 780408007 140655569 878864584 732093647 870822052 345891728 551630269 214251993 672629650 177207801 739114426 731970808 758610510 681848905 919235878 449199570 474655494 87728720 340233811 61867542 295190234 111141714 234480302 94326732 922409096 615731294 926445346 122974590 513894914 422179260 455382865 335718284 793383756 537365998 574471080 312522161 657919317 371250483 539333421 296377531 886900157 773119573 845328835 628463830 817711827 485077237 786654784 69662430 641811746 105628076 843857748 445589146 688244873 369895144 980595089 118954412 608481876 264405083 704268505 110032804 318049888 128378135 251790785 206409183 341604128 33918197 65377533 47761585 502848434 227023160 982833871 800283477 931262667 792016969 817355174 409201686 918311904 797601039 984230510 304439837 964217419 191521745 335160991 52099899 104875838 12716069 546269272 406480070 716024697 465615585 727702821 137279943 491611564 83890 160432659 4167611 982880243 573378708 794024917 151942162 158638354 144686725 460480241 209770802 345196319 344427439 385339177 24475249 112243271 37544991 166571278 146452826 808396556 751735910 776373976 527258133 950428493 586714939 933493521 562774552 891906087 814437927 861237252 105270114 494423583 392295114 694507848 56838494 762683401 76248391 508817757 344396314 474597097 68163417 871609999 56632517 272161217 136038187 784822394 417591836 591349813 248706040 300761904 234823941 858149771 338874676 952559162 553432793 911106064 414782740 888270121 700450821 932888643 398040213 894700352 786525519 984614788 562121452 945108195 853601820 874846789 62704877 410881687 115109953 133952046 91598724 804903373 598034347 903913594 895727328 986780481 767108942 804468387 487567073 495901604 372957954 767116577 331747933 703672825 58462060 384470606 89627482 309487350 33695940 283863498 6190061 695659098 459543801 533812739 148267810 393641853 61437712 559803072 345772728 926524301 862869396 998778520 680767381 684759789 650216182 804739867 664210201 731922885 216297733 282823658 2297997 418036951 404826303 422967835 187141863 689337579 300448127 873307452 450099415 731682263 97940757 702176958 580781957 839816387 87725898 102411065 4308729 993196284 939968121 951926189 109353998 938956939 294369330 778756761 307793559 688536171 312824938 378036369 117786991 129010186 109863939 658705821 133331899 663814223 143701709 971613872 611337263 896212517 735420633 964133412 267824552 681422960 542900378 958434680 152995721 689444335 379680179 458982616 234865776 850107421 514127516 891452862 250394421 513509496 85628164 835701721 39442108 932375867 507259775 610632363 286818328 941301119 721795958 911846767 794759356 973118163 153593125 394688056 273739962 337415892 132692431 659318896 627312315 804235530 727839314 966259071 247990997 485676718 232458529 715396838 507842518 672477875 56637251 324661129 190556475 300535979 284246031 582089947 540529010 886437778 335092664 442904332 270642175 850289896 345422617 990396088 633347082 758696011 590650635 763604433 69968164 207681917 50916183 254409920 242028129 816009875 744201135 845841360 824750160 889249882 576720419 942781052 271948408 386180729 323249674 745135846 238578039 394830049 365814615 649255718 443871008 462519311 302580982 873660566 137997005 712566588 309488082 477741712 217624950 611464286 24972521 432591869 81429660 644360666 136801001 564302203 389769120 475645347 339604911 941160376 183770809 818976389 26755606 533938014 532041008 922532085 77359338 121734191 41217755 581320022 116492050 137023913 422580 832296135 30671545 76101049 54270288 578305589 483048555 616179572 245128591 328296143 299206378 821081581 379607573 407429277 232668612 881521978 125017899 244772877 2533464 521013157 490080827 995763977 302727165 637911334 219997012 387021104 186396700 806506644 72833557 331933842 75118318 461201908 320369763 595121978 17619991 845908109 367318862 879886750 413501936 787222732 447902922 618237211 479800675 509731802 407677600 862511095 156249496 447438700 175716523 642910385 131106947 621340097 570456243 743945072 270361722 627642611 130389897 864928079 622230977 988277549 90709506 347340820 161260316 161430879 121887235 553007483 36285793 877189639 761964514 970222806 750048259 874394912 647058087 855994542 322808686 590047089 313616856 766666941 585031847 915884372 669149410 669378879 139686842 338428598 130997503 985579258 332848577 808139582 1259708 327757509 123650226 506334789 190967459 285667503 207148928 834579749 98896356 304380031 104725084 281213191 62132694 244591572 218621537 657917902 399700602 980445931 720558352 957704888 936634232 978372737 94647485 105765101 13953490 636002779 630291861 898603081 522337623 808890245 398620183 547911054 436960823 690712018 108501246 777225397 437457461 597639954 517309853 690807899 48483284 96863100 6022609 58314338 32672336 51118677 39632622 121056638 1039443 522060836 333853687 621281816 167352543 457170255 271987371 493316366 158991767 696093078 166947375 669940089 9243824 219155768 121584566 653865325 647076749 679583642 15464191 168022288 106919598 517720360 496957432 928834524 260965802 968864196 437280419 487506329 417470077 821573086 128853146 420569445 219713568 226467052 111785349 421431526 108654983 126690763 97269739 310530652 38326993 444419888 329598796 740297707 100710758 263607175 92045688 235010300 98032545 411645444 17841753 385161640 283500644 720105058 196943 548862310 350409831 393393147 285023336 853186475 339062534 353052381 275334 55348791 6303523 581488970 132080668 717659163 290156036 554819284 235937978 814233921 86333173 916996344 305471301 692541296 200532090 458621954 293871439 906281098 26112331 212428441 87379385 984885243 459188758 599471696 581551079 699019118 73326536 839459524 533971267 912597666 434631011 726945837 209467218 783295015 79800880 203430416 107461679 493636510 273456189 284236598 280042434 848321751 435097820 530871248 385228962 589533315 287247498 288898189 54563214 880420292 654037842 709649436 395480797 458591078 246065193 306699039 299003659 635707249 139577843 439512689 23750254 223818615 78539775 304051790 179526119 215767664 78528184 559909703 217666723 944028025 932487355 990234680 609633015 725209839 534757703 848392483 640597528 704625879 453221561 646473537 154981409 663711121 536412209 917927460 594986701 870156982 766977294 880159593 40285685 133974110 105490030 302844338 226454636 373294383 150548409 166544958 30411836 715227635 270813012 598709777 349870202 400836777 39722043 72321646 2957335 334987806 292619613 886932048 678626339 943008286 773616660 888199083 185865495 636800385 215982482 892916721 384914189 515161056 465086965 728185824 259046851 660484791 415266916 801313632 27632494 963833880 166673036 726633618 118681133 557007795 22126389 801090689 317271639 692015442 665474277 825357361 383710683 788490221 167490580 377232995 344861426 822665339 243621898 322863808 105573735 469264008 238412791 662025200 160521211 870774399 386271408 781442485 91937256 547716097 104831842 314244792 252745256 989752535 831750842 866610678 447521323 868858326 43762933 46463607 15428065 38277982 14475695 144962748 5152038 263653425 263261853 930025058 354892078 876655886 674843041 847198590 664612573 908455257 384006946 890942348 670519436 897829852 504639615 526824642 471481072 870548461 268176299 990723760 695044665 760363154 497847001 915262137 659904796 700564718 544329629 744467610 524222268 977443297 3957852 452796213 361325112 535861344 136175856 249396037 199153170 282870077 2245620 145584607 101032163 965855866 760698186 976339822 149146691 237053182 101339191 308294722 142899602 603501310 296629032 397779453 316706902 507552216 454647611 716785738 259638133 347653998 149198486 509294769 505074032 971918347 712240428 963643062 641213037 679603387 56426352 644519747 475496088 725109251 485592522 979999750 804898562 837614103 604403047 891210795 212235968 877823512 562249415 634987822 96362176 778625239 662746942 752406486 43432985 763812035 34005755 294087090 216711061 384130705 283463254 833274693 821821967 963330278 906767928 953851705 521995406 997767673 13774603 81443605 21502172 758268809 320610716 372252320 334963278 940421430 428617674 474413972 194994407 697216622 84142144 621269316 504458565 548017096 72169284 750475929 379146748 911037293 302709807 558621564 113372417 845087143 731994101 833932695 200649098 215689004 66625988 244485030 36656251 101510225 18723124 83167384 19741343 410767172 408285785 702925511 155369941 632859219 418906638 628621464 430793564 742576006 301627106 411400963 318324530 467747590 196817448 321711196 88367035 673175707 135950534 882426819 805133254 975019554 273134393 791780860 122720172 355360986 92136118 785166790 467772101 514892638 238278113 475077645 247413849 816140669 22478451 890221874 330178772 539335532 207128310 871472903 863551912 911372480 755166379 861486287 383170824 995954200 597634408 914610036 2663238 348929176 212520381 602069504 487695021 574941322 211159473 428175157 9427471 762338381 177081429 653544435 441195995 887601617 23453376 777710374 235282318 889402819 322391365 654414185 271047871 949047724 568895927 686771865 323703849 672976290 590832350 627503016 573289998 841372670 622091188 725951447 333240754 516967142 490191778 777575101 56371253 238446555 235310575 328696340 196167800 525087980 470733203 985031093 592961557 858029647 784652186 827644722 441285492 885194380 56166513 264336487 121771292 346645865 141574453 363778688 188283365 490371546 280643161 895393673 280428564 964230658 546930937 741552635 25782004 829199397 537557617 719273727 128198458 711743832 74990713 770274789 624716995 628092829 63932297 296780791 281518679 600936963 184689855 973622813 45666066 389218385 237478005 720595252 233546782 943898523 228576975 233004609 225119139 777487631 357522554 939445458 743504482 862706910 577704876 899233991 148708677 660977726 182801102 317233785 182735592 607711267 9512662 348021297 228432346 934714196 906720375 952673473 161377517 601439993 187988827 630836138 46145165 508803835 363857018 660652000 281711697 682492991 19372919 305048797 290412880 342206895 7758126 757652196 741867099 935158785 434234113 607332071 41312446 993298495 858153379 972299596 185577820 400787361 357986174 499855168 383230831 640754158 203679967 463708178 190869211 505647630 84235090 891003886 526276590 733841520 302082357 601701344 328240823 512851685 294635028 993427385 585255694 717121918 543065062 729983376 412215271 851502407 169743713 299956797 252912110 644751384 387179230 586452057 36111608 172343068 81511243 780699244 187670087 427006119 222014553 444630019 390269772 857468780 349636592 563715697 474304228 523505821 86576011 277987758 41747339 61062995 37154154 867116897 482026614 740082006 418120359 836233968 680428323 931172226 217088921 925939464 448067722 837573578 791036104 859503092 30564288 322168582 236089698 805060848 57689403 506415977 11450526 601561754 276491548 371485924 334495291 991664816 681807203 737617436 375786444 918743356 80976459 303000574 263334818 466389183 47686541 241523670 16755949 610661212 175511962 889405678 13960743 892374014 188273298 504196676 452535115 467156993 409403189 935819088 860130953 979509645 328881193 796623032 584763026 650051311 194380994 980578148 738063096 875153183 793965823 886445584 495577018 551313836 242611163 622784135 227693441 837302242 246091062 364235401 254271988 992883456 776007965 782144328 648900431 696785551 601559243 846666262 278386810 709279506 601343411 693925368 637224458 836098586 512656342 747034220 377827647 559565123 195489983 725454193 545777316 640650468 359250828 705661504 467285707 511292217 98330429 915387369 357292573 654356563 528824086 951473778 398573910 529595099 289938645 546765267 269900054 791248094 104743319 744109616 360251478 742884689 153762113 194029645 28519991 466537915 43835653 413372579 276505500 612109967 8187020 868862950 216837345 895447594 413642419 626279318 23875156 120337894 91155907 236653099 48458172 441728933 42688837 405946221 161735828 776015153 539400225 627274966 26916540 387619235 18936062 457796508 141471234 851812682 456018733 609840213 315894932 486316970 133143281 213215763 177877309 687947497 631896413 724038819 269623026 536261836 447620740 988579394 625537428 778236669 326873518 493212594 144539563 812074191 289216384 747335955 709518854 761880390 71101008 230055007 174681526 195056518 17707337 947285900 890605232 974289835 757095946 804394368 12544835 291970518 198483636 937185517 774212749 951139720 880750066 974420678 561935953 622855741 310084838 994862183 929534769 972260713 71465633 656400682 269538489 861287897 780619899 905193523 352721662 854900993 305931470 328991793 91774213 217402744 183223664 579597298 326513208 757091295 84525463 369088535 308323920 566333893 217832278 445579860 323132531 724545097 571108261 794006445 129310638 589644593 269389648 293541171 160742247 659112427 300290031 749959244 35075363 92067707 7928931 746087014 289358442 969557310 253884272 700935911 654141859 722678112 576399900 758451613 674100774 873358682 232278582 762400399 571338329 675395388 299983012 533695049 376640901 912093177 514217835 788581250 772053707 886712761 7051830 760662679 482181871 594791607 233081521 915782069 549264652 920517774 265564582 491214210 381159999 820666916 224772005 341667949 184839829 319817084 85246355 955864961 700332985 824941874 668391147 715313880 457101120 939756664 537686128 606986949 155440076 634774680 41636718 774724352 294024176 729316540 124359866 697125155 413483895 965116454 222883596 444030186 277743137 580394580 409243614 426904858 267962025 679751889 314458594 855801617 92148038 958895200 1891900 301876978 227666499 983242608 241114283 729264277 514140881 697764133 584318930 760549457 355667525 447159663 135766786 436923480 184703982 634200618 456781159 893543362 332301966 506574023 350622864 575333238 538278053 620286029 94007224 172166585 165490505 235748822 187121016 389149814 200882187 368361931 265534040 898953467 393961241 744121713 696132251 861918553 245923326 307077339 126000487 410187088 392341174 441740609 435290855 878358876 90696804 974240851 412078138 464846473 311806877 342157046 261122854 292433340 243279998 548310542 435778839 565070768 348601132 890383408 197035907 583772643 370336328 690290457 298390026 980202367 291999761 958550537 916801357 986225419 383168534 736187924 4937737 361685430 103164739 229220116 184730873 776675501 525680822 974230165 142144143 553317430 116850412 959309727 536165028 598382876 441740766 629115760 206342775 910821554 507068972 970893951 700747869 783275346 104359904 407399044 53802188 174254176 147181492 197923181 126124135 542618343 276746496 470449990 17521881 85268831 47995804 908826678 621083619 625195340 386919035 754963026 752514407 999658654 134708485 200452262 167118588 968046169 272344756 810582577 599453827 786058789 40461935 962322143 199698017 483142712 59270469 112477563 21049049 758317633 279953353 587430925 501586298 858886684 4803198 295982327 4348044 348710582 76504463 516560682 1347502 527444023 380703149 921818769 857001540 964697381 312332980 763228014 302498681 679246530 358417182 467656006 250456421 446487045 300336068 586430234 242220689 762025788 342809455 983822118 328386338 887355582 834525282 930304966 241406070 808722466 227912141 693860614 386483529 945597266 885260529 910525640 30916897 906278967 580828370 602895888 517622488 948256126 189012885 465597889 10657274 561596004 328581585 922494762 830109436 837812693 184370980 370962240 29163172 738979988 259777754 625931806 111650281 277735836 86059022 714404190 503056253 884192766 450778557 779896898 390906837 769581261 598922607 602744857 218559928 369799260 35606791 891318255 546212300 635482021 222913838 728020366 69535852 326970996 266035008 677659399 160994625 612684266 339116763 676977526 208399193 593540121 114389922 812164253 104640293 345118069 251997426 973716561 625940853 843738427 590096245 976266880 221242234 354194804 124554359 399600576 109710023 747973653 285444341 851849750 295556939 547922988 252560219 807088538 187463516 791975927 259819990 747727445 512984507 647381779 252144548 662149762 792227099 128443056 389288339 246205696 760163273 374175706 584067509 195947239 532062143 341883163 458371303 244004639 778868181 443343151 949613071 264433613 429996696 494444 937736325 811510698 947671997 608446805 836952465 719893237 911394350 208489650 267666797 142013729 525167382 435672716 767954680 297177032 833314744 11913317 492031391 369962747 621950013 566764080 897507378 473101730 950648888 133539509 878731785 814443378 910985571 53145327 916402769 358819091 678101782 670002296 991721040 461979767 975589182 128097355 498634665 82124076 432382147 27585128 323980415 77431517 83282760 10783534 176373973 162420553 516684338 110008342 110075750 65857542 425999965 333015873 799748821 144934194 696695648 102839929 292246057 219141340 501645539 47047836 689441995 667903073 785755692 258598000 856487739 810718782 923681347 400754611 506979796 47462330 799648268 429486749 434066426 430591411 576188741 310969717 500509909 416824002 486654029 238961967 635169870 274439216 417318234 268702959 327766229 151325634 693177916 75232673 757054466 221418015 264149476 79159505 698469482 128464555 568741371 257144180 270522689 147334070 484708053 134443666 465226577 436027039 462519061 23295950 617629088 84936603 916734929 895045687 988972349 87989799 624804393 523285987 624215282 131236628 634652809 531568253 996009072 801886531 837811172 106929132 915475416 9128508 408097270 187167650 562539024 413109377 702017692 126619318 319583108 53627402 572624966 19914310 350267391 308472913 846983676 502372502 752738483 210514863 320474919 312586828 637949728 119099175 383268075 317255777 502450293 129343714 643969265 473363604 741006290 326361430 671325625 659982385 960766904 841178413 893172305 432655963 591999540 210575090 555255480 110463046 602817332 310732496 347116212 284951612 592470344 90912246 328275840 294487645 495808214 411114022 631537664 304361972 633237478 241510238 501930158 152255768 619191099 290824754 387059709 86750571 94363658 62534936 93793426 90242187 381471677 177997318 555549894 116021504 974577610 906329931 982117302 30673387 439907425 245880605 630924432 514661749 845590529 654067101 927821011 222763497 469849261 156803588 761782469 13615642 442256654 313200721 388267415 359924370 508447988 211369607 677491946 21641047 970394210 825736325 981397576 876697433 883847660 483085882 536239094 361157239 553795571 197248808 473786258 284304460 458680121 260335714 909276519 5733359 976299023 229809854 548997168 499887421 623876399 302145928 677903522 649474367 917434996 45677423 123442484 107841983 143059053 68807777 226615813 188796872 798718616 708322796 930071887 62967128 674997036 514537343 664908812 252303459 666050350 373145017 722213968 257942997 988677814 132922530 366618931 238645609 488348470 130970149 936122905 463191944 774558682 104836020 972949904 404083310 545529267 268080160 710002147 75300093 599263292 374130475 841869138 391031565 556627691 323755578 548551317 28106074 418952515 78159487 388641295 59533312 675656139 212249956 472229131 41393870 52683813 16497195 381018911 59579116 400001554 32571291 401426036 290833371 911847636 629278179 668155334 53351849 198722845 186371716 840431815 698396341 907043600 574229741 582168068 12789518 62011324 5557667 123435855 96136719 710519277 500532871 689782713 391875499 963063881 801186576 844158961 59335986 94429452 38037288 141712808 118117525 820337909 481229048 660343824 402313527 963548249 216478830 329519636 186951821 775799495 82883923 99476154 87876540 664215588 260755403 587715586 576598551 624766437 129176499 630127468 257929598 844261256 373617215 678235533 477765260 823266748 743391805 837739506 483416416 519134727 67082771 700001051 298436629 843324793 341416270 781967395 389486900 987739521 28933661 852329214 384916879 662247607 579817959 684613469 176991247 554589732 1758617 600181684 445578870 871766974 119631330 494994600 234606593 486761961 472413209 618733715 489883431 733396729 682894893 858934134 627231192 893904569 536275947 780388693 153180019 682058100 360725277 897048165 583467167 599673147 517650749 700517473 36790020 136314851 1053736 242083803 139552814 450599269 93013203 488950495 329838944 334875196 209768165 782891029 395350453 842024650 15846249 319301153 93875247 175169673 41972432 71565685 58394895 879054468 589752890 675522481 48932866 444667550 144661981 237119963 38201272 80740128 13746549 858722923 294498539 315494611 202746324 382881408 198083544 326150912 172907009 261163957 193032976 677983343 481787298 558535556 473118293 947524144 417461594 761683843 669148632 705266765 383310853 915499673 643126972 644119685 422761277 921476564 267697573 933695217 113899266 187053748 112890489 499751775 45942037 994395380 651139691 998989004 658735964 693012485 366336312 962067180 612588206 942841438 762855218 854786021 265913707 401921912 336910618 997143155 996220293 999103748 36243581 566620291 566574058 892980916 400134823 471990747 113797151 964828411 789272156 833379028 296765226 681012264 539135081 778175372 197199102 292528591 103630511 140168493 109521742 145854106 15351370 60173525 528397931 326379848 466012822 824826688 628593923 837479762 45119000 891327088 805064594 886635752 541941781 927534436 222248167 693898568 581876839 764049914 259650726 333766154 133575727 905242075 417078456 666304620 514920119 617598618 448834603 749285670 66065412 212125408 195203564 806726205 238346972 936527287 260542953 336987536 208398682 227289794 28771910 487468432 275554363 306201862 68784426 925396754 487310824 854378149 352254398 885165275 781700445 863683035 54587519 814275571 596526104 933018198 275822609 884535117 41326099 921779227 630665873 747972854 149026746 314235217 64610085 295964355 78607776 81238852 39380370 245183010 78475151 904194030 28859835 232527818 493042 76652264 68367772 380745918 6634496 363580993 227257195 877482981 706583684 820811506 726977773 846779997 602165677 725115558 389089909 779137263 723533187 749169426 90775765 684059970 485073164 963566884 353316568 830698188 804795359 981456903 195260120 367534685 213927355 487283529 464799335 980971788 501141223 628421374 557037341 633575555 335668207 955383683 600024494 855625457 444997307 602250444 164660386 670894881 361500438 479295663 339768596 832238222 49045167 859769851 482037273 597523971 304278867 433979721 244881157 916708470 251393876 281439422 73934994 520225199 53629707 215489117 121537406 772345951 565185924 611145838 599386451 700716280 525923170 716223281 261949721 825118839 148209807 521301411 496803689 742320349 408730084 432344627 157558089 657894695 78101593 418415528 383732237 636171426 356625882 406858525 254652426 679974910 268295571 333141515 254504727 382249170 67155418 376897445 202506236 621293585 434250061 558562236 24498367 825963088 566406908 839306452 7706238 621117844 458558494 660811534 47264389 462790536 353064186 553901873 499587437 527012638 251173979 500090829 120111101 740430279 75558073 698609434 497745238 974821123 529918965 590843676 385443492 641920653 561078851 610760975 391922955 629714914 608727290 997499918 713938945 816216849 299320827 375090999 277032817 359934287 299644982 683003011 363251401 556499430 107821927 325714826 100180907 126307051 53531870 880775140 227891523 729522020 480218637 971839031 514157850 813551207 481821628 942258728 713493428 882629944 808017633 813019019 543600104 643557274 97079070 839196755 591635970 779342468 357849562 435944374 15654011 258249749 209451691 932182906 102819431 951040573 541066508 761404627 707759889 966497547 953505786 983130021 841576516 929264080 8736005 653062063 11604478 646286004 207761121 477350748 182771675 577952817 244525725 438304304 403801088 723032296 154620669 813013574 474160333 650145273 614201854 979353777 358038433 547246236 492759163 962152744 370027926 598247342 206211229 332572609 90848592 780707897 660639733 666341772 627711873 951681629 295953582 526799635 17568814 696290796 425125525 572864660 479193681 668986883 665648804 780987433 175498686 992943820 289791882 916405812 7034348 797963985 609239983 687899942 341677928 426771761 420282310 435200846 17903488 125269683 91180121 721071247 566190510 992239363 376090853 856146683 680099271 785003137 166426212 727251587 136347318 375950431 43307529 743793517 426823482 865932812 476949143 842689533 494751880 624700786 155022551 944759777 319070328 895164273 654732667 962735401 869709546 881344191 713789336 951206499 450678999 612656885 486068186 928253433 694721192 881064689 131738476 926313779 822919857 948787725 671511408 753922776 379203008 732195528 24716282 736681726 641744851 962382988 789155412 953124720 313603581 806008825 662924615 989417554 283637579 678983349 99737565 886526892 391392786 936710653 365985088 989323192 989219925 991270112 722883204 723307640 549448752 589058976 75034461 143530993 428636774 23611403 311693391 267937234 270821202 256231531 259984565 743240169 605937301
