51971 320 5 410992775 976987992 714550114 271251053 791334063 653233330 429832607 611201142 748995844 972762285 173751400 123119455 140772454 999765454 327633050 71502005 913215984 449923138 171321832 220519924 177044224 862425358 242170789 771118545 532070269 684246852 896439857 844121221 212104319 626519308 395301672 655809057 503424581 720602749 975172503 775447101 95933182 946116565 596898449 618040198 849297048 927851304 748736006 477790238 787953178 802097029 70906092 727486255 883083292 264490528 23965317 589421115 376689539 142264256 881974732 124322613 975630596 73304906 578993162 759569919 239132867 790720014 516475065 536837762 619399193 742331781 701866963 724084870 586841085 477591953 773020392 777977097 681308473 933775778 967088041 286218851 584843939 51401821 713592219 19560321 683669645 717606903 909893331 764563771 786272830 670969714 142881386 312859984 842037165 438326143 652082269 43320855 395418105 159309489 965784443 377074529 114504449 169898012 566257250 886206212 763270033 120896176 598275127 757615000 423145353 436527965 5151638 94311130 689007609 856454683 719277020 646974859 792031524 851154793 939602277 545721488 60179537 352549240 918237909 748239458 346337965 238921784 557288866 103418020 849724922 320990807 635019705 665485944 549877374 832394520 390424267 625944663 330852726 795306832 295665521 434392672 246032713 317462990 485426622 176221706 582792842 924003385 917031275 810767398 574199804 925847593 518836413 277307274 201987058 763560540 677155181 78264247 59257885 570644595 929249540 876506015 805445102 368669710 352864320 340306047 918522301 208150984 241368033 7292084 471991089 248075307 650930739 226474837 24899339 543245169 346600697 315925238 431101574 147547519 666741043 417917725 818833505 696228961 132450508 27690996 948573713 916885274 995992326 27974873 731822428 67468500 794874001 470958953 816400260 655397118 554760528 289089339 116852042 805317825 657798376 39437530 956622451 610154924 586337165 608483590 991357322 464782842 902749939 636537999 491060567 549975090 941406523 24355237 643324720 111121498 312352192 343426758 48564080 838197127 726813546 294690255 53473569 555200399 303728503 480638432 833425484 263696147 205465228 584082255 846588076 104454350 100437533 242705768 838441614 623501178 790050244 141313165 39977411 869408967 958120761 491299718 614134687 273439576 387911957 684532788 270321518 293747387 315004181 76112687 170474414 781484286 781001913 459666373 498172400 62509604 247300475 384167995 439638284 941163244 187559165 734771722 96567904 614999319 703286832 822952230 238827273 204983929 201345332 110385453 656861144 128161215 962745764 926163907 589420920 725136773 931935579 934452843 985724507 589309161 793730835 492782210 335847259 970188909 187107626 911117021 945597156 951930379 67898338 272439387 326728022 719500053 352488756 597906062 310607355 287185969 135844903 488079717 605190158 7180409 213928209 105620606 167070626 848586321 663351929 407023860 525645428 813368949 636913895 496956390 251057515 785166755 168618388 526339850 720339271 964309577 141143254 334136640 473923085 861713487 131673672 661862455 758768223 714536014 52588753 426914810 874241628 298179249 677640235 688427096 694719369 599581275 724975819 68216897 906802469 524412181 931286708 749922385 662195982 273442193 770696448 574137406 114480539 934339610 723164745 319620943 181735680 665833825 110546198 651209189 916420679 684246524 994992923 741333303 843678708 127120046 940299219 365660050 398635411 291903208 517768283 324761260 33418597 914592104 819812962 409611004 318870388 75961554 171464461 733544236 572161357 798543694 704449307 635011907 429778852 328785141 546930558 912020116 233201886 342960344 968848429 329045590 582372564 290443222 665622030 205853096 715803710 396400475 534912787 124095608 722037502 192378116 478674731 8536054 425930304 80998071 172240587 57081231 494961050 479461704 542185902 190775690 270008129 745027950 359530319 127327806 818187912 362671384 764279872 849198007 789865732 95118194 719182333 955313857 375498623 664069372 558009635 296397393 98476208 797010294 644181373 337556601 360597505 826125278 782806287 983141934 378058794 503843871 495031297 645610758 833928499 834530691 845137932 757543160 494592634 255625846 79693168 32224978 885921832 316339212 647930562 417843583 337915537 904254151 910254441 695500055 913185249 908154493 196336767 280086795 62820915 734000028 467651212 192176726 498183426 300788439 224396388 295118220 88601803 511918674 289359661 767699372 936115566 16663669 768276283 467598957 614241690 132498740 565652716 844333967 192384115 495284063 792053797 784877568 200996149 950059404 544235399 95202523 495687855 388236057 188408393 362916531 175528380 961550578 785325962 422937691 514384597 934279678 614862929 959981215 924078924 295887696 413126863 771814606 450803412 249360443 497038081 412552695 699714488 99607837 421022772 59742101 47063465 558242991 599052697 166868697 272213125 832359356 388066570 914058093 387596546 996494494 761317467 520862866 654738669 488363259 208002306 541564546 794275733 237164369 336667961 693728222 999229466 572220566 573176402 974626483 357637869 284407210 920927755 5378382 611082508 358926959 988856158 167970677 980833642 472804674 889804624 739086233 917024564 750572968 697461470 380651685 217834153 690916132 394758211 987678356 191747722 654310924 21165639 872249725 936049367 419456053 691203152 86408967 233737767 458412137 72522436 149342487 720663649 166591917 363734390 405670273 869756289 642730949 609288043 182233741 700381396 348104926 943719618 925340149 715762992 895540058 666306211 95997352 650986161 881209096 285536122 877800292 267511004 240953063 415976840 318072096 203896454 452125622 488473912 86500689 93002779 61674960 420920083 751261885 425397727 597194083 55152896 148627559 244035769 459553852 753365500 688176599 819928195 549804816 899279261 120863051 131737365 773300619 763192763 307283914 333838676 871025938 276168449 362315199 281294881 890358293 807320919 971807081 788342370 943535247 841636534 5479201 358203516 96772927 27523876 419796623 406124461 827761767 660113841 696147949 436170680 653466563 52997331 263822585 813735405 694482664 733188315 414393596 520929396 49764352 157623717 58863001 625454885 600163570 138614011 100197064 363612444 194249675 957652118 469059396 908575254 145972738 965591707 970836266 810567297 762903053 370263732 10845849 669883349 393572557 837319546 782248852 873347435 684384041 294561862 146892256 379598700 247865908 841093938 905868450 507302580 355454801 7138788 659596729 952958984 979934484 563773377 295870116 840160991 163761355 268273735 428030549 867580135 665749652 173756841 85635727 440332900 538689583 6439866 981953444 701216670 639476943 538995444 44439835 168631246 183437834 61934937 216430218 300426272 435426832 681174176 27640213 466202346 817811636 387959396 571206238 575255236 372280514 976719651 380451527 82273566 682905751 147264355 30196895 149628185 674414249 692534182 106449866 701068475 731333649 157270600 835045138 196158461 104401894 294765407 696649844 49684486 528131055 867522224 560265573 815466805 288983403 438704355 868077061 968634654 282018739 668146300 293902722 878731045 722148031 293304869 865732291 445196977 824009428 148209492 696377846 312949467 363730934 77243842 405069296 804651625 287481847 501880512 696420432 714183490 729160460 17456280 122116613 320971372 972649388 899086888 852137972 681364984 166431267 556778675 823708097 535082226 614263308 934342915 57985055 489463919 283365568 486894030 184329230 513685603 844072518 29334479 867736398 519817483 441013710 148262245 530421584 227598841 224259260 45376605 37333882 986864036 484984419 584963696 126477721 29989583 985138200 871956266 785401468 647446937 851368633 462052569 782823913 438513394 465823185 607612489 713391851 27729693 960335902 18801271 349528 166664593 787262008 617879902 996356548 461893554 409032816 499339577 35345930 557552682 288370103 789457821 377970660 92399608 508913237 69140599 919287114 694311871 755293490 718175678 291853889 366573507 234060616 905328973 702489631 57269561 710375145 975292991 91115449 596364455 925024542 63850447 180576634 704060155 568528241 239201229 582195107 835212023 320173405 547343716 954513349 377654547 965624784 1414572 396757601 980639366 473095831 936487087 264792965 963536920 680895615 250834131 35408037 113757774 398893648 81393027 771386072 391591661 687274615 810683879 754790782 600431805 111390713 689474890 102239967 875609821 273698918 303588591 198819827 602558629 473174464 364864294 592631249 784116718 274061352 888390643 775630436 370717563 260804686 538907190 316977284 644519857 3363851 345163392 966296549 109099684 380123523 852545565 824858866 296160274 28952486 986989230 451338486 105539557 130119549 972214258 224527719 79838155 861720941 227937408 931721611 193527570 852737958 783145309 534476976 488942480 649130517 879377799 334113401 343765496 873573195 764964112 40129649 484648990 489476942 797453410 513978412 403168255 265307766 539446839 512495408 345307089 551427359 979049029 178561115 864206122 325533714 791469491 977217652 795035609 69218338 35457389 200108228 742069525 45657072 113417314 355901182 396550571 736581243 171955065 816361503 273989821 922590101 927752895 945860444 109648000 299439453 912556100 767643535 280897405 221488577 940828871 951279724 37778097 323998593 784389246 95954233 344652770 133645257 816899785 106782992 341174858 69570697 743448489 665324778 138369863 947769471 757343075 66723619 507552708 926800984 848535982 817760062 199902108 214735203 223649906 435240687 279415201 195971579 296279983 229292488 603975091 656236420 931654166 947241478 152725747 756390616 828633258 114820134 506040233 226555351 74920046 638522890 511389064 39582503 658883319 442223816 678169295 149169506 515046902 193917428 983528680 596649857 493652743 543985095 907546361 290555473 101742552 357035426 493987195 94569476 326794768 752247297 269936200 260876021 95429070 752844493 856154745 578353996 371090260 645916093 294923626 610682543 169366730 948920624 228823483 753444708 160054696 907114774 80573857 796727279 300499402 260853523 540990705 319655748 650122136 22033544 48815193 85901387 383476625 210534416 141636469 478545731 627032549 412431220 810215411 661518383 221531497 390334605 316982900 104570261 16829719 936351743 387789278 350755476 79089341 599968 872222961 919144751 130296338 99124714 763070945 167229466 302669064 729318705 570018495 782375852 806674820 521980646 547840377 850937178 278192550 445612577 344896036 346546316 239374369 788249378 329691329 829875025 98116559 92641521 40751399 298308345 842943793 675904836 632370553 194080146 918384259 896308336 798187789 113895800 970302838 126624944 194769169 415349850 784075893 932602537 669512925 995389144 72427145 696117887 96338864 794414376 730295322 75024876 262999176 488859902 970752093 173379480 854049580 415179729 70833034 413464067 300124961 434328273 826392438 159849785 33733926 763482955 756392056 329700059 65730502 310585964 729319545 363590381 818665317 335083762 946391614 655830967 529458561 48000827 650431277 49952162 324437017 945637454 824347904 113402653 616489303 288397836 143958395 851571481 181643764 98448342 841126907 183511565 969566332 600798124 654248447 127558781 731331970 331614154 858884781 73782438 102510260 454748015 806078344 986192933 676218981 238397276 702243388 115782642 778290258 997570669 878263761 376192868 249128449 849050558 566894317 571290770 856892622 363279222 815637300 549208346 54006622 795425227 602343977 725444735 537510434 686147446 120673517 621883941 921913369 441009245 998936457 275508972 397531674 576809987 948992552 274254444 901218559 2363609 918026435 450647211 170673880 665236635 989633434 487328874 180507723 200306824 707823216 644924250 804759915 25619871 649851817 387021818 41716622 131451941 538205985 558130798 312630558 919146521 395718002 19261328 888378878 648045679 292578524 817382442 764245121 606594582 555396459 357344710 50057728 903676095 949720987 457601681 759420778 892698633 743755445 980796740 836022859 30628685 841120130 716041245 312893570 665476022 994266450 616938091 46473034 469931665 178002347 986689379 582609273 58325609 730128102 431171082 688196101 160638207 372640434 180592351 395885087 748658564 845542993 736201619 226933706 241779499 102606830 285434145 588421972 335086807 904423014 312044568 451103878 65354228 270478472 593574601 972951056 528372119 234550464 433777780 465534900 996197140 102828612 887456377 621935805 599595676 917327984 174163880 833351064 903702790 810479710 903924185 205790710 894724453 678845140 429947618 909012109 142649205 251804147 540770925 277077839 396723476 227144475 759795894 34381946 449383738 425593094 689234263 441685876 959227323 88527403 665417949 712454664 695856015 78957043 619578963 822842820 550072088 852228419 343039831 973196716 892502752 328811533 840398099 830345185 380284301 894104782 385846167 962841065 932615496 761278207 214083908 105367429 287574574 193031218 409566139 223014548 711281120 118636440 61864295 22381922 3951292 214011708 978602822 427852666 390341772 940376659 827773716 832364 576436598 97297899 483498568 339010767 184868859 176364158 739961765 419205292 490326386 856006839 434715612 9523928 29623277 184110833 802709668 762836495 646259848 510019989 726558933 824387864 719374 974026498 915493395 485666648 936730329 89198604 802406204 618539512 390510510 306931987 52756970 795724500 527361751 725750246 929407207 845030328 74024113 600713515 192763819 84177877 805234446 547354041 36695413 919148047 700832512 439219378 775389396 419908181 418317207 473847535 741697068 519640430 455508959 570966323 280523319 681593561 406352588 978399775 93364360 319657924 310499694 39629065 833474674 558599091 556600339 663055286 18570179 612733860 374097407 560173150 749148453 918620394 211951428 104692830 951235066 918163634 366554788 787953558 343702156 635123610 430867872 597078860 845963787 258485985 647769685 865876756 418412398 729134889 540787587 986201324 201673862 644098830 261121385 258182030 610355276 674818842 654296962 955847593 398713158 777653742 57536813 377905962 111834736 57571482 909700205 195498425 887891980 120696370 115760451 890537177 53895457 387464774 979595302 553820903 725183081 383003308 465127541 590539908 396696261 182960776 378752784 943116563 761180145 809813047 656424359 79140020 362064075 189911521 867816774 759162496 525552118 454835171 232270219 18838490 760890488 735881082 228593857 562940084 894142986 750037879 392958581 762921864 246888379 320444393 497642564 45219926 524599702 244526072 691868160 194844494 289076935 214699373 246259029 519729509 100742136 175666971 979865723 662214900 251894743 25515156 369375576 604409669 927080470 76626094 595859140 843805636 36580202 585890747 604585062 710098026 207907413 429177868 285467846 613744873 416340439 312535407 920480076 99531251 629115124 935073661 58221671 795344874 350056527 288064174 433245900 243872916 643302585 538810215 401527438 869234089 766996453 889198690 681950762 432298138 255876647 204666703 689770401 559724143 600204605 238654402 773701808 138390269 529340079 716790689 952171852 590841421 237865309 597964790 349381111 33652240 43783973 957351092 841242560 149236694 818068624 483958531 318070986 522817329 411082049 739365087 662257984 986248402 949764030 240198361 132785359 200391305 686555506 193345747 332510191 402046894 390409232 652388479 337947529 536836847 281859139 532757061 814852656 165914758 687830267 143395850 875126467 27457939 379478353 215631603 235512422 616909021 927860165 151097494 270756589 958222891 712023700 913612358 855132203 783846596 29653552 499623039 13237916 651515721 24899318 759855969 892066929 537436934 191424081 116137868 360725902 835784796 928074878 2547381 989566200 741514717 362512602 83687739 236890597 94682382 691787359 572553795 465444386 337192021 443251659 633316906 296527796 981409472 215501358 51997006 890516104 166705319 693953807 766941189 972132314 228404211 591086012 990832009 507275958 127691236 348922915 449600117 878600690 410414606 381637945 422583971 479473870 822175985 63602115 488281171 242335678 152347861 449709643 191223982 14282037 744387870 390348161 387255611 49311031 940544744 684817082 785375303 17539051 253356252 519588675 357281921 37416190 351971190 50362004 360574034 322107548 86978721 7101873 624620515 877059412 182101989 509894428 891383017 269276219 971692229 507690292 74300379 437825414 169286527 856979129 265341654 554474316 163218564 59886249 760165482 855279306 839237137 448091552 843335359 668618251 142848539 689803906 686392412 290439871 276607695 987581950 773277274 128053673 841929620 122393582 37929121 230922462 1266916 507850414 711443209 706710849 146385982 821237115 149169047 762696197 135498394 970359237 191819337 277256908 437600148 760235549 550142706 53431667 915865956 653436431 606658109 216634735 79984901 671999343 436766421 801390138 91770371 777348179 996165163 788129651 755747046 603627404 840462396 338751529 218588750 461647636 396226078 286722964 805687892 203202340 662879223 445807935 727671933 90617164 476831108 772208107 339799534 99118515 162566365 710581702 725676531 18619885 334557920 930539266 430316214 685917983 768020872 247284946 264047705 236922527 860539716 664031472 647867311 998177717 48278358 823199614 998142411 16754501 529788366 823661942 341362931 888023234 941009066 472774750 749142716 357719399 483077310 376681587 130991157 294282046 499062203 683253318 382755341 27055061 283881542 785397290 647613504 908569112 708277728 578295431 722058353 935072713 919744755 661761935 278972878 853769497 397393928 781780698 944804512 848849126 847444975 453925930 760042979 943392416 384129449 826197893 22532849 968325088 522906203 43061610 907490316 171382389 738982274 973369064 721825091 53007182 746138420 746774060 190700423 148970909 553535576 526805039 940315574 925654063 643674075 850939566 300552593 454865305 685460528 445271594 894379669 291454518 149498262 418636472 88088711 404550391 551455470 918004944 332650506 237592664 488438414 978433717 743369841 297916505 397730813 17435578 387831361 756631171 83900295 442291382 271243227 188952730 349367401 772987570 140541374 582197660 485588424 742312175 129670341 100307517 534447268 214615782 602368099 189958698 210254628 816695866 891429090 824926105 573199098 840695931 277371339 750716509 385054767 88103816 399019968 770650031 129891018 855735751 977969174 275107876 620385877 721399053 774797700 5396758 821116794 170887989 96865797 702601323 735226064 116915817 309736730 811687707 548584587 787988876 230949027 224253821 567094306 16664085 365098314 275815042 597045747 716333184 333601317 55927209 8550797 39636463 883287677 87097205 761148486 572985096 709894431 798117262 786125053 231446436 212417258 740922697 908426805 606704312 175541163 969105791 220154737 402514340 956478771 557528393 384112075 538120747 486476000 614395730 83657386 256550045 974033362 873069588 707951019 168497266 389468001 442598265 135445856 956071855 970856648 366522716 223418220 848152914 330694684 347155121 65712069 592217678 70988317 498132350 836386058 474778910 160643238 996457791 801089975 742474190 76688113 963538909 337237313 807961152 432489082 459530292 542755883 791323755 453157251 9285559 685566393 915721759 515104636 877998773 313109938 239833629 755983927 532831408 614711132 558422960 944705528 748777077 337272250 665437847 398351538 541073904 266792849 32501303 797338389 828015438 826614189 879842380 898831723 336936923 877105193 756624598 710693331 458463705 928398676 914942202 68550165 31374659 316467845 143051595 3059983 826020218 166874015 27255291 994535484 643814284 317372641 47780409 366080958 699407589 422034882 45840411 718838428 439998836 695427554 689178757 914003503 70220199 724845900 663271625 939967811 720727556 464021002 900390036 298392373 420302807 911331887 985893879 167554998 945248680 194311602 764151057 240717753 68010809 113534996 394617533 931368518 464637146 287087636 834961154 202643915 233472523 445412866 935599988 938380666 93004090 590378691 195658310 350293157 80184116 166095896 585871187 626011193 843398715 831202850 70443361 175842219 671733126 491918779 658971363 238197734 13827070 889004731 661711976 530336631 672632355 902056222 992539156 921424402 77074284 201115456 671460012 76620956 810083672 10484648 943893509 943898647 386415647 687059052 900130555 296579365 405029220 609989087 568797441 454189026 15251880 183679987 484418929 457825635 358903731 345289668 469290700 593311164 257672895 104469625 949949159 768220257 603099917 288383240 637822863 366255667 200831899 730752528 359681074 802954192 474834913 690654746 583089103 914589931 963818097 800658802 563580517 299896806 764534469 927136744 198798435 365446875 734279212 190448730 691082245 976596755 10770364 991664231 477127581 86694871 224943486 750373474 765836151 145481252 964461046 69149961 415047537 13077275 581500715 61441471 910071187 700843510 47470713 417063586 216355535 667487630 459586198 8892532 424668298 919279179 738689070 954144724 7014833 32109345 194468760 757174083 274408002 874789639 5416014 940546850 876568813 747219385 739834059 629144157 123929734 512355460 541275485 698582345 112431130 945627536 249637030 941356996 556301016 377568603 766944086 722418221 600150202 808356358 613319707 657716012 417223395 635537609 584798844 998560691 821831513 358606655 674949402 241366569 838261243 532611689 259181690 942247128 696175168 404250551 904498128 862763968 197820591 554599481 511332001 111117974 400813923 297751624 370989123 495591775 423942219 497939976 369289605 504557236 465699259 983203159 991962926 977147953 987104854 136860409 658778956 230151838 757546727 528282607 540557848 823768548 900065166 731827540 385156427 49370960 358495489 829698675 119448378 790209349 607793542 875778883 755380911 758258377 926670088 912960715 252572946 580994149 11147679 706013188 210836517 714697843 262086130 607744472 952440093 945116068 76899236 713701284 929504141 503647830 725157013 465188820 106823803 67193657 766605749 753193437 402976749 642698787 353523091 205088435 857529085 423234582 893426559 33243221 304921771 944744681 160402697 486789530 312549021 864058602 747402047 193285690 433795487 29917431 398112444 364764539 460754867 716219212 74077902 500463622 852740337 323922565 710366560 333822641 90750903 730447233 200660155 411890457 752959332 35043820 672454208 964086348 448187538 202787636 725877093 460099573 792191881 34737478 763420626 630381985 837486201 770400422 301835701 33845457 286338855 515693152 586148834 287289301 561158634 320390367 813716050 340468685 617915708 742429314 176433328 686494251 851666244 225080476 72938104 246698638 101439965 851169869 425575093 46292809 933174749 14394998 625014615 228087066 581924318 247084631 795482479 719844595 343584841 420022994 124846997 785163432 102421627 812561458 278484324 264749738 354869379 332527712 912752049 642464181 839360743 155485060 454031802 324142568 530452589 234131232 788866075 45138513 391296192 148688338 108157732 439859831 341261456 690630516 460469048 541769055 724022785 210284022 694202638 609742538 323170448 138984386 484112860 109589943 700221476 233067881 748692000 519890215 384644911 225797068 664207936 19637209 596768050 460553317 619320610 835853864 72989007 557256604 364505112 836004491 214468297 830676739 565808699 286183999 236347924 701362054 613497498 668262406 795091874 660909430 181765186 349741016 666169689 915348351 803192965 450090145 204741664 151618220 84954886 887609311 312049968 975825392 742346953 516682364 628749635 785934947 173427601 676284044 122532041 907655620 736970492 115824963 740851679 645968455 743135136 852074574 903174014 290602795 430719026 212220088 497361394 399123174 331163405 926396975 497664120 835408595 233331186 542240148 570261572 6000834 67390102 892668452 39176713 815809296 487058479 459648577 60770524 351464100 727122436 171981805 970151472 157431579 573210847 357277844 953947720 758868623 742278140 469844933 429552920 260210483 693418770 859675874 568319682 452604805 787104924 639656867 717131555 64216482 276921537 535134580 36976826 818032176 21283969 832886871 319771512 912775249 204594028 620387049 186622525 833808991 914796310 124951092 984786573 548643326 768050955 680857478 425099168 60558208 920774422 513400929 841549717 877154259 198591855 585258345 629669371 28203587 20724987 242405945 804082131 765111059 462475896 519740639 93863807 435931414 656649705 164817277 777443368 192147775 953252878 138110207 414957484 885244557 558169539 112011255 183970799 130132971 827921938 282083105 606242019 563671116 138386683 979321325 211018276 863197576 663900660 899638850 864567795 474870360 607390577 643559757 952635133 891386143 718576532 272811891 482530196 850747952 955162216 875853958 900708431 278560021 908458391 516787488 281252440 818450387 940757485 600085165 187887827 119014851 387991044 915411058 754468152 151380882 599100090 601301438 523115828 583090403 18858854 677326523 722536827 366881699 216955509 334370099 648836566 463573537 57979760 841607702 853617837 817660963 562403824 232846804 104877074 96915761 753225614 159219314 860990072 102692854 881176036 471496015 622197983 50553701 518271130 481186670 420162975 938858057 707915984 382345646 654297602 357396216 244816179 731128012 44863872 764083062 914928996 591705384 926078550 619945313 550530849 945832792 14230103 258474404 367263297 306085412 903411053 770058042 167240053 593670654 343546832 73883913 388586811 723379329 820250224 702209377 869831406 516755540 312426601 2307846 533501542 12066373 397130148 592503730 873278619 485798288 460678066 466538170 59339333 83791145 626445825 41277130 123937958 896356827 135303971 191372007 340708084 828958899 430801775 290744715 552067884 664367730 261624026 79658617 706744969 886156401 317272832 620804517 905266466 562308900 671087931 850950806 314329393 109194752 159634594 368863229 306003993 470277882 928021327 958894832 328151763 582330867 159358061 186116407 54167267 589073407 535395927 661606566 534013846 490003446 258665192 583919309 917101671 923754876 401343519 352451236 472793145 688120746 200031693 915885706 536028462 872366654 729377287 428732920 258242168 902594722 115433066 192081091 451657048 105469476 493505303 321301089 369166867 306983202 375609883 740230557 403793087 148607474 970647841 566486877 2187658 339520615 820887513 54003338 755562846 579986288 237998368 804381515 547947811 465275697 971370916 638320385 651772077 864573844 750334638 679991021 177053301 946863091 970709001 260561915 113319915 167032312 404001167 749377018 515783499 934613207 12910544 394248768 880669330 974630953 53793616 501647519 420744355 44545894 393628124 586209497 235024692 649727605 914785295 549456335 874187701 547325949 787466244 905090599 244444313 554128984 322971879 9645346 482695858 244924248 643069103 394256884 724887193 255733101 891264947 151266525 96241509 85228460 657809379 545830474 847858841 205157800 12980018 168058642 631510680 848306757 165756654 512158968 513239118 762245921 668213334 369841603 477545071 316980851 991163314 601691381 265168855 365502131 856030612 630444179 565605606 412397043 294050239 801329418 892969328 709167066 224006782 245444568 425398931 497974635 731451093 77227182 236188520 937023416 665334384 510199861 366231544 377633712 665642951 67479732 847166302 706493727 722269256 276084571 408504348 72041271 114779348 700694692 383331896 299852898 728407290 348867386 467666350 881387907 210153136 837887056 138820240 13349518 827743210 221519012 15981319 763513399 557585205 170669731 831348138 123827870 580131131 576011631 90422082 744425688 129926 128069650 609873388 465516427 948636887 416962469 99391595 223109966 194123344 840565042 405262949 440952109 33339071 253000324 621108907 142578633 765561718 327668918 541173128 817296794 391168460 810670762 404351931 612815769 933775277 582800752 398560884 341662570 249619198 860848011 757569985 448721030 802115331 674802575 276051008 239968650 184563071 294176245 411919864 28142321 488982230 921310090 940119777 664989146 939048276 684429976 935884349 56126785 206563577 565315953 872909642 220275032 52847595 300037021 90446163 30005511 268830989 148170165 615478050 152958 254210814 42766003 254002072 612469451 408392953 855647652 128793375 695769563 106927672 85812415 637692025 36970237 58559193 512036047 4523571 647455626 241045523 498549815 666806185 767279564 815598851 723765561 757946012 833930116 230189771 722056696 519041521 724485152 95691643 465797376 448349676 664769400 663413976 820021692 722309225 322659035 151410328 841811812 588494757 312390512 607533350 712666089 53764964 729639900 597881635 746222148 627736980 117555040 235273515 453054841 42444895 764860662 154854547 82612581 589940725 934640498 588032319 584843884 269207595 814528461 493267561 817266576 193370601 782329954 895273306 72383468 93525445 875633514 511458957 46371082 40788809 702691579 222211769 91312469 78273123 253783285 128745602 971326652 721977787 201371439 845651778 796273345 140680264 206177138 79551744 468782116 379662994 730015520 753992279 718574471 911386078 529873357 711598854 302385187 835384250 691033047 258102733 214081999 426559611 508378946 940274997 653174571 928862374 290298899 878634549 506112860 426390549 691916051 683955024 360963284 759463846 192353655 955833496 906659162 559415223 256302763 783002663 123160675 335972106 523898433 825848381 439305319 955686098 552487482 650099383 161111452 198845885 986013718 218880219 176063826 112294697 19570468 773704083 513106345 516231615 409313237 353758958 441851813 948538240 685114332 198566486 842462584 469351905 290615450 573569462 205280360 883432229 509545418 671037070 181135831 500808367 8874806 731344672 858462758 719044012 59622730 630028055 91831530 148662443 484413602 42377695 391666767 192358290 240378034 929208087 3300634 556851768 607937040 958688457 755475934 706562781 298340830 919341914 664355246 634239411 62607177 115194875 365456612 595977723 744745620 56199151 274074896 346359209 806336182 979299000 276413363 219466309 303868304 627072720 170980677 804511215 731510561 429777546 448949837 581111009 524584898 694407064 312011243 24714093 446931930 336671940 164704058 973959422 775407381 33320350 312061266 316271742 457388045 981174647 935558407 773545210 789162872 608253589 681496663 683079220 355211107 980956933 392863993 877054272 371046592 623028595 637294574 175663072 4269430 318180658 997187321 971035426 450958833 560409351 791521228 204523729 99823500 515086812 135568050 592066507 575504504 42855914 660053290 270151550 33899637 159886475 317762408 608603910 728403491 720650831 792919189 940567960 325196988 159734432 760394499 443813595 899886734 538291126 724444135 498394443 855283691 537885833 428028094 207708193 440168576 21209323 280809505 160806884 473839454 696861078 622029520 92040426 180560967 717306402 281612945 614160910 921491830 486418629 936201772 854135612 856729398 29809238 682934026 861892578 177007642 976528298 101695474 390886252 260708282 179281106 934860152 927024640 86579281 226101211 883353238 718116136 573978214 751391835 377630136 769573437 984499440 185579357 855941994 547778282 984768167 392456963 516692456 53793729 501252075 851131617 139617405 734839965 549751521 347779236 846850599 835750571 613632777 689728539 88772359 670203996 757730007 804162198 556278324 297753637 317756742 370306868 889475519 84162258 614143470 802544533 923572037 583597384 822572319 344943121 748242858 494504543 834268171 39527375 811545196 189821000 469398490 436244650 961415080 934067864 695437680 681393513 889329184 371349663 580130038 382301544 185398164 676818475 932244091 764103207 357564597 649780303 965043091 752599341 81887665 537793194 476910853 859183211 438956135 994592830 796109898 870952303 206373405 700986358 889530184 730334820 594005187 617015902 597697842 606947908 507675207 441851185 538446829 775214609 485428313 66918891 764816249 88674733 465747745 100636445 935131808 926121266 389698415 52380231 283262871 148881078 230874532 192278977 124170744 239178772 772298094 921157880 863759899 804819072 442743995 424520521 170096993 346166906 77289783 687457240 771399139 866919595 659693970 802682502 692766185 650652098 557216498 628293041 291965819 881589480 400323767 622318339 707684126 818699154 891354943 152296181 964415602 395805897 140326598 297071344 852672317 587220182 883666979 569092463 150459074 795911949 893658368 161558624 721128607 941434450 232878920 144003711 516316333 240361939 856866557 990268910 847245591 431875266 831194626 986443300 820565681 407823889 606493494 178506414 328365257 715300499 273905530 552305329 626451307 164625235 766083579 620543428 64906044 700314479 946412019 783511626 307402522 979413505 404412667 674978481 169897111 816963963 227399658 467968511 542985418 284491819 681904066 88578951 5806423 351746437 624598442 451252200 953382138 129175614 319465241 698641725 491068827 966975553 876453262 489720000 753228180 981188813 336868866 515921331 865965860 953174741 948192 416846772 818150141 874337284 131304392 235548291 214116452 445615143 688361102 701434329 644136432 123398998 611546362 745115345 960372099 594969980 122723622 625319669 823549869 881324282 121521964 236256380 379607190 632741435 335093902 519566455 952833252 995189171 165254369 541346847 234442260 320239699 458729137 576382523 760992796 568734351 67954531 473678515 62483995 293214592 458063495 524246313 250418124 316227375 242658129 272210545 557384204 639799948 669224580 529310852 277769503 373959743 385710986 743011408 216876296 258204421 717369509 222650083 295895324 490530340 991955250 494939469 922705893 942431814 792020983 966654601 569108959 146204382 894263505 564156055 828153674 183812673 36016455 802118285 346038169 65114495 508583475 977731876 680273919 981185494 449605346 477703975 458671124 564752649 61752962 459570325 100066861 698702541 550672154 824885303 780670698 10185029 45320947 663631157 994288424 43509532 305004884 393100176 489861068 313047603 728433054 551969410 440693740 242252701 200265007 733684324 825002915 929931572 248127288 454918629 924254175 776219775 858287441 177432454 866976731 812860097 435033120 677829415 336104026 821583902 42027550 503256483 930949776 146991089 50294908 371107810 165109297 994483588 36431616 533841885 739555211 100373348 375092091 152604693 174067400 844739003 345900900 926929882 850630499 566895113 388725261 71891848 909339068 283154712 744903815 911510986 302112373 735956444 678652278 479618429 41297783 35012552 434489948 667505105 203806338 484669783 571249872 183344925 84582175 259513526 509763240 833455270 84691497 203036739 729754849 982301975 215653521 126680756 737429738 852702304 123156831 969846600 195686240 142314304 358669315 38890220 219492588 653569242 867755492 666961322 946532874 717462245 864688739 174781716 768020407 399092435 730469420 308408917 645667719 199359657 493897595 736661788 82281754 42056606 703695108 299885295 803539227 554454966 246428578 927487975 769071183 568787932 248775604 465401246 924345356 620302026 35090007 788092835 957144534 332404006 605429515 194189461 35697284 506500633 365383684 318912555 142704980 239487561 383530296 474718933 578983722 640407935 864693543 455323650 722224475 360165417 293488848 969284058 581689101 783458043 121127464 36174220 166577353 399348411 336882780 801187219 16481051 830182754 840303422 770964046 699683910 501173120 534480746 219594612 430580088 784594249 70730450 114630274 519645617 660170591 926121228 73303417 368273221 728876190 51436067 880745076 333159329 663746805 528314268 41114137 936227504 96306077 704303480 994114979 86864838 542351438 983864497 182043524 443998463 170315566 27215406 356458699 321494298 663312428 43367503 486550324 299569373 890242427 196495182 847697276 927407796 982241905 245999523 775395163 759404512 548792985 159108349 444093292 671099415 969646097 73575622 468097695 900637725 954731528 258798165 328377413 996279455 249309491 952825255 351311229 183232501 546140158 689873750 815537741 845123320 268310540 630606214 559403603 278290120 458604651 486586385 112993583 125565735 91117646 557394204 130739030 825889027 823628544 718034379 237225331 442817754 748442906 890468814 396161603 71155368 33343640 814682603 437571801 712728534 156928156 303318016 387731247 400890401 55378173 734835687 79987665 82835723 669580526 591502668 156811040 568284047 884973131 307789659 765653869 291888390 118335048 538171956 557660910 482069914 932582229 517913942 863265283 506803683 925056448 29367611 665852711 876918779 442846818 938792209 749785023 768385752 589586240 306648919 910020882 684322750 633490688 232072121 502315758 571685069 348031032 85839749 782113461 814159696 758098192 883742006 353474748 850868860 716869922 346436356 815717379 606174992 764467422 911791228 22123951 191213109 953689646 692749258 851100123 150767956 813604756 553030365 452469469 798667030 400858991 400121598 668691284 361475391 579880762 952258058 237169328 532801509 865875237 620331300 378815776 447329855 743620836 928907290 378454152 591111126 602493340 356601703 464305270 64697823 336646635 292686716 988633980 86386006 82336162 8134419 632735445 228663585 312076371 55036232 831979873 259645623 671812096 94894396 966161131 252564434 242017731 853007565 279967358 31550716 94840581 59826275 473824128 348302084 597167785 169398720 207106471 13039412 532775589 849034169 639024247 196205525 297120752 216145868 506984079 453198127 983091121 442261209 798638581 394649304 19763291 218040096 611763088 67118743 753389373 679138878 849100456 277405532 449924730 721433935 713389727 296090987 447961692 919500471 791996112 836683879 70908966 866211497 676315863 424794768 188323804 443069635 873970787 374920631 884298434 997919497 220797969 71471151 591092036 271900825 844817962 884941916 747679599 764031487 508026282 186046820 967679333 713929347 707847548 305982510 214112286 177234138 486009842 718265644 20053144 192781283 744564741 318485371 225176374 762836922 574225194 684535279 948629913 296749237 316038817 369545423 447299147 785126745 769197477 137475691 524638124 537588155 468045978 158318889 382463998 110866929 21540100 172373176 555322638 466513535 499952018 844550164 791310550 243013529 757932428 672551319 635243043 845085892 991750414 269519217 294916996 878038691 500870165 345989438 715226060 794340761 596451215 805312308 747705214 155961346 181798680 702320825 101022799 232671764 917801863 611679313 605931476 718249848 818412953 357547767 728688733 143045954 269000295 21538564 676452185 219288386 918019300 848295519 951884319 525277985 377791246 233730952 565482084 154562052 43340527 290737933 871845408 114538115 441854232 272564445 55371981 729705204 110037147 307020682 760605518 860461445 466563040 272480769 904599151 239275849 750662835 380411682 147556169 997651204 264862998 785536072 353889461 953586973 513105716 10878839 875407522 555187478 202737385 815598816 746572859 774201972 675536849 152823631 765443849 866967446 612687474 462629390 466174367 68399164 853411264 751785047 814772492 450597377 307659332 37923456 585973452 420218434 188527196 521226943 218616114 989599399 138624779 862303381 968762606 16652796 158574923 132279463 840067870 397517210 645108252 479750041 938291230 673227608 864865472 129467390 809335656 102267180 191663262 777067039 464232656 774200593 190491869 549831371 607029368 919896339 631807327 144152137 134038624 19351266 753757721 578257571 527341551 259616088 334564541 135194590 188745467 396576611 317906258 283996500 484889906 72266796 250115091 742828710 63104260 180059405 820952668 679909758 193037232 524900037 985109284 858745843 952512671 428960295 632767070 324492008 320053748 423955928 345460867 653480652 906405321 143294792 678885446 351269090 631436915 483812448 367708858 408195564 318520010 531170981 825876790 729721055 444379710 844683692 902366662 624062369 820641033 671252729 189614850 212140122 39054898 938554208 326322582 182606738 687572039 706527289 592203117 185302494 42627839 68111408 652878415 459629271 296816742 428080080 755600473 78264247 641390125 738990221 411170813 81974581 200898125 327011977 187471934 746861263 704005683 63606057 715622990 898233530 40994057 232726532 322795843 368509775 384366195 113097776 241593004 15930656 41715589 12353015 158969980 751317081 864790203 308878764 731518411 954116737 311324090 924783552 178775226 559421698 118504261 147688727 475253714 273621472 161590620 606015497 883388872 973731915 761557856 592231422 749727208 942853740 924622480 795929745 197469212 501608098 306454441 12965701 132885639 851435835 503044861 1986816 817404782 116408528 613999233 221132675 716467312 799482925 286472210 878857247 571788370 669784356 625394841 839583927 597548083 684365542 344008815 561880049 653749878 726723420 235435111 837342436 159265597 445227017 338822961 653546696 428020541 88147180 997397559 760618386 837185097 44940752 520772598 414803226 757182810 652321673 791524538 452795150 669907257 443055199 20583034 533613474 359074850 246054274 918619168 722148591 244690376 406794038 707340546 894824633 865011169 803655363 790903399 297411086 572850403 426351738 626509219 389405107 59787503 966611654 545415978 783107087 908256241 736326203 62720923 745601356 607907440 85711533 250635142 494247041 711868923 232149769 269884755 626539125 893344176 870457201 864407440 809645296 407447277 199674599 82362281 606016607 571796044 12962870 519931368 470160765 857347754 572281824 920160243 645945703 921089859 424274999 210350782 510243701 734091801 710354254 297002836 532478745 580428465 519481830 542431386 996132334 50450428 715857551 412273566 170635161 552915554 228973698 482684214 643068491 778655534 129612752 294622969 526361071 319463559 677971123 996710852 947199744 164744350 289034687 712164244 551337404 83679584 240326324 458532734 633316272 474526552 299778436 298259051 342552170 265093123 616928058 26627593 722620854 916553377 161436781 548391975 545266981 269248200 466749888 587154869 603206902 819666901 366734976 372160289 942148872 33331919 915999146 107468802 681499016 711230143 257740804 315333041 699503631 664071976 713592892 616326033 292469073 791110493 301208171 221981730 235646424 420113958 169291266 248127387 750687084 886142406 639864353 785989851 597217595 203740484 979048959 569739121 839388781 964836684 415524771 732891438 418039653 83760677 689184109 237186755 836943122 805435451 909158374 796640460 932151994 847019922 711973544 6817049 613410244 408924124 212438982 490848204 55488490 217060038 438756343 114738020 494798326 381655661 377543673 583675875 895406892 363591006 968783753 74845786 858849319 29333618 707390975 955313707 34101139 756954395 249296837 978710691 33319677 623705237 663977390 950877313 310990872 825250601 252171311 19998953 544324922 884185316 597838417 175916398 480904425 237275944 594019307 783666674 799664281 637042165 308366301 138637353 690217611 381050667 756431053 751408854 356812251 14361689 509342937 947592937 599617048 719581685 565895489 472980044 981372746 754448003 11741143 932179203 868563298 615322718 595759841 87392191 505716535 276616625 684058918 93340356 26630983 133087267 423868744 311475050 395166375 286807667 204304542 152915288 20593353 720377128 282630298 366951039 301329421 119783065 525859609 347433578 123208704 607382040 243449039 406428164 354381051 228049344 124112274 758940983 803426949 90947002 488894404 360506729 272367596 663714870 190885671 848818401 205748630 819676833 438922275 967550214 452746335 693291564 76560239 33214736 602257356 432691104 640025347 514530361 608014684 155685086 977842560 410989228 853987965 124208380 185002471 834985582 947292831 241591802 237707676 924709728 62764259 158556161 121956516 213008108 643412834 373105014 454687159 928732602 871108583 175694645 376459345 378364856 569209368 704593488 308239282 961600042 570188758 30913440 788594940 666945319 486957226 344539674 852494332 182503099 285253004 63283708 817200342 18012557 431062666 957566194 385135630 673708030 140315320 12777936 803767820 636905554 685141133 732712551 543596192 826392747 753960931 139077591 909873528 943544791 114468850 916281761 544611935 799127131 660220891 485805098 239484621 210455359 440950699 244008379 729460080 976165562 222627081 470578316 630468908 243212103 475328076 250196359 639284626 301317068 282524150 733784045 915353529 55826759 297139181 141646693 284926426 625885966 384030070 304403239 816421782 366204381 62861100 205830577 108361062 244776444 294623127 685043769 114511803 300651175 572677972 583148789 71773047 959904200 697001747 596093715 36328710 500511024 565050041 574449800 568405664 493990888 276230343 448265002 417051255 441106587 518152532 973510761 372505232 515347725 853667064 881101810 489481284 886769517 45789845 845144037 544528965 186129536 225899352 444489992 215346552 68087578 2619813 879852368 737725068 586164433 320013390 453394301 76679825 380453503 504072550 612514976 760989230 466298878 985589745 80371118 596579943 150956004 44539853 804579994 878268204 641575298 78869567 340920480 8621598 79477884 195075146 119270074 17463167 116061526 389386006 346138983 415351827 423759830 669795883 895645710 901846507 585037109 546796396 149963585 946285641 300321791 33491652 301012329 250882405 394697372 60053929 155841794 186718812 575246323 887127177 263595739 602439690 926374680 794538541 753703325 492826345 510175968 939106949 545850763 261533320 397590020 121456025 282209676 411833860 256053620 279870810 895807584 434272200 781121400 693397438 494121315 390633096 465470404 791028757 127184970 192057323 590150029 672328225 197766908 895065072 482998261 366100249 379428788 220009072 948101145 443884238 347810877 97984352 107966540 91940355 881212801 484240925 540966892 369069672 653830945 729718708 704507740 347057910 815246039 47611821 557603083 598786352 253662236 740918203 815806143 176035075 345692519 128647483 156702047 224876081 711933609 844534622 576090504 134235812 142317775 715944916 390630986 666809897 268149877 675961198 605431749 633312518 324067754 428513264 192014476 238326596 312470606 120640093 128697853 605329377 664864455 611287810 901580331 178928886 725283456 913184230 334842499 958185972 391635034 799434258 978526415 463138951 257292532 950648081 318724964 2716 7441513 574269055 967502327 586408034 855019806 736059405 662464336 156191112 611803573 938083766 73375174 934544159 938678999 740698584 690976694 121200060 352029839 629870285 783121081 48844887 202029909 250827517 850727890 237573474 334009199 563786788 718133717 697336483 173531947 510162856 55432758 985575090 656263593 325418648 95469757 370065326 825092208 241260779 791605687 873646687 54208242 109899879 341277438 97421394 690498014 903474934 742317081 851626998 33961444 861138711 231803177 897593643 100905594 678054238 292439177 628890163 824605782 306696957 576555143 778769016 775777286 966275988 501923278 136851801 358062552 503312911 663411151 611577191 647365341 228174039 485174174 489269073 22678019 478579655 70468834 61322005 672828404 400190300 496056697 234926953 468601750 277743544 299663515 672150272 946745202 732257922 222387149 740160082 80913498 221009224 7181893 361587601 342400057 617631336 318286697 65339053 968082380 914614866 928251398 373375502 994641584 395863614 100220748 38157316 613988213 57631878 435244577 269248118 151902144 876807904 764679840 860554803 920464509 691218580 947020000 875487556 254207528 711025203 291678570 933427798 192760737 72708868 819344352 152567394 97193531 150822605 164618836 476546456 245995588 26514571 414011230 756074013 707828880 655554526 185484269 682480410 666960856 752387510 541096897 693988790 682194941 187350235 537112885 861747697 800268224 41822297 10145379 920986861 109655604 299435243 426067648 321842897 853511946 559180463 668890937 884915282 358884117 180316355 755673970 76531636 47373884 677270331 941261342 128179457 211096848 971834950 606059987 867124798 471225249 899403498 272002404 398415818 866308896 516459093 677635708 310531850 636399076 245644265 120264821 111489421 487285642 804687860 567518786 382357149 354574269 887973949 486915370 292223896 643350214 355057696 892174072 918828239 646109692 721640397 282939381 402629966 892993139 110850924 618456233 352187387 652835110 836738726 589856807 992637767 36535946 71384552 315940306 540793280 642137210 663941774 30929166 929719056 447463740 943524121 916453746 871415691 244312510 838975499 135177769 51031267 448585054 306476842 623669644 503734754 961176861 190414225 89722115 998021167 593160514 548687227 525725029 328055096 561770370 612252145 489214407 269177897 156014309 179237653 855014173 346145578 294680208 109212514 723626729 343615293 872798887 457677543 963653659 69848626 224502430 712996987 572945275 648103722 852547131 359549023 944511423 491350343 388368781 61355673 679580660 395619070 900559922 9891335 3310909 531260336 617942971 11188219 604920748 569857881 269554223 64880592 599380430 919484972 746946306 480303686 835010168 713019866 181893528 678714233 295813502 683719582 166047976 527626249 716999852 10535017 412212312 674225730 605782528 711540287 624315078 685793113 273606531 629972463 548575800 647891115 312530796 605526577 289022833 633761992 289124384 481073521 986380078 851204515 393018880 608581496 860496887 256726375 212213017 202878783 544826111 491126115 14754895 978196771 568620868 322061379 602493402 460130332 624428089 540995454 68520416 123215843 932695489 937830924 19111455 832747097 237616916 538186083 243261616 399138934 375963854 793564254 13686602 511619492 795215282 922865849 72928207 882737458 795493808 762746591 97652148 312531015 182591549 194078828 252316209 519935299 42365728 256760131 949635976 704878605 887500596 963978077 345561572 462900318 687619474 33382387 515756949 978989874 141857242 603382749 274737110 808789794 951101368 15359518 743165138 157233391 89806621 948658932 751159756 734885199 335902649 488793257 251897473 128716427 817771815 9754907 269787130 317235281 751225999 242622983 331439804 477749260 116725354 36550858 103452591 807036373 672710682 640064369 969776049 851487184 915257758 115538499 630915687 939447284 639868326 355919323 239485899 823123961 788013237 281492911 312642875 279461490 272418670 273408709 4250192 805107454 384687903 204918124 314986047 181962528 472322904 584934767 788741198 737666119 49131197 383916070 309409827 96450469 571095491 116187761 690068050 373591238 738491790 747115311 415726254 654121689 334255142 870948229 975910126 485168480 74807404 807733117 323344297 580142951 220125037 968270737 988709511 968428449 921302684 231744311 317263660 350085633 264235659 643683423 592536386 121294775 722130057 97957181 346526053 642423437 701780269 68032585 504419212 420895337 823706323 558656425 87237311 58532557 578146488 684551736 762018372 214669072 376913261 205166892 972510253 936347032 276158898 198657543 905244416 793297074 948122385 261590685 579947928 498354361 619973449 523666037 564266920 281827682 777196619 48813109 701420320 804701043 648360499 997296270 327599110 707331612 192074579 190284936 977464672 238729576 705996771 396390819 207363363 61968853 283959009 839394789 335712893 761072832 360952585 374646016 911987966 334688650 893777077 430293656 678924383 551044948 313277713 712642040 287197384 291523939 495407976 450622276 895985796 863635939 844629248 742767669 221915843 489346352 282848484 502685764 412331068 182669915 874784262 549492534 305131859 840743990 205830970 66027747 741794179 492874593 965727487 813081826 213157928 502100108 116171320 261856907 268683906 727297853 318261145 126431540 272845343 765086419 318759239 893210148 451249248 729877691 77267655 141353960 949965020 264309568 372253405 192058957 958506257 321847243 560385600 942138040 84776437 768442001 499052821 208269582 830007275 318022163 593444815 321768267 758966532 113948697 429921666 471851181 634527321 995874958 374369727 923591557 836704021 776204822 290363827 279819908 577380383 760677693 762507022 541077176 826291520 229128011 442789741 987813547 771013451 439308740 708970886 367887260 434427481 907422059 769843529 629246912 35470355 180506121 297089230 759022117 250763101 235040535 239585859 104919594 113391566 590448249 419002764 51608798 108055709 178604034 375598720 191868772 133943173 485611682 132204327 600112717 360662628 383473861 491730249 929402296 513260820 338034313 265532346 685922568 683971579 201420012 591517492 437870758 589871815 347739365 722779081 638038333 604831608 98465836 468715817 169286558 728696033 644665427 686552439 301225893 351533936 2297752 289794573 496982998 151884346 81962360 525309345 972804162 145151675 550811329 872911866 918804135 375819142 230124665 680799901 855951113 442456105 658898789 717037007 781734000 702105708 927888816 255160826 822874179 290642399 462818546 992501594 995989868 875451137 761137941 444330595 386168110 749650801 838970460 770536311 586973882 105346389 509517067 707288450 835980378 152206209 641670324 294028796 686318203 780219161 83748805 804796379 296548172 335260199 760730164 491949363 248638180 49731390 669150844 261444537 91995801 207073737 279315359 558406016 161436506 846340026 767828687 393732081 379571324 761338617 682408885 853276961 261938130 497856807 395748211 550259127 689937721 474633125 645048482 878918317 330645804 95823437 550909906 736190911 427604262 118484215 911331778 863574764 642587407 327478870 14165611 919021912 356565265 529413544 155740370 174079208 300483307 441576293 982087879 872171291 950511585 755877005 494089251 52645587 559083386 440961385 628580278 588094272 908981160 22927876 815926225 261384909 872801682 871616994 965170407 88998691 796132228 464944052 180737993 919240251 906318217 445658288 835943019 421581153 634188346 731971659 97176862 733486821 847970978 464629914 742850022 540027894 773869739 426989817 683155352 760012130 908764074 223129922 532551949 914483518 869583865 312455337 615109484 735303771 613174734 719764377 118161470 34288195 358947671 537531882 303060703 67385319 633705730 570754937 409449103 523186286 678741668 198396001 705124196 856513981 514837853 853425610 648010653 49913570 184865600 213585672 797367943 287106881 597968469 439816663 462693952 365730458 163293648 588319954 263726397 838566134 715102307 164290190 869501483 787390819 693018318 199071055 614344478 9155427 990732968 647942382 748446495 954849196 657661130 698504496 489106066 305559554 831277096 394709421 650870127 730557501 580266405 686429337 471608057 588639878 402177562 199476617 383502754 143635370 11346173 887419891 437043682 189302228 941608128 569623826 23109283 36756798 919742849 534954792 328080564 269677602 466296580 613919278 617258031 868498312 571425200 750553102 246341497 798911236 305975367 267516579 475852724 754871746 864982099 67209592 891746912 765289009 599462540 926532976 357676917 672140946 981227226 371170328 923087765 396148237 431281894 531562980 486542842 887427705 611787025 580353261 105439618 729236235 372177873 988927200 627813183 119766242 509927551 626965803 243974668 591178087 723031171 135964954 94378684 830946162 645610145 287428449 674082044 645376906 641715740 966566216 714429787 195884633 793880248 695614534 965998580 73928624 872305900 925484515 629985369 840288624 663165091 129888834 869362118 357623228 483814017 488099997 541359060 307054390 900323651 552176570 784028217 868715420 784728476 784223274 615277873 587914811 166452571 896798653 613770609 128366048 134472252 891647538 797377240 743309399 464725750 237102490 410697714 368764601 671720196 730585187 252994403 170300212 952454960 458449553 55406196 396202660 382855028 232513918 273214782 609511625 870021283 171830612 68181911 543220822 192198779 740540224 547482815 606218946 923230243 772495768 291426788 822051361 33074904 255420406 810651665 704081264 737251577 480260549 363608987 494986356 770983494 308793082 510070991 800531589 372752596 153849137 105289635 754191894 650676501 7630642 345646414 92085887 652691962 397717013 821670617 394342744 940629266 273059254 729663206 327369421 732183489 447088353 474951724 126744907 19405065 559708871 553165300 735661400 83971997 868500585 493696388 968068695 195051118 450451801 468280640 539886196 940155765 623686320 509894560 678391305 378838278 722451736 44919461 387330593 491782066 637570902 191347577 873604225 967189881 427438437 196455194 359479079 941454957 57693708 408212005 221616180 175465474 218844826 669325054 859392250 531867286 379169412 961196260 951987137 227710826 467900703 405728925 574915801 431136974 210488355 665373023 193623042 251705875 222491361 557518191 139474237 44683897 745018813 569554798 435754610 385068985 173476713 661747669 393524569 403686161 709321888 579892949 237335948 338930473 397696032 187626726 829153950 811599649 531574480 38289381 862766861 165453672 453772774 265035875 231461708 172158899 680522616 306755238 261236445 948396592 559774142 17774236 710279109 903454792 652004836 476149889 791836508 233923490 314212179 979532522 207508866 861784807 160127300 154548372 880864845 527976308 286119229 419307783 149552204 50956155 361703644 758763465 539105205 514079496 4299239 626727219 38717584 302626226 202493547 549977581 334750386 794650664 770213148 489987111 462934891 721723020 968087436 200790576 439065157 280560516 643824960 115674094 821410337 255885805 367555997 736154603 814496987 235419109 652179133 187671277 69903333 535558812 220048483 399044235 967840601 825667466 489421411 885361749 697026194 1804652 979216960 616773000 70959229 925705871 534094363 842509317 814725061 77535990 692692683 812508062 647539719 863865573 699416773 570001238 973226470 246021629 322178532 579920573 416660 598591596 267797473 121075682 389518993 118981690 939093685 417023595 454691067 942329357 770510736 315824353 84538247 792772137 911917458 820098509 19371972 919549605 272873748 46107878 472153770 528370412 992241918 752409402 188173786 734635223 431505693 298336023 275536798 323283876 676768917 807505075 762096368 676360474 207674067 356433122 703606818 687763361 644634541 532954782 29352872 719160467 842626266 33829592 61125571 339393023 532462478 936798784 208078321 702996632 798307030 888508800 316471107 485859310 867665428 625000225 421394733 378884081 466643805 999880305 237695850 462987795 754621073 168416976 586856102 977428244 314801886 397189054 993104670 737260639 31459924 302139703 962934252 685179677 6072394 602754265 173872486 630701893 878171131 90052560 787420665 723885413 58375863 996583130 616792452 385694515 232055281 703618927 468080074 425855012 389448914 118882479 687768389 735416796 231053032 408209679 420179048 473398342 138943505 228023990 982505747 598219585 476522877 161777898 900119408 844669317 59194278 698931885 720428958 675852049 400760127 983160549 127609342 573259263 283968379 594459258 527241563 417660567 108349243 5211684 785817975 608066975 804905572 165485768 465407945 185652541 605558455 168388211 276048498 417742711 369950578 275940144 271157648 548638076 178339774 854384042 706396332 837940223 46264573 425652752 498454717 853211464 479805828 777793835 638814920 374377252 288265245 531558594 114447472 163856296 145178932 818075601 837720531 778426177 307072512 301745201 502673468 356792348 28274595 777754405 601669922 552306360 589236425 656344639 607755030 962510156 513622345 50303892 780747887 646391077 870462952 968852874 504756062 655735946 198504803 503145976 497616359 219552812 705439511 274909437 49848497 990241229 865231390 360208101 744568584 593469541 224285099 829906808 210575862 520067258 736012497 105714902 938510842 980656770 6452220 986403425 529124254 310367040 42276585 551478834 319237667 882330106 341475894 25003853 135401960 825754413 690843333 939665894 607022315 286034434 723431615 876641095 137131101 554109583 209363690 670920736 788909735 430835004 188440839 739758232 396133188 592683891 974618650 119122078 322836121 359318204 517501444 298702661 592903027 592625479 857196686 443319002 460308398 238598235 519187171 659746295 770070199 217378833 359158132 427290787 476758515 119555371 979906789 241849807 438833111 872953359 533049333 101459094 814594782 928321983 648899739 812659897 587324825 426145845 19185653 136237853 116109164 997710627 877507765 109456313 746764718 721801925 714003142 365856621 81619732 278126464 722457376 576515806 421218867 602587225 181406066 147433765 472636802 493671074 970031652 675242577 653510430 926078946 535409911 37683233 801770545 490804142 495341897 920376537 126652541 505647300 794871945 582692931 255829033 302673636 355517719 419513946 201165643 93633227 533199183 550386498 491847920 752498682 420103621 807143372 741691530 936781894 54830994 65002698 448636351 692574657 826491897 715210314 641431183 182233577 375492443 377135247 451562790 548292659 488439051 850319678 26382263 843601914 190074859 324179053 673059222 187637498 540509086 966077177 609979975 32201114 605403547 146891928 363396755 639334402 667582517 111033989 816045538 778297942 313619859 125583598 481849713 348367725 601945939 487649965 181662801 229355267 422415181 228608366 701050138 288064603 314527692 753199418 398111252 83419305 10164531 760727153 13394049 50174295 305024089 269853994 133045365 473582424 714850148 257547473 841872838 179113633 312544210 461681869 655797139 136490681 883963397 118940993 146138402 727349043 530282731 412166851 667249805 560984075 490331232 244872817 449045204 610415415 308932809 544703320 698563471 489793900 649413271 267798661 672092425 933930585 156018331 947718317 133797541 784496137 910991790 68703902 294880676 192889068 708560704 549785859 30507020 122339114 927078456 121168797 99517239 76106175 343583862 28386268 493163841 438579931 435086235 21554889 354804960 192907166 921754264 808795131 234462345 752730029 907037677 305887833 510162941 521663487 794593745 702041328 469679271 562405484 434600533 952952468 706057277 642919953 599767064 494412122 371081416 597926250 924727245 990494547 895851466 174452412 535386129 707282087 883553019 303893994 931797616 581811664 735733444 672761918 656933930 688279273 4072992 251413153 760073793 483709987 41778380 219948151 605349955 102839885 579994923 117000966 517304597 796285124 229918229 794232521 538874181 654472737 67200306 379132338 297249289 973414263 175176491 77327993 790344953 309181992 175733126 491119307 624635713 452898202 352640607 188951743 684473331 274826127 567330895 509839613 557524756 202341114 984289202 154400256 831417366 162276992 858206205 401407089 407487197 528779238 670535351 374527902 735836083 452404055 936148292 113320737 777574179 441562416 825012721 98853830 57368027 624848560 359115212 186997221 626236962 321477470 584555760 828205845 986075078 54200463 458119064 197071608 535383129 319496637 899662529 507378277 297786234 599516853 310160557 547849288 890331472 887611464 121395958 239846972 184376282 771652824 755415458 227284037 952834873 372653437 142151716 610939686 351382469 402574643 527745587 544509830 376710884 108899395 789459992 392054750 674814936 982858174 883702178 474482675 816483911 190871690 910696348 311827694 355829138 919013516 459750773 392650751 246060320 287913709 871146623 355392206 710421176 863647579 18227721 636909907 2281551 440795442 472463399 718901450 339254596 7336160 855415790 841416812 509165730 814589798 790291893 870588960 522856534 95717473 219069441 5144820 30635288 633122546 278925338 5495101 372177800 275616074 972375713 585848885 548409664 570178069 842199589 864500728 832351417 231491959 379528218 947821958 475634439 830669312 547314344 185796809 232776271 338280850 871276007 584459875 324555609 545524289 165915836 98596465 488494918 930269604 484166229 271501494 902543277 265486084 361427785 521043659 62262219 814389162 309818403 355227425 445199855 774748971 774464893 443871390 451859875 786563246 855611280 164273712 647678514 367321454 38223342 459019967 983699907 30271700 48650396 101477187 318337255 274903374 308689405 338225673 768052961 876054084 547779427 814537958 834695527 465582912 491580299 806519779 959015928 563779284 857219659 665439150 897572396 584598058 30584836 805875279 841269640 408226237 664801086 18824310 195547777 789554266 211175998 473057876 317932955 651419292 106958079 438708409 207202073 997672189 809090103 527725097 130706335 735952714 249730598 922575269 328354774 278109383 666664505 117296051 844984183 492902693 41176863 162247420 747573576 114487997 526358841 286684790 101220344 461831298 407873767 317079679 259160523 360932757 678654142 411918230 775391910 883812517 245987061 894756143 297268311 24485622 770521782 700982838 224566901 786091029 994129982 242347787 369307489 251166261 539033101 421070444 716552640 9934631 620402599 171088256 597406650 905332756 150469756 717753737 937795128 610231694 893009700 743438203 139247552 721938785 386442809 254157982 449606187 279401634 925573088 674020433 589617682 513886615 698094060 419459789 814808058 828282894 927060292 587360611 100201533 961096662 723539776 495893756 115557992 411008142 63265399 607756778 214314877 528690487 615217778 253636029 835461038 202966908 316722750 947457420 996093205 515788223 449274385 484285085 595991844 204790463 949991792 36762282 231402751 473825462 545166533 846300828 872015421 786409115 145993515 423584644 333757554 707524569 554299595 60578383 345834072 505641392 931231868 688613525 587651189 321546844 755371951 752882171 522345763 47231733 736794702 436556315 858301173 813951345 834269992 217498584 644169194 853176943 459901640 637258214 565132766 635897381 278541275 927221210 66648075 406848746 201037382 186447813 851635432 385480615 491357189 856388628 154010451 983729761 387841207 827639427 414606931 886346665 323798993 49002363 435672934 534314593 346510062 952499460 76283192 586416893 755071854 572092445 463224844 619270638 46828181 95368733 297947881 65985138 200563439 339889724 277347487 142825038 766924472 238724218 562214713 684596426 744712245 896396652 948005813 669860012 18993321 832523055 615744331 235642476 772895204 205800349 699925690 164514408 960765667 253645052 91304860 667501030 24726474 573468129 777600906 779750792 582467849 120845855 373575132 538816918 989674358 621325197 499487383 654318533 783522923 773707268 552678383 603635039 330897762 590125620 961474187 760150163 556107619 811137169 567060722 480713198 284023772 507607817 763882946 68024873 931682406 693682432 863126945 61855236 329376585 294981547 304459308 849216317 152729875 116744794 971709792 853181034 755211934 263688173 642380111 568947227 538551142 785764658 310487590 842996860 764219383 771058704 557951615 546330008 896766373 329102983 761402620 15215258 944615805 407979575 578087476 31431352 645374516 496411304 69991791 305240811 184168525 456533439 964592120 661364988 21927160 580984752 698970414 430933623 988413259 631098145 408927601 568370976 251150464 21597320 290626235 698827737 98162819 396485281 426111941 964931163 101768444 72685093 885031548 215245910 261114091 294470598 573478861 256150991 108821710 481601332 167117461 710490954 507396624 453054443 344402210 708954736 55937976 983925118 507149666 831017614 873617871 736550612 572559412 596014553 180732892 460738322 909439394 294260767 87918835 364332734 420506187 471144986 334741714 994707734 630377570 732487145 289829859 598292984 867611147 344527848 145521369 614941597 58297745 823493514 929751384 309798538 66105869 478549387 590732735 755475646 961093292 996073352 6116464 274168685 164253652 345103789 732541643 599092090 325683091 408531093 87512053 958765452 312662787 311962611 423340733 742923694 199083462 674310247 104175017 202192981 486853620 79018262 296051695 886748068 682318567 215586309 57419970 412552121 354462689 489822581 107147279 511108480 646506966 570641444 365821897 693990015 631467879 146279200 495432814 638709824 106164450 471252297 165792299 208966787 551769085 629135296 401077423 362273611 943065819 752429482 860817641 176747876 577676808 714972698 57491976 446195067 267287369 22116250 264732743 55230374 866075010 299132178 936981437 162944908 996008626 292141489 98842082 892562913 327404503 915303811 181740977 410277259 613085276 537941239 834451757 124129093 742188278 686574525 991810843 167578007 136857935 225928840 881566225 879329978 432872494 496067097 149550915 483621077 373956568 94875134 18677491 992022939 950938160 713916884 9057926 890116878 494913716 317807618 525105850 160563451 861140546 262048725 836657085 450650908 496899724 517852112 878762488 613725049 347662503 959146450 299254131 376534662 607991143 596834235 793978920 138754267 827279269 406162511 356389268 10941056 633323913 375722464 742551707 697533929 295543945 418330063 451043147 745051910 166851386 156118478 193137779 828984803 574989683 405116660 78673666 217490005 316974791 104820697 222049638 538463654 422962687 680682680 380246892 874320428 314204537 424229757 294019281 533028623 624566433 920800368 262866546 37383749 272496454 26760524 203766700 375902752 770586544 497951282 442621773 239372833 603621693 389076578 501949059 612950305 672889442 593854365 667597355 472027539 720884359 108930691 337251937 227233467 478396934 707012835 344302830 60824535 298206165 999426468 773687379 504454935 357140412 38857676 914956273 375673688 639374786 130043757 742225659 906586931 324775713 650314814 27733857 91085960 875117832 338480060 812108401 679707467 903755689 938865241 349114399 330959020 99860631 126753191 122694361 950186290 466190096 104109954 346339964 752036775 903493166 527064546 732844152 72209288 255355045 880085338 255564970 604607848 53608577 188694050 271633154 389344041 135887840 100788997 932129850 742766033 998178772 654446754 816311384 564628273 745224577 552876139 297770081 557063264 596644945 626116029 939391360 637147430 325059393 668258446 898500307 171113240 653419966 613523280 721020378 693472900 165936671 570014454 117634911 78427443 197363170 749952581 582858920 202161435 311925208 639427228 420995302 272225809 449807214 129092989 792575775 171007035 29842407 324576313 335157529 124430832 20202161 697807586 268696851 710830676 502098054 786499050 408171416 875868313 217009037 691319948 520046500 789915073 972025782 350494899 129028274 516742144 807593310 861093726 326650421 711837182 356471438 439277060 573235313 191249345 913577585 86094681 477523046 376793306 738719274 904279146 184828436 577666263 826025876 895984873 801785996 158763649 676685822 536262328 189541658 268439351 406864130 221569446 247194727 491697091 461345889 496885195 807688789 484990095 783650145 856588025 109159355 945311745 870723040 307738297 395287163 265857515 991668420 392041141 501032459 849093512 36427228 309854295 537179743 81593923 481707302 922620407 137284272 590666796 165642470 633342395 847544099 388964764 37484702 197497203 691594531 252355450 561254834 372412124 339201079 903073048 376488673 428598390 922731659 448574096 357643794 153033283 120779948 371737799 262273460 926638232 964641724 141419109 318407402 834179078 340065120 826863920 95063041 687821746 843352531 932859756 647231272 432842667 751711803 153760798 675937036 424101916 520172001 273725987 614570257 274206799 501252249 315352109 13719800 111317389 878189918 495211635 618710964 612918897 709058966 700939732 507779733 351076372 816079109 602827456 717922597 835626036 731820833 978634985 543521316 313413079 635065060 904511764 986231414 404493090 345482685 554518730 848443918 100571540 867964821 575008527 229875347 434158191 125045087 656794454 191540825 628834860 448845126 914743852 404960114 664463737 302645207 279496779 532993972 975215694 510998311 932182486 558098688 250947387 797536002 671977378 440804021 149717149 25832615 585302489 323175505 920895210 311479065 732306186 723918621 413949583 988415177 421403121 86903910 657085279 598830802 670501710 107141927 717031071 835226113 919427542 588908784 290488278 835885769 947609975 463394342 158268829 618797750 485455092 272551116 860660837 284401343 191589695 268590171 570156568 84319189 889471244 497274260 920280650 260030362 574857987 938673972 758925087 342384718 105822954 692116592 370383890 239180979 325509710 672102377 137398736 248829453 125045054 802092608 805656054 71409228 452746896 594639408 601629926 799981923 847051615 78837761 935246433 280150598 104568773 498536656 992646961 630921924 284743979 248972960 46196104 173020749 760289873 724358930 735596231 45099220 696153625 398662610 881287778 132813856 943467275 550527773 748885636 239476803 748127680 516988832 37795931 499898558 697845728 940645442 377174193 126380798 166010602 760756397 138961019 542411510 833242745 831822411 198738411 66151565 527986267 140718866 298690453 661152707 554508141 602701627 446280781 666480989 16378065 650934712 827435429 844262983 161257253 783312475 819046870 400818863 113391096 387568085 210478140 93368216 851302969 761457426 34196251 606427419 496704936 71454191 318268835 250649669 818721042 680550379 785450555 983786468 139247655 277651111 95929512 751172453 477169557 291455566 627509835 272684011 550689563 18809707 677880001 686166059 658842854 385271323 744807561 902895046 217866214 753384752 956466869 639553652 6689520 700625107 272293938 203248120 919761130 810173221 664363157 919088026 237997122 206264624 431598291 483075989 33181686 294345997 400023919 181448764 385591513 160054058 782749394 529507630 693642685 87860920 839509001 658662215 64247233 686813728 986788539 721863953 850180134 646919569 435084177 25238313 176529965 612548459 563353439 369094635 441468773 814706893 940216719 711798068 79396197 8216655 774819931 808825566 214125850 761827695 652725248 760963011 997748726 478521245 867557638 149963990 278484508 44353273 910710014 637979345 551227677 40882575 181380792 696159468 467712144 734594452 314148475 581471756 962810770 476975601 265375432 894228629 735045917 888831447 795403003 331450787 227819546 71852756 357787707 426098236 84536288 227122804 651728163 559661482 344285141 360503543 330598729 271015005 669044398 710217832 992024642 898316030 761948852 226488370 779584489 268008953 264266005 941282274 992469478 315719457 443099448 664999852 74190074 205460176 618754788 188145588 92551737 601051347 305562192 283445867 923603127 516510836 222545980 323514813 995999748 160821960 704079214 751960593 755592862 10620614 530067458 652097698 9155238 219373255 33514855 926421906 575448660 506873499 431377880 608074822 709771027 347781851 345687098 51594951 331925715 58181133 327223260 307146619 653611443 239236537 230040633 183771370 749474985 493003960 437188026 377465334 262772528 330228900 688073205 437835490 139025623 394203053 720812692 45332763 762791351 373020322 38979565 985463118 56965292 815115645 76227627 261040117 728078307 35438933 107510021 199085226 78351298 573370443 259086468 908281613 218140047 146274438 537323861 643487869 707227280 480802713 927034949 579250758 333334534 294270220 264560545 733223128 694225850 234100406 748430225 223729549 531074383 406108571 982527801 536859344 52560001 295046958 813201210 840606896 346065840 598324213 524395276 518072225 708843174 192067807 422500151 768206988 383125101 441413049 100771688 259260172 719135379 397166869 667912341 327999492 464109818 963370608 733142471 45791014 437460199 587436177 531523232 684358289 953737150 689882058 855869960 253184529 7266222 869260990 468932020 835907271 628172828 545569301 974552381 486096322 578220936 289324043 669946727 929139427 770643981 732706896 413778511 884015846 700584563 860679586 956303428 826933358 617285240 931722102 892970152 427724295 986024374 752623030 49873689 185224778 261420162 816892587 871669673 726763662 584132747 50762993 544482244 142880708 156816908 519251171 875699827 724356738 583296833 818785630 175302309 97338819 266928055 520267075 264307269 961658328 837131337 125669748 886884786 611483096 507168814 688805441 634688334 510598029 570365183 841324808 506731231 405757566 289562545 359950835 101530945 824746235 864254355 712718173 785731266 989252563 467626317 407658148 533397853 234933598 993206266 380347373 89663847 689220934 473098907 511021894 870324263 376946244 461718089 987167746 847802645 703122607 899760964 219016451 224764584 334891703 797653818 227933912 30314636 643229847 61250989 136071351 30021015 92245364 235767468 38061265 854825725 742720749 478758685 383591254 846447845 679435516 185537217 851954435 49411738 651612106 672386000 469640996 370457408 99532618 817839774 535790681 431428252 386087568 14020559 787131146 701061564 466307747 702003510 487374105 839212753 837504376 46874966 129823250 13852008 350673303 655567857 330675627 547501122 510799172 602328801 88871588 688377367 208999409 965956697 16546776 877290936 15575175 392876837 313022566 730685772 834072020 174154927 639274219 940509370 614341297 392717059 496496419 390207943 448866005 482047753 161496215 179351029 118162101 284940732 456424287 128004135 695468113 821828804 367169561 10464273 293031184 860075055 187784429 336150058 857553241 124795606 829645325 818280013 860971675 744364421 100440204 710579752 681802684 761574497 332781969 56281965 880550897 650748979 122589176 710766264 797587614 379234734 181648230 186973051 502519101 669122169 4893914 253570557 673959197 987849418 444789927 13523817 330760935 177513426 983457910 642759137 990969477 364679158 532292723 619037732 670500630 446743881 173177195 323251322 952589230 103934501 400918551 887340680 713056831 914136796 286276027 868989330 440936259 819450720 934729596 80104022 248806055 553090196 83967512 627441591 430224751 706946604 973180789 872475810 638404839 570274219 753735962 860321248 74227783 843460068 14457403 165610048 464494678 58509126 692146089 432934692 584508450 696444109 917608523 110130074 876008681 308099548 66419365 744951604 900157321 176600101 291958093 730774043 704558545 895619333 293243385 194295936 780932024 586145944 192562769 178048440 365894279 883444621 917777939 484558863 798016953 578669871 267422711 147979216 960112290 351090340 182765115 13770460 103086096 124951448 499364133 898032113 27075538 870988 372452276 942538467 299009194 7686479 386181449 97825202 701229237 745399271 619196683 298640030 487768004 470042162 470861324 609495761 348317002 359141441 399467726 22926192 776368764 557685941 472786170 324989427 276304581 75386007 609187890 446077080 12062387 105344130 914239377 463272358 492680745 931058232 73439399 110500029 310361718 320231866 868523099 708196597 901017583 639066589 819155923 513102341 524601659 905640497 562231221 345048245 45414222 624487202 128438307 707980491 980855605 824715095 80701696 165273448 809156727 966819027 494989168 176387282 864980208 448727411 170928961 837331690 457694402 795735905 524366839 445800130 42588087 569378694 142466386 209586045 223424099 302236608 614667780 365642716 550951860 962268171 25465617 3696210 918386797 752520482 933354836 392451541 449342960 342724931 691060220 904642437 87382372 168435062 348943711 795041702 456387221 998909272 535734600 629345170 946635740 811146528 417544800 592915298 462312028 293889352 360315413 637718379 662804613 737350237 48408839 361345541 196560054 166371238 401330478 558693602 296326740 225364741 827223693 961903488 364866420 30231548 520190557 218697978 36535014 782768169 459914119 311672743 279335982 811958526 314649887 585636229 891008223 777639058 822339486 824693190 410456935 178219939 489151846 173040528 893650155 769604994 762558424 729320284 983929596 310778250 394480058 399449855 980067764 518594424 320642231 666264730 798372120 97183215 395373816 145508966 878505180 120488625 459370618 685146527 113670224 267334110 929347982 835501022 907999866 813504630 440174992 379671286 976441051 78618876 467166025 837523305 474420622 577568416 606418166 108232897 93746580 407553160 35975214 426284602 94858180 427193189 614095633 182991984 408819279 690424161 682586326 377627221 133849144 501107234 594055390 886109854 446006438 788341832 469587163 516834922 813891087 591950802 633202677 100060134 789348117 948263172 659583773 764894473 648896623 361327300 549536858 770263489 260377224 981310929 843193188 939386368 885651618 274732518 278396918 650555012 652023372 821485734 756864373 804575572 487048023 10095884 619175375 297678481 213475106 94088773 888636236 381441436 140294658 66139532 230170297 77282161 72266206 563381053 560562882 875223124 100823759 210077497 740252918 634794639 470505308 301295996 830479313 994152850 116605914 282262020 451041599 763202068 229506074 30980218 706212329 425125780 780132598 280014882 191892338 516105569 926298280 322625218 39039304 99316158 137297770 118518121 458100729 956233997 652336584 477360606 943014192 37452960 821163048 452743763 361996566 479916118 923278861 635205769 883092573 897950402 648694596 840598567 159455518 487284540 469165465 270389691 832982785 956934174 29187585 318642819 395191192 328761080 218672315 858940819 348300434 809041571 179181573 293055927 188163702 345834720 846275834 879358412 495743583 848044993 800529375 764623369 238134284 884462247 523614410 730316501 396651546 36359760 585672084 894025719 354802957 221590913 671876830 119708304 472567728 506222687 614530309 763827274 781620743 898529933 597007918 13057039 1631322 753432328 156479138 476300210 173724332 189386686 700925550 449878342 176310932 116900699 150001344 35953679 213451123 384713763 303345874 180059702 353294986 559252587 767718894 379642818 727971127 26166517 243002783 444917101 608877193 403239258 334610709 107117888 721007502 271216722 993953642 818103647 663492964 780483298 973923533 866025486 179365277 149905952 23368662 169171895 23098183 963375826 454788163 482711230 210580363 332232190 449246323 874042569 303125141 815635780 859699016 607416966 925772132 234091002 763129680 989134681 170625020 157425116 55759310 811835529 27576602 531872073 679327591 891556918 138386740 467635938 731212832 25110239 153489540 662501260 915540382 70360308 416351292 597034977 673384252 224092130 861172753 849747940 687906167 247653147 80539557 229754237 730325352 485397990 730944321 825305969 366340335 934437839 289127391 698592132 13614988 786922140 514755999 335709193 137867783 466022394 414925345 868785238 425168745 87842658 267030639 134821218 666928574 429419775 461797498 829162344 429489951 117152747 756388284 835783303 895583566 924506661 575607275 293630099 421023555 387067252 78429308 464718160 493541790 710878592 143410300 579104366 991944478 854126452 200588418 385226214 781421208 61604225 513385076 266422668 584544479 186664854 624410376 842173224 731931241 305071875 408310399 446576827 825074154 854765483 772318462 422090245 749567175 482885779 914972924 77121900 968835831 213292910 618711719 833112164 337436357 588113304 722447143 467091918 987424198 510722752 848023001 805042347 914144379 241671972 478343088 813626893 29139726 537191749 838988775 199572473 376646348 409921964 808431542 604571966 875632443 460544122 162976671 349704473 228012665 301372938 211037880 111462589 921754576 193780678 552481964 969038305 917501184 332581779 71533846 205122069 831776263 294587224 784753102 426269895 701518733 750874118 496829754 653770632 883526320 286131405 193649968 576831798 541266734 297976221 150923338 528474118 383734987 753935446 787918981 996268832 591542001 180839806 697396041 134742376 210132148 905333035 164127499 847628911 746695877 842793050 699886316 535520189 67524008 380682811 807511168 266351444 423169123 318090707 505607250 574569789 699397772 853462196 284951077 406057014 36356641 385568108 53860032 157389377 544522155 496506038 430692353 935904270 487986106 833874612 873701772 227098388 896633943 913027245 991394763 499444505 668149913 743335028 75586711 331176002 960290843 827288825 397251000 907815017 369677884 341824003 827480690 205233760 121643525 622120571 934979010 874910145 719706856 540933899 860700057 162519116 815730858 968355814 71564830 627326608 974628973 625571455 130369866 776622893 801784894 869062599 993390020 704276363 174987908 448577681 706036496 395094742 465654278 969751558 729335654 119618529 183767078 957151466 668385185 803265152 203441706 922273018 523856273 909451547 226863221 692271468 46165541 430401384 163965280 178072867 397461507 747783622 622734628 104586982 667299660 938904391 669411735 390047036 306588102 91742259 106363152 410539534 487991588 696432999 665419934 269974116 353617379 512963555 699368287 842251572 69800042 379661882 832134976 697679798 710806957 179085475 833229667 755951747 416987967 432997446 595614712 838504846 445745776 404174359 596830722 222530946 407436609 174578159 529641997 173894190 375195682 518615722 6227382 367353661 903762628 846159360 149138061 513765056 998115686 675493399 949013833 404914555 10750447 734892298 86561978 707135578 751302679 625306107 11087619 357639305 132110145 69770818 659463848 880151822 288540800 142145535 845960020 376745754 590669957 803118659 769050194 271943786 254818120 534931741 69342223 881354107 715823302 606384411 533329527 338460711 229589925 391905125 240612007 804076013 577701581 375162647 562480311 504390274 84311025 819014584 801807847 430902145 535743118 623916427 39042861 420576979 797088836 876020931 684634203 408592531 640855124 534672946 398208505 616531451 620436894 876454704 27147214 273428445 452394222 743372158 578733285 428612232 308789422 327462554 365550267 300769409 272271173 177382295 38995532 604987167 635108912 739705223 775840709 955256767 733774042 270536369 971781573 252596249 470069330 485251397 43354970 600695517 17511485 626629658 865960174 535602982 392360327 922227197 493785500 479866415 70397781 915003703 891451497 330423449 761461349 917962755 790725210 863870987 211550462 12180285 245245434 766903922 634586862 394949495 870432528 381274718 883185850 940748354 63895380 782275109 117822859 541066671 669835587 116762973 554441808 861363307 427202943 831095079 418600918 777846945 828319804 603426645 293920865 346062734 953900081 821726423 594074266 577302818 982211043 357338799 943903022 553642164 931949231 532369185 739973364 102390741 682235285 622459041 965571280 188261546 390335552 681543218 99791750 659073204 62025772 923704669 660717940 313719525 317582353 668169989 794572989 489899216 562173851 981085200 163757912 602802495 462133609 436880859 888431734 385375837 966328517 539305661 472489597 61164094 488692301 227755142 308741255 684155856 374325224 759838805 42175571 180233770 191762702 955802201 891843690 657222135 615056149 901857625 379440017 585391739 391724141 797773841 307390496 744354424 361705350 332650417 775792478 37273732 783981842 677650563 970270374 628739387 322051 567090733 284227799 533878882 314728329 44207442 536478052 947272432 190933313 852249836 537827012 542084590 625673278 458175540 195186833 620311606 45918798 843254822 305061127 750307744 655943079 787145287 946955887 740244753 182786989 561619016 246817055 475513745 925566704 589852635 752926269 954782358 160624341 150854354 330047613 118655268 916657479 966064447 184394578 814066816 670145290 142621161 766780898 311039169 76769760 38580745 881275703 827186988 984606609 435233556 746307224 604090451 25828837 441282365 402355965 340000311 765216043 260690362 481321532 82604337 166321440 720589674 880830972 450543112 457397794 563579444 356000013 347886148 976532856 915341758 360295198 405561044 792702376 161291675 586937830 592540169 966686455 204594050 43877731 6978718 536924163 101622736 868144254 305028282 320883453 143830417 846560852 18775739 55211428 472089866 657154452 707037935 544378432 901114037 810553925 766375182 246966398 334792756 469616045 579739867 824420977 883917038 156184868 725971754 47297057 452482006 518013255 750297719 210480816 857814066 53043352 980637662 740131053 664767053 459945458 810067170 926181836 36466018 54925548 850711343 907201499 574747103 531408181 786984232 157000464 539298933 519105408 481506598 420661990 943325858 836957872 509643819 70205281 981541605 627318188 415134039 230387666 957893095 8601766 33044345 497518540 864312007 990503048 362540264 282881173 664608878 443375052 246147763 781216213 906793252 567558908 659236027 476225730 854798191 859334364 726904841 371156787 383326173 858287891 578558660 649489116 788717355 204412587 686832678 687999224 135376580 397778205 25520655 446258459 548794309 805947204 769907994 193032175 641833664 73951425 149645887 733130036 733743294 919838028 100780708 46207625 435191219 807498563 380755512 200766368 343772074 480820833 293592173 894883149 448763752 779844051 309535211 92443822 762442954 750501137 901092978 677362951 850634305 359952926 317086955 87185179 950565202 196471297 952198151 534509002 415933801 78300254 148545384 874941598 844902722 315721307 344323697 401749499 562799275 761812086 18740343 229446187 736558634 180774072 297847759 468029311 1311072 259859958 960045123 462386274 843665388 512661364 464317238 212191309 50541876 679820777 779014097 493050440 852738297 402016393 12664171 716921605 999855045 177498550 339678295 5046485 562562823 722095626 750665113 62250690 932106056 733236130 746709264 700679216 480627938 229508456 105432545 273133422 71149802 229219811 519760172 79324415 185117014 454649463 71124968 475382941 389883668 825830892 202499033 504384188 223914004 81066857 589503082 882057847 707095301 317981694 744812400 653099039 906830674 763294625 250929904 62862179 528446017 694588 846767085 26702656 956184939 988695082 872921445 263581439 771842131 315792155 687462834 989638056 854332007 502574359 417587798 903629623 277584995 949931562 553952176 425821335 611542400 791372964 818039857 71774511 652941083 347650074 345073153 913354257 498501011 694925898 624964450 317970593 165136815 504008709 134422057 913377097 894394582 978324172 372680984 873603143 773317579 177728743 767079782 388313158 101897596 620677702 169162191 512461286 543112362 959405084 673247101 814570576 485081513 812905903 101151960 723815956 937034639 9461639 333856565 980534511 982221076 928957416 262419322 549598631 414060955 309554783 392481063 572517585 677463618 601322318 300074248 333220376 589758914 298956198 615260142 884150612 754523199 899905570 633547408 214552565 287124489 821960806 307510368 716911195 855863239 831060932 714847910 466595050 961930574 376675410 969816498 512727524 278440745 338278416 466999206 997345937 661522663 99911608 161855602 227286901 476486276 611915417 119473529 552699687 133306337 858275154 107344034 578877307 390915941 793076737 114942398 117008165 426825461 859352232 325236746 178275511 636431407 414733578 463458781 26171756 386801708 943095410 452506056 971353818 573706241 463569773 401418676 141603208 873990919 754783924 419305848 243496849 277871112 348394524 499593482 724652595 657157119 877693195 329082011 105739108 712303182 893521255 656179787 419540633 773170184 743620790 628670991 168859562 957519918 126319182 225903886 60065683 444822070 992637038 485884804 644453383 998229695 833446044 638782161 242899636 930253985 48891941 255526455 86971564 125199135 421352326 871718062 791189580 408485622 78775735 987514627 905285938 403196326 885998624 432405731 935643082 907122409 334954974 843389811 120048540 891724208 866691549 556904875 118926046 121459790 13707584 275507058 436615588 305242850 711797271 639756841 539503223 32526984 888227483 343824293 37704260 371973688 803212544 788852385 591478571 475309951 858188401 475048521 490350616 142841290 137548463 497459318 479865768 691964035 165560653 559650689 95419249 430145657 603301484 369791864 596934271 472610870 310359636 419952842 777109288 562843757 435431545 949930497 515517450 777767747 558636456 457811527 255692582 166880604 699559574 975586327 896389690 399428648 312388572 501877399 620054566 179653353 937231466 588098171 423917953 544168985 681149927 448730366 196785872 942587780 191165636 290497154 576288923 122890205 21631215 919953666 879351001 273126365 146161519 1486262 112239254 896938152 753132449 297401460 927935954 58620668 821185171 264058146 136037448 481544540 616374558 926629392 51286343 776606420 573503248 614568346 205712532 315549343 627198045 843972669 882129239 681914933 386586766 395567503 116770222 966915497 326691622 90393245 196671893 588503691 316020295 539296841 593361924 235287329 722346447 165351615 145589721 199358250 697103507 67098965 927348978 713530011 27659322 376044210 67532574 503059716 242499157 860575718 700549530 620141832 232245308 403430203 697186216 599190378 932083610 139106981 206921721 912200913 771058969 710665258 493687021 968118060 987011480 975156881 551122266 328655921 425594224 203064376 469631028 33842869 507061958 208951190 960163402 725206109 231757827 884282084 438324197 388001724 623945002 266114493 785686712 515928238 361119887 486053296 72528575 661845748 851383660 936554618 999441647 439887941 913826636 139279468 308050559 158607176 18665042 38055645 328117330 671810665 633340399 725343363 888608880 29504196 916420612 428351990 603532110 502228881 928301718 683181241 414365023 154785124 328657044 112563582 67301154 545009518 62840835 292186888 989495155 903938097 123157475 911468108 912617237 461295049 743124148 954320589 214620913 644318165 747680472 598599896 723736962 843255630 513479881 252871446 803942453 83507153 105497900 423959215 787830444 76737762 839651649 411694955 18008203 296651300 642327458 348224886 397864222 391140755 995841233 151887958 532659104 469268523 926403938 799769420 45663466 120758655 553639141 769593525 260187296 976587941 1959045 168132921 416420411 634277699 54311804 20728643 204039301 586568896 893874697 88111421 561341184 323419583 672070394 482590568 572614281 692572415 433288626 470060868 989655821 737024911 468917677 372926312 713252364 406213992 909271863 335058411 896802024 879142227 594907387 880284950 331159829 655020712 422614253 554214394 931747462 192773061 213592741 945957636 675660779 588427852 257628403 149511297 126222837 413670957 908492125 435423080 564226510 300148686 13344666 949696242 108168213 644829386 860624820 933695754 908447738 303675049 111604113 756269067 364474750 779064482 749361824 610360664 589082485 811419071 674837736 46374662 616423124 968567160 418714820 10565874 193654723 673567190 617972851 390945264 941440176 987136179 948139354 635464817 51461619 531620597 786118017 974759075 18504480 247392576 266862308 284666378 715535351 117288729 305086601 294252173 741767644 597544029 180343240 137833881 207980799 368492997 40933014 618501014 835223276 174840863 782760687 543084299 748361956 984522597 548152682 842880237 327773532 511552701 515164184 626534214 153260952 635382385 661693264 351691937 957883618 182947216 431636193 429405755 878359190 222262504 146852871 135048212 381478800 90885672 431665525 636608268 269080122 459640381 202847174 986376053 175726654 354266657 682699234 899898700 184957086 4959759 96354368 752159891 91171203 753157040 928242979 807905563 847266312 679949184 581283623 854206041 277527354 318902091 642111123 356088319 611760851 683853216 341028419 286163864 109323247 550454617 342792996 299508783 833052056 124904231 439576933 931878397 47358535 347867196 665247795 174043896 141990870 795653536 214132709 177570622 625950373 804565650 813346247 44568118 999731885 449701458 814410657 134431391 719419770 88523274 42073244 178551196 640084315 817291060 145703717 666595326 130168080 413772250 881801983 694499333 353360867 836458119 18740890 230788010 414402652 8019859 663534758 141925874 251221290 668537157 226192063 462201341 452603985 333331747 620191044 278912575 70266720 500169184 715940311 464449823 21880593 527650222 826893342 850158536 726493230 265632026 57523960 796745615 654086898 121712279 195450956 689345479 523728261 361865560 872639363 415215896 118230109 271239275 362637621 685571405 374456286 956198207 932608313 405718589 956592457 936704502 231385371 344035658 630100441 837584883 76557073 442859279 19723941 472339765 52249736 222142131 908233392 170411497 539839853 876356006 972991147 734357748 18174697 207545199 107329171 44352222 396354054 977248443 241324437 14849110 16337373 567456517 419392460 165911365 662595028 196170262 413017265 229927146 278177007 463551489 868265547 998887956 240271734 500130475 505198213 569153262 52256220 436415162 752828157 358976326 231523030 629954378 626172086 65115648 831019054 411214724 85938615 337030999 173171531 613753867 217741757 963460780 254449456 92215090 322203771 977275046 771336840 53164723 360844266 968820743 513263247 517620287 496022827 468242002 133302937 582763613 858974430 717639302 912999026 252268917 719480864 95901607 485594983 943285858 322939152 650962326 408746980 236630108 838576284 914734230 562540563 177828806 418337144 116668708 178419208 936201633 611337138 567505091 949198097 145997860 451575586 27520373 224287047 438210241 660240130 795440025 116291004 533873305 850510839 578024356 216029722 223955606 272457890 657124671 87327550 188444381 638084448 315343852 371106527 269730367 168621166 518240730 943189189 734686398 608458952 188060725 823550944 917983637 59560570 461874079 971857422 761416693 805232758 274991352 98809819 415885636 36527072 711551762 795675661 558841678 915784541 313380425 759655406 681712861 349792987 311503250 596614464 716383829 313673858 719089279 382221810 338395701 87092261 790693136 202332655 255701392 761962295 441635759 594217151 744171607 637158918 230450707 321249668 677174392 247649368 101152138 363259340 761349729 356718304 304517620 451623181 505796634 432729118 450675149 582083245 973429885 75313642 677023714 545511419 305540342 442223520 67015574 268160771 703933719 441122454 261765463 441564151 209402245 550236560 729183824 775742173 229223910 673250390 362820168 449963196 722949149 814298071 829956041 668114787 988125352 24320262 22523938 998599995 518283800 69566237 884996779 793061243 713147305 308224704 306692545 133495464 513239752 344151276 397310276 388252255 140608590 480996641 927434660 516178802 842609082 223274284 141088931 3421877 384482137 329644376 741967602 375348783 762439557 815724431 34779666 933142988 731916093 802226733 658116820 238821217 993900179 813703314 14798770 617202704 128800388 119390159 66258449 501142029 113846536 312139146 122993630 856401979 815902990 205959521 512848592 118994640 436354148 811783466 889617842 398007625 299129561 286596598 339134207 72507184 440905326 804556565 594028878 596303160 929165089 305012050 860644887 951862571 437119495 885015195 243494273 954831872 244969786 932698322 750507188 709439307 311451477 974392544 489682062 761774944 556395812 267039636 302322703 402259232 882481801 628474109 76900461 228307266 238021907 350583571 212930713 895194861 97628520 877700985 707548788 991553779 935766125 618192872 367724224 342108124 890539177 244736228 675303719 137957073 283508736 445486764 73337884 167475355 767486476 39920057 925940087 841820504 384883416 296940928 223606426 459084483 88470445 494306719 157928807 903612743 467775612 548277713 549644031 637530260 334005966 911044616 40526064 47203969 209718872 427571809 813623895 729965566 727729919 621035173 266425709 98569710 390751633 887572817 288588908 997968587 511648661 579095908 973741347 707468681 500379816 284800050 6695342 936134809 615172400 678672561 901960700 135024969 166933704 579577984 898611150 228565998 364090059 559224842 791923229 725120653 472225337 303862243 362593713 973542141 981595373 766182098 796306847 481203167 449587345 130005892 67222621 676654158 896075427 865824807 637589503 687039592 691377515 874674060 999177926 398981383 13798153 183176167 662345297 133427960 162538019 247600449 530756806 709909214 242983510 821985333 698855841 552717361 799392832 909316549 317994011 839425419 854597698 166237486 187647767 243694081 626518981 780152140 389262707 423173951 683327736 33763777 856803524 592067452 904149352 393763055 699534654 333372803 337943294 519398025 809352590 147576406 747588701 586701941 96296703 636759504 768347106 76844031 730479786 109711778 86324299 413856694 197126690 523786633 25515978 81075324 369747897 263616025 367394494 746928808 758998515 242491432 987804190 63669364 823787173 353538868 263533555 382698088 854948197 276066029 633595022 646065745 24396661 294870802 757265342 354639219 351180251 268700075 735176569 452241560 458159186 620159642 442736479 191542386 17017348 694073084 922767831 221345945 89191080 209847909 949632834 811694309 967562421 302893588 200683547 515249308 362785456 955857064 61365783 946775985 277524259 694538641 170511192 845628541 861064762 834850028 841393222 131656443 778060077 335345324 492242313 924140067 269754676 200160122 83251232 20918703 143568470 407468454 293550466 302028063 76209439 82248105 981764 573225205 19695308 65966936 482321563 449134798 760219763 499288905 831109996 613641515 322950834 644094041 270416317 415596525 706625794 548411927 20037059 562798311 14300161 369098129 607426251 174684564 377369949 648843072 508090742 972404044 358633084 554051528 134698095 576329774 628550628 957638297 690629858 930300324 886694619 995189709 686853217 29539566 445929454 576505926 851170628 504707408 760202127 298411993 846620557 783325567 649455149 537175385 695051144 341175920 473175730 406323616 512832907 799340051 205672983 139848470 612195844 788757859 570692639 902024586 304197077 497891350 572413720 231905465 815229840 32102499 433596895 807687582 245559404 914763922 558942769 729016475 834018743 349102482 514903436 395783936 364173080 848037605 752235294 600434438 395341790 471556370 209643864 279640359 907183829 607683835 576106325 562267403 778960221 531984237 980464487 176523658 648863385 588822432 141526092 165836385 809308823 574878756 179647638 57652839 875077898 387491604 980872195 922640131 934669792 619055279 642609689 235783975 729884409 226763319 781524999 858214729 519217345 212730602 799842485 94548780 399026847 408601327 405809303 849031761 416357999 123231826 694187350 391341820 680745442 930676693 90951097 282929314 722480753 78599195 49943211 259746523 478808094 327674327 114195011 877731404 24752002 961610790 385892372 787648977 355708848 473522590 753627885 363426006 873655959 191777915 864800677 753083768 628720012 978430708 105216339 173581794 864850458 112490971 6123036 672016066 433679176 642599275 403752563 118751398 230184697 624257619 981230031 728659900 395850238 538624752 568355098 948363688 34599324 526191163 75747807 67956009 790370599 953181063 31647315 123538741 793305594 350942993 893803378 128902037 204393464 869978533 704771062 760239410 875084681 700300220 609530071 621058710 238489746 883144033 440450551 209344096 745562718 342647170 162716294 89192982 732158426 339576305 805095897 894083464 464788672 356387148 744401974 149651077 614450442 341039665 341490952 529325996 174479542 839044396 259864914 133301700 590540834 730234019 346437739 100497981 696346899 317425609 683226653 930034215 531357775 74090109 724954980 303308222 960848907 384629257 977369596 95724736 946644531 121140708 54265856 759363767 566904871 808860746 816317295 691666087 442538149 410906390 796375834 976500208 573162157 840165952 488921382 16875655 593205007 17081856 907833698 221655805 238369539 982960024 303236291 653340309 779341917 905095078 360727243 828268510 425166704 183898063 400580722 119354882 509823689 625096888 619740222 96765092 372713713 808435811 292885616 567207196 440526787 529863152 672634633 21948821 653705092 371215362 211163930 332473720 215014193 856076655 185669104 112371948 863804865 780930034 354063661 20298562 391868178 287852372 709317559 62696879 547080929 462535745 988888011 739708873 13513226 665805044 905415782 900404947 171997013 754781164 927069709 964153533 872706268 389667341 401781959 24677925 566353029 644363520 403482018 121847075 992741708 955854260 568733095 618970505 778800057 390297885 812220283 256011767 413740940 993580031 296586414 339671106 316805652 96653034 836299717 861288480 899681901 595104188 801033857 485713369 797425298 169185726 414657227 360418963 784766068 766520232 465030386 530757451 94669388 872684686 283868328 33639264 735294834 568452638 768725405 697233970 152903405 487242487 27451185 73675272 825229769 707874851 679587698 977333558 428410375 568203603 891478786 127344596 929194376 445737085 576099898 983342216 328809422 722719316 674325715 403305354 892495087 776335930 738937224 616234689 377203871 528606824 431060420 28433939 93620231 828664755 827335990 484049880 247078294 321515485 742392242 198726346 302427294 73078160 32821098 383659541 889194307 194841319 764047839 358160128 501541770 48065981 807315298 599727083 408460444 171159539 438935073 585196927 857438900 149439369 906506463 315148941 397915477 198655617 976694049 173859048 136760662 496876677 25472526 684729595 785330266 723674378 560018846 168072190 700709254 954706094 897083293 695673471 352193531 5668474 701018635 192445374 812445363 186105096 770732495 350937050 521600618 806964054 916861175 97462462 404891317 84031896 224300149 566647493 183906084 253941431 364245408 356017096 357315711 907000716 218562593 13270083 686141761 48378094 517452128 422778651 326795422 381675298 799037082 116293542 987422482 363026847 121994504 835861669 432219007 285687273 654287320 815311054 68752383 537502559 837137091 233629244 523520154 990390546 297587744 883764312 559935887 845717119 135312638 763633321 638248334 47719212 329407694 253480156 255649794 917254196 18892234 863668668 921543963 103614487 900689877 661423989 731778275 607372430 409998182 614824232 805781188 645363629 472864931 691531919 932998079 780959522 991954424 257652846 93483505 30266207 839265765 895813568 928252347 614455894 904124021 50997081 596000147 916021213 761019869 788093139 915583242 50678146 944046815 985177233 250332758 660853481 355207979 906368546 552220654 63825052 425643237 310989241 188691937 306483670 971336341 451868951 368946717 583852633 661215718 165975665 272387637 386645537 233340447 112876535 929846145 84602020 682897352 439607568 563759272 843530856 653510263 399613030 268893617 334649691 853635268 540056530 175653597 807321950 211178361 73682591 822136557 294485804 579444386 429063191 924753971 536396746 543773718 866117573 432761133 682459259 701324005 79119949 762650784 329919085 988087221 299833207 389697140 321868117 677943317 107307311 639127170 805831973 465696508 138020569 454367212 324312602 405717143 63047692 789288069 102996256 840690134 932456377 31837582 875133793 297581582 153774134 319826450 57968701 143088875 58693792 231507010 373991835 467792433 62626775 738022813 700847405 128805733 365289918 120135571 190204003 579230723 703982301 748714009 716335379 623391914 252383162 603726382 922151476 14278659 185918950 309978361 85754488 818205942 475512667 917076840 739329752 372567083 377228349 996320070 284097132 607895746 324339426 860235148 81885737 870293081 901696022 2964358 29873393 266646560 468466397 302789509 147142488 946903572 831235666 626516388 966173460 639440572 795612614 571515409 646082597 212240363 628750568 121291463 528441428 216165415 339680715 920798795 681303300 685957802 265838515 160598930 305617963 831528310 368215887 222563025 93383002 745856706 712831247 345468608 862509544 497040457 583428970 980395505 729275715 1447065 13836170 916800706 707813071 823138080 381906702 48920064 390236775 175710221 463129737 138360380 894989664 569892542 675719224 710536114 914460095 374656297 707322174 760281537 508284297 807649449 631631406 367921911 102790784 641154244 873249778 605504145 853261672 381119981 596333088 272768603 673630686 217132285 941333800 681436362 963907400 50934423 664327310 851813734 862934874 855427098 163968528 882775153 37413067 638864216 362583188 860000377 169090295 403155928 411377158 418543407 583368190 400261986 339883671 351415946 45582017 46943741 218813564 65724902 942461525 849939037 300087031 821604132 737187727 577580885 560598591 453303985 9575713 497615039 73642893 825351347 213498115 650634951 238361910 324478557 669071970 894916083 335302463 779656239 396826902 642829722 476092281 706054367 275159866 133398189 965526635 98300856 914959210 751957634 135269780 652957475 549580867 403541610 429404553 18956973 211107383 996012033 671936192 293327823 862243113 615283024 957677222 340476920 784549607 57009449 237484291 910964505 45721439 519224603 749177751 616991072 143201004 782221949 868743536 795762226 851673708 691482428 4966628 417490007 222290658 483658677 979635406 168406218 746004318 101197851 543909327 457113351 464466767 260961125 421315104 918627211 254389372 991282757 230469303 187504541 581018613 857260502 174656361 902426902 852146758 677881641 824792782 746982783 482817331 960710595 767703174 408192027 774020156 21500713 229124555 284842240 746451396 887208236 269672282 499910907 953649879 248951135 124129047 404321136 105687449 379789491 34703049 494993789 389589470 355076702 21708997 438721572 98749858 988994382 627493703 716251600 308929046 321226150 82374074 938947766 366573560 842930026 739447218 829186247 847036078 143923296 697967771 340486361 598432965 312087451 681581911 403089389 497012548 892997981 547340496 197086435 392450484 962949034 671426656 328754793 859978923 561864567 695369248 320076356 660723040 985164196 247006882 245061261 588123963 457088600 297092374 563853460 34382900 571640633 487407814 483344398 178770447 913127776 817950682 374535057 631116025 922060444 468848639 553314592 995459774 356590305 146580355 597392113 201612640 524552246 535141792 595332965 572317801 988965540 332687259 704369924 658230416 244904792 666741828 994655255 926699410 476855856 420915423 653786432 441472655 128179792 912615087 873016316 616116160 594459148 742284249 247855633 481230164 290578288 402660094 838399683 289638368 683462468 784811398 308766322 679795062 762019844 767223397 347373674 796033118 659916583 110576542 86459948 537464642 836616864 932672703 794886547 83016254 30367158 934391023 126184300 603016429 426965591 531566372 742892329 554173077 640890039 426855860 925191536 708214149 197285133 45584820 412586478 841032552 947612606 844461808 201891309 648052791 624106276 480551983 188256691 320896707 197451379 712231068 366222604 278479418 695327082 542165311 155446012 194181258 151889043 936308791 603825709 965594538 694218832 136196812 500634381 449854655 79896754 256567765 211221744 936955278 654363791 611906091 408086262 698258700 813778 997710260 187003111 385605808 715776065 120817293 404321948 159075382 49090644 759027554 55296913 131759890 896608047 497111060 741024938 989067205 956155194 884814029 382635990 786693830 779325225 19852094 229746905 109563182 959367129 499870434 786238719 932874905 957463525 171634477 309696980 123668067 499683855 154515974 351459656 329300968 601468530 779574262 818565380 451909510 452538079 168323053 811191335 259150938 280768995 225092305 755416095 641235639 484251578 988789396 764570688 932810271 520752059 882761177 731254789 165437732 886220302 265142306 327039060 639836399 50535851 662312405 804980808 866182505 942384813 443027534 932730825 628191535 342215935 427768952 395520328 539436860 175750457 366367968 531557576 158925755 66528624 221842007 820743395 466544339 680679710 731046257 546343719 402699971 709566728 300312123 33136300 164403705 870879290 982173279 110321274 812631310 767947262 383726195 127219735 987047094 999596365 853038318 53401027 426676607 684909654 352608049 260959909 365029271 209058724 448988924 346609038 707505535 619352205 152180865 735069058 561048705 427370769 812886318 286313969 953149996 926759395 61029570 713503019 694924441 885339575 408755861 611111312 247719696 979745310 24221810 534640358 448877222 871713494 240680535 185075558 46183715 232855399 980505166 632998301 403874323 821092326 421177768 654717052 287300983 776174062 282420120 252904949 877911541 849451759 207367993 382513379 634271293 420991887 624182649 21831764 166621439 127880972 169732013 889862655 785106253 214553581 844719736 430659223 639251941 73630201 164147485 830244036 874461543 760922861 330074842 195504205 406075190 714157135 105645239 169185376 838641124 134449336 568296033 771187475 228605123 45523205 329841126 151669690 603725012 40950821 665320996 43708495 370986790 131050855 409552236 537872291 563660574 943807217 285171509 708855374 576092783 514514737 605692377 113817888 430993299 406830115 226968224 892051692 13879537 596889237 898871051 760393982 584275617 468443150 442723427 930308156 448610207 977020689 293188862 366867545 549148894 308894598 647375729 358057229 800875588 45510567 217521678 845269129 208773821 755549455 930910477 532125777 398621254 949642246 70042939 695445472 129562042 191257010 22429334 834797296 1355757 167812527 70614526 889697645 266307955 721425441 583404089 750330272 212326286 304923173 92392481 881218748 243240382 24854997 91810800 454191451 368152475 712540475 502748195 942609150 737731278 262952348 56692998 427108635 90455659 264091781 557456206 378916675 466251627 242218052 393372067 90128156 746193571 499996734 123824972 726284514 911331584 922007002 735098277 122266611 181802287 201840310 332831690 772954344 163338202 695250976 51595934 114908339 547960013 671706191 730872601 329501054 299966117 850504010 871621787 900828287 506799724 635613371 479366086 163966770 290301883 564454301 84779115 730106253 241093590 821333593 960459233 429796632 628844796 419656534 832475541 476436038 457794380 266290126 692383910 96546626 616791292 489144085 332577275 440084458 106476130 44454430 868942767 725096909 866269426 714958679 756458651 639284339 309390091 471286620 253514526 501634300 686611395 264963012 183957784 236165328 965192145 381137770 762658961 331711360 851537635 489704114 340482226 916319217 391896331 657918678 930413025 158852207 48586389 324968947 410787439 265753768 974460349 784412098 11660809 187093187 286950737 896976717 577063934 189847447 605303178 719084227 72831517 391637068 376350607 232353029 167764503 963302632 571297799 583879333 327051893 995276557 385110098 810037226 715945923 743500335 545475929 514551181 184261258 305710343 74969822 580085536 664624291 345706398 170357754 79701317 608301475 830193338 566592160 179385259 54851473 567637688 358136925 934518003 602210117 794077468 157267628 853130112 335062819 283883305 131607250 318418490 176432788 574767709 512689841 429457037 910417745 551119301 600182920 129729442 723957976 849397313 953446856 469726567 899443117 139691717 70265356 83516459 597329105 663433480 105733822 306647527 593100403 124681196 222743354 165857249 710336498 703198736 300327274 996189230 757742722 694769601 433051866 250577591 397185953 469395099 410480001 75804213 161789477 352114395 902677178 901515331 699948833 913228715 62510050 533832476 407394804 279915065 588844361 48141604 581920219 7178438 406359692 482215968 110441128 660308046 917725201 518338229 651573268 692247434 565006396 182713443 773676173 375002172 890459828 79087924 499763053 776364514 460282013 914182829 184643357 212652611 93578304 313609582 173925452 416665193 644479014 971312391 987297090 208234446 321275990 359774233 190844089 188944355 910570064 660978514 156125244 333360663 917374853 494074476 266803096 668196845 519901427 702950628 569884300 781775002 675684089 380267444 346671825 285820221 753450009 463054583 158300862 751137337 544708109 644244924 133311754 454072363 634992234 11963327 403860675 577725134 618715556 281093429 175397130 50921459 141301046 295447476 594758309 37242890 894894462 445681233 585045578 167394302 815336250 379555745 3023146 287239021 14588430 558896535 944872707 12669610 607867166 944555256 4340123 139649314 625940350 291025581 545335323 209446717 355035927 772244272 57635431 984509125 258137625 552200064 861858824 914544456 285657455 900752635 455174157 500313760 93819171 141950433 419339133 586620630 627322316 200895418 248105381 668244653 664686775 278078150 727535290 513871991 226262536 64285951 224521589 465655034 218225221 485783487 784139791 112634289 853882198 442729878 86143576 308490130 835001132 966042880 819921790 359152953 398397227 234800606 322558854 208269438 197112990 277497205 395699116 932852329 783784216 829939530 658741674 664573729 766719623 898208401 332886575 700845896 383239598 390974121 596739028 668076197 792259463 403102630 188453813 192715743 285358160 153516065 54432467 338095808 396006824 740647085 93498845 318400462 844806280 928787094 660368759 207048150 736237877 454726402 381490416 147579577 445863156 533250446 854290505 315237728 987675519 270466515 700676627 748791831 731501614 27848869 462940350 808571985 867623282 749321327 132682014 762685477 525095744 284245360 949314734 406382160 885896058 394522075 210137489 208826230 595827717 195186815 909090258 504697701 963985225 454968691 981280151 915484089 148814057 254858430 306394886 315370146 669892104 65594151 223601839 76340841 739780444 619356077 239053525 166693917 338114668 316387597 178491910 317921554 750383382 333813132 737861011 295898333 397861624 831716152 365279638 432738094 403785761 298850016 468355652 456705097 518674480 761759161 693019992 76559819 547453285 91566182 218175138 368200626 315678016 438141519 112813847 294578254 114521791 212643704 956708360 674430097 1212505 190506262 631052654 448368697 548162495 601668062 55067348 416120163 174622842 420499233 30518982 601960102 720997247 881345965 68866555 770809118 505176267 876221961 783976055 244686605 738024029 669748191 151123913 646126281 818914024 19032837 140971198 420160740 748519639 744676606 113635671 356414307 572858024 744078694 703584013 930185997 517485761 870365521 133100532 567354241 61132544 266679021 980824481 28223404 593098697 662694922 572328513 397174350 743765748 251262915 716137368 178465897 598686337 82241159 716613252 36853647 97517997 168314737 852600210 936402082 588172199 709552430 203653213 651257106 117737151 406495392 290663675 878919413 11661442 622496270 673764326 515881040 654751216 186602927 60589989 979631363 748479198 949725623 212806396 157730526 358122855 951939674 763945093 208947592 883507155 25514394 318667877 341746210 404030941 536269355 346231789 977432049 844409948 552148408 671835443 997602851 18677911 27519991 914865824 307132964 349458784 892977662 865247160 369883477 676752523 352132110 64094471 639298183 30964416 697842010 181816518 965838308 657276454 828138729 702757627 34301428 546187003 622166533 534524784 678427982 767908691 876124209 523286399 938170239 759916917 101547576 565669382 654971484 637137554 789642764 426964578 658635448 752406140 97885632 639062817 318151572 36824506 98487966 390378737 289740771 212373848 456827267 549615426 827620951 685510029 927903305 862259380 97081624 52371405 756409771 965185958 835307654 735164075 484242850 984566239 754480446 783972746 402725045 208967445 633803040 654972836 984722193 399631114 916779168 518467018 585654561 695729468 497370682 570894712 99700878 892524221 698855163 85464935 393902890 787504433 117791465 472267875 46751124 400871316 993371116 235147430 602013331 252110121 992658606 632629522 149040874 257387896 303734305 355457588 511688256 258524055 966047116 744855001 973999353 987959019 106931012 73947984 277908562 122240020 978380305 210968361 625756406 821977564 904541522 180659859 347606867 192178192 489646878 318489882 309265221 540932502 4189785 915528251 253526323 70659526 394572048 631405353 205076655 231975827 189629656 252288687 641612932 351615022 138388863 118589755 595535299 86164566 265635452 232035421 304587636 847757398 41465047 22428715 951714942 276744944 390760359 373164965 465464796 226806535 712196517 235584905 87130454 825128735 319545588 311530643 269165743 133585750 855381542 517920185 656920110 693602790 968270108 575592838 428039429 805266343 96351623 404057955 521550027 97341749 488113254 369021406 130017533 520146622 724437552 255715795 93171059 587025845 559546 472163252 496847162 150234497 72818578 943274590 63777240 202145482 548296433 499823132 682574696 730448731 741243011 224242881 249500991 987348790 814971682 166045170 78736444 842689790 652758219 842983160 569744444 244769228 158705566 769078918 544114830 82976798 588522278 564596723 73014646 289630629 176969101 257453145 563779026 493927272 829713650 652296755 210084776 136273387 868872098 986251266 455227373 452567331 785554425 584703516 640817614 949826721 253706835 795851669 238070944 322011674 927094474 738561412 490643433 443554881 817068316 318239503 852309709 892480089 152112005 83487195 713058317 618193185 300334305 360975261 700154747 11806770 8111349 330914730 897194981 555514873 500853478 772050394 387006461 772289165 607745347 442826553 306691703 377216107 629736270 916480218 278359466 990072786 701130811 407212920 874838053 381002355 549993735 177355362 685231890 797349596 859251099 637618454 296157377 147589561 691701936 703737641 552440322 931820019 138293129 811788372 965141853 59434266 724287218 451744278 824043201 939060019 392463894 215298621 410156506 422781699 307223065 360529755 745953374 383433153 553086115 325933020 376391597 150092129 982962908 993017377 470712965 637387219 104968185 405870187 921493656 89176461 719530287 696976197 605862895 542225042 925225519 128585399 728358743 722831338 602860695 852361945 361645549 991217310 869815261 137896459 695070431 994165758 997427684 469023565 197900357 654422230 856232338 425254656 3234539 303410193 127401477 285333613 247184768 332141637 49142360 723648684 675211550 123663955 270915328 782568574 367241369 284574242 502749233 519972491 530884875 848980170 292806380 736350718 687608673 797697887 824453663 880171901 824034587 716029221 276940658 170230426 472456705 940787286 781277229 532909309 117204435 340431852 419891537 961782589 7954576 926822423 6317097 72289512 825779655 629356617 255436137 975125901 715159579 91644607 242823194 835685507 969137806 32924969 668647137 96949971 236013891 89791955 770739086 363593640 990067908 209124105 95946882 632916720 885043658 220884735 571036816 984765221 521628337 101151359 201367278 37340998 129978902 647154862 493423661 158189971 989599525 768560195 733882948 382564656 478241717 83325709 723701378 435046452 259208029 342803860 515922176 134365813 622906383 208934256 143270353 189896599 746739158 72139151 185916266 928497667 222748638 86095772 545827282 606312659 684706119 21873824 896913143 988053409 144213502 236434996 994219758 607819789 583252097 369966048 132599084 50165656 966943483 980703649 908533518 409838990 685947542 947596050 343442566 607315405 889698617 70704901 758347405 200438423 851178544 802597508 226763097 62116988 168330763 267020544 818098627 62397565 899909874 146613152 885643471 289553603 878254126 966710444 37945971 389240385 381971701 921464917 163380608 987975817 496718349 372644013 84827918 260640839 535283547 473786524 344423912 1894905 246233598 431948304 943385731 226490012 905260422 915538580 442537981 290100238 359217112 14867966 992886532 625684174 499138948 698730830 38354987 305015570 632756056 476787857 588910385 769275772 291958140 165842697 174229856 576328730 529744644 186736318 4377327 3778258 291685545 671543524 574694838 568447924 513581666 886669285 359757706 384626954 721079585 646899706 60824738 142782499 543202082 218686310 962655287 236754081 524910355 571602090 880292335 567454827 585838523 725106534 885078780 857370339 27406171 535146562 861157518 837967331 621937722 206582807 709999721 491678007 729613009 212162744 160740747 324166005 52710907 427335855 194252333 680804403 130819989 394360650 959572271 821264194 829213138 490591863 690260295 229656940 708331419 155206616 812570310 429679851 226381114 744546677 370586969 383341117 409958236 776445368 978384088 302634067 968699072 578066935 165951181 316585943 612891822 416569160 179890928 615865071 311838836 126170125 655308537 67635754 945761458 372378828 236143952 662544638 267486420 314496932 83617651 402181504 454761467 37514804 819761701 634174210 363424374 293636574 976137798 924450828 533946867 25422517 764636135 832816406 126967892 890364593 560427960 631553258 202618535 268383058 466197162 751522976 9997813 101483718 739991519 751039845 160873705 569281120 740092781 140499910 555607634 976395120 469907765 178730354 835823964 924253811 646966686 774260629 809667800 737644971 400341454 214447363 326541203 929683134 379645980 420189734 255233099 658462302 277664966 900810118 472443925 30880208 243107990 209265708 509719731 789859961 714981964 253276122 85821280 166785122 632617044 185344544 662294988 259484050 574431050 319288109 377921476 551326406 591958301 371531214 653284984 82655130 527068562 106330733 84340557 508878065 972072810 937849270 922447712 781727788 645324631 322999027 579073542 6252414 514783037 363283452 335794467 197028253 525918258 148735683 304406396 500128927 483031702 407541613 202888559 355175527 505662664 272578469 730969411 197319110 545347585 781104776 847570800 409448793 770649493 875947421 423102655 202189043 836429774 408545811 909307492 598477273 602196021 618746111 794334254 517784928 857365479 788922781 862394598 323656332 863780280 19190333 311844540 332264653 973613472 304908006 924683675 172658277 94796069 244724252 683411663 936095986 241603220 862152247 529367847 387372968 804208803 638811150 239154252 439507105 573702428 810421041 913125748 19425693 236782288 610703921 206611095 250322008 696974664 930622778 328767356 608031740 290463609 662567962 127627110 574058268 148151257 991327362 343509311 228433872 783517759 499778154 921113718 117158790 131280887 534917414 775542215 530169312 665453299 949150712 420636198 940641137 151166609 791915152 40138621 605953723 127975676 990509137 894986788 661057678 679639360 565809011 714246637 899807927 804982911 229296349 290536996 416620801 341276894 780062458 442003259 860848374 202891698 253995092 825380877 620949091 947213125 893581682 799928578 5393082 766083249 324006503 484815276 91185726 5461240 830686376 591173509 918149506 197681741 570180404 124545665 936130752 815355241 258548467 889327419 779453418 492884359 297685268 523650472 350696778 572182287 91436826 88172465 531672946 159528078 476745318 46099255 674675453 763867278 700358231 175295517 267171216 121270274 763754779 575614754 754841000 267964733 178356827 784151891 97589431 273373199 115798087 484554719 61505990 448250096 543268173 536912160 784039837 19100914 76945280 923720353 126362684 31209477 644285524 851733397 948460316 718469950 608954688 257167595 745079566 100183346 352500960 778013536 556665739 763342066 244246508 477957401 31123689 211883982 269747281 732411959 604980312 538280991 626970066 301583998 754849567 758168014 410807041 321289004 869809004 61760805 918570071 619751307 384333721 445140855 399500495 712001235 468146320 287869924 30478587 572472755 129271224 433453008 227614944 972662526 881026464 313945772 271449281 823772018 868932480 737188195 719934798 716200750 932814962 147660419 128394156 262408414 291903533 322673324 122659619 974653538 363271871 433357418 588106008 17511117 119265883 181930629 849950786 75751996 596742966 397191600 330997912 660913222 961733836 193572586 881028514 15834428 21094860 647147868 830684633 889569563 817543103 988742372 915110194 756772641 822111160 532981325 149040613 938425881 951487998 859753517 861073125 217773580 396721693 82500014 678169018 29152158 128577017 318954936 416596821 601164679 229309636 701528088 196873082 983969857 617524523 849612435 387078168 629495645 963131855 372154979 397893978 881330883 732455172 797355585 71010552 247828074 463274618 462303002 803628381 179316230 35455891 4052145 743335720 37815533 73798001 71521195 440341744 910698917 754513457 437611468 4974086 772579572 933124397 93789842 545815653 141931836 761496402 289644979 889743409 976240400 652058550 941073589 26089177 589834172 199067377 146327667 131781228 862823301 280091047 60768889 311516491 381777831 729789535 120743646 170239680 403060774 175271706 819093323 487267479 542196812 239849362 80939043 519826189 628627448 313617170 953433852 579035001 196138855 495148972 495908328 852341185 581157928 92279339 117339951 638497194 786795437 614707808 154733748 712250777 299089495 710559009 146296909 502207639 491186892 434756883 821414972 780275161 138535033 894310791 110566722 408991896 777177911 354365398 305080388 187072258 916242515 304103344 967521211 536614288 148984512 621026092 311459789 321410229 387313133 169504791 572723061 323323996 985496011 685401670 579722425 258062005 727793769 219590351 912420471 680665615 286045409 638137411 302026247 536769223 914216058 942517570 915525238 232654610 599101974 381127476 588651882 415343808 701524626 83999599 346983217 815041421 322085794 106518126 361424979 867146140 506714329 149583848 221506440 366125782 601698530 88200254 307569927 717638366 600920214 253871972 77234141 796415473 419807689 858924601 544579069 813617949 942732259 168217354 434902644 422945692 666196035 401585012 257316921 859062761 243614553 37674936 60859718 569104927 462304921 849596811 504760471 38674525 571682618 371446186 948483433 527416777 488300689 341548802 314948776 621231772 664994182 573604564 603973860 650861313 429198 43848801 218047690 794336933 838207004 549139188 71089554 776917936 158126048 42243130 75571316 925162657 463367152 387648454 594414059 677353514 791535744 376196751 530136989 976831525 889155731 924499677 129656103 126047561 493754566 79661423 142689345 448097080 852118367 622077666 974547840 635252788 379622818 84195078 298343638 135687760 950482301 540725296 395958366 81556894 266150164 650036546 618550080 169579 25059980 408602654 71148191 807701302 816169711 265986358 220005255 911390109 798645452 885285663 279118425 584234521 384466596 907910611 356467007 651560066 276149291 758410484 624051361 225971015 272059238 373210036 828855659 208702858 654655496 663402711 506427991 666905262 171034888 616378248 575510731 546417161 515736352 86964619 375443915 645242737 261596769 787316256 151214171 447175568 155021652 196386915 270418621 449623711 934099107 976506552 396886396 940317716 568137011 879552727 370344618 56680535 555599249 699246080 673985506 371789500 157659245 585600262 223562060 900910773 519428661 855038166 245504506 963049702 211316386 600949930 867605123 225217366 336961234 406174140 435482247 743579825 452428094 358080735 357075342 569998387 459052875 306827445 15856646 947655792 960987562 659370951 736536358 45983195 289640215 815409346 517542516 334312379 222201531 450698981 213849172 327545976 273617170 667527216 976839055 5153123 337993707 955629964 990974730 477808185 52953849 606896015 136297623 203303744 406725482 740039683 83288661 783547974 293128818 2111340 712446389 617210619 207684069 917055680 969903861 88013187 812753218 633294443 120441526 450843604 219025906 348256223 52629818 423790751 36796154 446309360 826317805 583071097 896384462 937321345 401017777 120941076 310303980 536126690 991335135 529086409 570028824 384068060 576570784 884261554 571630777 844465741 10123135 322162602 979935868 316906947 603726760 457794144 355187006 358726051 142789932 552943084 681772405 78099913 802737248 755911381 679439407 696664240 833141270 623992089 285101036 15232630 313194711 928868746 435333633 43731514 457153686 553173995 998635817 462100426 730242918 983769239 447244194 456329185 361086266 87576730 592545327 216534786 792267259 542524766 145276900 367644208 656396232 337842376 467154112 538849289 168973127 239188015 11974707 86247612 953879951 212017067 150255853 460319651 591844955 120472758 717461617 110809201 138846468 617210027 856092774 846620879 586896979 303295266 473864626 710749577 213982885 708487017 708376206 99948017 761692830 920195215 363097886 369008798 943692468 35648105 44486451 912229168 737110767 501031624 536367865 716666443 983551938 296205453 375505554 681999737 330853926 918750041 915390618 579696762 199151226 56071130 958408368 544910713 394248094 872942416 657983777 350676062 252917508 857130891 365106833 979909392 443749579 500806711 506841490 212421164 251594412 696918486 516099147 113077405 255524440 975779548 18057028 798487196 388365933 226551640 988205648 849572251 758572347 848409288 768821799 867044074 310760951 983085410 223437479 688978604 939389964 405235393 116260780 480044324 639810798 743312227 738207740 663097222 355160587 306509954 357001066 703301148 282064258 791951534 913889164 663735366 71959535 122309587 906910717 435221668 326198002 185851500 352847783 181052183 218875695 870104483 402547132 950502207 986185985 69962459 92694808 457802990 341631733 347336675 57781116 389171466 940985974 827749893 344275100 231690212 834173975 795998785 573151466 460126830 640600320 112057622 957954907 668101354 92217688 706260346 782130801 307022740 395637627 757794668 845195405 539192335 364566775 862510100 262816136 762574550 774230948 944766850 687169163 252944066 737850457 831145014 758519315 432969729 934263034 354507748 558297439 217321396 839447065 525107757 58406684 928767500 790738184 879013688 101535949 545316691 752528699 718280407 47967625 602786334 325577183 476234071 455039685 89027984 728377811 253537412 495766073 840672221 390272219 62328104 653850084 210358476 484997480 364723366 744055893 622643875 153313788 13456099 461756465 118647824 597606990 158421408 924064446 804574024 699328056 224542484 149409931 525124315 42031588 795699613 33866866 588918800 359214509 634148041 897472013 702572692 923298401 227059188 409447893 960088453 686601175 926690128 97425448 306108867 134011498 591929745 848433380 132062017 763129764 977020192 157917343 48011891 149119868 326513676 203299413 508168893 632449615 534659285 824306579 889282414 377944442 941679844 596604503 853268209 971511870 884642157 889577720 390429073 181088692 865997816 911878208 422266229 401002144 992768822 332836784 295869970 245060522 386828555 307640180 267205027 642475149 802909539 72725814 296738515 978645620 997465201 367138326 550057223 23640627 826024889 332729926 1159079 336041901 665604247 25650246 483737416 764795698 155853751 316213824 847628226 233732825 718451609 950104849 226151054 303086887 963738598 380779055 315827661 600825375 758844730 684989756 67696987 601291200 374766290 40521715 337338124 391951082 386577979 781681183 890175183 559823953 625035079 968556638 570352110 546066483 538547647 210524291 73600153 591953286 567751157 416991866 896968399 745193949 385990690 966308792 773303934 753403495 899791811 225376539 808688973 85053813 210363903 850924614 877195279 194145180 804549853 725434890 250724889 429441909 846561374 421018044 822973033 135585273 842773330 564057321 290977897 597871575 125211247 240488248 129620020 487397868 650569020 382065660 833081618 818599078 564277133 31165125 89626585 96578161 523365525 184290545 515570580 572825966 144390178 301312082 740632648 569962281 507325482 960994965 349206894 539723703 640693413 853914600 187239918 972374707 611537717 871584208 354850517 328891404 256730681 821364233 524752824 82138985 466546393 59283398 600711517 806731124 333666121 539779273 561748630 234082385 149406850 518206420 734056358 143093883 910362524 440833514 955328024 830863355 4436468 284720813 772594851 444178554 631797472 118412629 896767391 490247526 511359969 852991331 496116934 881931739 118966556 732157168 992554987 235148944 387471373 400703623 777612091 855719856 815684985 636286197 801038052 386780895 145875421 767620309 497369893 272979235 360399185 163377479 262195943 15652175 357230429 917987936 730664257 137134227 954260670 890466518 691226117 435927158 441389635 696565612 82264782 686421819 186152904 314673172 928526698 964835855 112093824 808980531 899720469 926937485 526335178 645493807 523472413 26067352 125460403 496744212 486374096 984755258 139715784 832112644 364706800 449560393 241326659 237810914 129773486 837494647 439136163 838349173 42905395 204089516 986992264 693686982 525981260 77831844 856532130 84599829 641406158 275686409 947239985 984317865 201589584 17097591 554566498 824071356 755671109 369498339 393656471 79698898 301923811 180262327 456114665 190707534 13614729 575226132 965842250 758493407 854648897 408301787 873449538 303283987 362946383 147776930 153206016 723615584 800590991 708833357 103897371 319086073 998983502 2316367 581851372 603975885 866394632 349952804 335390290 686525537 139119441 195402791 728923140 618907483 816262778 411937873 836644789 856609309 994405171 492630679 12532373 263205584 297498249 584388161 174958545 894659357 905620942 457694719 574924162 151859541 266081466 116915572 382486809 251949542 823669611 656831302 121694818 470336139 97039201 882091101 276903775 143937500 623924885 616994061 593190040 462532150 301489122 705070568 45593322 361703503 701302205 751083026 734562895 456446410 52201382 853826611 800421068 476181792 967818480 208674259 477677966 525984836 809362965 293500919 871158959 842586404 908267877 906863035 335839706 284107282 441224876 366103021 950984529 670661857 9949904 406437674 761863041 137098010 937303705 365567036 785255097 487349583 347406714 391310333 344276763 85610098 337758370 603200368 144266066 953125561 527873862 909713724 717185811 824384115 504432335 898428919 147191997 129427130 858696384 834044372 933330538 501734136 605740326 116262557 516000182 156518976 418074545 791869884 283661468 274497227 199714967 443663771 125015900 610452880 71953827 215895928 812743658 957396076 823393421 362235207 366046004 887119322 869812293 641421332 691124854 873003877 246474399 194929188 68178146 500068117 578306 653761912 365790100 498351012 533321105 314656813 204436547 536438523 160688622 107582851 580521845 741501457 762149732 921862441 547221103 202319778 217839489 198167939 190216329 991470393 903338409 554381673 424319404 873945002 410065688 370164973 160912439 444081617 156593726 661466983 489057921 420979608 188868878 340787971 854734926 196219510 324109826 392599125 245965387 951566756 784898271 985649591 156290532 885225090 212122873 7578617 237054046 79793678 838125309 568073920 91530350 833881058 838366694 420049705 279213649 679661815 174098357 198446563 942010310 704262362 221944987 583591329 228440097 177650271 48128027 921520324 462404079 47105237 595754509 898485074 601611301 762576683 582684011 562791044 884103277 786031941 956196566 974795334 974989855 856708878 411347575 394879455 516092963 154191184 981762246 190301106 707952651 959885231 238319491 848529800 461017870 637934810 142799423 608769728 856782350 407153978 825088876 369549605 822825163 859990077 740656691 768957211 898204096 521024515 794506702 227785801 727480815 911128594 781661392 375746001 812987846 249875395 112198100 735547489 181842398 139479779 53587588 252894509 599801608 658490244 803999518 174776600 127893596 29609729 84822778 128258587 494211549 577771690 749682719 984585501 218970935 564043652 893772324 556540346 835658608 908491303 565334574 613044538 41518809 987367073 183409414 889595182 742295246 975376921 525723283 951452563 632725045 392654385 320391363 189143332 389282525 472711972 112021900 486722765 468386816 994306637 792483798 389924209 116425236 191441031 960168175 566798322 324986547 335927960 11926265 898048018 932286214 864628102 303885282 79346192 472325651 272039900 606530972 738817793 944719958 547987110 835688293 285552991 35118011 979099267 843459615 764972124 224905531 941504185 69538125 255165377 297365102 936407691 703207682 198965992 794164151 963590270 891055650 971408680 844205535 511456560 386610007 824082945 140648028 465303849 847692563 196243940 680326805 477295712 76356473 817544438 841697235 967973856 615612920 75243504 818300742 126495375 517791522 720076439 873955870 624665548 589467836 747440649 818183683 2377091 38940872 883434498 318552122 227121291 841110036 446349536 252537090 215323447 551024393 722083021 385771143 318995834 124282601 754570392 576883580 86112268 160939101 807175150 160823360 914832734 593667545 970726002 781373669 609020406 670934625 695195854 734941360 286544160 236845978 200049107 849361885 419128238 49515611 448406559 273417496 801893036 156079559 252240207 77629811 904463657 910273016 265484101 840007134 718062101 749218491 12085977 378051456 755413948 973237798 283325046 138956625 172071761 23111996 720325124 269357485 936962885 145635139 45084558 461397500 705029568 851918022 430066063 978359859 713963706 756285369 318191295 976654096 308195721 689785460 579709015 826857749 247166398 468116088 169167569 792341859 732417432 687153986 970534126 450678269 673313265 488400519 630775843 869784627 670539100 66184469 578271079 793888684 391671026 423818503 745561386 73898356 779012084 684073350 31833041 837096958 562860116 422888459 610431263 341700609 628275386 607334443 779207270 705256165 519098206 480273171 605145797 613194963 678288800 886028756 367721215 595634407 197413427 600278528 263870579 774570092 630554152 526594464 159873931 318366863 564241918 406425163 946054634 918494288 381568483 38241257 310267216 519734141 39916898 675223572 288988658 896606274 661563107 553234596 55325905 983057871 895441906 89355600 646322568 861945188 910165225 637566546 448549347 407388434 404463277 849595917 619714019 864132630 375622339 71043236 621381033 232640581 197587166 527650504 313375750 282682726 129550914 607056852 642814325 231629915 481967813 226967720 178698697 70119113 573354874 524286270 427753221 542403349 369800919 362457401 46340846 107174573 687244959 212699013 840921362 539107312 567229951 790715078 853132342 53485288 458916419 608249642 589885693 680992265 8394073 201404251 573049273 716750783 456331221 988403907 486274676 892042533 549543939 439991158 38739371 215992748 391948292 734248526 200544901 981964181 758278606 659845384 433546296 667152725 823862412 521227558 294196564 176417618 841800836 392694336 873595603 705512578 497304543 341793880 729294706 579692539 172779864 463355535 915383440 215571109 881043026 929809167 547798434 208190777 896316001 524492764 566738935 315178446 667530004 126612468 148475927 481631756 385816521 635675411 591921025 252476623 16351526 811281381 760384870 118011565 448247718 622762160 376730827 315114085 316879354 289486818 216916574 841750783 528038328 305402704 268692355 33183235 23727445 404315726 29698300 937982550 105638335 630012704 731043797 506478006 938284505 611795145 493242 13211608 438440103 523722574 348836483 693324392 49202671 289910879 444407582 348988609 648129468 137624906 833093764 150964901 816263079 889189094 153231689 691883159 854011425 357970493 707192637 958372098 356479489 982353673 394246599 809246335 939972203 227331043 456125911 524103368 896406068 195594694 999537305 850946885 79651290 580891842 154421372 96821468 209507855 998244960 227921122 333876955 189588867 735914541 64977276 940990554 271270127 825416453 540088209 483617600 477873595 115144839 439092611 163111215 10039078 996310651 497045508 150363361 493609675 707949733 572645741 898452449 55310049 241584323 744045334 593763903 365812082 241265544 935490116 980181092 46466847 923353044 313188588 431183357 970447077 799443639 830078426 856473518 622714045 907708186 982465481 302442384 942113890 651625645 758900621 838716457 285342871 754998007 101439372 615674186 3813967 765848800 465034202 472237936 545336161 255733205 239666351 268625438 304512833 764975324 755105697 148275900 572438116 94966494 499298833 702499487 527090200 829880051 772131842 659697163 883407147 373690772 927002089 444450504 676329448 292859868 257008662 720806859 593332162 305227157 869700034 816963601 774014340 81260716 216377927 487568712 417273387 833604855 433273316 692660623 924862143 450390887 364808609 654318510 365621493 19995302 754884518 26692152 451043546 573262456 463799741 146501148 363442412 579974149 633805972 507047880 292195273 237316110 631893709 945950104 775757738 88883048 345505257 138261134 918377351 823017546 315626426 970163472 678496945 753987284 94841410 964237603 824326979 493334394 680182967 308664370 848475512 147502892 846095233 92548615 701059625 902561592 665505286 996083302 645124227 3582378 744849252 38904182 739221531 984220410 864712037 973972740 461206299 431732825 67520506 364429238 264524403 641253776 426889527 953938118 132670832 515022261 729778071 585847050 653518135 218803155 222008118 536853094 674505644 45725427 959222481 641008763 974326875 554512943 633124048 619571063 130907286 43771749 317940039 139600482 616644589 228256307 850349344 961427012 225163867 390235625 255656933 197159371 233122541 544695403 758381806 97393605 65110170 710496293 972137481 164175198 405951059 299402942 948696045 159346127 241241852 189106925 887092167 681435333 644082914 36283954 96291653 357230227 591916498 408749173 551487342 563208887 720905014 521836358 741337877 95764407 993892051 79891712 861544634 266367348 288326766 691198692 651108786 970762916 591920604 404553577 466857106 751486995 321333619 828885738 442926585 8802604 936755720 734278802 50318616 578131615 974199854 521625356 823460449 650081392 82489485 378688474 361758069 638850432 389579241 560266423 461728578 731757653 967118884 710540707 143844517 823555850 229351902 465298485 785924963 242635050 228420801 242987338 357422234 589301926 429269291 423876731 167052196 740998990 244768197 473233612 757103220 962497056 714854322 256054006 541027691 217936171 896518040 834098745 71846359 883522709 272995458 676241147 197280514 781262377 231147855 981018957 19918376 638118358 433153566 626185084 626060241 397429148 705899097 856647825 475726737 377193057 843241554 19233209 903119813 299376662 988037114 70132032 298109139 31785935 181929258 178820237 666402618 676317411 597654818 151365725 788698362 96143449 958769240 472259355 211789520 732791539 350306431 426257212 237261238 898791416 774673228 418446649 207666893 365724870 453179145 92849031 24053135 676289608 624150118 701276430 608403760 133445060 155478987 78051047 559223465 66827539 460923341 337375443 583305184 640777088 426111387 274908892 9957708 386105163 478807919 651443684 927210739 617629024 270378196 550690974 658182123 596299182 891837214 508305368 466152538 69133800 686207969 473432688 451680482 927272779 879104910 611751357 528017957 371202592 107370539 817596525 885526859 396244298 247278582 501198340 303518763 389690112 473170893 677246664 494562960 242977238 369559269 469175790 5771509 25218151 856746976 373035952 609262187 191224074 557451476 736013126 214877964 783564482 794361013 344390766 52788123 53684461 235245061 997304939 150116196 219737951 460999078 204270785 257662131 626713271 929555507 901383325 411175906 649426620 975525363 175135432 102953795 993342655 329312528 686248991 245716582 864975618 776516580 197494509 871732704 4275173 24003832 78276479 277994728 52042206 164136708 473295822 726383215 778132974 285020426 481601358 952742752 535458147 248402630 983886932 728339285 689825217 292195103 731413661 499923735 371135617 715111037 763776000 21830322 2862523 544117485 424719238 257916664 435318333 832231723 257102995 57191380 809664599 893124091 586135679 36518888 464268945 384233223 660616651 807180099 613633840 901973395 30786122 650829998 661650291 514532445 286527119 788655136 64822444 761260383 104788061 227397608 69523025 470613416 861024438 757728555 221274557 308499491 194143595 436095222 229049100 485689742 827030556 139364863 108313960 33574880 421571964 798029167 24659715 727427838 655471141 248884534 597270215 984479804 258335379 630265386 792373472 849158605 913861943 282796565 280885598 979212485 345500602 609861710 639395 751480273 864396884 870668993 413213488 448085807 787563806 665687016 14474817 348133142 669532730 463500196 219054427 537148823 791174338 521705604 680679832 474839801 403186726 672297026 232826028 508054136 841596543 832283435 545417713 870157852 848645649 681473105 626103388 81075116 860862837 548965665 249060151 222518461 14563802 216740067 404312870 310604195 8338932 578079344 418852686 90203659 71250752 730430597 101833422 191803984 749904298 83640563 561409032 491459423 416751331 226824491 550992974 477690383 954628477 646477724 689468034 516009978 871363067 89100383 843768881 721555095 113862140 872400817 504742479 695252128 627462337 644114178 565313575 504199240 418103218 548368508 23256719 391868579 60706491 819442689 708429398 154881923 154309013 980042823 415246822 512884337 499230197 826046838 969627412 891318527 408173126 250672102 895235854 582937531 688025287 77357594 171926146 455095545 562536627 5750472 590507694 288984140 234239541 773728433 290518179 704480236 18260343 395046231 279313152 848106812 330493877 201500677 418278555 917709683 198745424 502266793 24475414 425733827 284850182 886206531 384293602 977068802 772855596 852833498 219701628 525788431 734649461 835500467 919584635 932297240 357559996 479197139 745762272 18430866 434108925 895301555 108204113 878894112 90158283 383196913 858924731 590765192 637090990 566798753 424482883 83153749 266072895 190245994 786485450 97079277 176937971 41981930 643750582 719328418 282955691 747646070 744471143 600900445 115919883 598287969 579488245 753048077 882759922 744649024 778268188 688816604 206328488 851110491 675369945 102654053 41816590 985436183 362578668 888259556 454914183 956014584 490900227 465790172 412781803 819160779 768244812 701358181 245660521 404569310 258850201 201825297 482672692 579968954 155521836 856500235 432939367 215591957 253955428 141709853 792382626 260379648 689018653 200272632 944874052 834951116 341968725 611240526 629708023 178670769 458833222 463623966 445107102 933623642 295133682 121850820 566679518 466902779 427538216 87746836 764373318 616548360 954427351 525027497 421664794 562879408 63724838 28110222 832359131 473686696 660562974 9953216 615327151 413705113 603685207 117940537 208068573 356200254 871415864 880735190 686333174 948523296 974032371 466767745 308231940 215024152 784200431 973205505 549431626 70762957 955335848 719147409 571189802 899007999 908490339 442554899 363557118 82461698 470593760 2926922 140291567 286587591 949254168 647091205 631312060 300845747 523568279 353537524 286052855 822248074 737122139 378949820 424740557 565030818 56990621 390092802 947705118 300111398 841827056 115129520 348364379 541932248 386532201 695997381 209917606 569457327 330572975 535382941 869025115 563378260 20083963 912809129 197296471 82609589 542993989 190761765 431351631 653054008 373777527 193609580 41594379 700496364 490782626 118554814 328851910 13960448 219471673 922029700 460597076 240842020 608074960 678115603 894824950 235679795 792382598 688822507 627937606 140690955 62261992 548101876 281341887 76983615 983664800 634466315 745510255 87461649 90669125 440381402 173698731 89393568 424944088 479907565 571685941 588531919 359460465 689272421 541656900 603974784 994512916 410040376 753871804 225747967 702402254 880853187 995199056 487887541 107750016 938619809 8242210 523524360 168789515 11252527 664266020 68938806 78091659 490101869 376278127 124660154 372272097 318643798 656780032 896855308 657976793 587634079 713975252 68135591 754408387 401807996 312629748 892996185 153004518 492746595 583244694 277526317 133061512 151594282 638277125 888339881 790629312 116627777 133440226 188013016 296401102 930001340 410111934 141722016 499237732 597999820 426871137 73086237 532591360 324187905 722858577 264943319 82832398 451532065 210198843 198340420 461438378 774738466 213522027 164895742 652469668 257359494 311848504 404881613 158991060 867198619 293849954 267937604 949406150 851730631 394326478 242179354 89000382 504156392 708713156 293198868 386293030 44120648 710435321 696505303 120001237 631940065 361324756 156425385 450224971 509739682 573522564 364422419 766623576 437339325 2903270 686586954 868301677 974679533 212767190 391587865 13263149 890152730 649862061 366443746 820324578 723874383 587035055 613632561 156598640 827139677 942986245 945677269 17136269 934285978 970986344 901562789 582171936 79430399 289033394 753093064 313061604 119671353 863265848 105256156 465340318 85318443 425682959 312601367 88335367 788854818 967108632 473235342 2032829 378050734 958806668 595741443 709767406 675013287 413958105 346141194 610459959 12540536 40359858 956048068 90600913 787874196 662936050 521187122 891148370 464664152 440493495 188691484 762187816 224199959 604352208 520135742 549669071 714436573 739686075 121477072 28356407 15660339 795873087 928685281 122994049 303517736 607275949 7658669 86029381 200754351 470168756 814618911 232126802 597418671 470971214 805856102 187081033 872384606 955131887 247655852 886509181 138665428 484568895 728886478 919319375 312801600 742727149 346829088 662535424 497862251 632688 863143624 562259963 124164461 416006916 639403520 689854428 27826544 107875231 901212884 616186829 336573652 528591698 902175626 62932735 716883509 461249606 542611847 885454211 243107068 607562361 685744201 747205218 147432907 700220280 201791470 20695400 227914075 536292519 436257021 865726275 571876070 814155855 79152291 832777255 778691472 733740332 878897183 656785368 44302099 613701633 613485441 232054379 781221528 649671522 503738365 962749954 726756826 181599341 242335101 566119050 902639030 897547359 599030079 307199204 186404342 243565602 361728974 138301793 299536669 787131802 427454523 950354814 807589896 513230603 355830800 336250855 411193479 299214896 615731177 295818751 734059034 115992278 221120465 166018063 576989606 506586141 70079448 857664594 547771726 75278822 128803689 653461745 440900500 232915112 896575987 65766665 390597813 961061413 270840119 405743076 200481380 216323112 647378103 727059141 621620858 374055292 117961585 810256965 598491587 407629723 618544893 756621861 276502963 157969066 623400523 718750621 543343072 990946755 293210225 76417050 312901989 854835790 921901403 834612288 640542742 731328717 955082863 191503804 54840690 739978544 959116796 813109937 722333541 926271591 222973002 785187563 657586625 38311548 85239583 648899358 498912799 766026069 18791291 768743492 666409133 246392515 920315595 974461423 358256663 125583097 342364122 498808462 29655941 338327057 132666369 421719258 863682602 505434453 854316430 894873942 17503704 788371273 810407066 125339220 230812417 571786576 832361449 71913589 365156780 695002265 14999878 928415991 216554255 136143187 654888014 756409256 599206354 132467666 848144097 452735216 143346872 329702687 430998105 93328289 676761522 363996331 217853738 400272667 829224233 964859042 329992141 626113635 398657740 788077525 388516375 992075552 775700975 713381101 601068609 79921311 89830713 376640929 734010454 96750242 817364437 59086705 121341856 836389373 867835040 489686440 1652262 715632567 367100432 746541328 928736308 641524810 125117533 496431921 501954779 320676661 614473220 775502612 96557620 684183506 91064894 510084608 171466897 950126675 451601668 916453555 745757342 541528377 593638221 920791179 586876191 476993937 969557533 833003426 894937800 79054268 709987602 4244116 733212380 337402295 648487633 145844603 849371265 409123 187099690 405368565 167874517 49442860 939300456 906543731 808736530 2653820 976608599 342559417 254584925 560322266 901105271 209618969 414877083 787852574 983132320 818903606 339414381 386931433 691292392 703310166 364704194 662514744 123818150 114780092 664913144 227822534 898171543 85321544 488485072 161492732 820381734 785185515 846140718 854307669 734240545 871309554 917158006 835766318 453322253 373736212 418339941 897988058 793418631 687137149 283480685 799150264 804283270 24025989 48150702 33654691 265417964 655307892 170112833 676067391 567908823 426471562 436568896 190128989 400742773 989458016 38888581 502046891 608204973 496877077 902868383 92957458 35832722 163840912 790772179 45712285 264364623 628632454 61733596 506768271 673266479 889497498 300251877 403191248 910777858 619454891 356596292 258918821 87444831 752571538 888583537 988768095 340700422 39253199 42080785 930933098 510660247 390578600 618028349 427344703 593791331 618180952 615803841 165089080 801624385 697903613 737648419 869970867 801136824 742327714 248165249 301782905 137475587 792804395 90490819 337340107 133442926 890624118 162230128 961240699 148385115 484086036 143426622 747786296 19007740 745425876 773616266 893342443 571758724 65768559 152961101 79776647 654398995 993623971 65845845 118369671 446430836 719630848 109217182 8064128 288924605 545095842 985144236 329701668 913143433 101885993 210943695 205939523 691117273 710413578 313514328 26310703 659456802 611608743 356034140 733985044 892016500 228384310 496786166 864337147 668307719 82186044 499066490 992150347 861197064 516903850 319417227 168241461 261006669 484836055 953341731 473079464 520577641 398861339 945622252 415949069 869449177 824534385 685701343 814900402 633902489 316530109 578151710 650295516 174741006 87672918 269463399 524090414 303491221 291311883 498420863 463377846 158755578 584296298 221337715 103964629 265847529 421527209 260047063 870347427 790203800 806890843 461722317 2977543 56259974 551337624 330765874 245804053 535819094 51275563 158955493 686592876 750897401 987710719 301551134 399331020 808238334 702317921 124462405 832016262 306820316 746176296 944330127 375932606 80500694 556261026 103139428 348923198 667306880 98086493 513111694 563036285 384130861 301994353 667573945 866406252 174036467 283427832 561439181 945839445 209259578 741079648 573308742 486273204 119372223 553802294 786810378 956127417 78185173 670124927 836408158 89742354 216866982 785425709 65156495 377263226 436219862 674492678 543059193 162177780 23089601 907556531 283581459 4072149 143439245 695969487 164375074 690629256 543048243 201980232 338946814 903422662 683501414 977504930 585579669 993815981 749619375 98118722 292836539 662467541 784874148 686169460 513172060 548875848 758125934 181108741 444356007 648570939 743493437 884618757 119214116 338107131 309173435 729621600 347518828 233757353 737315428 703013944 237797912 924893341 236287948 446146482 519871544 969089612 112124254 352567976 132882941 430417317 39526172 289990562 50373343 58337186 348049016 103980093 571543586 460972606 537779039 298926203 979024371 24120482 710590216 588110599 938583911 926406809 472065458 671833514 685193923 750350836 11525480 504834343 470968207 170314678 276325542 645932080 88513903 650989752 953238672 158414431 75296041 772967185 804376429 880493551 771808076 560758642 414725177 479159771 82907054 821551475 50585263 841659529 465208786 658133813 455960210 682689661 643814610 347564593 115100627 536561136 845080564 51756582 444638416 360987552 537475751 986047164 86272251 510724707 711252546 791033057 844463417 595131000 118279058 363986060 388678034 23834501 937386859 645097115 602711202 259543265 176551172 548945257 321805034 708944053 224126194 605160226 801529265 972066351 168345338 937889613 613932725 666144851 817470600 708467238 569962269 577967379 266220397 53567831 654674613 986771272 227152969 440366617 40753150 106051414 557440256 586241665 798796520 106439361 639906499 402744789 625218883 25332403 352683266 566620609 379723856 854069265 60849206 871891675 83813656 978616844 650156671 731036089 709809149 807858823 441834807 51780214 318020901 48333511 265245883 847227494 986493691 797104519 977328692 963556490 940595561 222232768 741939030 750612674 505841660 974594829 11007945 85459890 60261560 437762760 844647745 318095162 959771690 858629714 893824006 223981211 534422413 815793727 988438986 479111737 347817198 617010587 879978806 136553552 670734317 718100837 610886690 454756745 800313166 654741564 696459032 432934722 655229451 936215690 412620881 113757164 499577218 428445398 477606153 268228114 18317522 472164602 143026408 885565470 209001576 244509998 11777256 772347480 815853183 320538067 606548666 229224250 144405995 905942269 584049779 316060246 570727353 600473539 945085893 503799994 631374558 2673349 817549910 144921023 623711730 680989997 597334673 814253280 34782865 646040442 408619425 815157426 266858320 371788594 964834402 227903275 456639300 381261822 417807248 179209920 349391064 311202102 419295767 178441578 309254235 884775742 497167674 773917417 747592192 843951348 517754873 366091358 383497052 21881762 175211106 339487210 24741957 21768411 561991654 136377082 509048064 236198427 863702595 404242557 965578218 954388686 578643023 235058069 976646913 952764365 561662889 689861811 911498232 520119116 564944478 500685143 698422935 488399473 261528131 253838318 896511251 199518401 37532160 583809246 273410847 641102196 203467923 483058684 492715361 914363463 951305866 108386639 883763010 814805934 637721448 387803627 488217293 605253973 929229323 179988078 887928521 376115540 82940344 902931432 888512599 393230195 27060781 780238858 697489511 741203568 198515458 579820435 570811186 921009862 232087796 20704027 990243906 26200544 646999490 943297794 618642174 34690277 855040388 279140210 649848998 362168562 223714702 655353774 179719249 390331111 241927015 433985503 696448529 511576623 178901176 74908971 441975257 318851804 89005473 501662458 718243860 452725957 730262029 296006250 378902645 570724385 832400498 393404312 891546067 179262127 223746043 228215432 153175934 722103516 635544041 355029691 45226015 421249291 832610255 390778245 822562334 309361126 190494091 678676525 106995024 631169880 423786697 514662024 746809516 745658454 178409444 820845578 37176135 36388638 783767449 704373773 127800771 919683011 971142285 896490231 11324914 84889761 272066822 253900687 706818745 53722254 781808787 963789060 618833058 648308755 352495405 571018946 531047699 167413162 654820034 388171797 57564448 842613437 386944046 569285156 679723117 655141038 902986133 378029535 999242798 395248461 508121484 902368323 1539034 866080542 92760880 32986040 928407009 797454898 648168524 31624628 37293131 78440381 456382022 671290529 512190767 704059816 160473175 785736583 691760900 374844159 814902674 89297447 977321945 903726238 706736777 783880877 419973458 162365687 126171902 46100904 422285828 743678351 753696361 513623583 678998569 676650581 70975448 886727452 516877608 66438270 648418431 906040101 824801240 527074683 243972275 257022905 888179847 601318101 56210410 690919682 490243655 332813861 719211391 374873053 746494738 767049389 959585120 701599708 326719222 530305377 241099193 817978811 772558683 174844879 120437926 989025364 930286637 385570418 380390287 610665501 747853592 695546323 133774638 482013702 219366377 689049896 385146519 250061567 396462612 223073128 890015720 219502992 149570799 351171962 369051226 262912762 914160108 583101585 967272868 377712020 799966390 775546863 687161282 575515825 147278899 999964378 842199167 822198869 988092908 762502011 194761646 293677657 687487412 804784418 392731628 923549467 582993975 497562412 395877777 676772730 702703276 684800987 915690032 481379740 604640984 990567006 825910581 997139126 659508633 514568994 21221888 173188990 229922168 504863008 663084005 758085811 18039656 451551370 594207682 854896750 535213130 87435430 271420251 844309200 967440729 949112073 168359399 36779735 66927814 179413641 421172687 460711761 147419133 229390433 629052876 901546269 904815935 446930059 379163209 748836509 937134313 348019266 625612066 969464380 937460783 524933564 222641158 302684200 325996277 435281385 376451778 816202550 986312242 886711459 535352031 457266418 745118998 279436823 526498677 793814761 677638856 825318461 545706015 944083654 488737902 509962506 220580385 161373412 5106937 787977967 690415039 985846111 380441016 589757723 900437084 451720878 312608293 72427174 267664863 744984699 508099165 939306069 254881995 802073165 546009484 741730808 329927017 233328212 612955579 395458421 164606870 340780761 245306268 383524770 552887698 865483640 641552560 435628795 246432161 187091365 577222866 975780604 409379691 931403408 456959445 626390025 152183790 782058401 803421962 788969330 875255707 821497825 336190376 575533540 215249683 393584718 198844080 16015617 818867798 931100516 313299987 446846194 476957228 349274182 629312798 661477528 435488664 648833951 267853101 868533718 550173209 681105245 241150268 305963958 507372682 945522054 777798363 481867263 733379335 499305298 939255194 692510387 671845464 25147326 280756356 455841001 187364952 301921232 805014755 204448377 224342047 408044874 358227714 44261801 408819593 157676561 420139896 875140139 32691935 176980756 530462239 906481105 58164615 99703160 579612839 456815282 443083257 684233227 601395329 790591404 564072195 911516496 108950773 711452345 266155165 377870412 589781854 842112105 601963370 509011786 79125196 924780618 28524189 186215661 985138994 207930511 174779722 343507959 234742079 329772746 95395312 498387119 871541373 522961906 131625519 748209376 433743899 232379810 727247480 998523053 990492017 475612197 18130953 524165692 685959394 554642316 741268473 174362551 108485724 492009590 914952095 295414710 840785405 183693949 180748807 93358378 443100192 166434155 614078374 404501287 356285947 130040676 710487456 35697148 342218290 574140154 517901653 834293189 141911679 465743402 441692809 471700202 440356130 142109845 324277990 535080490 298102711 587429490 889967602 14615606 825978450 83800100 813179339 948421610 725676707 725948365 373223482 923414733 363111164 899952232 962738517 669163027 635491217 483677252 280730436 528215133 967392720 855198427 411997369 815170835 767600836 819542468 878685249 433542493 86244490 903627833 656124099 225701135 514624927 73043883 4256740 960177886 314160205 202281031 66189271 200167559 68100780 106780445 453636078 224156607 727447376 7849533 527624387 188869745 421728815 767744056 513970004 979510357 942640920 563287568 654812110 877172086 11517978 452122079 225783954 920314275 808150274 132173384 423918390 976890891 641818900 587987729 798906316 942238562 835352066 92602221 359171659 114545626 257829951 558058758 106307426 392480291 259078013 814475522 192557572 352265017 777126154 301279849 137321925 140565582 769735725 93783849 922476042 999333423 899310506 854027529 883181987 997961209 613618642 114303423 4325595 224261710 237579673 961224393 30911215 933633875 55331547 537237933 27515674 124911853 455870487 641080926 109082007 415069950 340407297 47807359 495666499 507765457 318409112 84153785 569513754 281738676 989190089 781939573 69450272 992855894 703485541 56530108 120040098 931117857 745274708 267623235 969446081 371099366 978239339 474910833 369504467 35354686 384065514 255423011 593143630 533096263 778070990 545711066 114684748 73675621 936138188 97980476 749601990 960038696 275472019 918440903 903613885 873556028 912735246 919373395 831488700 118284564 702445147 579127837 95219717 479248920 135542780 263430944 974936428 909727192 997671030 842834513 212718255 485886244 198126424 68365861 250627122 167124922 861622506 114460517 445069175 870632366 244746475 646254322 362467614 294730553 585564018 760829054 784516882 967262144 891760455 36789254 364358305 666944323 304309462 669702120 73075836 802866830 43090395 376428989 934557011 600914621 17499214 413168194 790902779 715224711 483093619 174969783 708307103 176266881 130286832 315670671 94922288 717405127 486090153 436839465 533713590 149143983 911959203 37766215 57974479 17613749 615159329 511795015 235791371 72070110 410069449 652259911 343122171 950959064 306078002 864565122 753602603 681721170 852973255 166992809 182649510 598625819 469889058 289009310 957777831 502680869 90952397 127325515 360678893 407775569 836145636 911416725 189059149 508257568 184820047 745255036 460762013 688318280 556897823 461961221 419166581 991492782 656544740 46787744 352179760 647104597 104188906 402624167 500356852 63684959 429661895 65307416 770827846 697834352 451898190 983519168 715808849 749775706 981495861 484833284 255517195 480049512 964569531 699360339 758940040 802689233 641091147 326671391 559695422 644275410 10360872 563675779 942529721 125865496 205973453 40216809 847469922 189839947 103214693 857240937 783730832 139053681 613963933 25762222 110192559 948254409 769406992 387346735 849406780 275667160 157594891 897051041 181284378 868523284 664721976 757973164 705112688 349383610 143368329 733576747 640858358 98231355 25723895 772243306 551379196 28810230 817471840 614458631 362010250 289242265 726545751 170347016 907135357 477998275 120649243 337373208 303393263 726112696 767509189 34386891 488460328 683201512 615657223 7344809 664068818 367645944 775106021 215039241 95829255 339322778 836122467 104939895 882854611 843927075 303893186 595948057 473098467 108997319 892447058 843353486 326956566 18979809 482340749 119733399 660130806 370502142 892470084 205567576 846675794 565903580 491643811 920766177 144544884 301311867 417843386 67628367 946166115 720291645 857568090 603706684 187099161 907421218 813123410 768062783 320721040 740763816 468650193 226561021 941432643 133508262 681920107 457111888 166677626 410985744 396227199 849220468 136042045 31472018 6811041 402362078 644180915 650760967 606751226 837376173 906259368 816763149 951553613 537484009 735984852 195852979 518884591 625777418 855879426 426242644 845381241 924929041 278211610 640384929 158049007 474014762 473380099 863258281 938458973 320513014 513309221 445491351 131482222 362708724 240613273 467822027 363044417 658610663 273658288 277479479 658687901 348508744 583537580 201330464 436007953 763647208 57326077 436448885 821927605 849379172 514955682 281925716 523017445 893524265 439963497 66659839 317116533 30640975 445345934 214269581 550238132 249079709 45630167 826874587 467452792 991056608 565233014 958390781 282467896 976286398 118443890 750617720 53011664 388288800 678779855 172131948 633345491 117869724 740520034 130360018 242094546 521350703 512911300 128680089 759112376 621383592 814966477 796240631 832505684 795343508 732875238 20778838 634174150 321673195 616298548 906352516 831142640 699124983 640937040 750834014 555353905 661317078 191186304 246034772 986493147 139102001 24162406 216397932 997968119 119660176 971545591 465653508 113469460 493484906 896470839 305704097 981359699 89545823 814791523 930520873 476597798 636783361 746370760 237812944 381595122 560161126 538090623 698300468 317317951 408922035 196848803 932509777 704912253 711497342 729520701 944850002 945121120 557178173 428874949 442299120 485766648 653342768 117073461 53191068 11740628 155658809 810422220 94027103 922369048 925282050 981115036 401512089 646530730 127384433 271945533 811265807 437678044 790774158 53194551 18462671 381958754 372456762 629107410 233042179 491669367 164622473 593750633 594175214 957217549 252202299 891146808 714240356 773332673 66557346 729568654 581613539 466955974 134558493 661896799 395578992 323057398 970713783 338540081 652621310 367881335 712727448 226639228 868692456 356786203 53833010 912910513 276633977 346912712 936334454 173278664 336286885 804830178 336958491 969261370 827809496 189818728 440763677 504010334 474860764 985182623 477870445 836700487 490064273 820834883 221929258 814179112 155479105 167416423 508737409 894558929 315630028 558427188 960324074 867563584 842486178 943964593 779689076 876399340 244242328 680151054 747108168 580443873 873777820 324825126 222243009 476087400 564953710 388334386 512778169 486446035 700202457 739763161 473688843 415951391 227249040 803788816 656696009 39841954 762183066 730578919 882106733 993353895 530709628 691596044 32332639 974614670 380921557 208571479 548831896 747658236 189374588 492816725 335562752 879680123 259617504 208616845 305588536 815113497 242818035 701911514 267287577 722699281 388115736 231333840 772453740 174597769 601173371 298610445 985013529 761752605 656978002 892250372 914894894 958701064 99753543 343560845 306975864 82695635 411412217 786543727 279299035 144955038 857225569 353056825 163421672 489245360 270436799 598612792 266836211 913047144 447366035 93847986 332064779 634047427 822356030 842597598 788103512 681752278 973242006 727950282 237811174 419112464 583186910 22751611 207925815 871612091 434621364 322580835 583740287 509319297 549217217 36063434 94498396 683129933 594755923 933197960 748325489 133381787 725571093 562968761 377792711 733364754 996379766 435113327 697370388 149418325 417130903 862715661 486292156 165278797 368889762 84845210 507781517 357541736 608999327 763874057 645008462 357774447 673927094 686533453 718305569 115774090 437504956 375515365 889454891 798377347 235551880 862864266 41418026 673456419 427339544 961840901 782184463 603727816 424411514 303493437 690329605 142633051 417496923 219508307 647113991 951410831 957559298 881290895 359384681 805595760 280310551 194806549 438363108 467177352 903178466 840522607 107471267 759940387 403521830 31514633 695018702 393638286 308354459 535188698 243297249 599170071 815727909 209391618 86374366 941807759 266932939 346656802 645676290 358721840 543926544 386593328 67235042 784200831 924617364 950780460 242535734 669933362 709358961 27511559 150464682 94294732 234368525 503605159 380593874 126348098 576408660 307275259 62614778 346095219 710369408 742434426 660097638 698437244 93857630 622234389 717629129 731460566 400519368 665743625 932939186 429792876 183739339 528159619 981966882 792550782 619626539 150857100 472476438 436417435 959827379 56243182 574092117 30285290 458415200 208209129 99897816 295074110 407573786 779305901 605365978 206293455 954154499 582972206 49161031 908311449 924174899 310205899 140735219 378312583 942968400 262770414 887179717 664413537 844534920 685315235 301229970 970230935 356737318 911549704 653971202 592890396 622695832 211077314 714573673 647910038 132915381 931511683 57696692 811720914 858984510 461574255 460999812 475557586 662261320 311785215 500095412 18274046 186662859 690837611 775949678 413533177 268224058 547840374 347867570 473329314 902754324 598312259 857427117 667263336 114102200 970675717 126172065 478034123 627290031 500791694 405631975 532080208 957338027 760725345 396421128 935449527 255490181 516594674 957717566 905834947 805803150 796450286 944592906 97211115 459579437 622320047 538138537 76994297 611957365 363890129 851847588 524673471 947051608 119977186 734363787 647339003 564053852 902496676 162040139 973486020 590094664 926965741 532185592 324823021 865480874 329082000 217668821 673624953 171369914 909983532 122341367 601836076 291242957 946270156 806770146 564021103 140866110 649613194 840701299 359055153 134881413 264500278 816872004 758045306 213944247 366707441 899282879 215602340 73115910 556741184 908781813 920724254 633277815 157958868 157329845 860832983 343447488 223718058 49615291 577568994 942975435 832033847 810453619 496987557 654963943 180862557 178674061 82485292 587332894 994517704 629487360 81876984 232669479 137427038 837690353 930910745 992402932 292395416 673337103 740987920 614165210 927689753 467484121 973211172 624145614 686039527 306407350 491211459 685389842 345804266 505231416 799093267 606343485 756295135 909623980 60614353 593047948 453803673 458657928 461158889 364014068 781180954 202018713 702402466 964826378 665484360 148869692 849232011 765535248 748975942 821465402 437878490 541250606 467706654 963032908 807193212 646412579 84493686 787661631 885720686 259887108 339634974 971761955 805720373 865617667 537484912 901002631 445469108 427735903 462207604 481404067 266393103 610089773 636222426 234387590 683821675 790209940 812731588 825644170 489380393 822774418 899176688 423633771 880471918 4466957 825129446 454707405 639869598 202482754 4136725 649801654 683315237 622187735 917166004 710311055 17995764 244444610 851779441 654288607 237803871 181751377 750404089 824025736 322057358 313447415 846590096 653173707 522493980 276964686 58033495 855622764 249730586 382034582 156058743 785680638 826020652 973418276 423005331 952876027 217324720 574120572 563674079 275896743 367607977 170238355 300989867 221126220 610481975 528274798 728357665 582260375 752316820 526200627 96610356 484415997 338947068 118170911 812251521 995855336 943792772 189390591 972837310 175790980 452643917 309735733 589379203 197460852 924985217 419068444 231740578 86274801 693795347 986305226 438209295 193604464 978159696 180651173 181371508 264778368 711066594 125762970 442295203 168868755 813670571 480689503 795102862 4531766 7943154 784095636 556427615 352458867 968192131 848399316 743228616 403505571 267952159 826259358 453774557 164275232 784779847 715816052 149928960 174778788 497539308 412027402 429103466 295173254 651117710 242712260 579960312 880246285 407666490 63474475 951525757 550149388 389489170 551123642 608509433 848746509 85257613 866431976 713933224 295598726 281361222 112034933 67322018 730784723 988356746 920166657 184168318 822658641 938237231 373890524 252423875 798125641 773895056 579030712 745309158 277411984 715302175 42477060 87219055 14049675 159597302 192074084 790685378 862169160 510993231 660905374 857634167 790740485 369970156 21106893 296492796 953339089 676880413 590920175 955859475 794125847 843136220 295591221 671062346 242608720 139564073 289866796 236462667 449547502 677834893 667731221 543248596 620194947 959786966 158921775 175475169 568140188 962902885 638885381 999354043 520526470 799535365 497840920 915934209 357841861 880769988 891711819 241826758 744646170 54869483 607755295 871920405 141513200 954943499 379937829 736723866 611890293 831892300 588364614 321330316 192316291 931831597 344556132 996003293 615115629 775633031 951798550 832954485 715104350 530080729 699639406 430028462 386707482 445643747 467157054 935768227 969503069 999107085 978341151 39765485 681670107 749343449 96095172 777099241 373823902 419198930 515690 360465983 691779506 759705054 792653481 753467751 211128237 74393907 813484010 972357546 688576139 394680207 218313322 471892082 369744604 79562078 118841637 414596327 387894620 665959460 264513789 303604420 237990885 505002232 821348039 900935575 362984879 624123286 921972261 395307400 558768006 53319986 884332764 716319462 921457866 418568488 772242736 567907332 685127545 788175222 669685135 934104475 777229814 419033491 770070964 861470168 305966004 662088476 201625191 139723529 469404141 956766536 91959039 868051318 328711741 900811683 805471796 967442449 106745512 142810885 290832618 360110932 308705760 757136366 572396778 385402629 726716182 159040406 743221275 272011625 97168640 430307499 113415414 384659590 196094575 931143522 623401080 570893413 665506094 792880133 9256294 576922404 818027945 799056904 992839972 344618797 672552986 60008551 838784129 842451633 410011847 870727059 292983229 233049337 641347724 87689285 909073608 955511912 900095305 177937008 415018041 942939587 578423644 983192321 750634571 258137468 709637550 472751716 560940255 646120593 263865925 556484346 39467698 905354636 315868238 823262390 880714385 31230414 756390448 559205710 251841901 961915969 616299805 591954562 401284412 744022293 178527536 316507085 976757311 881695644 964876965 822404651 677315632 433300844 317162103 758635240 217315336 658589471 343157233 256094543 671709444 554067558 594452593 682079850 195582587 796735764 894837401 747449338 975386433 669785780 517565880 391949352 338112930 192321096 981611924 743574753 415940291 684206068 333579006 904963460 212404459 955220357 548598475 332444870 834227526 165309593 194215942 951193953 337963183 517313351 424992944 795537566 304523796 507185821 912508803 428717171 469318534 324207731 674160609 289188570 134998634 505636934 783939076 540606040 186705688 761702510 978467811 811261191 623749611 756181434 659317788 1110916 398427025 304853526 170331395 730032812 305929227 204557755 998944920 765070039 13316042 333005901 297005445 264634871 962572386 262229573 391588612 174062744 736099937 341095238 891438723 477635224 162750993 629237615 330034873 810326630 224657967 219876737 916143234 559450333 757531376 991139987 520319830 774204821 354832672 748213300 868553305 817467716 115068744 13207564 667877688 640292486 941688103 709411701 497777611 358889172 548516399 928330641 669313207 647452127 86751533 452943788 522022294 945670136 977861743 793506548 969089164 67048709 91215782 923548194 720659826 73817900 830619161 599932655 317490535 739989135 223046322 515262999 390480611 859516016 185400538 696145680 624502369 617449121 815818049 406329950 742835136 388935506 643759250 857437838 728881555 254377370 578296108 747894996 577893416 604523800 156680754 108512924 548784197 244452290 854310558 618193742 186370894 725882264 790832593 181890022 433809373 213905409 461903072 442466394 468704953 234213448 944612508 594422639 300969299 778118081 893024825 107711559 703602808 291934838 224714913 877361808 524572931 21043589 751277717 865875978 741198779 737657492 956933323 660792091 140153376 778108296 264331301 845092061 982359936 544125578 63095681 225799038 909734933 129585760 782701022 427144991 373510096 190777611 752283641 798091712 660577096 54113200 707875606 672163649 94825412 938528568 534941589 849269446 235156369 20441105 987217685 481750527 117825797 443970693 695299611 929225020 730520733 439688046 405722142 977540104 854392408 335150928 195443920 45846690 442648683 139474444 969355193 270064790 698912246 501310336 367956770 339942404 832353797 515901612 477745074 2693910 336871760 117005831 849137030 241583674 285629930 696988264 597824830 966824849 732497755 8513746 970749502 579934560 442500727 860481828 961243181 30950217 377241442 267983655 747745126 20438723 62692520 702282850 852870220 351418529 41049472 866287541 970530834 27719285 669703900 848778600 462167377 759043270 706039950 173727935 469567939 536038501 619036826 913253288 93783896 90662647 517112918 903560332 19932222 595881853 789297632 437645396 359388988 244383345 824276710 700967575 892277519 302771285 116314314 164895566 214196894 927882565 3665096 679037042 679801257 69196410 2056277 512279174 257337774 937506594 202893277 727397081 659684434 714021673 898772032 938115026 491778357 72427324 637322159 207595948 178101265 940190263 379595689 201765596 424582417 830524870 855074016 543579680 250771759 449840382 751457184 726857629 346250848 316385954 246675969 160250576 207754805 285615630 920024595 437766554 929784483 147358745 609078778 730294164 70426289 74567652 418277460 502031500 42324064 651440884 107469415 93232708 739670491 604274869 594434762 619311184 429802733 816382499 148550455 453487271 184878393 64206531 656882795 302313543 998201447 715440509 871422347 691802249 817939089 276476063 701333714 871139182 177460224 780257580 341048336 116392314 300261418 821789786 276138439 851551046 730566358 10059864 304864183 653162115 564250941 902176637 796649683 853199240 168813797 272819053 312938994 660267944 910142255 384338822 347400479 296477386 936181904 544351564 620969130 517213227 331115948 12087785 741605273 983066680 740581739 88151065 34658290 62790421 401520248 933723836 881819842 251097069 439254955 920840779 50155037 744774151 71825461 209892328 928643051 838453442 293663869 219364451 701522230 532727949 809793799 725196862 569981104 360623782 335151469 577735481 793104633 878988504 512482566 85156882 110043011 297068824 955417864 747639531 545012777 50244576 667726452 533408737 642225517 115452057 982202424 53217585 733236240 4936282 715674934 538244905 284563105 62575154 953478428 531916856 452008620 830751779 601236919 881140786 544720211 574610838 201734524 182615511 697377521 489999480 782292237 272995584 641156696 901946123 611667818 205326669 453418233 550295815 299652015 133253873 973016369 826015306 237985467 698710734 905575914 162734891 928563569 653468216 961267535 573386734 208542421 220817863 469618607 642927558 875278058 940045469 241337969 344661176 403548091 675415929 524774288 262544523 436705648 881876454 688714302 428453847 931157331 967834221 655389611 651227384 71572623 556257478 557131557 408904761 733969010 847522162 233057818 293889025 883952759 426584127 489381502 692586160 298255437 858020348 115772566 258335741 896687538 424273439 485794199 665395397 699267360 348514327 312804377 376339073 997992995 270047994 597471162 40817538 519918291 324817760 959076901 195615602 716918067 318140543 817701081 892557127 210796749 921185680 703655123 678012819 135877661 292764902 412561425 345748265 756702898 615690819 556969652 852621618 404647484 515428912 826949067 856094211 537759472 508147386 921620826 543947642 39025650 341874667 396662572 237542294 189903763 458989915 468108457 764400521 490634234 293303057 787666048 705547765 597830599 628526887 374600333 939507279 168096796 671713544 349542056 822572662 197127374 367460438 351127228 189677885 482661298 569235506 801224227 948506891 479188962 950945035 591800858 232376465 742997725 69109072 624769694 65589011 98138219 981456397 504330476 427148198 104689007 331075391 899932419 5104751 665449275 240314653 751443998 459369932 825686313 881519162 65232767 545983024 252268439 587401190 289233304 46896151 7292142 78107496 333770439 527032493 576144590 111438591 843790275 262161967 508680572 84684860 183140546 185177018 834698174 963694263 348400064 147742368 267373119 457906239 751205808 136743926 278852372 461306160 527275119 10195764 426479338 52632236 206805900 151117201 973060831 737011537 784732589 900372652 272934528 271404208 414471085 642029784 190179118 713756891 178817684 332258982 661499285 431810563 429356917 671207877 691799325 928894127 385386687 720811952 46616143 373758091 169923294 698762407 557840991 869968789 963269267 748347717 480601434 476979345 13426919 313067586 770096472 161846154 473896652 319054315 722476302 627847727 87483781 258621078 731531509 625128925 83648664 724789346 358745167 956194167 945864284 360816984 504548755 510728902 117814927 391978826 993309482 608480397 45874233 637006368 996128706 953945726 134398503 701239532 464591798 91617390 427998259 585067401 51213633 984963500 877529311 448681144 894344933 282713384 209379645 716302100 750874111 45850239 892443985 935468064 136207505 385339351 866127273 929700863 541871394 175237958 466281275 587098409 204614492 542666061 221893554 867481540 497008096 772714187 886563494 376022222 408525210 355139748 510464661 175663159 263356854 450535983 27782481 202496635 240457885 444115232 835608058 841662104 608360977 166917449 169799827 515138129 562397443 336334768 787951077 373655925 311872526 622906543 587568586 766038220 877237096 662762632 193008960 908142833 334986589 882279872 174986481 707065756 626167761 898929511 229408945 253963885 850406648 398615689 764704572 284726294 381909437 752102173 343518393 655059554 227947359 644047360 843641116 311670719 878142392 697614340 892079408 348439846 176988862 361554298 899620992 236678817 497066637 6969709 385778126 63654318 24362188 148136889 956587353 761331192 477519625 352045288 48900658 410365739 648348410 453099418 81501267 819005927 121146618 251774496 180107593 110968331 815293259 969146662 691955170 124982952 376623826 870550814 307443023 854540521 523196520 644378714 200703942 68184998 235653944 877889460 516114847 859126528 960967373 328808455 749170338 156790698 939625238 507894112 976592388 221976468 424572391 355684811 768234135 906991639 766216435 890783269 465117071 440725901 541459723 858880085 461572151 656966236 787056246 293750543 207445324 987369743 192891726 249568706 422518280 722800584 686880904 456973583 716370682 672039553 193706632 266057120 163985908 984792173 628612523 335751020 10659525 896647690 509080133 425137212 582395925 313087671 176788182 728487576 462875631 530403869 952946334 379974575 958967339 8332140 570256278 557008802 175807270 620860770 863516030 99847938 377315542 912597165 243913251 338753601 408842843 646338064 12741357 550864716 948644533 792398600 934088527 549026255 478272806 901780998 750445353 127383008 202488762 573183306 946805572 500741687 888082519 72278781 225918113 531807012 975288840 387049589 499107665 817011015 564324170 100063258 255229619 659807150 445145324 957025846 956805581 462571010 785830423 699576599 230242797 411509755 459845436 854531126 23466560 651134290 845945931 768504659 330306397 641389774 652996355 259397265 960261490 377415256 899890270 111089579 449881444 978113195 497339421 815388532 288828990 560740588 427086100 464836155 570100625 144519205 200382832 91387698 866251105 745772925 686277322 678834608 160018630 577109213 382684558 196049711 196397890 640423738 270923870 333650605 401934431 544107721 886689524 877220823 971505935 953984792 436467646 556747809 341883335 467722934 885525736 223387975 684820760 522836971 78407420 653131005 196528126 682088309 550336975 827887896 457273181 741343675 40481483 53428688 525309009 217067714 884542943 568610105 243771569 472732912 288140514 893556000 567417400 88817778 938102364 997238531 5186947 815405224 773288598 235586382 658274070 262578572 550092979 653976496 456781080 277438261 233208454 243468754 535839185 273111405 640910153 360292169 530574226 557878086 935063046 490772769 483440475 696177874 592362196 402888719 885162059 204424687 28798716 570070762 718581412 731690139 820645993 47257907 470281777 507024844 766812580 129796435 983924172 29208588 862426936 253741946 670299081 255234210 404147445 142219081 945869556 900767641 575925836 852549834 309947549 746327964 523246886 609502834 828545314 362565713 212962650 966062516 903829509 76760004 648055894 785740496 919741374 429940364 97114173 570726573 996700389 48493753 360043204 19667540 598128635 298288487 310788340 348949216 460521878 156246817 387260668 397920880 285848468 273535620 294400845 566823994 972301574 327815665 181709428 287070141 208219533 295119011 454169766 138788930 402448451 943742083 379268741 784989387 525509700 96723050 650659841 217793489 822430985 83455333 89341160 192132700 12583382 355138683 59277803 976802257 297534782 628492895 735195551 934860315 300871012 832227865 831044344 303802895 498478271 711453162 824450754 678109851 143462523 708511792 868504164 367624682 74939847 387567924 807423206 566517497 466812911 434798516 920072742 151080105 815562593 454084139 926153894 872171068 467088608 252957687 282663135 226291752 592278799 635060922 806662220 809656516 288646882 810473869 914299861 343665342 72931738 975005108 62498268 228380377 376645163 432387432 971249633 970250573 973704481 884212005 805269637 649500448 539927724 42414119 730972520 458142217 207244911 994506371 987328414 181584223 598185426 150426023 587286764 612240640 324758049 811224148 713982384 21963046 471720901 817736969 416678223 269226803 921794042 46228491 138441024 484421362 56439662 999254788 229854165 713295898 623155599 781059227 657075523 388380182 746317676 850704388 626174252 840280132 27964723 445914529 665006008 553563196 891822118 669873860 568376803 52302120 378563913 719234900 929987955 251279596 593973467 341696590 183379396 517555036 871255217 306803959 185940412 528547061 785434273 224739908 607379774 804691258 987848737 907556635 32657839 988345873 282651254 706684062 140137010 483929766 801891256 596558934 790268417 477087544 81488273 269097624 936226286 18312806 667516028 229897916 267818019 103941922 931986951 553550817 897107126 190467185 357524904 491091358 796553812 981726422 504909409 960529956 777304845 764325765 187666203 969562830 687100661 442631410 884491601 284079185 676467316 704541364 769082376 933142658 275573131 841942911 627631636 261775748 918769167 924794801 613739865 347177041 878116476 114444894 908625486 62548349 94782744 901899448 64495738 274512713 530793872 589803835 760603890 417444618 658425831 874886741 696831774 129112130 739094953 971230742 22466880 254120187 341131414 487886812 514136157 925890197 733038762 515362158 509770640 897614434 555941169 43995275 874868231 168745247 77663958 330181486 645922297 603687280 854435011 368000335 715939646 14722845 556327409 175844924 441640346 799524957 933623783 978161869 261263710 942246089 288428676 559655658 975161484 413982801 340495021 598860492 611707859 902375557 61896264 474510113 970635017 189819753 768949214 119376008 124359047 368996147 900825409 290813202 847863705 464519755 955574913 427056148 938987837 209935356 320049995 871296668 572813297 400811804 588179090 489745708 648842459 363883776 718024106 96160664 763874379 595163378 585919752 87571008 365047221 851121404 751306930 199262205 12972768 392471087 627988028 691359172 976943257 746660908 418622591 786054134 571499591 192374056 204356826 711844546 886784767 538299809 42093665 17730264 723151921 404877212 541418090 746008943 817503955 980029864 292923072 484475842 927167009 838186312 12446347 443799819 960382822 641693557 162735889 598805141 894808342 529962821 855807227 91987260 447723593 694404015 17242065 68093375 557836380 892717101 792668659 637141716 235595233 454458530 31462142 630077627 513802887 124507219 594001742 929916467 153693253 771615690 843399162 281817881 702678458 751479161 297628876 115508719 127949228 600310070 484493188 20657743 96560810 147491060 356176965 263666287 872325706 266064953 159750619 117421531 726335118 699028674 673924145 657522034 567751913 37322376 920710146 387721909 498448142 236123357 777597332 126552301 779687041 55390562 994852576 624152936 632858909 400752377 843836256 64577853 751528328 474190454 463096245 704153887 207135830 336155550 615764295 520502090 329234425 737046162 441524656 722493848 636862953 821191030 694496353 603796720 407739300 39383219 687599834 335319181 723160686 794127177 463548585 107132661 965836073 895082972 721190397 598521073 971955345 469553290 978290611 374624139 346467170 102038189 965973553 271000028 739543865 558450681 43494093 12326658 910436098 373555415 442060991 249249376 161207208 77083360 370899552 166005215 593849353 691858406 689546277 34639579 851730893 169509344 16027758 355968670 742602472 468184762 841962803 222920714 851156660 910513122 174410447 572478803 71489419 184837814 678117215 505962762 394595926 99309285 679988215 474792030 77670213 695391633 503885241 14703134 554537342 113471013 957856834 561725948 21099590 192059423 23713759 244965818 174728305 7545445 119734498 764399433 385121073 694598071 166825861 775110578 614607270 262475153 563838103 201011258 501317853 186699108 726718037 574231043 488380684 773821840 717274527 361399107 996761681 785405853 45094257 454155789 519653380 965401755 728344879 185635754 281040981 281879166 734627117 443541854 764887927 582541096 136571096 676446159 149181759 391465307 444389207 836437408 538082256 50256798 821430636 179581682 625701963 255182328 421865614 603125188 362198249 5359033 134716496 79041966 289136970 147022061 372350337 273342612 431586791 595051036 816868603 18804379 184967145 426976806 207312793 826081064 929333405 377889735 3740649 575370888 987685466 120983077 890084520 597122455 902969430 125626023 537517268 552911163 660956391 290828935 35191680 12064989 306275391 701100430 645258742 973516553 299634398 583534764 399990616 556485926 248218516 819567861 714455195 137670559 72947875 317177334 151476786 899409352 789672087 749599940 286104644 936062007 266087661 35835711 967116068 517874968 963027129 353774963 204224568 414334416 955712379 390729435 720577558 828867763 6891277 414072164 153369757 445853425 155079426 565311892 869164428 806957934 332737179 171416860 267873586 816286348 824674347 920011328 503519551 730882166 709543547 144286264 457969309 984773713 657353601 456651241 345000600 854457633 375739462 90266739 892960227 974670465 955751821 434572640 988044296 801653719 206267802 395592690 554819503 670824290 349739779 319714720 695917091 351253961 944094420 906211650 493117651 793787666 892837060 719010081 780754734 167378810 109423258 863730258 853896681 945840564 192829959 900597720 282781435 872531697 333185620 590851860 389874477 8650418 678918998 921547529 994651393 854986203 676237655 564996745 775513318 311206920 668947819 428346248 320061392 694314180 469257558 483806418 932005244 477041830 937871054 210208804 225191751 783294116 227924712 673870937 168210253 483604892 894489070 783282744 149159259 410187231 212003115 550921337 734605010 247639627 188884000 183766921 786647229 710344691 909700515 721431825 268202265 897476625 887902536 169066679 167151658 311725816 133059278 111208247 616640609 691542570 135788668 742261659 212623922 298021265 911230477 993629186 625804542 751814165 349057447 319537023 232891778 164143160 888053064 206865414 342078361 12278433 799866691 514752450 501192791 111782728 596037383 485812337 557230051 569503163 545344467 438541310 997017766 316289157 898472764 530432241 732951784 100382577 317228989 232076303 975386441 256168204 728117846 859922676 835798802 361564530 788604935 990938475 966807761 583924886 434233967 143694784 995536014 57341331 351211084 484845787 781642167 96973046 275634451 896189378 842395292 62885234 810949151 476629352 31731556 938214028 859914895 352099943 541663653 374655968 863985449 111527287 857839338 689977016 631656528 475019507 872204925 620393698 705415984 146490908 294366876 170795241 915011799 255259758 331415948 612533019 963565379 18749751 524189433 214562060 865174658 488092374 454659221 55057376 153731391 429293288 63262197 691323415 901562567 382260060 84235685 531004413 564929444 365533931 38059247 528656542 890943678 691988514 810551477 341871490 977211315 322854087 914935443 192528700 119908284 546448517 45514582 740057404 768100672 395463177 540435380 93468334 928958749 255453522 280825484 536694420 426032909 973210379 141244708 939815319 415120003 989204910 337435403 321865088 328460290 454829341 786997618 392237764 576648087 855351302 532578630 831921117 383580355 668689012 458292805 358958016 87722775 625868740 626813338 894439774 913461023 75284922 454422795 673281100 8925369 161606094 755792669 499779114 385103264 830951184 133684575 59701867 164328699 279795909 928105723 843146222 996324982 649387746 655472187 920421688 356156902 20961668 40392947 669185425 890784953 86230140 313772350 629101102 524695795 742788237 943139747 527294657 466530179 207174808 778114269 843803618 191024920 631001998 404893984 59271798 575055582 404817687 675635736 227447466 307731111 370249105 811701502 406228015 937672188 263194663 581159563 490674539 543668113 84790721 218439407 418060539 138670368 812292584 564777395 143175106 444852599 621041041 8238701 403172807 942206748 101225203 244271955 290369601 586136286 89140004 142535226 225295445 301097935 927767153 447768847 913931384 403267026 772785296 579894580 760824511 413973377 501666877 762096893 999575115 123384154 289528749 828391938 821306948 52478117 592215881 805661748 289644567 975813093 791729697 871338021 602857154 392670798 320923806 945542860 462407593 974539976 769395774 329589055 439866228 331903066 652522252 792163935 748074819 386059395 948102945 142587360 370346314 4490094 270360463 966804272 574593977 579359510 642230957 919759098 978904756 961321076 974105478 401555950 139616423 433798132 632124711 360305668 350195135 160610924 238938115 82955724 55247245 632425415 117130237 235940331 985193522 18066095 362310312 917133072 834827385 114565884 666000665 645135955 289051959 520468320 236986473 651099838 319788090 511794766 534348802 156286672 781094577 546580722 935802347 2475603 861264260 417636190 529022665 917284887 455111708 643709797 381506725 185534500 381109570 272280024 620780837 927442791 289521682 620289004 320624647 421498341 976048675 762694822 347951968 864475608 709908795 784959983 448285557 17308667 393633872 644412310 475485700 890031252 678748144 80472093 28539058 167957276 299810513 49713426 544894356 468768724 55424418 264277248 754466023 514822148 489071914 234599461 169065558 180988703 264695511 89771243 173318520 855591770 164330502 678326663 355562211 601939084 181558753 754574426 824698966 653661117 671116247 424681375 688154524 212024882 314716736 354480420 703590103 98512101 548491796 37704628 843354770 711554258 961859959 804280947 671170448 444879548 768075818 950292615 166994145 595015883 564297951 242313213 549226463 603893977 398940914 180453606 436632248 83562807 748112471 230111458 771051876 184643678 292130274 806641911 608659456 560931206 564676401 226844174 863920360 586228183 762179991 153104401 340396688 394279128 608774922 211091382 891236488 903773149 189168113 499129146 323288205 72397881 568651596 893056264 74050669 260442887 77500335 567243185 27358714 125516119 234772310 954661492 181531965 180569987 395360733 181695928 349980233 144024270 166832258 571772856 240375398 867123762 603982319 239671935 972387025 29788883 215530798 276660946 47997000 152783633 153974670 424263687 604163583 586889644 700119827 999371206 423673817 612024610 344575999 963269645 631410582 832729259 356846994 69470897 353845488 343488212 131514930 645489850 711257637 927303134 395565993 883460241 232433512 148503582 622395864 659618201 169417422 463195429 31955231 922948895 132215219 472823497 855825958 802031403 598769535 52504134 330789356 264669560 402278472 162622516 938859237 180254935 909018292 873722965 919158924 264291662 709253237 327825027 551484926 608267474 111212816 390687784 370915150 745496710 704693988 89233731 843053285 816100784 462617939 106110853 780668722 934928720 16677077 269773289 685901886 669286205 394121913 918777225 303574071 997284501 215608126 465386944 349882768 110870098 468142554 111718472 85895144 666154873 863023465 658569724 127536821 580833162 617617598 251640285 147012666 587609525 421194240 476038647 913262694 868244083 942879593 665405153 450298133 412563692 287119525 252346916 247671455 600666438 140393368 163234497 939626943 750679455 723821688 768863501 194663650 503557097 643657172 353245037 559929675 62920404 813950356 51239041 906756532 745101176 866296698 330182829 253553383 266970128 808815991 479489632 124133544 899280686 831775760 313504423 962065451 792741632 133922410 5538141 321717730 59142146 454141968 43475514 73371778 76427195 593688219 320042431 590454228 585166818 530143997 365730364 423851342 928783506 66280515 813165171 284425075 176412615 41731309 92023195 799392897 644898290 854936250 326419690 892260990 428722693 865097324 7785653 811117764 834785955 477819161 679282763 26181071 809095390 402416321 1528768 238901681 939984142 704935906 75433469 433402368 425853989 699785663 433402421 854737892 500873743 400965238 178364999 885030250 543836568 360926906 668514008 822420165 138216150 433829962 379030071 784937061 33787250 31517535 377611287 208051023 619885163 283521278 915942798 881117789 474149385 466864128 219068677 846788035 610397250 459815982 627514271 188555019 977213155 625912014 776137463 308801571 439207207 743809555 355766501 917739006 988045205 503111762 841238025 558216054 467504685 603730070 909330827 986504648 466258280 826837195 411059906 432291595 285050178 734092510 221625928 970448239 597230469 24805929 810149911 710781876 818512231 268743936 559156748 43109016 960019481 520923909 532269571 400640566 394867966 102723138 28677887 205683985 305659699 789584 719662719 972141245 803196661 34533159 171583177 253096179 590992922 595467532 977759416 905379019 434727924 646729909 849544254 38819765 919255212 824908537 637124445 733605076 689256917 777081231 979336341 302852038 814086380 345882446 265536109 673192550 644770103 874159418 659816054 377075341 113591215 606580858 877362349 155967525 345001758 273524246 409819701 458455464 242239019 644813519 374109681 446960601 963565529 512344785 270499134 272715538 963748565 349352168 607074630 849114557 777807161 530104824 746132586 43865513 562650638 475757686 966135527 275430369 198645145 591338106 517615065 836304063 850562607 832581250 903902028 578614294 344343255 419714098 51335871 804921538 529903097 73808159 73125863 660659344 293743255 455288970 790852211 545336700 553389213 550816388 941977759 120934198 323992566 966095664 98618980 805387552 621723851 5743400 925426121 973668266 631803642 980863207 645429179 423873975 928656585 827959718 520756054 984026567 270795363 719905461 808832378 94721418 335321763 993067882 520834981 789229220 879379665 677798903 166378327 312940444 849610374 679445826 528927194 515991647 809917598 901391007 695805816 700040131 811506358 381486809 626176981 801128418 362941301 706354434 272688024 831842694 809727012 656955327 389753361 70530594 309253131 546088075 305290179 822732925 279047998 213682913 655512651 178582164 688032556 833060810 598606730 6621824 195825979 701579217 685202740 897017509 984415018 110162280 236742196 741958606 115739853 585150797 399498240 707383528 120857520 912994441 739676437 659609337 964055488 284447040 153811905 706156598 984858689 308638597 326041083 564490204 830150949 387226777 112279431 544580838 430791550 513265497 588667407 248742192 49839454 527268231 446666182 363863992 849030183 842895845 944208245 468200882 598326022 3102859 799173230 468200365 392700384 780037327 472154681 537778105 239685528 502703872 527393919 781819868 33013602 220114210 565648830 563152227 662656077 747301065 311823459 990494036 535252781 5015104 372798743 339191838 451202241 231210308 555933113 721171105 965267530 813715737 772704292 893618494 731184223 868543960 109410197 777142814 730645147 590793577 519492309 567919054 800616530 406827000 975313850 682404256 750991028 263885397 172322737 619320032 557741896 258833596 561067654 257186360 193327004 633971690 358375704 42103165 171602619 445156727 171043299 774731793 902951451 373974923 589643614 637753158 183763637 851584357 537526481 527731546 813190101 759401578 734147928 270434938 354504650 941903601 569360261 20362438 903805744 149240533 213196398 209873466 174175170 899905645 675720800 666727615 516718774 602349596 45077108 727441740 871754916 401701786 509477124 490798092 118365426 171493081 390970545 501677085 272322586 716886921 778456376 426942490 223182148 865598651 361201736 977709997 506205302 690407053 262417731 189607995 209885807 353495603 595701874 141584541 583394452 178676699 748966355 809075886 360953314 493265681 435515356 595092467 110348374 760466039 603232797 684239933 230937601 162358016 835592422 798929152 122302247 713149440 351952613 270540770 209530757 953881848 694455326 784757610 30107465 930117521 999770889 163396630 136939993 284081727 395730188 796718638 844331757 769218979 289705340 266637669 642925008 197606940 253596643 789353597 745178279 411216235 360797456 230567499 788442849 317259145 62239734 492994697 326221392 925271697 267048881 318067975 133450463 89765824 881615015 974667165 852632262 707997295 727994654 20203178 985585774 376146326 672464930 772918192 689603547 657665886 87688231 944296491 744065727 615227737 429519028 589855952 625608072 602074002 601015784 175754658 711703236 292346498 300794517 679826374 783355370 371480786 782975812 244720708 860474985 599619199 398252846 999023317 277113324 876815421 330151705 175039521 559855557 335389299 681425860 939219775 832800734 19344673 973767462 828426021 398290381 947817269 23740254 371403859 883109181 234811563 357327067 337723020 62420479 62758075 403371012 526486365 238627175 859485714 524085287 427678632 311732994 595956099 49185197 161433190 7252419 276790123 293133955 22912572 771248752 952728120 910336292 368729588 904679021 28597188 246702585 363838662 430730047 666246952 333861868 836285328 210927258 150035169 738225679 245799027 326156665 420460034 235663542 751260020 860676089 481830440 261928668 568061580 930647670 583175163 809950397 872374614 841152463 983714399 388086065 490877864 308861142 672730047 444185169 183178129 306209301 882294185 210777591 955038440 44701811 469037415 148071761 855128402 873476830 636026559 366059492 793503580 275488584 847062883 782642732 976594286 625450463 85810034 10546887 720354889 298779157 182033057 259184354 208503596 698900073 557221968 591590257 366025859 275365977 139247810 398728800 970402563 675549999 482573518 698663834 476119429 942112400 699962032 375606940 911515403 652739889 999235245 350973871 430043921 853289733 138599615 976354947 312453024 872929962 374355422 446900259 891783489 707933713 571238964 982334984 548018598 125864079 298877544 906495054 672432405 82116283 496611384 809499685 312744133 359113419 713968411 512270718 158203471 942431983 923535033 873113521 413477375 914173811 935115726 747153502 573668698 139225794 323228851 484650598 530470495 897943323 198198135 973985659 133316023 692819635 915173856 37428421 502581248 347075348 397167679 924108763 746953844 479361763 542915331 1386904 352258644 156562130 79200835 433456327 396626897 756713869 131743048 451270342 913731963 209730290 810026397 102979533 912583861 375465979 450599705 882344923 596541704 904522236 445867441 185548989 626445366 329425901 952603342 835341050 530597254 970876491 294785378 45925836 398210346 152822283 29895996 459203786 338029327 546837630 574399655 40534700 995343189 249587728 206859790 853465816 15754507 704201305 975418985 870427011 893817840 468594675 858025592 555184795 823217441 801178858 854486137 703470635 448170610 553466335 294785024 985243283 848037835 275114842 776619460 642107456 132581851 189852646 210453839 171574509 428769833 837312313 427157751 725911535 592478995 484971071 684820215 44384321 624131418 150395918 611407731 468762056 703086874 821286885 100840656 427396774 41037626 407333370 584752416 897164761 253084352 2216671 117994167 994064002 304931269 521697656 738384819 681647410 697786043 929991101 562702377 257782107 292711782 978804830 644517947 986975324 964552451 17253303 449953745 896294930 184049208 739921458 291899360 583724832 88239908 582846780 289446032 384160874 582489384 51034828 316484494 935219965 715504970 439194453 351807611 325696997 121823253 38323986 299047262 588911384 28758732 554033862 781219766 816150402 946138724 61649038 906267118 599977861 350641348 287874441 441827081 365010045 89088167 903567673 996244591 360765634 190197959 7212108 264719123 662034239 86627140 774781418 274265683 647498791 693634856 709279717 694270343 841732813 738525329 429605533 177818111 260045418 13595890 151719613 923044852 506307147 231599537 815847489 111259267 368932240 611373263 978460926 727988340 809409292 763563536 960639252 637410449 818751969 903438987 372520408 551535898 104903810 46022335 879772205 710788849 287092252 764878202 537907954 973257017 545549375 723950018 677221888 712593688 717789333 730874527 360797790 965561502 21339965 704221176 330451497 991595868 685823296 652688014 28947741 997228755 641319438 238866373 326960832 283004450 522803504 423319623 11214963 138460565 627504994 940168148 323981555 581591347 442641738 687589439 818414636 337980266 562017879 645315016 842168360 568677320 900235798 126735273 257865306 777977755 202350355 762933143 228891465 897364749 903203123 158624695 988914884 785486422 833934030 389161650 8341495 443244512 18858269 692878251 720736697 832886651 557006695 55739549 606272193 814392107 147915696 230082499 871752691 528794023 912448887 605368447 976163962 497866039 69081256 373190783 531278926 537251762 594667769 319784007 673227183 725841546 214958014 262274233 184449091 446461110 470422867 384413265 120789586 783129733 119965257 420139578 376589155 531378589 279671665 210053294 200987538 3425642 990759031 831643438 362279142 367772843 464439 627757221 606090671 649002888 417957229 383884213 669682629 57685169 824406686 815170773 129454881 495131142 839173118 60978347 38055016 48930587 322894644 862476334 774973131 897526852 265918283 827715474 203136651 633367698 156437011 19443539 975224345 957365859 696375003 83647711 414640295 246475393 65095198 171932044 990267905 540779212 994373095 140580609 269641441 344685735 258972872 810181004 814516433 325394255 126112853 75023685 812485004 577838226 851170676 106486975 464959450 759623519 493373924 264970543 31710859 263846798 970788492 860665957 954133728 307991693 539122639 556012436 186839470 42349213 824994681 906918169 626341916 676989408 356267986 613748765 14481935 96502128 381754304 751955587 96135528 63432854 197409889 359627884 994249548 970562673 651103518 941089160 123001727 178857040 806051298 638665258 649069948 308905610 409213922 26650618 868490129 887782080 114632471 43325484 541524070 745030117 134320651 635744847 60796895 913309331 843447801 131789708 706524553 813639011 93355322 431788046 820490689 875354274 538140493 74646765 211589215 619753921 541737790 424223288 827481595 310566412 950088992 130642570 309901771 756801258 474118794 778468576 457034275 979071246 211290567 656228896 370281010 476954381 262816387 871444189 471551535 279997532 210995535 271780914 323332051 321069695 7512166 38154540 903190627 341557825 512194066 113741983 117265413 81396206 17592497 326192633 884350143 179333422 798486772 80549167 397832913 639203455 216301727 36342096 426092480 286530588 408854589 197953710 494166808 339807235 189163264 915117560 190312560 685077451 67271818 148563187 34584542 170715062 689409032 33803195 90969151 764503607 337419696 270602594 974456315 38821989 265508596 366673022 957539651 229679799 370030402 603316665 190049797 228690732 494007729 84733260 763821145 71502240 211696566 557255151 97966657 919067449 876800235 984406177 296857122 541779478 180440448 521185345 159938819 192661655 298607618 232627308 542358860 20990181 75424683 819722839 513464410 117134407 173794207 455261996 445636998 625391790 983903383 174285558 230582758 908917944 892517284 560677259 535404588 587505995 710320740 336529943 370142590 598772365 387876702 929069971 657674957 749064105 229903970 607614127 471439950 376048777 936510945 728370876 594003706 757812068 843453646 567475995 428355828 586047447 555470573 774219885 124160996 353462424 975374755 600222246 943608607 612043614 314474198 296310905 516880648 70776680 104776764 217379221 613154559 871342451 730080020 581448510 51218975 703005782 475768008 117889556 129870375 570902900 85091315 168374355 310419536 691360431 804414084 636825234 751751102 878926798 842375336 300738920 265825582 129219391 420392454 364596066 169184156 633738052 354238458 791167201 263721786 850245411 76433737 234671164 717043910 44402737 697575272 409557820 722758960 447468585 546699431 302038522 929232605 591662792 805011201 300846147 291816375 846476403 312691614 60367717 125705366 133095029 963160334 1015260 589377158 31801782 21019648 90643090 263714353 565933496 78869361 743184515 810480339 514188488 337632029 891799609 931453476 158190822 295303344 405662071 297747938 713367466 198355905 939440427 897381542 949281777 601576551 926021757 767047513 753690923 728185564 522993313 641129079 44173423 582329371 317204990 922811687 277972398 568834063 105471476 390155696 810405604 939350976 71239084 197343210 262438065 66496705 323550881 556165474 792430613 507778098 265431726 883082681 115542461 506692675 787877862 389339281 174607418 489154884 133408804 626336496 718211679 680106601 983686507 524528421 121208896 357193584 822179863 977194376 318750470 19541421 181913641 31761872 652965168 436329402 222382116 37742080 249482832 757830421 398043502 614537903 454484355 568412665 45168904 553905730 359805574 438933437 307098768 728775682 713427732 831286561 410813951 659985410 576738398 316507396 820169322 171419181 716098919 589398464 9158722 437894776 807783331 509231749 265724448 514153286 23624609 528250298 486388115 468910836 801394922 900073795 412230025 429605475 992561088 669251922 803877252 443048837 524484173 87663326 248546090 234895332 712085760 835440823 657713878 277229931 469700296 364521941 825791288 144106442 315231547 891427263 302141465 477250065 391521729 591635684 665959236 904368305 22676106 113837699 252138826 667738292 679527242 903754458 251444239 124506602 988872108 277179433 174765578 358233551 557255798 454601665 839272731 65461964 615134866 214111275 371329068 896071014 426875074 180789225 198229464 55056449 808505771 333297683 549942254 414637673 96117351 545257644 97862926 197571203 58230379 524006693 445655416 2595574 825261138 738913497 587555404 664636964 91679129 84731819 501738012 138505276 285105545 115839432 725718084 335462458 565307909 588180675 955655540 243881305 191992171 47771705 498550213 658046371 304903364 859806069 385910700 887456545 711392529 599518202 144391406 231120823 462375652 633964056 31259367 871068907 969046292 640494429 631109399 372475943 447696015 303455346 116143893 239374014 232489269 207561605 450512482 687064015 605173593 827901454 740700291 411428677 760337926 457593702 879366619 665812074 201392901 912390516 896194852 917899635 894099924 943306489 299874357 15568508 885591174 761948235 73326781 67777302 271314272 375643923 171575309 514521414 242915046 67912183 598365186 125482927 546871826 33763443 328779358 508539870 479392827 661433529 771604428 520832776 897670009 227967222 197942347 281736388 580027292 46424112 405310288 160986109 341510074 530138300 980065197 204305674 492687373 526262148 823580532 930953082 380516182 576834972 755988391 239490719 677789804 98349590 798416916 338904790 789985562 813528772 640750595 549099021 920237551 482794846 774681354 911498652 213356510 292604602 590761873 606380875 58995896 13919795 974307028 988541364 823883709 819605862 761975643 595232256 260559727 637392643 631153035 441390953 952175506 214851152 369503527 634864611 391996368 18974118 919742453 822640555 951747736 8648686 680136200 604745925 910832227 768265014 641226435 282296768 141902765 949320805 860288789 836371196 532717280 700500999 383336322 80307324 473714380 801847247 548175366 860996520 538625912 871168702 33836197 16179202 931898010 964269365 692348736 525443543 556810650 19553576 138657585 342917242 836122166 471954115 288238904 249302834 376300977 158601272 516323073 557886525 539444386 714615186 795335476 276987476 668007779 60789315 867563108 321179139 329354235 705150860 184905486 743104019 218199381 619512752 534404559 675492294 574219193 412790531 389574532 239561296 991907106 185823329 999197204 902322778 85534828 748873034 926183506 254748384 725598737 834953794 861585872 26701029 677660812 705265212 572280862 692118386 256603686 106870262 90552460 334482897 886198329 858432774 885589682 367271749 198002923 583478783 225252443 858863949 142716476 919408168 876275787 914820689 327076065 729730969 596030945 873834823 69660026 294632028 715041 296993510 493630745 482253398 788941723 650944627 817219671 326014879 477763291 597680007 858179023 490613387 858105141 863876898 631629798 80743477 467561833 655363266 985296832 224516042 536419758 463556963 860837772 231861602 983821991 581689768 591683650 100015133 61417618 520594261 890969438 316579425 128143696 833521215 830665793 914671999 173236516 880374062 154453005 809846832 868953594 690434252 326638905 285223523 425476998 185933099 605063231 317072509 578903921 417071927 862348303 425221643 469711704 886442402 183262524 473151818 694925376 427630837 973135049 504989295 3397174 713360900 380527501 475270788 848724475 184116886 656100634 656074333 689494013 191118124 367527797 285041243 592778603 219706470 423057672 145664201 863919888 132773192 488911967 873155071 441286622 419563729 992546019 627098950 882332230 968694459 614247565 519185426 140852305 662958806 955747968 42910151 760711348 815154370 160131713 325131335 241623387 628425980 914539938 264127727 870558807 571329169 754981180 328036196 984914815 351061569 597919380 610165076 378916241 496035422 722487247 540372242 565872764 507204179 427274718 792378842 899738899 98928582 612889187 656751547 529960977 899653592 636384215 138602716 392093529 917900237 444921051 706183555 386870211 48506956 580277051 193469094 520654556 18148054 897179683 354678534 44465249 888376019 193117418 565868605 872266698 211382486 618524912 84876234 776905445 137626390 690276892 681780055 900541343 551901088 566596818 251201875 157511371 504379831 898742139 24763734 594724340 558121855 168830306 670793316 177823246 923058664 13410922 876964344 867753397 434080798 137320626 85329795 3262182 173180938 632939602 560638403 398363903 760375796 897187537 198484693 431199302 98700750 679863721 526921180 695069105 723848937 581407218 107681096 820638143 886546593 965104045 989936089 159523363 86694203 463349764 761914158 668225076 184512103 295107419 319747944 28377930 245268744 380010531 116802348 544925706 551943349 970472241 593846132 5074771 596833570 292479016 146048626 884112331 804047518 180776290 95758639 482307752 445655439 838017982 480462628 982580269 629308105 511675247 839135890 684067886 309476080 395878423 137119039 368639620 200979295 260145202 750737935 791227378 433715173 875590446 200650444 941420893 424327616 453511780 274559948 525740818 314797538 999632233 677298132 604027761 675813226 324393601 918231882 946465632 558320796 713588721 127462211 410083554 435516126 346897764 402054742 467715022 896112469 837534804 111946617 982437292 428848463 596558531 652373371 315301704 135088968 252599417 76470975 320422605 959991896 783933215 298559005 58526781 863252357 1480145 258754447 686537354 366887642 60346402 898824689 796496843 96606578 291980099 490899883 986755264 98881743 610740009 411007969 212185840 494993154 290452020 55036027 457452830 763073721 540670687 792071987 649909745 995727754 988772908 303903935 12035625 924733938 112227864 955622107 380848307 90448119 465326091 219791501 260218549 804750603 733186570 272043957 793436090 265780918 826397203 98988553 543971701 704669026 142925764 332667614 150606411 31425764 848146286 309018034 414349357 67622551 817404745 200800493 173858809 427391141 860717918 487048186 373658000 603952531 721356223 982092357 551790462 477494178 632888989 396665305 950195795 967971613 826913881 26265111 715419952 183374953 865921717 678317467 327451764 516045091 722203698 1942596 392475284 466677533 378400766 583363261 815299247 540673910 518259682 470666773 469433137 222432385 459791777 52080487 66576696 332844252 689889539 131092228 64355297 241023720 477801435 627268274 388023935 681950634 666419625 455733791 621194928 152860057 912693014 33458025 455330330 572107181 327550457 841823628 666753017 593615656 276296087 213979443 66239633 953175709 336095589 743141921 347785153 948818850 418109647 779361560 187281611 22537849 584686132 619830503 670535350 446661221 2900898 524096145 976123549 744537562 528840956 302147 449555156 876459063 287271962 768002118 518710785 970170934 703129799 753002054 562950352 27598011 433615196 391538913 399560713 276375537 999972546 805358169 624759098 989146378 293336535 149950687 422644601 816776431 393606826 446906409 393510542 194882374 20876426 273049794 388020787 776894214 835972919 520907245 17727167 125866702 171562167 446698406 222153830 461863115 188604146 577533802 799863346 937772200 172847770 638262289 919711662 978219669 421592020 785041639 20118358 35595619 629833754 762206377 684297796 507769968 4225076 139363324 957464470 200632864 654452544 636675206 903657430 656869900 762281517 49823005 456475412 428278656 155296908 405305872 549104489 436488942 383650419 674732546 2183562 122279085 264523387 40854713 135033592 262567067 580735287 97795942 311962275 546572579 992253197 469889509 628137825 507652993 9096437 172770663 974293544 101990167 141590226 625736432 229240539 821284610 819622577 171713802 370282961 627715223 99568396 290681933 200442496 267433571 990573353 447093776 237271233 344310476 942534988 317064071 95116824 116649948 228137909 41943109 853618751 845099258 954045551 878615849 494126154 377962113 11133675 247869022 185437429 829655272 818741341 570252483 268880171 302094276 299095146 164418003 972332850 23012939 893463018 703521121 195032117 119596674 185112698 963801511 560079039 143489257 154279883 243226973 123410818 219084352 389030827 663251377 864878659 964288955 903815262 931517108 786971079 515902215 114605115 977451602 909815026 829473334 797404476 252697462 453919274 205542253 293894211 120332965 21932812 320084566 108074523 857677717 55472303 755941369 615161575 59120123 916556817 22174398 842170914 82203881 972526605 458872343 381357512 933056296 612605945 299838403 44788991 386164884 963920624 482801596 854289935 769016802 5925821 198483276 911162393 519559731 545900236 190968504 82867702 442104128 296309273 258118727 957037161 380562970 9624738 469882258 47499133 347639942 632673738 67448546 829211614 326461340 889541372 635257324 410081983 573516961 373332466 269973056 41643990 543370096 854098572 791046479 394259273 553974563 381618767 861569158 86668127 953574538 567078900 911963349 223782122 764231201 831488041 113606973 578918057 511990087 4984984 422444764 372388977 487468766 872324817 214583845 514800167 854939834 791510051 363865936 4683406 902829629 684897768 136429622 197824935 798037829 435759245 825179859 801790106 985968022 360825645 931128608 569953349 315902079 456753416 321861397 983715297 512215489 833813574 360083116 873394032 544913196 862291225 949011477 422670708 661132387 959489959 234954327 280575248 160340378 62163401 369333891 346110019 10187362 657915481 324465438 177497284 903295383 665051321 878412920 721824374 927719095 955559753 281070536 815458204 195406866 670320442 140895157 659264903 476895337 373135391 82246809 667802342 372906929 124924342 612800075 755321730 8922415 926377482 84112730 584423978 278516087 54559752 233991376 274303278 956193279 215365649 908842264 950100569 908543135 786565285 290910184 343648826 427668410 401279634 343644991 131035845 426345590 650461171 376008531 548251842 503126792 511471903 790012074 481026324 516420471 144424642 712100436 834165979 451401313 723458587 701727704 416759820 634639953 502223367 650562872 966044820 672656448 162043933 569495927 80897576 566193323 152682247 761460325 161343945 52584802 797254216 143718445 15857003 736836916 938886757 362511479 668020127 551569960 745686886 45766996 975702574 422430419 271556608 739928059 217669152 465648610 949596129 525711330 330564539 630850012 223398501 273238113 264546711 634697102 813760917 929077199 966972278 141527095 879114428 836060402 739932477 783801879 788835555 398531376 786196436 372742154 199142779 899179832 213342541 641828641 691502016 376547825 427435444 942540559 218698379 962082690 237119342 173199428 996971362 157031816 641484994 482775857 296577481 966064774 387865691 379799600 447894501 844730708 247843424 173455229 692779348 110598770 263039406 967413395 71469336 552817754 184007934 122499877 474514258 476976268 756631502 878121977 523192575 944319681 179447989 979187842 101847775 701458633 82252196 303919364 361667981 780994837 2262473 378070441 118364038 591339737 977514101 742307682 387504322 230246020 517345086 760587657 751264331 562174390 209808992 933530650 365236538 20114439 491596125 291380000 713030991 261604180 269582019 640991025 901250310 961645777 227435532 758277875 983086468 478079102 283642092 441820803 188490819 624371465 877921235 308675276 42643315 596986294 103851674 56783987 131135485 453772165 975841976 443223758 846134532 206046860 767645386 378311287 313100393 786026299 16272766 901558906 550734160 233081162 204977847 972333986 259706727 321899385 818213168 726897994 5959742 723725416 160915897 204296095 486460336 820241418 800547480 464985082 349622292 671276282 532556044 830234343 711202232 222329385 229177536 151681991 399289712 120575185 149473474 56684331 136162181 816785154 127528576 54930517 638296547 626947952 691107020 291128235 995611303 78049950 318887725 881232591 745280303 10172974 962397769 840292339 145680800 209237098 546723639 459291923 89037458 210460417 993868152 360688324 781477067 653975494 248713326 313095867 708356304 850646105 834536298 328856114 73010886 564362743 165850837 225658555 57310854 735722769 825431459 209857180 22899874 825733878 766311660 706577502 164058499 615379463 813770831 877625865 975849392 456835506 681521367 261436578 926322204 475806671 679708000 372074425 722331885 200879901 479942849 456993977 498115365 826478598 272830743 126232377 398544651 940551177 39116432 252778477 218101178 441452764 843378188 732161937 757354893 653363579 558228631 219137321 380216237 91821550 449294647 689080386 399827579 479919323 694431366 393222240 880721640 502096030 405752438 362060999 272072657 763904236 269487167 400054684 434606364 403175621 808599919 928651035 958175173 137806355 955739294 731222424 762363276 716393712 431932146 851670617 844458476 680136640 384721270 246918683 69543917 72118282 952139838 300237234 88724794 596149237 404110143 427633078 889773139 106493267 51706415 668534001 766804359 703171733 343083097 628549809 928594388 806042206 871825938 229884251 910714084 329389775 383770342 441185847 545523720 67430989 615021667 927604046 861204748 810718594 513912380 188720024 142700275 119971140 693900737 652481191 918590349 170473456 257815624 634335147 940897930 509294175 706772536 11081888 194040384 190572589 352814099 949154674 346361711 913486789 965591928 212153400 197773135 872186725 30086030 722878551 351236681 921361766 939382080 275638765 284584493 648481733 430793545 544854445 146559822 957242158 542114078 723324678 24398006 426956459 209001065 371657279 215751172 973942131 852307765 317584389 232635446 598797403 887724154 113973866 145299094 502701400 658351692 843824696 782040070 69119898 452202651 648481574 996839831 953922035 144281250 877396532 957978309 620266417 112747290 10106224 778636860 254049357 834470190 646447158 25031973 459065113 313825807 295085670 991733120 738790944 490012842 359150478 68411849 473233957 782825625 441663152 195398915 965585625 42477364 864079622 108325597 290048143 843928382 169079053 379291784 407440468 114114833 497846516 659719837 28320262 530019828 513303752 985660535 653483725 770540704 331147559 209282458 577333064 75038994 800038939 290453381 428110567 565023281 846080271 599890646 719781831 55066682 805400688 376849552 35837945 115748993 363488631 875492387 820982444 738084124 54139791 235421603 762343553 879702081 856199866 143538499 611230219 274197149 430526785 417237773 780348928 840657144 840438539 217690084 940170604 686237295 685083493 59759032 538183508 870012655 683071763 561881469 655008120 508101626 305561414 50840380 886803004 951212262 735772086 376859244 283548120 628097324 629837678 961040547 80760727 83015708 274840820 850937852 629898042 448918618 4480365 689123796 160313056 583172907 648268467 979699124 977871866 984014263 389969970 889846152 671526523 70571410 221241981 14758667 233681751 90454864 372449692 620662784 652766111 53246024 206628394 233134650 888494972 700083172 9339049 51545671 146311598 731627908 441928886 917399461 302724145 439031848 110697695 381165009 195105155 973572005 541957487 778203361 406625952 778123373 769213596 360014127 578517925 66615825 117702466 998654293 887705914 139282060 591235810 659612951 479441296 850913679 64242269 383276413 793527390 992644846 183743982 406643385 346244344 918313457 860775900 403531523 93092724 355552629 69540348 525222688 317490650 145042774 12020103 623177162 507287016 686691657 645861025 7000491 929634013 303845285 187800401 919779289 40022335 65901557 807245188 59407524 507643451 356307926 476290924 356099868 148347830 195757808 599517686 9258106 61191028 339572368 392056816 744241714 938886137 636037156 308844395 328607316 349268850 115342796 776162532 569790211 368635027 850777357 118147076 905234364 712575406 869872588 819146415 404553047 528190433 259737062 966688783 80015410 13369750 997167087 583860323 563447599 732023546 426775636 419316178 663619739 251981956 230218967 836357327 941041072 79702769 221815354 599543656 889364366 881793456 79488530 705682958 480839626 636959245 400872961 389842997 906168639 676134381 74079003 701141042 832136267 437711164 271535761 604381696 893666394 249941491 239044310 690444567 283490742 546461939 131787886 868978870 691879254 610453877 708694432 595905627 181460179 26470624 649083038 67607848 405156134 614174885 902918793 347503624 389097797 647612653 210143582 295506583 364303977 526106333 666806192 572200579 947543690 424021198 879135784 861342573 432508457 567990591 836717563 571273372 873561283 857409711 372272450 886264428 781262775 264895683 631530837 93536058 392234518 414686979 245408148 190032369 550358069 745677229 401351310 110239791 325587532 767838124 122162109 763311688 225159284 725752110 675259368 313053430 282853932 586599936 969742536 990523523 421705392 152257927 234288453 9336535 836775531 335188279 466811393 771966507 973948300 645900267 115948706 559592423 731189669 747154238 384627860 341659472 257783046 503557802 777609604 884867522 53553161 929935294 332133081 298009293 667298202 395720338 41068163 593664662 158236800 890657999 393494568 840855746 13307430 195455450 180643388 246534159 658384029 889034609 547220403 297376022 763278878 601885158 36719270 717532087 229395582 213350541 207929030 723152648 262878805 650649013 754480781 846978032 112092928 995132147 275073435 699748260 328006219 380044936 773291132 376403244 914327210 812095874 37749323 419889379 537155557 261483157 289425348 350971486 641210112 969939366 651880312 682266927 879867468 384239155 105462435 757112355 322337190 404992175 414312026 843573545 620083000 999130007 301285702 642782701 663936139 813575342 189885984 735870365 683508004 566794232 206378204 70032378 669828329 449757420 719382107 405265177 312397780 505358265 358776774 95035947 5937459 783362407 217869000 524929783 744368429 908893783 211064727 621753565 266546332 616686786 918360597 152078655 99230717 146579711 507248514 961770586 20373432 946002898 218528866 494385576 501460443 35250471 391783247 683862799 661238695 697672720 697664732 690690017 109298933 23865420 702316703 657428409 307257016 564981110 782364380 155729616 340871451 640523447 199364898 92697690 78616990 540798057 352308571 104752447 856991947 556227825 458036460 996622623 995890841 108434826 431518305 761291259 568757137 75708282 226798788 199073664 399184583 903866506 329484569 790665949 115727363 765124094 51118855 857330102 222586889 157015390 681812516 697837806 615548252 360118199 580386452 975075263 448983191 428677544 243655449 926769372 770805654 1080118 724451177 83510673 352259696 913366186 390324269 848388977 133951708 556313865 334643503 718842670 120021079 201011242 174743286 285086567 133596264 218140145 433089036 959085485 554824072 330225042 742971698 986226549 561004940 935944911 374375547 284339490 293570250 495558036 154971500 214861729 418652453 867768220 518712923 371549682 821700268 283368307 899977907 513593829 497767261 977540523 54361225 254701052 369073699 95318066 461062813 766562716 548199309 21686326 843818625 7605684 986449417 177174770 38852038 929303844 557532553 869528171 816142830 978153324 584019317 588763719 284983114 185660665 376945875 870738234 50636482 326838665 156818795 549398980 534398935 70567729 280035981 25339912 227293031 137031763 276655939 416332266 924934359 693743425 289442473 790319613 715255959 527825726 200254075 848992544 466060557 261568098 372246934 746947872 741861883 710007933 934476876 563362398 39745825 474521637 878608417 217987570 351999794 709308958 719435141 705499467 448296372 661467306 50924888 531698597 336405718 590944371 830165016 978344937 283476489 710343999 214108852 491087385 684877146 312133750 381769511 972156142 351567376 868204905 929527449 432216578 677672817 383461862 995324784 198956050 743483294 298218687 684642252 327566280 462121453 758123865 221398514 294749865 513683829 398119599 289506834 383722322 107941060 93725700 175283578 769674095 135992834 499952861 398697627 791948821 462289092 174182593 577711008 682068368 156404794 103522754 43424238 725525029 911649269 928151113 749042697 803160677 24578058 780658168 734082598 759888909 704726834 988783478 966349268 492492233 989796582 318211055 272965765 975829858 416215688 181454547 535580379 176457068 729795606 824596535 527741173 838914228 339548783 199074716 505792448 859401160 886502615 972462091 93234391 668728603 849521394 109944010 758330410 362979221 915012429 300191561 408005598 795870976 288836401 314743944 129983261 450467412 138201213 282183170 280485953 833332703 369094052 549452750 964457943 150343315 593572169 571913342 163664178 319042736 587296289 807939536 98068145 939017079 177458344 221282151 724488202 302570561 77329109 513620709 425944786 8429851 3403228 247173799 771648296 72662107 832439550 85641485 115132679 621918091 107885759 668189188 953988224 398232927 270371525 865176298 135843344 836086877 741040465 622703856 853846592 766012951 307350189 88531793 404655519 227213123 528491790 510693450 227055017 270560464 490843643 610612953 367083004 715107745 519903388 62372215 672358971 290139249 747129796 665596938 798704366 67993806 759819014 108205671 766670628 781667484 180248381 926287438 507708631 16606838 92656742 168030418 818609143 460469116 906689597 285419041 576938410 454434386 505380160 451347086 617794375 777403791 424927435 52992213 621497157 622664708 265681094 373387285 782737832 18249457 447043112 245541045 874728708 803910129 125885644 966368164 276263778 715279512 786278504 219369706 924510196 797941308 18346478 992003682 976289747 831198623 862908027 45449097 386701100 222077544 62793310 410976077 411302398 481295091 823020538 128318031 873989482 843081833 199868392 153088147 614721203 491014795 861951521 536558931 666047911 720615449 225527179 922944115 901909788 335602860 995834179 656890466 538808243 537676219 460618944 402609070 398648669 717365193 357587011 673867295 559748123 500365948 706638790 200232565 187891905 652634021 498036975 785292561 879740468 644869671 948054594 153220086 71985500 244783060 946190237 586112464 788834156 816163282 685919216 161552139 240950469 773355702 237321034 237987082 343467324 61347897 183467974 928424081 664220638 808345064 826580067 645200787 989532491 237764024 741845282 80579239 506438524 363237630 302226163 870139792 510570854 716401357 925098057 362280987 242442819 188503505 420731748 99626496 866313936 993716768 634571045 508674803 565993220 221071400 835562859 833079784 355140417 400933136 361202610 341127763 87848884 267273130 639015568 198736385 274853976 143266741 897412466 741723769 38618835 197733839 637276943 853504475 87060521 287406581 555135536 842948576 203491403 433993343 344436676 463600406 418380842 569328084 920863427 91735818 315581741 641152357 364219524 226340038 717279285 443246115 557071575 346142732 629541203 242388271 931378562 959348117 629790581 541085180 835960167 189967520 386102674 611073244 594364629 489913793 392229946 954436794 875303698 492816859 74797938 775369828 477504323 701156226 108702981 984199696 700012016 605543170 230095037 136555165 962544461 832142031 905666470 491825318 906127615 344942265 479318477 739717338 687583526 153568212 566400419 557060262 400600190 515845432 903360968 147399721 255636228 269798704 349327165 260695738 32598477 108545181 888380088 191829991 616384332 18160439 713406865 735458884 531767465 545914676 603577439 609939261 899096225 608809672 86515840 218141559 218159759 597318665 670286988 655335969 213905648 590125692 599343397 90269746 3691490 102332793 608141569 761732881 117928739 5174130 987367447 165237146 239291143 251874732 158679432 680584736 954954723 559770460 529079764 359969674 843835266 368875399 961932234 658459504 211633474 598948115 854757358 799717700 120142066 502594597 61590407 608370266 369632324 968397650 631697273 931508746 680129451 74021236 240511176 728965388 991125499 494565381 600830680 728014640 351287537 625967626 161552289 570669437 23379601 417970690 729016855 342618199 227301056 69133269 768073009 828038335 876063976 72823761 810725643 421538562 846021724 809898040 339402189 899019238 249625341 914465057 2800835 816668967 669088410 376458094 595318455 664777127 864232227 384000488 334948092 950805339 6344832 642953988 489901437 283955697 568542638 791172045 13848475 955411987 137639860 646541450 917654083 913637167 531037473 601100407 229995894 514363788 732941230 200669510 286277902 350685816 288028804 554139127 391120866 115276499 933292608 140084559 242703104 572583724 656535691 863729307 429273668 929993384 865380561 580268162 853066486 449625923 853916576 656055259 204519601 815204640 717892719 559715878 892520905 836387090 438948484 673510384 31613182 352355505 512636632 565719255 960882733 367320338 932327345 26511949 451898881 872643319 492984615 42018887 466451592 628495935 768833398 33542562 606587070 294612872 163907268 332695179 34331607 53687774 707896485 252007676 938759887 459942270 619645776 736148794 175421010 470287453 898655791 130780204 366462254 452469229 891507415 98583817 980420636 29305121 493320307 264235943 611187725 356179450 479547838 156119133 556065569 657630049 55033662 805259486 166403838 409437330 129594428 533938029 910383494 462258565 514144684 769124463 583070206 302014533 798473086 781193823 37598093 350747015 956610709 720322899 365718512 593452900 17257077 59648870 854631288 462657575 507587381 900454341 349812079 36979926 191562972 837263980 489930345 775735886 642995046 702034982 124857076 108376374 472110914 665418548 673169550 417176807 678866851 140192885 116249815 584365040 347227268 835284599 457593044 798470019 417647610 710410512 35911972 576913275 412978496 513161152 323887243 830567565 277532505 273627734 544137900 923798960 702040903 923018073 744378773 529958592 922387217 78661393 185084384 665458411 505022530 132665845 13492398 698061944 219028342 936914516 552426939 141337371 147208438 854694489 710383724 254078386 801652512 10076407 703224280 625593804 363104979 265116995 305436364 167487404 134699377 227713655 521692150 550815659 277523606 496788349 795787746 203626019 114219793 702775048 256797188 158110627 163688217 97502576 263605681 271199630 234717682 988086544 534101188 491362923 389948080 800923116 802579839 652580134 121306346 717592761 958131581 136334009 709468622 790691814 115263036 659269530 218034947 41126167 618412488 480790772 972659942 592680279 585283206 24091584 261276830 731022591 200857290 756481052 283473141 93262977 415795865 921610369 51249017 702002212 900239261 218894243 341966844 601342276 875382147 823865820 430139874 321794414 628637263 650539124 792774414 617393746 822540523 893484189 975719470 125008485 890425059 410256326 399902794 884266964 294421020 186514654 476193519 996571221 456020589 887148015 699698224 828742319 30281056 920627866 426153151 808727514 247754205 542636847 91021184 96604039 338501015 252676965 539082353 23962535 193117870 448523083 212995824 998644989 638065625 372195382 828791631 327807959 153257511 293792603 568989798 63635091 585329310 904989432 668085360 553855696 877496440 427746291 980409131 193094629 968012226 423015824 691669840 636126263 761100940 259205580 235797134 547390654 141002114 912658115 814688601 842336604 868510934 959387042 983743991 93834863 956201573 236008581 292726234 460049353 960392075 89875327 237291693 71485289 128617684 284586722 692131687 524174148 986921572 71014642 69875660 355887935 261847029 322521616 700235042 195937370 90764192 431693914 34066178 232058605 668443760 630196622 305359371 833309129 349540205 631308312 135831328 927686099 536488716 226843942 747941761 822591373 373979954 766802216 791561538 378524768 251380384 545054494 328180226 210122456 298823532 214398603 352446071 966783312 189186490 846833824 646850799 956496411 719943430 545767586 113669956 658030263 958305254 138119845 610919325 44518194 953872744 33765482 82969112 918957617 856395983 102250516 322371551 322828809 145665944 366218334 88014786 512245862 805651205 905416227 464441281 782026532 531994198 904905053 916221727 125139244 331199957 188423067 235536107 794035946 837656110 8254756 244791269 472693624 768552419 399827595 14736538 558765627 237894894 298235671 732384589 14323960 18975373 743410051 774080566 346921435 821941925 277251956 705755406 824727148 629428308 569942850 706077357 728333747 946278543 507772037 738026609 980654047 597522602 946057106 408927474 9046956 118420268 277067676 62935017 613604553 674350587 15348152 212201464 783585589 916332379 400776167 66171341 130515245 263653128 442251757 314390941 914202648 683220932 304959260 443636944 368423657 265271900 661559228 566001476 460398968 979968352 948094459 552701355 25803597 793035861 208057108 751491476 339803988 444018602 907309911 141032315 800163365 422922097 56324196 546095178 414839434 336633184 594121394 48704621 258586423 656110667 921399948 165274674 191501146 298525297 775027535 414176105 131641970 642866824 49203686 295039731 39503177 711994758 808022681 569301211 454773212 964723081 664810081 805251724 360774182 566662360 681560267 886364581 802637704 666585991 235004482 551950353 45561385 847379463 716311759 95575705 867106894 187437215 947651827 414411611 675585652 733845770 372123446 487666372 523512873 399246310 634419345 381765662 581072661 491783591 442825442 369592400 736640952 459395261 373577163 140541882 858787638 887887488 745978451 62536366 109001903 6165597 652990361 884887853 998324380 65441073 364622114 418548407 844135263 573988140 213397207 219471580 110683124 461702295 91437930 238531419 2563820 272856840 32816247 673491597 882835100 310883731 975421094 254526667 814702114 482235719 990414211 246905525 680274580 870592252 120645957 876365270 308912737 862468600 44935071 690765703 200323324 258646273 220989751 91660078 606037186 742631558 195264882 717107011 665549612 804820193 306563450 889384148 112791094 876709063 559855139 532391458 384626958 755797481 640391416 227549489 310802425 446769392 124285331 117809644 464574699 515006260 511597161 545127869 780150404 825797865 944899004 32119158 433370017 394125995 86046097 958631866 814343422 706309819 456818415 362713750 582002406 185667046 898714333 136671313 819195018 375775613 367921858 133144205 808487616 326800707 170328527 855026586 499060414 328872226 291021098 913319471 413614138 401683031 424677645 13638781 899341333 46906390 535371164 518100360 768526295 166185871 45275761 512164383 939514007 769017458 618476007 624272290 978357246 345595451 587443766 92988412 333231705 580172500 370729730 568101241 895946357 594090785 80994359 848890003 196845685 2218415 931353956 959003028 484362015 87474993 584098775 256236807 665426068 370203540 894313004 154549767 636362780 544449649 78440007 257945490 622324085 78592858 161646844 744297467 743831530 305461959 139860868 545452036 935276940 598679519 300641466 653249966 306757209 763811486 362563171 718916749 195006169 710256118 875312154 67979573 474701890 576961943 406731694 377806177 329935696 637250177 684897312 364860655 240573505 572036192 149924667 945835250 720758437 721782421 255175608 242444473 414808636 217741916 280809958 61080684 965064657 736042605 730410271 788199049 645227072 24190156 795853837 368210440 551132709 985438822 573828481 230135012 128905996 338030329 689049246 791179012 682030855 826306614 580357574 733452822 676761869 91296805 122949329 270712576 143215043 161799773 848554146 948382298 447807116 855912293 591026780 916547462 118182630 129900777 314212564 884072376 628990358 635837468 985459350 786918741 567468503 888612053 366710298 150695440 878795357 507325033 812285799 336998123 272227237 470005104 148020482 233506592 928695735 535328063 969234687 878394769 944162690 983573390 514300388 771328368 590578013 194807551 7240894 215418910 379908396 549969283 81819376 359162490 340823982 223954782 889144228 444100385 799023602 316057152 830654830 333216825 890870102 384150611 676893295 196500979 86377988 990173191 797233803 310615510 735674227 11473148 934456244 677793126 132878928 290954958 758186376 871162021 860774024 502570141 579807018 856140113 540198924 789218319 698898100 650150121 853264186 747896829 345042003 899442850 672462429 136653420 966925164 929861342 86981318 768557435 515210595 647041025 354474446 105093914 342618567 273504028 387929388 413683933 43555392 676181447 333314658 727829317 455777434 190693774 200253573 90833922 200129074 494905109 512744522 615453816 324606723 358020926 597799731 24502441 348497795 121280030 292884517 422012071 306346063 704588676 631137686 764787326 384493141 330591191 237648094 271531197 387892306 22223994 527367078 131351500 678816790 12666864 722406979 786003916 94105107 297028657 963454748 899409110 444731904 18387468 459942092 261323832 329956592 558089710 66324506 685092299 350097112 62959538 914052547 939204853 840047802 572493615 119618798 197962931 342622427 342960211 666684316 305761222 752870930 362433896 570796050 800386768 955598548 897655647 246412419 802846995 844212273 880041699 553098988 353880609 932806278 586166044 994771148 871130756 122127408 926756616 573900523 263980767 188746691 652353047 617965887 638721944 195102749 747416121 810559725 258532720 879905541 690559873 168983744 843309636 348296399 928413373 944615354 358751165 601866208 990468542 20939788 445707931 963513740 630623658 952449600 689133450 196248261 707138569 660722461 363679035 133826313 652269312 996703063 950650418 919625999 437422405 475466709 220593885 324528753 801058688 57582457 108021054 454262946 741451081 997428099 827375132 965143042 392063051 675630792 461078123 361882689 659244247 810424583 318573770 952497339 279598160 219835423 272629114 747144855 242000845 992751714 787686157 3974770 403563129 511081063 138897029 67612643 40153260 10404288 326239872 779060777 182168101 782367205 10060804 313401222 108406022 703690239 213248318 949477812 149658607 725370237 257387882 394144827 244900578 660918862 47352589 130453249 36168873 243688010 126807880 66335951 429978448 393404332 235040005 374174973 518326776 16641920 866752321 458267018 741902375 369544080 363445005 443033435 516517128 48829491 655537493 575597 905668111 12643871 124698899 628018752 103443307 837749553 426593978 888641671 391824853 972567573 900186649 761606465 806742682 926107170 62474162 756563017 333401328 871006561 222025739 230696285 595151585 909240924 597897097 440841023 56287672 46891099 696853060 833484982 486355974 192833219 838127417 897228484 826807393 215405470 219693234 661290931 595809690 721730676 807050876 800231392 375435784 290953184 446030455 830880930 147746056 52308311 421027074 705859666 434614944 945712515 473097693 176474880 219459967 146516284 306514544 375410927 15364952 78915444 660019489 837601156 735617209 713807437 876698428 436265337 719855417 766696916 27255086 732502343 319099351 681269613 631187834 623598389 593791278 954026672 902272360 589082743 459309957 198542908 895138553 753193504 136013517 531933072 599665940 987191102 408467811 678969188 650511030 877621829 895278699 999370993 773479906 757423939 456931199 970862114 851580549 90974332 591558967 855317228 575850291 949498918 954926809 167635996 157415470 443082090 67974180 663408547 821786414 392835778 151508708 300858920 168228032 218704095 75261339 182223448 875874140 833023401 402115202 792182244 561790817 245058499 808802790 55076186 77799274 4064485 35417886 216656877 26931178 471115224 244915209 938044997 903716306 454053305 129090207 134259178 28359345 776620582 542594636 847727376 745929300 426768687 596828599 507503165 417233895 548511807 504464216 712153021 19624618 801149981 659712739 430115484 877767135 554554124 862670792 59095540 422959037 596534996 611641198 165148657 566273905 742657370 36225741 639283832 25599022 540766731 338398323 498243893 807894972 873373584 790735315 781521828 548316129 660835603 707797967 602933214 240028609 97586934 946266372 629583932 137836446 413351314 272823166 277227023 407530367 152187718 91272475 3419142 824430810 85624214 205249367 489311602 277496945 725001952 509343047 502444591 415894825 631115561 175585769 74907159 207583183 914128851 24940823 715995967 542053101 570791716 132500913 253394038 173621924 850778665 806025129 703897894 42265876 534082825 75046463 523142530 852989095 568627181 209998656 271264472 847442572 592065297 169650567 430834914 471142927 698684503 212003695 333057280 405625472 458260695 350185867 96179588 928096184 965293238 183355052 307811548 481330613 917525437 117505040 859212793 689969729 967079415 330228940 502120378 797968471 507611512 588053176 688325641 790528868 38947693 660959394 824328353 771410116 70189489 644710794 138134348 639135917 538018351 370413957 812923308 948695722 339974638 216084715 3658226 219394916 574210575 318214614 292716025 342987989 910040591 454749063 583803592 457821216 963410496 363411675 463087723 27869274 613051740 627348900 84077987 68106773 137430079 445716013 506102363 868346990 142623943 340218150 995858262 91511879 284924692 589387801 48411445 558102036 723021762 900909145 558004671 813151521 843499076 884208057 164909789 388407569 41330500 230070492 703919611 801613743 846909284 414285678 202622721 831442231 555079010 233521870 315731495 988655193 913643063 729775451 147385812 394908179 954889637 526497069 619219897 328900184 163302838 572250124 63775761 159894291 790596480 78826426 630884214 286228321 774202514 232181185 594445288 651090335 645920977 479194487 279888893 889010741 291071643 15508252 410819245 956762204 758357819 144037640 286936091 899188743 300990280 224035442 523940363 263724768 873824116 321566464 486489534 427174178 844658870 891637549 314817959 295610256 869477439 969999372 128645277 983706684 854055725 800589869 722163573 846210161 301203233 455617575 401942781 495059746 896386555 395537196 45873189 649533420 23561563 23079434 278117172 653676422 527968918 944290567 595280070 27953914 214473207 424492752 469731617 469651338 222651632 67756151 936155104 408781649 493808580 347688699 284435137 85146729 899522038 73389377 426317459 357169576 472928435 332069999 295208143 33098777 121333329 466154714 476206702 858190854 781227130 366321210 434346805 184010956 64685843 866306920 947603083 945607873 746040717 589004888 19370781 852406181 106297969 333348299 305251328 732069405 660220558 87565219 51245923 69605981 447762727 97384324 177617271 310484164 235942234 552061729 404044481 91349154 919442563 600018568 69207866 827125883 44782112 246757418 4144513 942755231 81979423 685760829 266562805 839493526 748288994 429920160 433864753 450906089 617050541 921619096 471434419 14418420 889292997 864686393 739280527 762255177 544005086 269454156 157410312 519358431 131655809 765658020 359191161 402116972 407503815 131832491 288215475 448516948 450067746 94833776 561793881 253366737 418310192 507288002 1046763 375100120 407707178 15810501 402380736 806295452 417677826 610422660 36305476 709115391 882246728 88789976 631098467 45357548 264239532 673258576 763680657 291338508 267308298 343237198 307356518 540449464 52909375 822325915 635293368 930540881 395516292 280896969 893255650 822922105 873644655 144687438 346667796 397519706 497469425 634626835 414133728 424246407 948512761 900487056 963590069 612155355 349292374 344417364 699889318 734169411 493248520 397067109 527634609 873606338 96905012 636783533 209373069 394341374 500782647 697056786 715122145 901432746 164725536 717260712 553538928 71469204 848392057 579709133 531378502 525352041 62844077 765378916 58882001 251134537 340522787 875304866 630171689 265441675 188256755 75136617 85214008 255023437 185943692 76937742 211921277 483110589 626135402 189997623 206776116 630838741 735612218 581466828 544569109 163122386 499051675 754709824 648912099 369076977 243701244 405624028 900633226 821527290 30917835 187662490 325503417 911664271 319739992 847194692 247260999 486815665 863426753 776585078 245666534 194700243 605165060 501264592 948394558 475106198 888960580 766673972 416221132 384760386 543839080 47741709 68698903 369703213 285762119 641111116 161880674 581637040 238395853 399363262 227314449 891824828 621716408 263381316 987679926 600539254 226056704 207086205 387502184 838009447 798941933 546756968 691089608 800993716 424497069 62511754 949072334 727478484 304756280 417183534 271016114 89231346 142735991 634028 214453617 994529761 254632477 289351559 981000973 137345761 659193205 2170938 735593496 701752148 797016841 441602639 128736587 476452863 828470747 803535617 614372475 834711776 997718689 543053094 954730883 504164813 72485663 342032585 164950418 950833285 194364806 982875066 208474483 758277698 766797079 168907700 750889197 624624259 478011732 680852418 551996624 318715542 84083930 710530334 790547030 295786222 102915687 477320079 42705585 487638315 307706659 349126246 637072889 404865942 859542981 75166711 132546329 58974834 669464627 332892179 504566158 493673970 882660642 472674120 120742344 823023021 380195591 537981124 979302986 535956123 554701636 182318413 950420987 653918222 26478356 81922459 749275655 210982580 689812774 16325737 497088814 999543792 528820792 260313267 429358577 543260981 164934234 610070377 755005178 62516627 892945212 299620733 664211394 931502131 840714544 778654622 163307914 626544156 538937849 181677626 294260507 248814380 764603026 436433164 650595598 170428747 72101035 608566951 948689901 992916597 798126016 545889773 195612350 328300981 238699369 260343348 953105887 359439680 481247255 92939658 998598910 62652750 98366612 747198676 815914001 283819362 421036070 766409470 605900785 360308085 43300281 530578907 348273852 757984863 393499760 77104350 319570640 232526244 293375249 24608113 696901093 177626360 361010173 813943973 259962744 141142066 648831023 665647481 620376299 80978185 822311178 842686895 702582239 381006541 851283161 895393484 606389827 604059076 732866241 249004643 705829094 701417664 708480910 176549553 682281244 244992583 135187100 25288364 846158519 433222661 770981609 289288608 24711605 879544781 990414795 663302962 194199784 392073843 261724485 183568649 476837097 81713512 90389521 635262270 656020204 256454231 338671798 141336438 927391032 938391335 572111070 10788 892926989 757657059 89991133 977844077 518222306 707086536 920947119 803962419 102048256 71729303 531635756 955816234 993111501 534566400 879490018 108465240 796325084 507749978 290707015 363238229 539683710 613477065 522481991 745822223 344996368 115998770 563292004 271626097 11939169 984972403 28440541 384712820 767354934 110409025 236377909 888412386 557055187 38753384 208585557 483786743 628419989 298049134 527448067 73747754 933171227 520074702 493193628 677254142 934713301 12074532 676518136 283316404 984189342 834598813 814358051 467681838 284513093 743696968 759855334 890539564 128903925 362635758 51301649 870776114 249471985 705932690 791924025 381839617 98356555 829809856 782301351 264871630 335448826 528055263 204198143 284705751 377842814 669328222 713190607 109937879 618372021 636102826 515630334 985827165 985709486 811838491 876843395 872015077 409527267 837301136 896418324 936072027 793531212 703401253 90345929 811821689 853921743 110989453 176155324 534785364 125398173 584769935 551546579 319616647 697954796 992058544 980953009 818457472 887406895 287598599 891097714 632288600 906417132 973912072 118018360 297987137 795448985 997976922 801967862 415693765 631840623 840376569 6941927 805217226 20837211 655764341 476630496 906361411 903477625 556581090 401686855 979046517 681196583 625839992 892604500 255895306 138163951 190118220 552236293 270895338 445050803 709723641 997719180 216864166 41327685 438133621 257626094 438621479 720551651 677708164 263774382 855740287 898872526 122977267 326504422 287187786 640581713 112780623 624259516 461149676 237503019 254711869 90769808 543265268 280729030 260130137 640258542 443562365 14253652 903697146 799062334 594888644 973185861 988560279 223872869 445961284 387812641 997366124 646390633 735323696 970085490 188322517 518032343 539801647 348769256 184461340 311907905 759346126 896284729 16865172 860961743 989905664 396662274 314987325 29213189 567222135 608320310 239714586 551672215 635908981 638168052 809558170 164198081 953564464 956806738 206495642 552503274 788785553 928984334 82256959 592443095 963207220 680460308 952706210 781499439 902116893 129566888 496926558 118623791 550557286 254731098 639756692 516392154 985929152 482073190 339805502 455582799 529688421 417747425 343637423 60635879 533508634 742103563 991897963 641787378 784069788 25573724 84475379 10921895 548159667 174352705 857850150 344660017 114220772 534193128 806915592 83408166 89153427 575854619 718207575 337857567 510647686 641145588 164694557 115861923 300505910 909005379 224198340 709243689 992508977 269310289 749738963 36609724 144476728 719615140 46764569 141319128 509596415 177702303 662820924 915499669 360154474 45834277 844151606 100990817 118132421 789004162 231839195 509108954 252255375 868924683 419402747 648959077 618988131 237988150 687023172 545563032 148188717 165627196 741513324 471848539 424163656 693555179 804130882 924558428 92858914 360253807 60822660 791752849 532529061 609792211 843588409 480526081 759834963 165997721 724054088 354374171 839107752 844013357 734795436 261604034 392197227 27471433 932060825 601560049 729746165 939233202 229911634 751134835 10808842 458700893 778708451 572515546 350130798 881327980 902564513 242804169 723845582 830630521 60084996 923795373 778220502 680597450 478893583 250996066 686350206 226125255 314021949 88323184 393744651 709894563 490870451 255094830 362387142 333118734 290667924 635499106 33801657 292066119 872553454 658400118 599768071 536591796 136084377 184943755 822782627 800232296 508407157 802209324 392878882 491329940 848455480 1723827 129190934 789703563 220162555 959485540 474219549 505882105 503035594 675083456 370353820 583966706 201096049 313533052 876269644 189680285 756204840 648902904 206439611 390543887 64618489 98621839 584560285 852898563 666325027 355898740 787112405 198014155 86255 349529117 412622188 625088002 23684296 972721092 904338921 498681403 736214209 336467503 227223328 996998166 375041090 643407739 18897238 630408297 386441034 102157646 343391393 187657628 400532245 294996362 215197325 77400993 179721081 407674104 949132873 453381341 444877483 808247318 344048561 637739706 263364392 548077282 880708656 809993506 670007979 375870226 238078881 481253006 732977152 698873295 979371804 235489325 274467235 686743487 650884260 971614360 245292870 156749529 14212198 677864855 748547181 978120650 784270447 868450445 285008730 453644322 156649408 472284632 645227204 825029444 49135510 421761921 41443220 34622072 393883981 795584277 764683365 77206193 827937912 515052380 467283522 729164775 52913442 616942490 298916652 124738272 849341821 185668422 251388690 965758431 381811634 164233032 26348393 707489980 649972037 85017745 221624820 617992457 90738192 647039607 87268436 626232325 941627632 302775792 534665334 388217722 769344460 842029957 35925678 28434275 623037108 92774312 725731230 521929972 682862946 461269171 821648794 372088911 404322775 467455375 634141713 544249080 118555763 665501785 422036435 967663950 815407969 69624675 550591160 156412273 815992179 952647944 323790415 37123005 964590408 995472370 145051468 473274924 121350110 880644763 351705245 272576216 221568080 980221318 730603391 957161979 817507960 753447305 93733164 387173183 553203093 101925834 814652696 460644664 442544374 763937719 934815490 286831020 40309779 724016795 53730988 146501103 150442073 30856408 533911236 783070758 823449985 402351088 827080088 956634921 935780933 226292546 741753599 659696976 733067349 394555831 214755659 786758614 87131914 917529823 81431830 175003454 310958855 518146954 841982020 11402090 433370550 212499476 544582729 514925650 228525091 977031430 980062500 35522655 235399346 64619202 319647533 846040365 320942500 622761488 227932503 100795430 950123321 584371220 827548206 967256330 675556491 245405790 171314167 517312381 74731455 30591399 994344047 411290399 284755662 341218815 797345535 343864538 604766049 340260804 404428264 828230930 296854702 503245782 941727141 624731201 10121142 756674238 515833891 156735191 788766070 757388902 177574380 450617275 283175061 38972802 447909634 138593590 696695987 424211093 542041038 304814890 830832273 625621781 777767438 970945991 186637148 326240634 950609822 842521845 141937845 740670322 976864956 487920101 187946624 422034872 335826364 217669729 827411317 995550969 830637769 630959954 366370217 569684366 232636683 713560743 266129289 931176918 884925205 800240330 209646111 653950152 696593434 54166363 397922075 571913586 3555742 854589375 682548685 324067487 8694048 621505085 219270884 621738812 39834411 251059477 7137135 925525161 767918935 547281279 261523978 843787914 450264276 3718472 947405307 663116433 168164866 284471764 971696735 442521480 950326386 620889524 524866305 629196327 605994615 229548354 4133502 356844479 940116972 859678879 354593045 649136874 186730844 73041241 195571353 138896114 780448963 461853121 137221864 574802679 240071809 130596339 614667286 853919943 955996408 532454612 646432831 417196133 507066748 629490445 813944460 141784515 416994257 961796651 900376196 571547037 187801413 895455756 929580242 77179826 974696429 786112191 640084114 786256688 288112239 28367715 794286894 846974288 781049631 591564998 182140008 225126644 584595636 682168833 533973255 165345587 474617786 715853463 163615678 388578302 800939227 143890226 514902548 745904375 243817460 364295948 414697581 653071425 586079305 438038719 842527233 937893881 98523609 770243268 378950732 371115278 993903870 332938683 487204553 258526413 390509107 259995557 616431792 827871089 824583434 328264762 110098830 521002902 133378563 770085762 82811517 232804127 773884428 956693959 986150773 675344282 957681488 493724056 892736519 817328011 937804831 611382772 751953657 947336311 606840195 194429422 484269262 317490291 387945177 897214199 23245467 35675537 200740564 421716911 671956441 160977367 631066329 290649297 233163962 110783547 564605301 715189595 286720044 121125776 36230274 939997204 319053126 293919876 66837631 363276937 13679414 632322350 849105086 347080298 508205081 698325526 663772805 800554309 386184281 433817738 184302081 270536819 470535755 595214926 186251948 18599547 668700037 79865487 166533893 372467245 774233239 404660273 291767199 488161032 913482654 753029852 794875625 881210658 987316776 919701265 788770798 823382550 189867419 878673159 211201718 88118812 159369802 661196188 695477123 544655263 828432817 182277187 699478617 823868986 861658487 467512065 149893791 118856290 185355791 857285168 212594311 854990210 850419414 233764887 100133003 619144805 342122500 838901749 272673991 435278094 263137626 834929158 25712422 348996437 412095250 516115427 466314853 821640743 65103939 450666375 242399544 795467018 848712945 290631825 463404472 251087397 113058266 805771716 233193527 47104265 160345364 181620793 482207423 103604744 164420114 947903394 975448776 18294395 18525368 440344947 808545374 847701220 376538263 11398907 279321071 334670221 631620204 422491399 915716773 899555171 661115438 274180379 305849842 125931165 806548883 546728377 126823873 252517534 813370720 306835615 183592298 899897549 387604902 60094714 271918521 715713064 360911276 536160371 694522101 193338367 593829680 692213254 359507242 584933926 472381283 812195208 715157593 342627909 459287449 550793144 456146759 473298552 32358755 676433422 49551928 23252937 834321547 350595195 229389241 508502435 304638440 33520224 202140227 421751377 711256583 608181572 841203654 557847040 686788183 634747640 628091580 209158865 325114013 925286859 59669066 14774200 986239972 58184228 669331491 477376994 752120340 741787780 233870019 716683253 25747206 529957569 484105350 768607095 911844595 60753952 310525765 973920057 102293736 922266363 740180682 836347736 394796380 258237617 301486095 129101843 355213643 788966513 802209628 907623297 345139031 198550091 235750626 80457947 651363612 825611349 378708477 347260910 229649903 372516068 836112086 733097062 373303086 942809822 380730111 808150493 490967253 958960296 117534849 462487140 586669207 797046458 319431810 774291250 724622607 786310356 233843433 912184902 766226003 700984347 35254316 283452884 528127261 845059477 439651526 855629307 738949391 104645259 136988992 526044722 71772025 677257284 471284643 748336148 979733882 590914345 763583618 438353564 876955417 277487580 767638902 937357463 609069346 531697090 47394188 478024901 828977295 516408713 18057454 758224371 929066408 704866805 805544522 248944082 862712562 893925250 285700854 715466769 183228509 275661312 14032721 292589339 821264375 702595223 91573249 712692839 935123117 223146715 520401420 642674302 700509749 904395565 771809573 254829828 824611220 485890005 392519758 620760366 312463779 326905845 496459176 809599415 837475234 483516277 968269475 853626908 571580380 619525769 533087756 490652801 10274038 943038544 936414112 94448062 965649890 833047378 380705901 132610609 947065058 267121491 313175206 582398759 407528387 688121229 421061697 76430268 540467554 975946307 955597498 636622300 504497133 774736517 875645515 696540733 220049340 790169582 423919502 501634398 469263644 839528972 934858052 430452386 872652810 432681476 118644586 786866162 296775702 891452147 13161590 143505382 172117749 825823567 154684796 168222514 870245276 193998868 152040051 543213956 635453944 317337587 866703562 296430310 803128500 73597607 410752213 852061902 931221915 802827613 34823176 718324845 809244371 69451260 224277287 923575728 854773269 860357711 236440918 192040656 702443247 434442469 7084809 620799627 746622591 366530551 947660579 652836513 653708438 873837155 828774362 134171243 564875443 148989018 750042210 778784175 136531683 13474039 470138666 165960443 584771202 793967578 748090483 88656287 45755566 188139352 158620480 6543540 938058288 100505804 164639387 168309744 455716428 201449333 69292467 820395163 619603764 380121189 574265676 153433102 266704795 821858887 964482792 86108737 45115069 957085612 26340800 991326505 36471118 203337620 880728098 765487367 786102341 498672575 115544309 27203085 535588332 96367504 439768323 435932138 410758948 725021944 169670417 812563994 153523544 172912551 378728276 585098450 768980466 345919324 2381271 724602840 174371593 740332471 854696985 103618323 190536400 159454017 834808930 829486302 525411353 620856222 638136033 916474422 910441198 194481897 670317713 932009766 694788179 304079455 211611484 134318872 137746834 543014293 385973894 64119553 70594264 69607500 581234487 986696212 670978715 644678752 268233641 730081180 566021983 769053335 119618285 447859300 674347224 890309904 78558317 737961414 301703884 680468620 799535402 221412449 395283962 271308861 405989554 822097088 633788495 466274204 778816106 187413769 970700224 795209548 743487169 418478468 715836180 141121071 65457140 552338194 447700636 510214179 391913974 910640952 184742621 835548085 357281218 178466183 40554067 136619752 322812705 643076005 18906586 804608080 970964869 542541161 363601465 527825329 160791788 274572042 806590983 719304082 771089851 353354223 853520236 567104753 756262320 793169000 672451182 190136790 110501412 895882167 92422399 276996718 400155573 702112767 62511452 478944265 784616444 407538938 614006955 22975270 720493375 336691919 105990815 883390327 359303023 570110122 437284662 736272075 867908473 731090805 952813200 546091574 9486448 110576411 888456706 449978113 885504706 42800057 415816271 418269510 845890870 301810467 883273764 930623367 906837351 652270893 221020000 236682365 525645312 997013291 906153250 282320080 272489962 603909026 541799672 123228702 142187397 821517943 789845594 30994007 149016500 494432838 634346027 999497013 583756760 51701325 900777244 916158806 936107224 334631563 890713037 684926520 184058899 970272159 518782953 370236257 819968497 995384410 7748427 513654356 598368178 156572788 235950271 830325331 170527166 980921406 247372469 675768886 754212824 915135758 167202524 53520917 323724426 397622963 359947350 372387589 624246132 324625315 231137767 303222508 28279952 159891059 89880071 755292960 565239194 514228508 540554597 586203640 239354257 746085501 777136678 304299389 883566505 149456640 635769761 40939493 540620775 274088019 239171188 35114797 695842911 658416884 485722852 906941861 531037256 5129459 763892985 657480427 675240606 864449502 392623396 717677478 563233383 565587668 587378293 578982903 3232435 477525584 422399759 75489925 766293241 279102917 322673581 281182911 235585476 380959148 332194071 715196902 437470484 208928105 136013064 36118595 244310966 674257706 219055496 941988568 947516204 73320105 824778032 114367363 785982829 436982501 977430330 88650168 907259654 240483739 407582663 715117337 671047576 273591196 769291540 897623539 605186193 202105402 541528922 467462492 424968812 485345463 560321651 701426548 275576911 646771843 527613223 500118001 110896540 657897434 410477649 37151228 516693563 276837009 678470482 267639 141997107 643139169 995366097 498746536 483328010 347976969 382389867 592769626 501891491 577451747 184695236 790767306 434809997 169939405 834053712 303230344 920476514 154240980 676112423 262099757 623581054 615799166 753474768 203076120 863159233 288031288 998788888 682578891 422569539 166330457 400548463 620560258 348622227 423401459 410003002 624736895 998636881 826770002 840941543 116936651 578854491 939236976 515394428 293555335 571207594 742654773 919333305 788703041 796277062 985201946 712270475 55875390 831799740 463820788 972520614 121688301 645223613 746232953 415002972 805296570 29393632 765735751 405249357 848596920 702529040 96747761 96279190 655698874 720731672 787619473 41127619 972488745 593395649 736669046 913879272 163436346 443805476 856832029 439032064 9067329 889030843 410080172 475687642 377745041 670625747 764807220 796781347 201549763 435843055 134194837 686890388 525000846 782037878 935557890 220347399 337671961 389832255 349527049 665071150 259814636 568561848 107732347 100073 247946540 56831844 95891580 655195289 762149535 429840895 529900490 533193617 420970324 280891437 232045947 263049947 496667492 976355551 455872448 691119854 767062571 977601977 678604014 633561305 498264691 838669604 440934582 886933846 701693791 821333074 468294180 784760246 55426077 648322597 204972411 867688722 627053108 358466054 872177532 591850793 72220263 443882260 781590540 871443610 683351529 286403227 375737366 494848632 894732060 941248959 477830699 581334378 960693653 563061509 469380574 620429705 54405123 972552099 498071411 60712931 130766085 960400780 312929404 577084968 631395589 565263954 420865958 381067772 593087946 966003768 503387931 666602973 384556656 897734796 820353471 916394076 530181157 925009721 75302638 440147268 929290894 107073012 231479591 219437492 856228756 210280690 835838178 723066631 7206958 699754618 61251847 599153628 857207790 651273550 539378350 52067919 864215926 572178596 556114320 639533819 427362006 318985950 107646636 568996301 291870171 739945328 339454304 670243750 89298967 254503572 548563466 179665322 498877169 467618199 950298525 923494788 589869054 389534532 242834363 52839350 648951959 729735133 143230076 597319278 336612382 835419894 490282991 578645614 243683339 34810326 392512655 30676945 165436756 628232442 307625176 299573920 172991122 371234900 89222861 981607470 971332378 60618330 977403945 2941918 625395210 622692262 607896045 59008923 695949282 889526572 997879959 132411385 565643417 130543318 274690836 776342449 278426845 221054913 436413572 642852821 807573115 746186314 438542179 392970810 588274882 233588174 572927848 85799345 783194090 353120186 63574698 724692373 681890629 503710718 74841843 146565409 141069550 850487134 976653025 600842634 549032175 967858314 572800215 335661393 368754117 666506900 217119839 420390932 213540075 566167794 475801803 172683202 206761815 56674585 216331300 802468004 921906975 497612665 740599170 945706394 379202452 243473189 625703050 244142938 784397489 557528221 437177744 3401362 640586191 678361080 336284716 48585658 42350618 951399809 842093473 452323243 113215434 709010375 63407090 561099077 960464704 508091467 232351749 947476462 427279709 952405417 982432077 978425318 149526968 777816504 776356835 58591318 730092546 566019428 314052412 992999494 599127434 462557892 894018767 546391730 228820868 104536714 362892811 898154060 58021406 929695359 864760609 735376726 650689506 325728067 578647430 94642826 565489183 26665975 251030273 127622213 407820166 282106996 427464039 315703712 426761344 50880538 550406103 220404226 625164356 522441873 992280775 315925432 595575124 480849793 825337776 594612325 623083268 489194065 114548429 151838586 229641707 499480076 809265108 393360884 745692325 902965532 267710351 155672990 680612827 956057755 590835189 946428027 249752340 960890924 634658154 619239013 286625014 891461455 125464915 531179105 997895814 705586966 951030404 845711069 220195255 166326623 49828091 183586168 453877253 322721399 537058458 49516085 744446959 411104393 148430482 783291344 760555547 803618129 452039863 656600502 500234645 642336363 754332016 581063498 250583130 872906334 992584488 665393689 248586976 863135943 938728138 177054333 71028214 233875034 59908268 797145425 503426980 632430728 128837291 841240198 200702467 788976203 588428285 557455267 626886141 117998462 314759093 30150198 516090269 557095741 577006143 644848019 444088204 265329708 899596478 969452132 102845084 620645821 576096007 717334321 298539876 607454675 884653358 339138271 490503905 882141622 174410332 933248304 162801736 339319683 915751453 962276339 807768827 609988743 988082934 478186566 75342291 293889003 240603736 58838754 230360434 269828336 389861770 482810219 304905833 964524514 254743891 844162547 850423637 336805429 879756775 544272785 819510542 310051600 60364863 407339830 229395784 267359147 734442531 243726863 803887191 868483433 178384010 874022712 70001749 43938917 538661621 232850335 820048623 738010407 468571837 615696349 8059263 905300838 754540277 440509436 62661582 718858212 617575991 185263614 39550803 328138615 849899188 221441279 991251827 570258582 563984197 473844374 279896442 769594745 692052071 156890221 568258684 279981104 66500611 813560233 247601412 311575866 502502430 686361464 918363237 776594174 712319317 981019649 253702635 794781818 363971960 164542112 23150781 982839132 80654887 644725750 245838014 623154637 240070446 753620387 22176331 69630253 983563279 376323478 191978564 312751281 816386868 630487571 411699355 311502262 281116895 777850939 50564054 673360139 30074968 689788937 307641832 949012770 916345270 2653105 414879293 488380076 530681622 368772321 132110966 87418854 642162964 75651115 15180381 437918951 194278044 951964432 669912928 469534551 614292315 673741863 188471741 95221832 333825274 140800089 903691881 878553707 375055560 580054755 774097878 985072468 897478744 573686954 737366510 392038612 393380281 550410245 306901928 270385565 219851150 862129006 731876183 684911372 616325130 765810970 482023906 315492764 337237478 783116865 149249477 146249684 645977119 43262436 91402966 514672 237450111 246120533 53312565 560115267 617910922 368575382 892291568 538648003 2169643 868145706 327739283 198175511 229978404 890710620 396791110 124265329 331839340 167480841 841103838 144446642 906763704 139724770 610487155 641151776 273338505 988115233 571162680 682774579 547667500 114489018 18844359 996231213 472199899 117834273 493245828 484681663 431601721 990114605 705396896 287748538 263955809 680494305 399108094 327281488 876471293 660536732 901156746 763587012 13537061 973279712 707954504 787559351 55565299 413485594 745374528 234152548 323265793 677582887 28384300 177021783 322935220 757593716 383664115 740941020 244428821 887848038 36790709 589903653 658732890 302494226 215875824 158004617 678910300 633175055 225524948 814848338 746381572 103406264 275148632 504085175 274848284 403670005 826176772 687775343 136854627 394494712 391627837 763054497 218029533 715137594 366267362 458899938 955156218 308577083 900977161 357865332 162622713 921885313 738479719 318330061 574982914 268139864 399010015 965448822 1704861 343208972 497659772 651443235 604037841 733783399 210656959 869534223 578626439 448188628 642227055 886061674 921398979 183477095 946644554 417678620 504084104 338308844 909916585 553667574 71185523 151898955 873369258 910947794 193362708 310736527 797463029 522932863 584316313 928095772 223031089 550570449 688769374 544935272 730948129 80461682 507015403 3687704 702101238 385892602 451211505 35873718 632203676 644933842 694931599 993813657 309769619 703450456 58255744 176656785 879298217 997736446 892571666 434703599 667278992 31786102 757447522 745274942 401443746 43875556 801423107 938105691 412738984 111296536 241315044 554551391 807805170 344038982 875796693 822727542 21605809 522526516 580884728 16945364 562574368 161095212 486568979 648062170 755465679 121895639 35390206 704348396 116932815 13527404 934861642 289928010 13673633 979365536 233229368 260090620 244788801 145302036 108538091 184938725 58772417 794818562 667267470 597746640 870974423 357399212 685051611 314822139 861746501 443128949 543032069 712910293 468427162 749609025 57970783 642430794 457661087 224007211 294203542 403590130 387655484 31318955 601687220 876814006 842761090 405330282 416965053 83531387 392556225 680280647 411151930 46622738 732679221 900766442 844587101 310209666 990103718 523242360 956361238 576355166 446339506 129981891 512815419 499096940 53605319 388923456 811433431 479897316 32813862 90856311 983896598 521888946 837082954 577482865 707654405 737012059 629645242 579654462 767660925 971293706 852622417 985459599 39351185 195521535 951412009 32096043 873341182 407300642 596212593 976333215 501645777 688545383 55294160 913395309 128239055 653618385 405831517 20827664 878225789 230219974 842458384 379981594 692234595 925129299 893269615 628004219 827160134 412909362 158056511 796003416 951008307 304693525 830142078 147928326 892383872 228115912 585339143 848991327 234864655 630963079 598986127 465658465 396954073 467420988 960046645 30571208 101277151 571669986 899084151 315338000 775572664 270047904 707489873 6203662 314557665 411615470 687985284 940140242 297574672 64352540 759855467 314687794 756873525 76063038 357392021 788686834 219742528 770858899 92791888 65356213 183956368 688274096 179339233 275516681 979211694 532164325 493281141 45769009 408538237 760764274 769121317 483032212 400092790 701635850 821941801 829979227 350302513 766289694 850993682 956038351 524690729 448932111 448523767 882118132 559066354 79358522 573783093 361685895 601304347 570001842 412504868 349711304 400848660 597191883 396356598 335859654 532185722 373800069 378770813 613411720 242632051 184158924 726538615 447477396 640917117 672036252 673369072 210536465 796794191 578337924 653265240 717134567 995509530 474126341 691787946 887844030 311927488 767928073 334088775 734199524 143976142 104503537 50145322 833624138 38038593 486283015 258045942 547588147 175199034 893165211 376878141 491173879 104361987 423032882 178897110 710362754 75346050 217405786 428140930 849470238 743138697 551117877 305495786 641736012 302639467 883888871 19165370 879940033 21711290 726340264 393212295 892706753 708616379 6710232 485759429 409128623 287824336 885741125 220025152 21898774 942506800 164400768 521602315 287757677 453131428 878392873 806662600 218595309 282153340 723728209 619328079 269442959 64730712 1500930 30485804 694569798 548035523 313820716 925548431 636408221 673584170 993657426 776524943 903528303 625074514 73081059 100200823 990470766 787055317 433647251 258765556 349843943 173867205 646306243 34832277 455018571 680026235 469273768 167350294 45971622 118517949 103829957 342758607 336624009 692549938 504777210 92622134 385208559 211513796 744301483 300263034 290170010 581069393 275716402 510679557 879404710 449957869 253244200 421091458 364890374 923921572 230030376 928606924 226945401 374746104 561900837 852351405 695765148 916540041 280806025 940084526 267347012 853293898 439962721 282809453 453285671 783590076 744219415 665539122 409593448 522144194 732251810 920956390 590506941 706645503 494905544 953400594 129421888 642412454 312378140 495828093 131329408 728515279 335171537 702837541 819202495 7013059 212518252 77839930 311607945 112722772 902664461 854830175 713745481 995299062 36534928 951209294 585427834 409912737 799009867 929540098 759621237 334070934 309526926 734751269 615877054 873762669 9025400 639449021 456051480 58098516 478383932 446243937 524649584 161829944 797249914 337556864 203533413 927295603 774134977 812393226 151779605 505480840 525848783 18061946 683319357 239852316 845678271 962094307 266517243 402050647 218767858 139692763 364383746 154224198 942213579 505545063 451143118 707728575 504740406 172794905 318958265 122613756 865800026 880811569 587024682 758293373 391186833 339567619 69691367 31220382 914106541 43034976 199481249 885347549 889920661 228582576 264263835 775281053 127396984 366409954 762774519 99491651 183883356 439951054 648359023 657207839 797588835 518187233 771155825 561033094 767284770 520735408 684632386 752329746 132793003 802851192 117242047 584187037 555991447 562557163 49996215 58776172 726037386 602238922 524244281 973155828 129245946 292864850 571454194 94788485 868729261 51458637 189041714 561357565 81100326 967594259 902818999 867944052 70171273 357197909 252428380 696725427 935348432 45073916 900744364 784577763 319527725 375216263 34762474 176693772 669662210 181720246 512454202 18191306 917614008 805190646 413379790 937426140 689958667 57818611 74246600 961914299 893149524 319755863 19593818 511457244 840816693 330482516 372769655 105736058 342364404 946604677 305003314 530617152 903286992 692907844 276047597 243273287 458691103 815268915 805224907 224688527 44340823 582134079 415512320 498490199 252331954 776005752 6869056 369117125 857282100 443685888 224103523 568204662 775304804 104295776 341264387 578924560 878264527 2853008 586910678 268612885 887537207 430806712 947755263 155406276 896102969 36304451 688216269 609174618 910304023 527488615 22406788 726833867 599468804 673072686 479582478 834986611 446309862 789172665 258920782 255710071 175992081 748922360 382605868 850737691 831749613 70310517 124092359 409420296 271859326 683607142 496918047 739160285 371794320 506117613 603452581 645931032 120544363 204516572 112204359 972788133 660575429 482871040 682469955 118999523 849015933 475842359 188039366 724903289 696044142 541853749 137480669 538675645 52852764 935534141 259921215 349547630 877009279 315503403 362483789 854156944 952587628 427197013 544297437 765908964 747867399 917754883 574922981 884518946 192430382 755473923 636247199 395318747 840125650 70236393 153298925 748549170 57859733 673105830 315756417 884372885 140246478 54759960 788605710 286515948 84914066 157398130 908593856 721089121 698406058 288811460 878173966 369421987 63201851 528516719 129441832 840112526 480301350 755721445 233976116 732270191 391148314 295906670 656219490 618455301 703029355 560110204 109353540 422346546 899664018 881661337 883743558 504006021 365562160 639041262 207766842 355518905 325237428 481740779 307926915 440374250 987939419 226948274 827788602 14513205 406504755 93843953 546511265 173043237 306383144 857187858 250473788 4812049 547522344 466051125 935044044 995462010 888530863 518817502 272049302 85647473 516882535 72631 30263301 14593354 639153061 71649197 728848538 652988426 191887750 66338815 934402063 271126858 383912728 692714181 325175340 359323800 850359310 943530988 924211521 184093292 162935139 788983889 165100271 560747095 197946234 925936792 618585958 788750344 814992830 570982097 456158681 746140668 342751916 754698391 625519164 240602543 350690884 981451083 789770489 384878816 276072934 511113957 951947907 668753430 697934470 549045610 939643394 549060350 344124137 934002182 473714577 274775542 191852415 404554380 748648062 274329253 962631383 91084622 770713401 796996218 33621621 349813232 371158729 434039518 535874857 921656870 226113475 391546663 438969549 458925084 685451540 583666583 910308411 711939264 346642627 85549155 222687750 494271833 964738726 727115851 771150546 865325725 114493881 884382330 291182268 797456761 83182673 633681018 628345199 951942850 354566440 755163904 771524532 503087158 382751692 973284455 190840693 949574845 251991728 83256045 874437633 68740045 166039176 872771897 540519442 725428270 307269309 273344005 152555638 47676253 406920461 823646367 832508145 246384431 808062652 841885732 488195659 192456055 924234893 980610688 888625732 329426344 951389375 189074919 377474954 418444264 653241808 326564095 84934216 886700149 33384909 195886869 351745302 277439299 62308240 502582730 289112248 24123285 545472710 369372072 605674021 837669557 554300749 176846662 572713859 817263835 857493395 231113171 508070326 490235466 168506875 318463771 331094278 756043036 545352067 107414782 981416932 519030126 206436749 641187493 322413540 466532845 413243184 240035995 557240911 782790743 323713772 428842140 681151303 82510790 294469602 399739042 92856222 923550259 882210436 851089528 129989947 933103446 662411328 97673943 858689708 495218381 878393427 866705074 561935113 583437973 996013887 133293387 756143233 189578267 114891477 347768431 136195860 923217851 669508940 910735589 121985190 442467334 598325262 379603640 6848979 795572137 418075017 167034891 95223620 138542431 87138038 464487317 103803136 987107171 861754586 15441001 634090378 936816418 674781106 91427000 702753541 44104810 870341972 382150487 712900576 614571582 95199319 211401961 667976512 825976783 606665561 31118019 496790866 90050894 299047714 187858176 146441553 928999494 108484760 391863192 637499064 921030523 533492435 860333307 412459811 285926054 139572912 721069129 892494030 508067847 829564810 315058151 529134715 216123386 531611239 595971252 382606424 831605540 893930567 889530031 329860766 968736306 929511951 130227855 333925831 628853671 496929956 936680193 641817335 178575036 814214018 617404436 489215235 185290155 56904696 424498494 40812253 512300241 422929331 219012578 144278567 57700708 491020765 809147909 435656397 932759490 474439472 391982524 997939629 575591144 952816645 623364825 605479125 50074881 985286577 150247106 492594856 156334397 701058207 841909192 319702175 479432667 472958177 342436046 808363944 833639793 155558795 410462436 212899038 313372607 329161496 341421429 898852357 574423676 441558686 155592137 567199469 442994416 530581550 647111646 740979858 1976315 712254700 700813075 187698264 732119139 552054076 873852328 642955374 904325380 544979122 95704962 727833001 129610239 669049214 691054438 707608155 162954597 768031444 68955169 531093970 506909270 695760885 438181320 832842775 628255408 564113990 686523156 5583663 900392102 474711733 651803565 87378329 4356251 384706862 488297835 594729824 980400315 40034399 383565275 994802181 699940138 901388558 789104203 713008125 565775420 310847572 723987628 57920986 392795951 71970770 645891470 157401644 432958700 888076699 2714511 491446016 339317972 15711131 242700382 812094517 923759055 971170510 172696608 58730420 977288023 978445988 423840270 957380477 336116136 581998009 456838150 877309022 862646173 211885642 947245972 908155070 539348629 597149594 792899990 394908416 81703718 145910500 201899453 779776369 259125493 185983085 908309350 402188853 310125030 384152603 559900965 692944508 277252123 137263312 771517657 213660429 974424253 774045189 412647061 417340241 764021779 170718557 578646176 77296614 836453790 863241920 980006746 159140252 239972506 950063669 1768936 6505027 996327553 294156505 597478569 799513388 322688108 60263427 492090603 935281887 140327288 989652338 555486678 566566090 940004404 263719799 271312607 401674386 24226963 433912634 433740593 992668055 920472301 806524514 739577866 947370698 967034170 217491112 951615593 336373414 356942127 199270668 727883725 503667109 948937335 478348189 986059282 586764725 479323206 178656368 829300683 994458606 519476212 868789489 763201508 926552508 349954544 324819224 169491155 511788284 231761116 86246339 651488206 228320492 108712548 168908790 435525852 96675159 324195680 977834061 537222048 519337326 671488523 697955765 274909867 713226551 831397351 321287557 769855321 893081956 448540867 587993164 973053922 729974767 973100280 823205536 657265185 14425129 627285316 180757444 98515450 520191296 657412553 256547038 848420414 1788961 866377143 610489681 110224822 263106885 594096698 255602315 919170539 137766256 638682438 704363905 207555650 546512460 221999895 752750016 762683645 890338154 552039288 724977475 943197916 509383712 392180359 14872745 352244081 982489168 15272913 212018187 94023415 717980421 282036725 399253499 372371491 282768867 749744441 999379974 615885788 874012962 256408538 404719920 885254912 755282982 776953608 266879169 68182223 562606384 886986587 366870970 424837822 466843519 85044365 596893142 741883562 192190270 453042955 463599182 866903629 645095776 258857007 425931561 444652922 120559272 896231073 168607587 124633953 822939580 558620539 287581106 293226169 171107788 551435910 143323669 804801181 126033916 331314754 166358374 213573756 342378226 547292320 412015175 13339434 527774202 819943819 617265413 369247409 947873435 970990931 438870402 140653577 173136811 628327284 76310396 432338362 52919135 52341965 384780813 58478375 297751646 246337133 51594776 754332534 783456573 64510149 805710655 487912161 296380428 901402877 779431192 797328320 675577998 657917745 137488170 254035233 65199404 716154931 301464856 145316465 558409958 434920410 991683839 439926154 231541771 862571819 936307167 345043215 426719021 13151391 208197301 92777901 930649482 602313110 87206852 547028651 735689711 150774743 489643509 289000331 727904924 549043918 81456891 694521517 61621047 987525589 956276096 715126610 17854494 581235088 780300343 452248422 69999653 337061034 374094711 186450007 827989701 457898779 226550683 90304218 413415614 412415327 864922368 576496602 121973066 377245060 439730212 537501518 489902482 521657342 661120422 308378866 809681435 98049686 328167955 670387045 325728224 790021836 312648035 757704012 999477054 184788056 422149831 454759295 182009325 632569927 408003280 940594005 371890503 700487148 612607853 53381324 254336800 726619777 532145631 765403340 278667463 171903391 843387290 74505603 920974747 454910820 828895613 6922158 595135600 34266984 880369930 745957930 901977650 650230300 14003065 64319106 371951513 503903898 301249918 776256181 268738522 32301391 236809318 258902538 786257423 991821994 687615865 322664325 629045603 34986465 766612562 236807602 836028036 302127985 214956351 423120669 824777783 739805780 33360246 581249962 801931320 146691202 448538654 239814596 995231592 595520721 724309382 318560030 568771944 851322367 191300401 621275146 892109943 411882705 532006081 718739862 517659793 2521477 583371789 251459660 404297720 898567302 39728828 259658241 669083167 574396084 130064773 771857867 404252536 614001036 14979540 995890314 206808144 87843746 233366582 127283069 638408542 428794442 856844867 929207637 938134897 610559163 385656926 481044427 386896802 825240061 567267334 720675572 356276539 542684982 677449446 268924228 613644684 674084535 566838115 498797101 425000816 924662176 282587356 686974774 317479965 236020635 192007968 465095277 651268625 876447293 282060284 218678178 451880701 976985164 3560692 378199837 588861643 863639303 653266304 66635254 688235288 267515854 822765526 626367627 484281045 867991855 662608141 416343168 52262538 475687385 971062632 696107697 871027029 899663941 257350644 986465236 710077581 139221694 875205126 877946121 25086961 359872530 240004572 20237040 643975539 204846056 556443844 72908318 931854514 563998780 532729894 425891289 675096516 588723063 510340439 603202431 328409380 546765559 570094763 121729973 629530591 758314834 732508281 129157812 921177220 653591935 540337330 125088668 32874731 824369184 750338458 352986737 180027647 316564217 719206732 651489423 848111076 677178246 311334932 562872679 127955346 799304447 873642801 620312969 856965903 714090950 453891907 283277456 833697007 941246598 138553601 780601411 618516638 842114792 256158046 856563218 775701167 217631075 417154207 218526114 970760008 945987141 668801755 91014610 360705835 964556618 991938185 100866735 838199165 334303509 698299381 735326289 187147190 990605705 57983503 284244851 241532224 675266864 196393207 908733784 359398103 600594156 464507339 515687042 924268357 773202273 415440669 690715735 146057324 249227957 226315187 21991541 179203795 170399470 181884049 227008963 554355288 681324929 310503047 930561076 567930274 125615065 784743881 912512759 408666809 404895840 499563667 543354891 666710003 232569627 835182980 665402957 741745433 601450814 168645266 720802540 217600528 885355288 825135896 642353742 254420702 550844493 874422089 793024589 254255127 477900961 14048411 873616348 339560480 891445071 439399350 149683310 951897784 957041181 317206034 197729924 173421204 634234284 35093922 347541184 900133706 893780184 101347902 397407665 479438053 773880093 690107808 626265689 313605112 288589551 482795285 575713541 596461031 209716298 884650962 535610042 757859246 414553501 759445893 596505276 162575456 928333492 327533308 198419986 248705785 399600666 841809259 736344462 650504093 187508720 469123107 719787460 797431331 379247141 46340446 350575715 906638733 348794879 747962467 802312265 910620540 384679644 649112659 221937114 273832877 548073822 132302248 808444154 138045242 696011041 827983273 274271094 15251756 216439146 800000181 299871188 151577971 576007619 144655506 267618096 889115316 512883749 438074399 883453763 123922093 331349708 195555761 799689986 604798334 746304752 176663668 397246185 821173800 810559785 705405139 233215314 205209598 398204743 714516196 722783647 722790330 242681700 575593074 411852845 272662079 582610103 458270633 641727059 237520242 319774210 4888688 196003451 482345862 653534036 85956922 701732027 228223471 391670591 558589371 358829910 666128591 253931747 969800101 645627239 159943034 717836517 302466936 549738427 668206998 431779855 347141630 644521691 79218598 305076852 846472420 339673101 160591459 673564168 624392295 429355242 507434222 145170785 293634553 49918076 184623031 887223898 363247721 363061304 134569751 610181841 795203025 24524238 173009513 73946486 168095376 292788194 141401806 843184860 675976943 368130075 460899520 552923420 599364705 429555649 253349569 237460249 500296654 733879596 639759371 938691261 149296481 595682772 516660162 438359494 606043941 536240616 894885736 852108728 564140048 728803911 626055321 601421772 222125619 434407549 500022462 283747087 59710479 364152963 56700963 884838057 522130966 649003226 128324749 478468776 654013397 614909428 453108702 335279738 185241471 229378824 369504182 393999538 287090417 108053941 678846439 429079325 265518625 432373268 241917544 447484457 671897993 94641528 16879723 460942852 257104910 345277144 862520017 609134900 126088169 973362718 193725289 520888796 205405713 107353539 510357202 275930540 160870357 492469203 694395292 973893910 861325522 954017125 23285910 299845424 81953094 28314613 308037446 156589079 577956867 582048194 991597906 843077648 238202868 543357638 308403357 74649049 271624225 789844161 641352240 443771530 234036981 469095508 919334343 2983721 701093203 672877117 789430184 162610657 654306831 483092203 234336621 72742000 236871186 604085354 793805067 86609147 70040647 530966837 48921011 694952680 985734950 684574548 458143305 757458415 500189003 958785600 122445397 510556820 180647158 930948165 468387140 349980205 951441155 283078651 258743949 743993321 469054424 34773075 1822987 638055144 929297020 755594695 996519420 701036335 449931986 84171111 320633195 437505169 753268906 108352010 577853120 937213031 392367517 721459293 183667254 719101263 917561333 77849000 850196450 251735497 631029009 563761863 265059916 359835208 346813697 646375738 122638927 237743821 225063157 380954121 752498389 959813530 355685937 68884190 149028118 513410059 904928182 605689467 671516003 414379471 757108646 536539126 284783083 511761989 816991708 282571964 175364659 144248334 375171454 797639708 593708220 464097085 710679168 616134378 435596595 476094537 966395994 811523832 532198429 577204326 718564414 302830535 733643974 719051615 136559111 546027487 642152370 273703796 785234801 595633299 605807022 208708842 611645962 131162473 654365513 867683025 449917778 891644008 558921620 629184420 642210073 830320098 460165117 197848618 364356727 801980379 78568821 23718407 349816198 298786420 44709777 439613345 315370803 889199125 195156790 807634461 243632587 388927986 590051588 743206339 660194514 672311956 785373615 424971537 680661834 245033214 617297544 597069857 201803790 937021806 705522721 762835020 639211787 948442792 767365007 227106795 386796460 231871608 881773707 108246401 725745929 352557133 140609731 49882614 262470895 998980959 673674073 941760858 664824683 384609026 528334207 558112867 466869591 458752061 702518369 171274344 876849930 658939414 355077359 695256116 90207343 895405272 322380909 192844013 553491301 858985158 78751600 781564001 855459394 907667394 677429416 660983091 775883025 988809482 329034864 172913785 116792612 732595095 162053730 731707239 35823563 30004560 640398959 412426828 493191071 917167551 217958249 119968734 179330727 672031186 603987799 138591170 351249294 157523575 146157238 36840876 397104875 848751814 467986441 73001822 436653128 933214939 130628521 178856178 705647426 377279866 276601336 297020684 643961528 449893678 194721221 467406212 331206603 175064073 718351374 623730101 639831876 172650118 327762442 890584369 950370250 541785908 3969048 166538498 613660033 83171070 5749446 135781027 169820442 309210433 520810829 805857247 823224150 62584559 917246805 747529930 311820637 297113914 690985705 289723764 269362767 239433893 695372677 338781763 633557479 131313104 932539457 489258142 714360010 112297262 361987422 759195882 181041253 715251277 834786785 939401875 433214893 673686944 823410532 658475291 292588591 178389828 913047944 225459493 244299647 7672697 300725019 974943395 203992019 818693524 790571596 642962239 181026867 868126926 828466557 353883514 981612855 167808965 205196022 261557756 497093232 936375440 197794314 999203617 38447690 326769206 354243301 554992001 911902421 507078429 621835281 904574406 931516515 594852467 615928348 336595472 137657667 534805870 722195375 914582102 309836851 730316438 119243141 601318638 818237322 536131838 148995436 682783897 235106666 936158814 731436589 955237341 18934798 632555211 127722982 307801606 184814512 334037800 910268559 773982490 50963780 133687909 873928099 13929919 611894965 586162608 576392468 878146700 496774320 22326715 562460263 49340215 421853930 717514376 638094339 62098854 817399510 958825254 698707183 174249389 65549305 549275699 344266439 982745997 551733472 412853823 925117807 690408348 252025523 496394038 675374368 47308500 312562584 351371820 658637721 524274347 299231358 670718800 484548875 414040044 984981809 596029004 880203388 314829396 97653567 111728151 863906863 17003307 487767611 39047473 313432341 768470988 571953175 687816426 811558597 914332830 728953504 793406784 11904706 40509957 558798397 517670106 443119850 481000209 538138886 631542776 920602376 980575113 525527330 388397394 906422734 872227106 894431738 485947803 506392933 583949736 135041565 314224111 640828105 453159117 798788172 343399170 993993283 687539814 90376906 947520438 553017177 166530441 744841289 501207765 8059664 391219093 827068997 785410956 929410456 360602206 923560153 16035677 517726510 222416300 67854704 15352273 661481772 2132591 66883517 761068217 827619451 109329547 149182299 216973954 172242254 86227961 287181667 682652980 540515522 41434279 200819357 126154033 539769728 625982004 37643360 487105639 369728985 404729839 307055911 778560785 942662866 62755496 121521202 212931214 954257973 258288353 531679075 343980311 525258175 40728196 672147499 756317870 550238423 791223302 906226317 16492297 634731047 896799346 909711534 592100860 805717383 919534599 502616974 207954597 593663788 934518024 194095701 333421227 594199456 508111428 133996511 488263551 24675748 206824225 380734282 468677377 801639161 18194 121688237 925294928 17067853 623532770 671780041 4601202 156493902 182737075 964840790 599432382 668412411 217346119 208575285 121090938 888829561 798126397 518913697 48771210 444751082 448351104 556540468 510809992 512394938 686349761 100745239 459663016 765688534 213822013 877959309 16939490 973315107 797439566 855827548 848320469 742449641 97260051 944219374 250829438 785245844 977807020 755254386 42660065 997517963 390645486 491723069 678910895 780963091 951538073 981723932 305030493 270499371 666378592 154653245 715117858 602351077 167855297 295246058 259442213 299958322 633334752 680265893 800206803 886509548 359737454 618047484 905800527 844663552 499459885 106651344 712166471 232124183 681025210 483616106 651946459 897171140 565211445 728254058 952369924 885851787 425112199 461426249 186033436 703193347 457873337 89814888 854014025 894158413 918949099 680925702 257416501 384077460 390125627 558885878 725122417 792796725 308828415 31506108 993731582 622201709 744310635 714490510 82046867 898423726 257200483 94865465 999368058 322061590 931134311 988310988 502164246 426966667 621757006 285485269 147307260 489531278 620932788 531174751 144458959 479152774 886725412 328293942 310276630 203963267 758563119 445290634 382530517 59574683 983763646 142256849 109204383 679662141 904861218 164211128 184973616 676651910 903377692 432564904 842334758 343981649 925550817 418581350 126372823 5110544 240365356 898216125 743859577 523921470 607195420 637215410 317746906 792667031 111596340 669896540 583755384 184057185 651850468 817509103 49540233 833398418 431595921 417345220 640234785 357315529 239465902 957448966 636592231 976149823 15426816 69728384 970416851 820057296 971369596 417897082 709417725 901470927 710862968 349240457 812537013 74743188 884994167 662962781 83060106 719048893 575170508 426705652 928097755 554746639 212732362 476523558 577051904 259292536 863422703 198770102 988839210 765242121 817723738 760738194 916719322 490292981 102687465 3652205 336086918 900720875 335499728 650445350 163306000 713762239 487435872 816256883 88268684 838472068 580964924 704634908 187841032 252793658 414351742 764317611 98297084 41424941 17305672 62496907 551050667 687951466 995052248 798801483 241604606 730920964 795899386 703652763 488997822 697583660 926834724 684037921 139004391 818678049 446736978 244074078 592190728 781314147 864900266 997058094 797180046 933865922 131463163 353141216 846936360 523580497 161653409 443243421 470187333 420108616 990621368 659505635 905147282 688711814 770521172 864937047 120416966 252361109 960963264 303473198 698898081 180286596 140077709 426233078 706695811 175474486 355765401 302800696 99780125 194116892 651721359 95322120 563955437 237985972 79184264 771205129 437456393 165778307 786080160 203598417 880579121 554990085 2080708 432791531 407243229 473355034 683480177 863743839 473634296 81470572 544355764 256400500 234943277 6121691 827208091 115865483 781370090 55213653 137193549 321583559 393359814 913738866 4026426 801729657 642334279 478416714 670714792 401973800 121394000 89812982 754362893 477836240 752821681 711123969 495340448 634237915 801502023 992352324 15050313 514326446 370599660 374394163 354153185 892323031 1712786 219440064 824796871 659202061 163191606 936536378 868832705 263187491 547285180 751488224 877897535 525387472 161600546 369321021 949106555 99883372 16270128 597107897 62387184 455104325 891557396 600481255 776158454 808001577 22004778 228779280 372390674 397472615 183180992 9551131 481572877 560824556 185244454 294455123 572132052 558289494 334187268 234328178 709570083 781501776 878543639 39565361 617957863 599325337 643551369 609084212 81918211 858193838 467960845 745742664 461766778 907908192 140850807 14462186 459516479 707539098 990098357 272903498 640594139 336935915 750628916 138518311 533436460 846181255 516270941 781760415 197900068 849337326 45367738 83583039 550625481 959568296 746610337 782448468 211329000 9800301 975599246 520279217 588848549 575580083 229292491 739370495 477770471 385704373 473266880 830953897 573808504 143133906 902809013 447332486 486263788 343855712 696792214 761660971 954669232 205222419 755908500 520994100 809125957 901212523 262956065 909914434 515430379 75409998 749839646 866655113 678034231 655796822 150558560 267724965 432222667 729724005 729790575 662119149 99720521 551278970 51213147 368532710 958059540 688313177 475584399 16247156 23651394 902496795 171352184 86588493 21133826 900006253 213128468 311939343 168182863 441580953 573416716 818693152 912754111 908451698 667277762 97020936 569380330 119631019 83407068 381790985 483032255 327330207 486548929 678730046 657228961 506307606 60095720 448806228 195572494 499201360 51795408 981774575 723625687 748537058 742099988 399428475 75356192 543252977 643902241 653753209 709596792 984524616 145065034 502827009 510363188 96782775 720493633 439268624 298915098 179669412 828949524 598767277 946172004 179985956 824295132 68801489 80495602 346677574 367726403 83405073 12719564 249641775 403736895 735613720 321392725 148670231 575604093 618847390 110521303 142283723 763747382 434285195 736346276 947862580 897014153 175195411 149734669 241345050 939881642 127067998 778900745 280490384 507063668 35746504 828169855 48837737 579063990 505103250 443836896 255822834 692467999 652760094 190477265 513428508 36464035 182697661 582906287 525344942 802015632 837113214 861939709 417035639 85285970 537132182 570246412 53041549 69469700 946774893 985001236 917713036 889558937 710129242 684468888 998523566 991397456 668594768 441956280 434300925 925590875 853443847 904149399 246319040 760837070 570543204 201571025 742960985 427152549 439357120 53983242 605030361 857012957 430553434 913371517 502703743 528186883 875391779 503727577 949257463 895221966 271186264 908217216 422382518 171990966 880227434 663747533 460995072 203453511 116217937 536950036 954774745 128671680 87502533 726883541 375053882 89453600 134940061 560805755 16805204 721724745 316050861 303542045 817696842 288988372 284471274 143343797 176523295 77296896 541155617 477226105 221360366 415782550 318265684 217627240 857411449 964457160 390505121 901386134 604331180 108505018 634451885 618371838 98164035 944881248 386090469 354118700 77789490 574136511 401007222 128580939 899189238 668850042 667900491 969645358 133305542 246155938 595592898 613852970 658283836 87801673 816271835 181770191 232072875 978270841 97044921 45136678 576828568 867341476 78761927 372627343 349276820 207509013 331077505 722176 619943063 837420778 413934566 887960179 209485180 407659981 328829141 700103282 769613352 374508440 982311803 829824706 502279615 398023515 79945178 277599790 12546235 962440731 737207035 61512142 750560818 581126134 157618335 473505223 933532128 525484316 324129834 537704872 362227130 811696803 441208831 48627385 541103590 647606235 914531789 788065531 538267597 969935448 574021113 44993178 302404668 845144887 614093346 695485569 844826110 733887832 642820782 843244780 736701274 801752309 597532160 968609585 376466542 395597536 151640710 379463092 76575207 355184700 377223603 668141224 941043399 315871488 820153983 758503686 964703599 974683167 564324080 256697869 806742401 565723884 200778505 246013539 269846266 590487401 590836462 586112925 285558083 858289982 147440226 311157826 997902259 574558785 380334798 400901750 878959108 694916164 882583081 285916745 835721470 238384231 851399680 753439748 825226442 484375369 634503931 983940262 421012932 867158257 729793433 931248967 98087359 579409028 650328975 566265849 326210756 38726394 657109277 140329485 640824707 168632862 509945062 580097414 152362077 468742636 284682013 205794869 308069129 418708814 849668920 18841391 603173615 256304300 679114743 559733157 777044587 581605324 402124558 232877218 744907996 319890524 114897555 193931841 404728208 759996756 925336314 321120183 664221298 656920400 75629346 289068135 307491754 870749625 556662823 336657085 859734007 316905824 380069367 475400261 576168570 17597036 179350060 394729279 498588930 629625870 571660484 575728837 411622652 416750322 495670062 395107675 145041028 475200481 450046183 311062122 439730637 273897781 166938038 303180621 755925536 99426773 138399101 259484402 207765410 348218268 77094656 182060447 464969750 841459326 209449992 747022915 896454979 64755866 600298792 279536447 252960618 59587656 704694653 451239042 181793028 3084561 503441472 391089016 331038396 273549112 157115770 29950473 235618476 122583559 312559375 564238666 717279524 780980055 160124454 522327610 735243037 703996136 357348059 403276617 143611128 917430239 412224384 504935133 250393183 593563238 304602671 675957576 857181130 392922843 759021334 29415013 172733017 99428237 579026752 631608477 259290817 255752083 167145441 198681037 995414158 6692690 591033500 977565111 549715316 167184282 236250146 593955505 421794811 621716069 613751932 767844555 531063615 186440873 455408884 71291625 626719992 500139953 185343097 406491612 242198353 494476937 64323899 186671790 519012070 82392199 434762092 778573395 258214408 569768556 875503847 980942176 983621614 74860479 472432124 685429704 191228613 591455969 891442276 957341777 584026699 304339470 188365568 706595275 579972985 171114383 714684992 134728712 27901248 13036686 428608280 77780538 15365306 109444373 803339168 356211420 758389339 975224748 535425123 843140858 689613765 416618197 993728641 187544087 297490461 555056639 585662451 900712034 840930834 205842568 46439223 134639578 7399327 304513114 610602632 958091184 509549001 298026368 770972526 648111033 184722380 430339781 164063752 514532689 772651187 419387117 211579128 303839510 807190404 920057160 899055014 259895778 458016993 536800564 325185803 659526083 188822149 974319407 143811098 688250933 974564243 746575146 588431637 978801750 914160332 842929868 908416067 807051193 328845044 599953440 158216846 272001699 844872724 139638940 430731680 411566032 898068077 405743640 282791249 397790932 704151085 155382326 530918118 528663667 701840726 975409534 217074969 194856794 447678858 300852746 949386467 475159075 642327195 955083882 756831998 334399103 472271355 341480694 493313711 153903589 243171314 453027972 917917338 963773482 448341399 593897260 646206581 466699103 151780269 662789848 68353179 970378555 501330561 388478156 370005357 586118938 510309743 561838945 457045041 367729478 524890428 213436175 636971048 784750685 92493457 696740927 605671645 972534920 323359159 687349760 677926866 768340257 457333731 795617756 591702189 847264312 567052016 580063915 70898149 230720697 259307561 590072356 649548122 206485605 533674328 255057649 578319121 714727468 101034486 578168990 331841315 396481616 366391489 91596557 500352008 371174032 420161510 750920842 197285075 408791845 213930719 406467270 934043066 946874088 755563367 16222471 353697827 219193335 23375754 429362298 56646648 3658700 868963613 560980915 257806773 561175632 371510929 554057963 628547727 119500318 994327525 178106802 505224767 986748260 689808732 137894777 297625423 975380681 2289316 691225709 83654362 140064177 293971833 949266046 827888547 605310727 53943360 686520539 252264062 335461000 198560192 398805083 477023074 821793834 568531456 944359981 33158994 366232794 401983437 588202744 429736207 25012713 110873817 890020804 573815419 243704349 712626627 565293905 68235963 794184871 956812762 809780146 672441233 461921737 290312554 22448584 1017786 435138976 642257764 45170513 480250359 297944432 494327998 897524394 586103732 616694476 61243929 449941164 976922091 616278220 732496341 909824281 443512219 729194762 765046985 969557364 377177194 858007455 316067907 981355485 165453079 247074579 831939634 457652355 881745823 104726905 667159664 321805295 423842007 841960048 516146878 176594154 802265867 9044160 676738925 997271739 505438347 404009325 610365243 866536965 243407595 187875180 897815484 508109006 480674866 365158471 140172376 306282312 269175247 553882999 280260978 996642625 219239748 874628769 979037486 255664004 329784839 379288505 906789827 920921487 985032022 931336709 303485632 889849974 700173936 642567290 391096064 125310816 274315196 839348498 490336958 657919094 197775425 709462100 650217420 277534311 400034797 912740019 7065833 769356308 892418264 476643137 194099409 62816882 675005102 412198113 161748930 105252546 84299540 969256822 572264199 449094332 806942583 785691726 581183398 748807569 131189444 851642326 252137947 313325607 752782203 913841099 774242756 98523752 476098570 553196826 846166276 975586621 551803579 214086006 547097782 26275586 893878204 706479962 779069122 11600925 224317411 461745666 956192373 2284846 354688490 236900333 615811487 748494630 69159373 47764795 561334289 297499382 75455605 665695365 993928470 872210767 953580572 140409412 867853971 818837147 12338705 887073291 18995071 999107200 559286228 743426149 158119414 586202788 314739052 748323996 264177556 30494438 541407173 143182574 134692894 126970535 498781463 861807517 774577501 399561141 298351064 22454066 494842241 475057546 414783535 768676686 718868965 132180098 863323120 560600331 532534975 482018116 637286572 336575084 225305787 979882238 128453748 525677271 54805417 869851973 172521733 830643557 587001756 783570145 667333346 855815719 139914079 952064226 152918361 852370265 431423032 487648821 34906532 857493061 365760753 363287805 858331212 664908873 425732046 927147216 819430701 187338550 979747313 557446456 620216541 903088875 860549004 334821111 482923913 965682402 481806385 844228702 980509937 656380783 23676338 552856738 392095920 792455914 96565235 36308448 762333553 415899680 83474352 703566148 729394313 585386696 282713867 369983703 969339775 313902571 990952135 589670007 257056285 488675576 224812460 159472689 552413522 872552028 500195444 753914806 375825683 446081305 463357235 71027561 722310555 962653746 327067543 38365865 228354782 407330805 41069120 245280087 575797751 850641477 528441680 64182637 849688172 817116293 274444966 624172486 206628324 45582011 916972738 286711289 700817991 527421269 93409704 351775276 428372847 678437168 181310321 658948830 689899475 471469853 26313216 396910991 392177587 829673647 301683614 870145595 12578072 264596200 755633012 266132558 666422603 841034225 318725365 787249047 709987126 365396743 199199306 436872344 167687310 741679806 239218881 639240035 978555820 183131818 521157048 314835432 696759687 318608654 229529543 294757461 230554383 311456427 446747664 908033574 228814213 608862397 253112136 837705476 508906056 151911796 320859504 83405136 555754928 305005239 540128376 989405014 340218096 931352578 641312372 701824416 813711323 363944314 968743209 437068442 664866730 188874706 616973825 794991228 4822874 294047145 455879477 348963620 332314333 581881874 345333885 750129474 992529995 922171274 917545548 237371024 446190379 491366525 219745545 238521342 982963971 178163662 778804272 649078677 820362627 867529571 884404495 120788496 416578197 794440693 583567046 309804874 556678762 561695810 89970903 801580395 763887301 242720808 604122083 323841222 209675506 312889685 561207206 735529961 879809707 17945790 332152624 219392364 334295575 147430638 774919366 185397927 459911643 715926833 733624429 813238062 364905167 999488972 663051090 682320048 690110963 973791943 856410026 74180497 879037056 325648961 75257302 533500735 526340817 695801999 187557318 449157248 149348093 533666019 194285105 861477658 977552695 398562499 329057892 843212366 317499112 137416057 648675758 943493891 396290894 210478060 627542141 487095707 141270153 116265884 316262525 879710562 823383526 221851879 218499171 916756625 161312100 174637518 800940935 883565694 393022713 469985387 349423868 293594598 151017774 957065631 555575975 594245540 464250062 452717896 486545105 614025396 393413363 54906597 93562650 638655527 669454267 520106261 696113517 79286062 334329287 584144855 685586824 358674715 612198876 468748914 782905144 707274347 356220492 290734842 802641058 718973586 265069395 125766096 499381855 522060668 398792702 954374325 529127977 172322775 726811160 522572782 666816918 528837511 3118712 492901673 341850244 545659399 651542563 746495604 161827204 266971675 75611147 307917302 275293513 502032526 452001489 555945729 711742237 226024614 62097216 25271467 417058382 641318193 38825719 760895914 874506741 217411315 186707470 980704899 840012109 583658539 935012834 557922262 259121664 488145556 210809507 39948693 262674564 816905896 30625599 951352047 825632149 736240160 995539561 632626126 947991498 928238662 371997181 68168500 710502706 557846500 170401715 407227945 84467733 207734396 518687990 813547358 992352675 170847815 800625192 381010245 142957161 437125329 103613915 910553600 916799133 305938678 987897898 138793979 377751336 310299263 48637360 166289520 139482856 265000224 728839188 170626096 280176707 127171291 254894771 487947196 893579707 82617993 515390456 846244074 199096454 769008843 872939239 915118945 74385121 64847219 307736909 735559896 699858317 416540862 556001591 31199259 728952328 283837388 952647338 705918614 160636043 711078367 345077047 357186474 273539836 336335905 484257232 980846013 550757769 973620630 600889238 155271133 802357636 130090382 473954085 596566936 887223933 988994553 527342998 177772817 217274388 707130036 81603149 484389038 938146636 641855377 113940387 647741355 885550824 613686497 456996539 907626312 255544768 693505380 997709080 82264240 713967524 900522733 183384742 795335820 931225217 727690593 173973677 543603978 340947347 822795549 534106602 636718299 785520409 871046177 83308332 891537630 741840476 660376950 828339000 21295870 933035578 178764396 356018141 875769354 9194076 54517800 642888784 455468007 344629445 671727118 97546978 880088050 647018622 381523222 709667004 423024537 221151488 1093226 447779181 203277074 813013274 960024745 930561662 142657919 775639310 396809931 15987820 58664797 729101607 290221509 155247365 41195146 836900142 83552453 987741341 47902724 868806532 539046844 75467048 853113245 75800851 234974146 356266015 918023836 963813667 458898917 755573477 760630152 744322276 329196205 397681927 139820511 124858651 81134637 311204959 533356874 24023758 519177866 818991542 198398645 640801999 701852461 404796965 274318877 368654596 729531914 41595867 142618907 10323153 983435933 100224757 339217566 740901175 298499971 944823006 118005677 906620926 16121905 92909606 592726829 771139867 891292327 170975535 20800313 343726662 136969482 221123961 802558561 786174665 328792672 871885526 542594704 126837885 475540623 620908177 648978660 512296598 210240923 81791014 416001898 88546506 652136577 644237671 37922640 103618219 520802465 81324014 975380579 593167594 157875398 980879154 208116069 962599841 946622646 282508739 827340251 859211137 748170488 856495548 458538583 90781673 751610578 79737095 646258817 441804345 581818349 566623674 618857133 894610190 429101263 850550657 887597383 403177047 766514641 489888043 732701546 262652455 286968807 942891991 965494396 393192496 109144127 709128721 836152786 959088463 777006312 97791011 531879650 437369284 537424522 90784022 24924754 283109659 8162580 106621780 291155841 578567494 222230933 582100932 152406260 78356436 134251762 655030848 197228747 152297999 249754814 70674918 135414527 9911166 544967408 371189833 42339488 246424764 724199332 664795137 193771477 711257069 864001150 553141698 760248245 103569755 403099475 960568531 346922567 212553830 319497206 456844675 685593833 530590167 576005216 833310937 287190510 818854403 937197242 342044743 564967377 775870584 178705395 671905264 922027419 737795399 286859375 382868282 867328723 139381901 394979148 8092454 36620586 14703832 910215514 834675971 467456068 761423255 950338883 1654677 485322799 600865693 227250816 668382925 904393273 172855818 927690668 895432703 604767004 817968489 301905212 530963144 281302774 171674059 899096888 573191362 597895476 53478805 565344953 752171717 347080280 764214429 502015067 900169432 626803799 761186394 127197389 602454692 601075235 234366844 718804786 133705013 416703807 892537548 882679475 687282546 488219311 317428689 366855363 464993931 438463597 851710148 943209527 99316091 227780933 430267238 76202857 928843115 836492248 676981439 643786297 461362463 238265045 415682872 960426213 840656176 589325533 847970628 933274270 713745679 357763225 170339867 551303479 907126049 611511047 67557875 299877210 858238190 306645406 491743055 381537520 222202680 949331239 689029263 558623076 172409048 935925720 46872712 78102588 855013102 999796009 69670395 96550556 120180487 415294228 361629390 370054589 453467658 592948743 106028071 700553823 491615852 800939108 246818796 211133937 346388592 393280742 661472534 526125494 839955206 857412077 109557780 18081126 479994054 881354152 603731405 116081512 557334752 155420743 915090092 30703004 316304417 579790251 846887754 847597634 602825833 38734737 27592794 749738935 493066533 140055435 881565631 115133923 139526163 899498957 167316545 818442581 580747448 588957902 27034443 661814130 760551739 556706343 687520669 67044308 445134171 473089844 188363829 423056824 224409455 626005678 379024514 21279655 157395769 320393332 259468496 52024090 623274709 299268712 560235023 697799222 641373348 72947851 587680340 134822588 723029868 656196108 31240969 863604565 254947960 165208672 846170031 954747808 761873083 933958529 129408412 54716932 870666736 627888783 49866151 907148825 925985811 851314186 284500175 21230121 264424722 597364697 912303120 311857713 63588830 223663890 585767698 426031803 591015952 242863125 488991336 409860773 641233490 617301304 744772840 112656405 598484972 655435435 660905819 156840941 114807438 832343117 376627293 835190530 617892035 918803911 662482246 32625954 36328699 634360584 237626517 313224659 295869397 519724047 648877791 935379418 329387105 670176771 461801735 757109349 690993348 586071045 990872844 823151910 573153618 368178905 735369571 187341586 681199847 802563108 543448319 625277761 808902191 148844948 576552755 485521765 224327235 439493893 331858334 634890799 325287884 125540899 880770587 637886661 467529421 573815068 890898703 439475060 879614232 610177635 34943508 719342416 14800163 687678688 836366605 455661023 40416926 628176056 992766069 234636161 735403377 149873590 692520546 711753582 179292310 434662664 53136996 671160330 425153034 697288275 646155782 591061812 58987139 87278042 17778714 483662971 717489657 377306185 447011716 226151800 604388323 152985204 498469823 4624280 59187102 100558447 75650448 42813317 69937604 685125916 808787232 227804346 954317583 868709438 16228897 297464787 249986896 341308287 873648715 499130945 975066759 877532449 384120177 996460143 968006804 693235759 765125963 557810916 318241260 458218097 1222541 607114328 701195769 97004078 452196210 79057050 416964839 892382329 387465869 835650397 321421169 780401972 528832551 169428340 926263667 402540208 179090715 381861737 362817536 567140040 680024634 840621295 767569036 816586563 248980207 749410128 999201599 578767660 119456727 647138748 419500013 76161125 617511569 979714572 883660556 798255822 734031820 124180215 311191809 843225287 741335041 695588476 678855713 209108623 881868458 562507798 701190257 134574837 584686150 57395326 653405185 720923129 281616898 146158416 258811455 577058105 816544723 101919268 165521306 609619658 925151337 637871389 338443859 206391660 954131434 310396611 216102048 852036475 990380575 537036277 970772317 214136291 641267317 525037148 1712372 538160533 65758373 794854616 920663436 847389427 551948054 641082814 517530355 971437683 271981890 307970604 539405533 511460015 559220904 565990794 332731803 303877126 996558235 664830510 340290498 437842947 374021984 260752452 238406138 933700641 88698184 370132477 611452805 281166216 364058230 732368170 931657715 144191893 185856978 946683434 108892753 537913330 997601686 478726060 550605928 743953593 112044695 495087229 27079088 906952444 596043281 273212303 387166130 317966383 902398560 331231192 966999557 535958640 389754654 131089286 453814852 642264041 307508768 265002865 187116431 316491309 312334536 941840985 270477111 858786407 444200081 344374522 328710364 75096715 739275093 908850674 319272882 921736328 781169761 261470907 627412232 648403635 176252617 644231373 144410902 178248711 258415080 851972808 720412043 802335026 918300992 26552353 27810814 566831572 796340750 241107981 232183079 781629986 635112665 209367224 783794270 761533017 464680568 92238250 739062067 834181001 504786103 257555978 960883956 253413209 501548175 999922841 796037105 758616424 995286028 114443505 178387570 311062762 330486652 399014554 669683715 221716941 840173633 453159814 904214962 493673451 230559217 10367525 190804178 431327130 382033167 785503486 151720063 554301724 657909074 278346479 729277034 5360738 700866635 912908946 311357887 631395967 228968668 853392459 692095769 475618787 560636967 314146547 698692118 30017376 163469353 588774259 468870106 639068793 64911821 331941532 597984518 72887583 578482774 46704501 630648321 626126710 957477943 532300155 156078105 899106816 496446033 468143245 601188303 75162675 57455694 756089679 619203065 234375866 103579476 785310759 744815076 820097689 328710351 545457237 800441888 150512204 886547076 669041418 178058990 753757174 745898992 232310546 145794306 847922345 457012103 667431689 294235178 765998779 254812738 592235983 643128943 220064603 340526466 565695796 822778150 700004389 903863181 963386107 890396998 817155818 103041075 139849309 672721650 136027799 155287960 121234706 999931097 53157857 812392635 234261303 152050086 15635326 638591553 695488461 423976138 8993414 28659293 947865929 255872561 91906099 779545955 453472526 691466853 574678347 436583949 170564813 167726555 613634284 773529768 752941962 960298961 732816350 851715492 597591505 338845939 185809625 590609069 709379104 635768290 623116803 887821872 517377192 753222128 483854295 350617677 202164705 48820198 493257542 121405569 408882047 759731847 213927949 928227202 598869972 817051758 790858106 679604623 895688516 426690139 507412758 614533193 467604078 523427276 647687355 64706940 58321395 167657684 609523399 83599971 487707096 73277492 801166750 203301722 272845943 531994898 110093494 885501193 256018288 489577442 601879777 291443419 576291878 101240432 334522906 858711040 355786657 396713784 891362324 892879835 527439628 230045738 146763547 732370264 475078149 94700101 578500424 262816614 274751878 246517795 879940701 631772378 162768806 399216081 88296666 224842212 552171832 560272235 656702801 694305686 551266963 447744993 328196113 35529479 164953171 963544841 145935835 565816352 321225725 401284962 787522417 442639581 793682472 857047510 71791500 588296359 611556497 782645784 437694870 13736123 73729546 929868144 348108309 844047623 388997924 345639487 895574316 182582082 126409587 100909389 955132084 696529870 405124112 452858305 959259564 824315010 747995232 807699248 644100799 55650303 878131402 805885011 297019622 947825911 974851149 999105326 802113777 656578675 548032105 480933378 173176091 34490970 535311475 479894759 273883512 877686269 696347704 341451232 56454583 645931615 660884564 753430769 420110566 547923682 867038028 630320148 189107490 148271174 170739260 50735874 872118008 122781679 983809541 271587581 890432478 135778860 518386806 58645449 482903483 731286688 44520374 481271599 564980686 670067483 220143475 166839248 36698950 467446780 196063534 249298401 92488074 237839412 219421244 491058334 156382299 722459042 551344691 643842742 619899091 92232518 353469353 100317791 393579305 945492137 779123931 555266111 922439575 693893748 363976833 351234847 636198171 499741698 831825743 621308805 166668690 250327605 325595640 304706108 870489686 126823570 92388536 126663821 252152667 254989862 564501604 481588021 434694062 419171659 310609015 629334625 611072845 162319200 909836442 345556874 480215037 219322195 983585444 275933637 6805122 213471410 328245949 158647833 704087790 177229472 591915770 853719520 342830270 217127832 988087584 558317510 896740544 774514573 285196244 124622802 279434805 217600917 767109794 206791020 658301347 173433642 773825281 418679109 364675635 737371396 492742416 47939774 321982536 67820686 775020341 126731079 696404007 252773841 914104726 375061597 181162975 970927930 734434549 616831305 168133661 571422856 626813438 8198448 885446763 311186171 838130610 716413545 312567099 293887094 972460741 941918603 355589518 307977111 140520747 823226371 707132831 847600079 139676983 278875131 168790486 124149185 48249238 760684327 104839467 491385284 309063092 36796368 956218066 197749243 295173702 40065096 960045665 140550245 846964909 471317657 681828392 905855778 227408625 132109778 969298910 498315631 182807328 891608487 677133736 862368631 296631175 73345245 81445338 316019651 626066298 398433898 83952589 747125642 101279220 188918853 330711754 60578555 54802661 105105754 727950945 167235227 945792868 829136253 497551437 673134554 765488504 834675160 642507491 857981381 263377328 61582297 481836872 53006304 227295604 213018606 906294770 146366664 3108372 616965444 903968381 768530807 475524710 413795757 87330583 614345828 987130723 278023693 186319648 145826350 832451463 415550828 677729339 413151650 825403318 243895260 512354282 191462903 288955045 278598040 65396061 35098348 105769439 158741775 725499119 156489785 116621405 397995866 932664159 228244659 310532273 490688693 139481262 318866899 661017657 149662031 684417012 639231740 789731432 835917011 852600114 833586448 15839184 865684790 97114673 391010380 438233921 37118464 16250202 615837348 932556824 733094394 385162596 533277349 87418408 74736144 118799910 105276413 215928742 959559175 641193388 603923192 746505772 81560334 935442196 437077552 5654099 783912923 878249224 153364457 673318538 121314531 22587506 777343761 170340725 762168804 810684114 199460088 286843465 553227438 554004117 449244680 449202121 167235216 161349118 803422463 337004227 750796516 284038886 994311770 366032948 43751990 78203782 995084065 413659263 906957670 604032137 838834489 23769199 232402881 126598850 976476769 875800376 74147068 709355345 24667610 336325415 986020715 176217536 112639354 2709069 72860034 5166156 749181374 920339038 91312168 289902995 577207187 984231229 791225805 855468020 214330933 594210758 411859985 926544916 611292147 525447159 317301617 610187747 788131177 622382317 672749915 653009811 644314923 457224268 279458376 307746315 568841070 938081641 202410691 192277870 429541366 146954769 226268964 882204227 215757768 165494152 470641460 902473199 786720977 887080736 380737754 292819036 609419172 7212785 145899445 909663118 525780507 172794669 635072742 534868973 311879599 473319025 296589479 881110744 803452250 457542080 275987621 275797298 708235849 475369070 829297983 534133985 505899315 646316689 705205625 925472459 509735972 617948931 941519169 439859532 886938809 460502252 404877163 951359498 359880792 456149995 981589630 610467245 332786293 114707788 597271152 276152619 229480748 475610536 363095119 817282590 810701147 733664801 608884360 181762941 929119421 273936566 952511534 457983588 187792757 469905306 862250598 146956289 616339994 514356112 20570987 417471331 599995595 845726984 315406883 323492641 181505461 33911264 190620360 286177567 141049622 558786979 737004205 163266140 663246790 107733518 478200568 539157463 576814489 579067608 634526180 563659227 960793126 86665437 20244537 680096512 791576990 9256385 576690837 207618099 680719714 830414772 706238150 808961019 991703364 347719723 15067943 160093810 229870774 296363941 460919497 479958049 597102884 24471139 207653911 599863166 362985797 908476224 999951117 475354460 803277369 147128553 310247512 319327064 665044459 343245046 183421327 516686973 231630873 890250885 49103632 854503505 162258755 70916055 58028958 742004675 284970976 174694063 166064707 64360222 990934496 595212683 345772052 977165093 638444186 91865939 988186116 538349967 19220386 477742563 800123634 94538693 372143897 622787430 280523570 666116636 866752632 594409490 657005441 978274299 613191724 801260747 674901755 191082589 65053201 370129394 775389358 987333500 455554129 321218383 373968029 854848733 442292146 293817549 646336098 19047554 813483676 379952717 307416929 809973124 71410860 895511219 522372962 935942989 217737998 825151039 746455564 651889300 399798967 618479900 316584252 239542837 148856216 928632849 532679184 445898873 644427679 311808328 945438091 155223287 489826576 682695720 755499819 137896924 808408634 848730049 239319535 180435867 46304997 782811800 386335409 468168878 253773283 177338709 699023987 474919620 362736299 344183464 604377840 317254098 801658191 589937295 533363845 227790820 902211958 202842075 324287213 464019313 342163821 829232723 565154874 83422898 312647517 452695885 204674644 507289852 939929184 534729963 439774728 207098947 340558942 687232820 437356396 922177166 837789163 831914084 337970041 999771462 489550457 172630359 755164654 731141542 312311903 690238273 474417395 218277165 822181024 658556039 211357213 951287497 667761395 543539566 321204969 157660743 238379464 775160289 594111300 31572024 68673837 174857682 690057330 250244070 499592531 365889012 231740388 666468771 162242864 527130319 756487850 503470935 762132535 411094125 710874121 971156972 997757696 348286605 883228366 849554607 593871006 820524664 956245404 86233546 648587974 759725867 651599811 424260875 775740919 80332022 756255880 238373619 768322567 362353740 547047925 209989817 692197645 600413653 174741998 754788294 261203362 360907949 438404889 112928339 185091015 919454739 901304684 401435335 889486745 359368626 973815342 614400495 39982642 890100706 694055906 652617696 979529778 82848936 840738531 863811560 824936540 498427381 557884842 689031583 147933621 86759694 413117927 881854732 594859017 41055698 264405463 591275187 145578463 407640789 78144561 579975606 26794361 202503951 378388143 553610161 16430296 671413649 52353105 668769168 142873357 95863072 772264022 255463511 527523710 142565648 855887012 168484815 77941064 621328333 716382972 404818619 897824437 329048052 527374011 658809375 124825312 642581378 347847200 399634732 636041588 646591596 534298506 233695849 540451137 700891021 275395857 765160941 270206376 953560974 178622740 263545849 355032455 980645684 532007486 438903038 180075252 210519834 915521456 972593444 577556823 468727279 629869216 332601435 614118492 264618505 563151733 520489263 981731218 66108589 687864982 423934024 31558956 813766411 606374014 131577533 947578558 976409920 90336447 861602803 276134505 774763952 295467986 455193696 911925307 828660942 194263752 200259173 469589847 902818944 361014588 264128843 487660012 569100246 192671079 470874268 647919891 417482342 41129415 61534671 221224438 73579494 454667173 416921164 69188005 308363399 216392058 846574531 447207084 911832517 950025392 755629262 788265927 960953069 635141491 960464263 930735404 58156201 769939632 910252675 549757462 30798768 31925781 170876612 706611438 965352354 532449047 524132903 738167087 43166013 945283368 189856150 177995822 300776766 396534917 761163681 544317207 897277664 714857861 744463551 26808236 780273294 322485260 280878022 944551027 167779961 494507399 409260630 320433575 300395072 646749674 571861471 349897697 9320236 713296298 936920260 937778043 761990727 79014393 453439791 307201533 833466454 910036235 383782201 21777463 480840712 423123260 408626486 377702703 928919759 965008472 352621150 50154061 403838347 860991163 743165228 464715292 436326790 887991080 564612796 193249532 122926215 250006849 35730003 126299917 314792318 936565803 31912553 463206258 513073070 252967398 772306572 893605665 901695978 655134469 205497559 722987272 196089173 841682282 864460161 721736722 747970315 151471232 714813427 504314501 31852357 14436388 113094948 482405767 998760678 167784833 737710079 857095885 369834949 774233972 303668531 261919759 917298087 532799720 466301404 75338282 976850648 347133898 521581568 811371728 950638439 286645336 74962624 33591565 868398273 34454015 914503204 945182578 866596934 944398492 610528676 168144423 127348225 685312138 362894340 614994747 972100419 626131152 106098960 147748816 725069982 113339134 199240634 471538635 316664632 651147272 16747550 741912755 316700161 232817387 795785650 117884108 305092023 830820074 124546362 998859885 588417966 252299417 497534510 204307374 438238788 440379715 807696296 95166157 99043285 469878324 852669555 270039919 620986150 184434613 708614279 954452149 492127485 263000891 186557271 123550101 306666795 710732074 767561642 361670713 1754585 420814601 710713631 689991398 234577056 687449256 498264576 435374896 578817864 952893283 671444981 290392948 170233025 448564748 233137012 871420454 519165879 797563257 816011085 130421578 221511373 930388341 870713319 54913031 616147244 64222693 639580616 716935806 310978858 558893079 987615778 882306567 218442901 767529780 44445675 270264377 654378731 68633558 901998565 885543900 962181640 230565336 126254952 425592965 367822354 659423740 434261331 412802746 305318140 148080949 808678519 301519867 948778239 408255117 637578484 805469645 516719731 749532694 290954244 492610842 70799815 947116765 144551913 396837537 851890964 187531019 489087397 941854224 339922465 502079570 102927484 691086285 20869615 741763711 585737238 739695465 581462589 235017466 402277311 441862568 703002402 947926577 438663278 701187866 630121485 721158946 84152487 176799835 787892443 879075311 528301174 554848729 217929408 397855662 932567456 969746932 353170386 304232721 484170523 397147132 935459437 691579017 853306712 172464672 639224442 271689444 221969901 768148809 311816581 198552186 968642128 390431383 894903526 703528153 705486493 42850321 560705916 523498365 316340076 803560153 922144226 422886514 744879278 479269513 709275264 98101151 392609047 315202552 456025719 932455309 421779037 917695808 350511787 98917256 355714250 896519254 725211486 138922042 213384857 76650081 884862348 635209592 669572181 864333056 8670049 113167727 525929682 498456159 878318466 132732675 933126448 631091120 775652131 805747025 440661458 691239587 851524724 197357908 259814908 270365142 288222845 424771942 551908215 759211519 243130747 637844231 459913661 993970084 868790695 536163883 851460590 393916307 218057881 654388253 850166175 296525368 765619560 576941802 521402680 603746307 658206791 372789591 98041225 445084034 681871394 491943359 122656934 591462670 692590236 370844080 760479662 693234058 27054729 280083160 319602356 141744960 601123439 903474350 730152809 219800179 559859289 109942547 157308478 148146313 951067875 799673435 333732143 33600537 573120516 579127223 61315622 401069188 321658836 214336538 139645423 101365989 673732436 706163522 440234210 925372623 156605962 337959294 540314006 555778079 414082580 308272302 837548100 863552140 676846842 788391527 130197773 902390435 187476680 254458282 443601419 927865132 775577655 417958463 938506649 156562537 188254256 31850394 498748060 149625920 483873912 527652638 228000993 505449839 630705498 384639996 172370039 64632377 310047093 258989768 696766814 654720641 56678396 259218483 320916933 342097458 627989956 141367332 562664738 931487759 441009022 690701193 271231440 182695772 744875479 307281468 213097705 746840066 413400354 497366007 79899398 169054592 184378304 67559205 558733267 463535126 742155356 42151320 182548294 187520496 913988522 124897645 440977528 683156857 117409378 420553548 449597862 850332183 916517678 971992888 936364247 543879871 927830928 113439823 374489282 668579960 574566169 634512425 621771196 989578701 949372521 400783419 844948809 29797487 584717644 358316349 656849816 65743929 824803755 125866616 114401642 354006095 971313220 691377820 194968097 509471766 132048230 811227461 898277862 900470264 214794746 570051965 461330422 171675993 370281259 139555818 77416121 306084269 908936987 486092508 571032150 839562462 835799040 827678137 153316394 249283854 459130900 50505728 427621659 97808918 792460601 357090655 475487846 947547494 329247219 846122894 135332589 632759642 310598240 992227066 959824772 810372091 987789230 73842106 320212276 633687407 828390817 934085717 643578561 995764688 921746746 334920552 196982204 248091015 548839527 769687340 606206386 408912909 245508410 61859908 973184984 731094044 304553276 630816610 615227574 575717568 828540438 542599118 937104815 277806187 560899360 660690005 934937689 908112256 65942115 155678705 281536234 155212253 168781271 112880681 342996933 143816571 85900649 158014172 700629737 486369396 215652272 453116625 127762176 265623445 320421007 92306235 729773274 332576904 972010622 247495151 665765934 372868924 712597108 927933041 291956293 599557536 981702372 940024628 284991259 658675406 329630806 921068022 850572943 588066034 260547722 456969334 441798206 544648584 167734548 871025220 575414058 256626029 376568452 215812287 572741537 966592625 246070100 887104289 799601879 274818948 815039478 885097119 196929516 371227576 571563162 658537392 106515548 231439 694524880 303971867 872829538 305647416 286486296 546716589 166019430 983647154 936651667 558581485 133992937 578423263 648885526 246583593 243485959 749350717 861388930 182399408 878443586 513981120 222135811 202612310 148772158 6628770 562246768 778305595 976490601 209408302 767636407 989927247 903414306 37735091 482880417 890159224 104580029 270961424 638626253 385295808 98910102 368235670 668360817 970405502 802843753 578840833 566634580 358621264 705625973 981103484 970964510 207794770 193221461 617661941 586491083 566487227 676933724 391107501 36286518 932815013 249510767 103197549 906177144 495876040 317030208 794384378 264022518 301803967 566226579 58933507 272321645 718412188 165016154 484389715 105065711 406233280 894376598 131662737 20817870 719260816 971277605 448653504 884761006 26488986 807168982 820165019 411182988 599435675 113212969 455635909 620032763 271108279 229104693 262560646 536841403 272727108 105879864 845020050 654740073 433169374 357080709 312267230 290196539 323075671 903375845 809594485 66170284 643495141 832083778 360748992 481666748 908957763 791642750 107230795 622854879 464894445 418550571 369683088 735524565 106342285 491831730 213376325 208891351 394981538 374914750 739396144 858644091 369883162 568569479 805900332 925064347 350738169 264410675 525929214 450241363 333036829 554960109 154088470 775416733 180673234 270135755 456452805 810098300 259134308 863661959 242279033 243376623 282358591 908508858 277901889 505900746 285773463 284219479 96133439 101806985 801951910 587496852 201629706 362822054 220675179 469652785 455942490 226517694 142641191 600929914 413180820 565850024 75981455 438942559 300207656 102061498 191316793 888827507 591625918 29431770 726622305 774095659 261662422 684472382 216572306 430604937 257272049 110189402 494390447 983262273 373294410 207139702 180511857 859269705 414925990 256742934 988781394 724944665 782524232 231665699 503104530 397992804 473549077 103211973 125787005 58217808 11829430 834886241 879472582 125038468 851022303 520611646 298348410 9064359 240928295 306665906 346864417 303144456 983724548 917442821 303679914 801140032 288308899 10551959 90373624 586268999 332692831 600472783 585841186 128788209 385662354 966812307 449505937 683215369 133294805 591895701 44560816 761020575 317326751 404415910 163714860 37567699 82715842 140887993 862252467 620130108 729438463 174454027 389724863 88582964 337375044 638552241 618329891 18636476 542166119 415364912 524563871 204289515 109880308 105553729 713919270 573556299 617684023 592609581 324542056 444434331 504150670 437744187 956241502 593917648 369478958 376830612 485322188 277881993 521206957 567002906 221562670 924728280 836564233 204591569 816424159 643170673 384107135 827549632 102408467 228420025 953653153 795405163 509032021 997455983 468201781 750827040 473311981 236587810 654644863 415108526 119380496 626137472 648339064 560683264 594966505 524751287 958720944 169016818 762560843 691155190 572047675 177480677 568485497 360117985 860847714 660610026 34987969 564237828 45068951 645939522 112981813 539560226 656133116 820620651 426321354 814346267 807503064 132540144 691398760 791719633 473053281 911209052 791479204 902158210 775781277 871164291 343258972 831744013 699935519 995186026 700817350 38567965 407203642 884263125 59007359 408811681 280105420 742001382 233156930 62408301 479986786 271397979 972642272 474263360 360394486 869517064 663374711 119898711 197632913 994237409 655364978 69466353 890120298 733717755 521616204 850445168 569645239 28345762 662111030 224379537 659250793 454944567 456726845 924007858 692096620 211556468 370400357 354089424 60472533 419653933 288529147 220067834 829514903 332486155 265836959 740181243 266302319 587261881 80643857 775969540 707369801 389193413 885821701 602742895 395417067 332285968 788540023 632308029 372463126 992001768 317748002 617032939 844509267 6623735 303056899 523340380 652937340 68342051 692230334 504085981 662145725 257966009 843110315 472336707 562538924 883509831 667852137 623044023 349623642 422747857 474215459 514734000 724913125 98404857 490568526 281966853 966775819 710209000 345216157 592358218 623340824 943161425 925116883 497263108 708755858 700450526 803472789 433562957 702079797 154155883 57820302 597507673 346876481 181620911 564212049 471710077 22856144 416735755 890881094 915656938 159118911 495916458 996041162 261789843 285724022 343055944 1995236 273180539 183127506 3027368 131248264 142148763 172899557 718072061 490847420 755082535 283768528 337232535 265397181 874471468 430034515 494220547 601891549 248901867 914165570 622776567 607761564 661164001 221481783 576788375 466318584 281355725 639019590 426141494 40479390 737083738 700851540 5416583 93957363 871678607 190690818 727132370 292482954 409541913 6667319 272410235 135855472 113653495 254321904 866822111 73142896 478686915 766594058 592992980 349387019 11689902 710046287 854471211 655623475 583111737 600366174 218361009 471334792 755857450 617589435 50653128 656164050 938228182 963130175 433106599 569728257 166361558 380667389 976078579 326408717 711309053 556378095 268394175 190956141 965792371 753379086 290114859 20357322 923774345 258475509 56476337 762069584 37052201 140306882 831020526 957400653 928615920 926921562 444466179 424598509 646316456 560543433 339820968 553725906 713557191 435468846 695184089 698266682 348943254 83429832 396496910 77218354 954905990 680819527 518957623 223485957 222628007 40744834 198267313 819671014 560008134 967739720 512648062 893334867 677048295 108603714 871495196 943408225 983753578 507619985 416020796 763707998 348364475 508351108 774494069 245007955 248421226 906138042 909938779 75129251 842498435 70805092 128054204 59258725 586099279 456765414 130979366 934914592 418368679 77188096 228862890 467424691 560930042 355433937 270288880 432562223 385579143 550444889 206147464 396464046 24319839 134563622 111419227 888269803 390043926 359316534 790249143 1828152 94944196 602609570 367273730 613407532 617631608 623005817 786765572 961443635 95145830 426062882 61471468 193854476 981712276 668572881 275335432 232489122 998668656 545821910 784712690 443697215 286461153 274068775 366114281 566741234 966726734 253485580 345396262 192042245 905998508 276164886 963765165 322211510 743093638 255428390 637172373 341624524 221265510 484823617 395669317 663276689 740306263 563634456 378842931 504280327 226799078 858939864 96632075 38444541 127006352 89011675 451744285 571309185 487435290 604954355 433509515 209807090 744380727 336026904 654365107 372574330 933269434 106819272 963015584 483262670 899055042 745836541 842113788 728358959 776253992 779423731 220598635 395228649 645261460 568488542 418791755 931171295 601162575 274542457 352339201 685389487 477553434 240195347 251266709 82014291 569181281 992732296 39754825 411860365 476370513 652818298 738827940 488338006 628725100 378972014 634812946 739564592 201027570 486596814 978923428 469218132 993081269 487781135 304633060 470529385 82056378 746606193 665482109 617648392 375001818 632603012 590519718 207714117 619451052 331470192 596651157 850863345 773198624 23510576 271182683 69718318 580527376 84722672 422587122 760986285 592339046 787853053 850006163 247669412 499396596 600870229 179718540 653324717 686721988 506039570 676233016 136532820 870019951 504374634 638386364 376464214 848657787 340691500 260571577 363543398 953470505 461126281 633078585 179317256 179059275 32699349 837095523 33310193 555920834 448600226 845494723 282482290 303396025 642718723 378464168 682432586 833301306 834970994 827903089 490678305 922854556 931074837 579381735 809009163 688696304 671458716 725756535 218132315 732537185 371413945 662953174 373456967 177158263 546634802 553473051 1143560 320108331 42057404 392245584 911900457 242230421 187795430 379413986 589847011 114749673 732416029 399294221 75515833 992764494 196633216 797445138 169452705 307948906 570603524 986973974 902564933 486680991 951439390 776755223 962960806 41840295 853203612 777326916 186660235 675320502 730747783 397790466 669535393 100336968 133389100 504280883 862978840 853742073 946252776 760515349 363767621 308342327 208572019 254846862 651932812 260247190 164335174 611379321 292684257 452305242 486708067 9462831 556293387 823221073 242548661 831646443 300587062 729444962 67313157 209992212 45446225 158993309 4554891 792982484 608990385 919077365 886580439 6109386 503435580 701231418 495391159 726731095 756124769 140348914 369932244 530262331 272381422 16219212 765389808 431323572 586506563 714388084 559483046 586836641 894293368 764333730 901955917 398200444 354376186 996219488 350956351 163979837 74039492 493255776 18989868 857332828 366642850 340907729 998545079 412763885 611763786 51733409 199335476 274618382 454235755 550621613 33134910 621641385 109520037 942894820 23473390 840069883 363503307 539811771 117484299 669523926 750027879 564054511 606601102 754589936 954135327 139032792 687054748 278656584 152189555 365237202 818872315 81470675 853441560 255604990 377621209 914787248 580308485 294970944 615046695 510850797 130347061 681049021 888597372 767707916 155644620 491806513 175196499 899956595 181719251 812781824 501849733 153301701 804916384 98551376 641464744 682740449 523664605 774007600 656728012 795948198 676986769 326709745 278205301 524396353 479076635 739357798 505694644 539266318 407707257 655588846 448140048 245540815 161353586 682608532 861899878 539620211 836713673 293746221 48324153 895962045 322479678 506043786 473919709 682514891 841812744 604423674 961988146 171983213 58498754 191717446 551256191 146403073 269070254 146656371 585847688 961184862 905715485 54902483 454982542 716412447 601524934 397287821 186665033 391224829 663707904 833661789 305956094 347942046 184761672 263984621 125180090 522247796 769305150 344277842 377341305 730848512 488489815 908417837 997604484 924537306 804603364 272517467 866968697 216859745 321898252 932574183 459505416 182960002 559202312 381048389 69746339 574340120 526120147 535872867 5094477 102593376 304419782 967612963 87342985 308799092 447458150 388677156 543902556 688253104 472042083 775298699 680935128 102958097 522808277 52474322 48342636 644314766 223194332 630852480 152791089 740889452 281088609 617651190 449542853 861873522 941214294 942832144 402506063 666084012 717165869 473594478 692414629 532103860 185746301 866322632 84637419 173710173 575492995 34743631 969508782 98120537 668609283 515565636 214673032 237307641 486981189 431938445 589491763 913084729 35725833 107794573 352618053 167787988 843896770 222875353 738550537 78585528 147996176 651594316 879044955 564322849 334352237 433903839 24293283 494080571 393059759 897356826 20435707 163074659 814937919 669320578 847543645 264039247 908623226 406163929 466944984 776760150 183923315 105887810 54936302 697963968 771033213 764125632 253703507 121150317 176512830 285713051 58421871 276344368 280937749 167486835 322229767 776095696 862719430 689641985 12749507 221584974 316015026 120952562 621470552 454091490 921870129 996319970 759307551 402917743 783643593 185066074 667427573 384212137 328129292 311960060 105323401 171704149 732524014 408154510 759561967 418930763 524617788 513986354 697915346 784711746 66005740 476967737 701809951 597971264 4874869 695427957 337872295 163567588 336789274 214701272 292117354 103677661 701198588 386228014 891478105 306886664 826947408 394273825 926394122 539828977 566639822 669636423 131530131 152979635 228602387 335948881 113453476 695715880 296717868 449666317 36926405 130291751 996508828 812319956 219039990 845136191 454232809 12477455 912950671 134012059 611850766 259897663 607749136 745754687 161333734 798520076 841496261 543980706 7848372 925676098 36925955 581005622 400644167 533715266 949976570 309278007 110982470 709873794 108478387 383368998 477334799 621470291 422775883 70457817 116534021 823305046 848270512 89008780 737747737 476716807 405620175 700660151 705627211 219325183 528942462 988940129 587383535 821558003 739454558 968067806 389678854 128733616 14551014 629363508 368827029 257155507 525167640 193290931 581687317 190406182 988805127 154158855 119720511 740020994 286825206 762028999 14174593 407890996 485468628 538843141 642439007 707922103 428832677 21330889 540246002 708684258 11975595 163555071 494201259 630883612 868253138 704399097 297724072 564533653 218197457 657844007 133658654 945160325 542538036 118761641 286108956 589990522 28394246 945245117 930720357 649551217 873227775 770926489 478338764 642346686 381069561 243927045 757466246 728364675 415982225 551029062 319913187 38806073 25803912 990582265 33016870 648393141 377761717 807582585 103308262 65505011 804292064 347282005 664911030 746456346 929085608 481385641 858648732 81955968 67418242 830383408 599916743 36957323 521495827 538174890 473545658 536653840 197484957 493266758 890727415 584373418 72524180 491099048 413416673 109976747 776800122 193320266 142733307 846066840 149165737 151600750 629622795 564378812 167554335 739724617 497760004 848844934 933790707 707903929 725596615 310656600 501525889 190370914 711322784 405141855 545510001 394255137 929711026 349822935 840680088 546578800 549491107 580862887 238052058 168842789 449443542 219375458 194067806 899389477 994443269 411510382 573931697 374459744 201867903 130398261 237576837 304592139 312274626 498873139 910799766 942370325 44385142 316283533 649811058 19559147 59712747 123235624 332005812 101095335 816788019 227703373 828125345 581782 188203288 528464833 389255971 923356942 146265152 610814700 29270293 96209120 224159463 797680609 295548417 903512167 595883545 437251139 140615761 906123245 881397528 322580637 124562169 247225808 851020168 954464430 114693725 186306580 278052036 361942664 376650767 153458368 465684501 494954790 906302602 290675543 248593502 116317916 110036679 105606475 881129856 646814334 462419985 835853372 933425871 201288724 847955423 672591202 919213933 755528436 608659705 933997260 326145171 291616437 189184558 513014910 52979330 929518520 929746200 209956941 70939479 502408204 324981114 655701862 724432941 162956545 398414951 624121391 12952369 802467027 735785672 677150484 873082219 160845031 423095207 954552304 219001238 792455203 363560639 696561915 237649885 849293725 849311278 297841613 361899627 478224509 889198517 549506835 771756358 521701686 208719832 357693818 915709787 518804185 311845789 209163649 531451492 28434015 535108126 921799841 177775079 297906350 448172005 893725846 597708243 612611294 716379884 626889656 314601912 221228113 781492541 514326105 450784984 38496306 436622479 441869267 869790392 741719154 516282582 34222223 216018423 934130117 193961467 427432054 811279140 646996898 253322002 896411292 979841748 768797383 187621634 193581249 213236845 369104306 452902663 616702911 41902956 621046513 865444576 153643839 269582868 81245069 379928890 968816915 746911426 665937875 52386155 130873127 964457606 689408276 19563601 405106066 562041190 51636853 119416758 115974489 970684510 452774947 401906478 31915068 755684773 698038035 962194344 189192210 464694794 272265672 731325413 602203432 809680661 946659439 257167185 140522293 988104512 109676850 995389396 391659665 698918491 926400875 808142551 149853200 508298997 472369297 543288483 537749138 761520022 377130085 35954449 779746099 946824633 136141022 177010823 220407917 131691915 797343396 340137816 556285837 651488022 773604315 696371158 569132338 699787923 478863598 509063541 454745662 6499669 477569854 827519225 756875401 910215815 757851362 233357406 504889743 425638217 787984702 964063667 356120943 829985984 496992023 215125895 712037837 450442867 358994396 701045490 435134214 596264925 939354054 157809236 58331972 266494046 40271532 3411194 770807842 588461161 215553217 711142574 363758813 980273097 598654341 676232669 498254530 348590863 526986223 748922449 197135922 306195875 764741378 44696598 421937604 345598709 265442677 217219604 830774973 202006873 309323059 701056628 979346959 271427949 381962061 895580974 558012351 191155524 468661483 689026881 486337728 231876921 421761921 396642272 635722704 789271489 106675940 582554080 722092146 34318165 764121811 570188530 579219551 277954214 450341630 243015056 134819047 839511799 106188649 859934897 132191578 270156559 396933199 185823218 188923569 110808215 705654602 796377934 939241970 91342059 723297162 887470377 215378036 245640101 398267575 520410325 970830867 933016336 809630143 12525750 50831379 430889254 29476673 532815577 464190118 408215088 576855270 955410335 283093771 956736238 100062447 112464504 276916745 621456213 535557283 932077581 490894175 749124626 875025191 856496994 411176545 593642529 598404434 209725870 964968168 875111665 448039179 433848071 938440232 861046869 751841104 312050649 996347327 793921897 99932829 232904631 2403952 849405061 185828157 115309282 979810341 218675280 562134601 404185038 325084389 514300289 603822119 527506172 548855604 569650347 186231846 137626691 208313613 874424058 174549182 128286330 377346908 248190435 381147504 2576001 906817618 851649294 230300545 65467283 388437777 731302829 782864227 785131544 868617506 466291312 632974163 808698637 328363723 487327404 997581876 706638509 978562618 493047541 544223334 320953448 268434015 276243545 825072521 709278992 345564256 424272060 800205160 693285508 227614028 498890422 509078526 467560766 305477126 380935814 459352738 742156086 147622244 603475109 777577786 518080165 947582400 311295388 880884528 22322139 738702980 735084226 650992051 527687674 857303225 654672779 154115024 662282097 61232192 55278628 979582350 256038736 424225840 73915079 493847908 352476458 842413575 698168722 168087831 970395526 328693194 336353806 315291259 534191032 517524832 891830433 80084045 184948418 632575667 538778833 934909750 520336047 68295957 426614683 899754940 336995812 692957355 292255004 17424368 118841787 45280404 425471050 112587708 233384751 587133457 57717013 538999196 968773738 700168031 889187176 373302050 693307495 127742591 828961815 408456778 523860689 543455157 931280640 614044378 548520950 643573526 216318725 230496008 628958680 905324474 908382410 776005795 514023130 132114096 674894189 871683753 556784857 355750865 187513487 649783451 759703347 235572622 425816539 805436956 501595359 329070389 986354410 894485093 180213102 115266689 485353923 449069806 373277065 807752558 89045034 589675852 175464928 632095 860425485 939386192 325178806 296546028 434617595 843371709 748929073 435363479 613249030 491285417 133237048 409594181 156394273 444805177 230873042 257345289 253797752 680846901 618352470 325613172 696094673 837958262 954905004 883925356 372473348 837327688 36671588 92362891 324366708 863691535 131607815 164300031 771582542 114093306 76736355 369111145 472213892 219122177 182252666 568025261 508865633 965920779 986890493 836293569 779855405 691854888 525467001 547625149 953208025 152147514 415237915 270394845 499844208 515903834 451735554 5410503 206583923 133337122 971531780 504896969 296174089 927686078 785343897 383979987 968084888 492757803 245336746 389713607 664609081 816696956 905349446 722993897 522705468 40062714 614588934 275207344 134534088 161739163 342296360 656251088 332125724 952843999 643044766 752253129 113989124 513652730 58436509 412123277 762403720 443937668 232651025 725201212 849381737 967073186 691406217 427148148 217624431 892630422 511743457 196729288 445030031 314628145 213175832 344400969 787428425 971267204 263021132 822860611 912925891 433014115 214514620 380901653 162372828 10976887 108070750 568163925 290123655 485147587 986123477 57025397 290289048 147505651 207043328 827363244 164113694 980760449 252905280 98555429 928538167 584299614 143983211 681254726 762464511 229091495 401727098 306096643 752734889 61849347 415999450 415107418 80619123 798477872 232805504 18917182 682722852 970780276 712761475 586050805 422344277 272102600 352611353 823276432 965920882 743296161 322192629 973219732 109660629 529980436 366571481 781989518 478997623 782310669 619920314 282788858 868455174 930772801 229360536 987474308 111622709 587888498 936199797 327364113 643330237 979103562 935932301 740597009 758902163 160631587 47892722 833809601 448350455 741153418 179374306 848490462 383860546 342534403 585410432 12441367 918929880 743697158 924883752 872831406 751868087 587203734 949978661 613204963 73748796 211872415 855927787 52930799 768365491 240602664 374153834 343146309 227997127 299265984 173994106 120131043 21696974 171188667 72115375 370097241 348649699 377932250 749636234 740442667 32731237 826085363 318401429 561713713 201624193 246666686 634246363 470759262 858031669 44873763 289733998 751088646 735987122 655531071 696792378 828916167 184940517 822396996 855244866 755996467 382472834 837721395 450239350 156658756 471205121 857874048 804025378 906150583 946367233 275806787 412358996 178289092 791217306 810729659 325535170 849059318 128752475 903189848 38244052 139489957 515678209 445507827 881113736 274830591 301795809 845694136 572612754 318721636 122575721 385861718 77221427 893564511 767589479 438391616 480953781 185515326 250468161 767403996 499950398 2486158 118216587 506261411 231554575 525851517 73586602 713097456 975375959 70677046 720978721 37975679 247791710 13510163 171135283 523123971 334729959 81494601 149873209 375271077 38757640 922616060 829016903 233679539 448036955 962200273 412381207 546383976 566935201 382555162 477332983 401126178 858391319 891706047 905024867 47590741 352683732 3639234 287081984 719171009 288528278 593583432 5998346 788383799 314380928 660402401 650330161 819077558 412031373 464282123 901717778 289342639 940120007 822316602 978048231 324731353 164976002 550589790 497481714 147808002 909378732 411630828 168546489 536583830 139311559 627943638 485057477 184468467 961033851 366607195 304798002 647062887 599063436 207936732 721622905 38203943 137360303 541530390 967095188 901312216 795226881 269019109 290345861 38403802 506540188 65186697 892906504 107613799 301519614 42835890 434918297 929279546 828103324 944573170 983300007 949378968 619578725 896417157 61806682 377500617 235895706 728114052 702582616 830257055 733072727 680257475 495604761 329034274 280883095 631379396 247333884 271647296 26500934 347988221 409590050 198761930 86688919 77501267 255001254 48286519 254042769 143122925 159094131 164004135 640199686 483024930 912776424 447781419 538250362 589662885 536437189 33676458 618088632 502361814 470396712 938552442 703940767 933859392 757349280 484023659 743377169 911114620 541248149 632755832 488168635 958919383 78162735 890999511 625633934 571738423 167547163 228759797 823478542 741216636 723395022 471102715 759355377 205148682 89023732 878996972 584302531 358137077 953053724 387755203 875840049 432998928 286329086 143008425 935482622 547430112 195809072 759937267 506429713 127111027 987899983 85598706 416785778 844348652 828939455 922893780 269443596 528965846 515238246 638921164 908145163 634751975 798508680 643715 282585302 362182304 498093880 604596846 722930895 256470092 951863498 580369819 527125814 691971086 69157027 215800752 705301465 559089438 241964716 33045497 805395606 89812713 433208951 800388550 576741621 436991510 663715991 460722594 70735782 714867202 400090026 482687494 839738412 814770433 787232050 725850306 620412768 474310959 258632795 47784793 811859763 192232844 945829521 87673582 843117446 641166337 261053638 433523645 325208793 931417227 428437432 792218053 194362238 326698757 237081607 181319788 692357073 536846050 646774260 186245909 753874771 433599244 81039 899422744 209798074 490983716 801381750 866067423 329097452 789403125 209222833 459138508 24690938 556888345 159442343 167657177 833288858 627356057 176697629 354146705 336301202 613210823 270941155 931390345 83165678 837319730 598465382 488648117 720923582 969776109 447519204 698203178 898421073 125932346 203317951 840547455 407819775 81225614 305552839 293567681 483957942 582299509 140332971 744855434 69911202 862198742 898972465 454523944 28585396 502574687 948047317 789218537 270321480 559265222 841490612 564128005 585390877 471536305 281797839 563597813 738440093 907426473 598176100 962842539 969464482 203101002 537490512 198557974 296019805 674816558 323692982 913924082 582237236 829489690 332959151 836144809 786265752 561324579 902403369 417896612 33882044 753668790 655378987 142427356 561707868 267348934 787256517 665176517 15353951 955391164 961671469 408643998 570896159 3328814 135574119 515445915 275532665 850003565 392110952 761680338 841349234 362764925 336700428 908297429 888992523 587471021 177560337 183487699 68824932 847505490 879481594 566263649 308626533 551942853 624598972 124419145 592476648 760493426 432408901 804423133 607167807 111763711 165544589 662954425 236717273 964161447 214786169 239413488 984268275 62357987 208401014 464015078 655113256 631399073 739909583 360287237 131319332 3341330 916443860 253866214 582268276 41857686 874162226 754431716 783583509 920134361 210087616 985232206 413213100 208726858 761710315 260186751 4516485 386859934 702976405 552554563 739277314 275791293 315404754 781479025 612013364 434490403 507286546 792475134 471988859 762168292 17518055 96497314 946625615 877519486 175171600 608070868 94353530 387158153 414427974 843669183 788452313 920880316 957323226 385278013 287151843 758189383 73664748 332548717 687266388 89758793 752457973 340646096 336964498 664785635 629774475 272026947 415565534 227650640 851563330 144117685 336663196 276931147 280721749 623739363 456001833 617945670 920136087 860010169 810291473 394094211 967669178 307372343 226029081 839381116 706636397 887804173 541964549 406502943 909967894 706489779 831369820 612949639 351177511 675260062 134426669 737575851 756540785 97833316 101609341 99957242 623564106 542636150 507597465 54153226 311746083 855764071 73898820 976014946 388345560 349100322 560699569 676705377 115685449 113139733 805723460 204098306 156527580 816740491 160930283 918749090 536011591 620808047 452429378 782496589 566971723 769067211 594080812 259132505 782818144 997220277 478086659 974397191 48835091 934494956 40799470 65423237 28163994 184834419 1988753 209003676 429550266 818045327 29062043 117062736 137422757 369272483 93299456 673449776 38850405 324591095 98591907 435425125 573959772 391096400 103164163 157620404 901701603 243793193 397540314 998969808 279106018 850465601 538129530 447569947 978319143 451377166 172872506 830365868 623203084 531085811 143490784 140504479 661629657 298918310 111134767 242984667 988265835 594298780 401618460 88992611 939574122 265270393 418067444 881855896 581541044 807630672 493207180 112487440 825375229 619668455 213028483 571673866 373241469 276112315 116339148 161482274 839960256 265022093 81290465 233834278 426510900 333073202 570733997 600063893 434790037 928807984 539350425 901516408 558762143 133441655 484998961 68257101 352266156 20309388 290599542 570923776 148852262 871949471 776328554 783281436 982002239 886277646 671074736 295839629 342838859 176420490 444136184 306580654 125513818 539499359 876234615 933641915 192364285 767155843 306411681 399577616 499543977 208895473 575336237 265228531 32540440 202935331 830729992 663398562 41380830 697425721 968429107 263574035 280657698 205488451 469718143 629914158 785057579 135262445 117628341 355241769 732215865 228827579 246826370 427960401 169092365 215628128 928407132 97625837 433548562 769930472 295452742 73219248 784816325 221698140 873277091 765072055 30780505 936735133 96924572 506651126 637654563 973287510 916600263 534513742 796617919 739782542 795940474 804035405 948918077 779545353 913569308 491406252 924951944 515998939 275128093 614621322 507307272 75947575 520556270 628889481 751810011 925691680 584309401 557546852 415914821 86858277 594510903 658443081 2682599 773548141 899895613 869700309 519085249 76524715 967647755 512997518 103411334 195358694 384804580 923176395 252786401 975871502 804292553 284451678 243827762 221885944 788093694 380694384 461053726 895718202 161296180 793812568 880961934 359610030 906704149 146208637 242224227 141348313 478560648 609071488 49590607 690942076 801480916 83658131 784598810 171615174 471045425 633682340 302102898 297208519 254469492 40132512 463654654 465325939 761978498 30760424 258090731 653727418 951579173 993913474 533481383 571929480 571136475 55508221 752132436 174891677 200169915 853627865 270052327 561678113 216109835 769673687 702179610 601451776 802518779 427317185 470095182 319593760 576179589 409422770 961372641 707756890 530555428 703159829 430469711 456105360 311463069 487122832 857967673 98369894 707919797 169555675 989164826 178027044 243256965 287900517 188376881 919762772 925257627 681561595 530297578 983686316 410553853 744744335 217493228 458615314 494874350 888868386 8682212 695384929 114261279 875592885 547023653 96134527 186740033 648735641 402848998 221734350 358687621 730597513 385367800 257632441 333904519 658029012 129785528 865979817 492566985 489540948 500239124 863966999 897693374 25791242 287775530 462847355 745099937 768711215 731832631 94315708 636799815 323835466 987336311 574209863 926043033 407777175 744394946 74535179 323069339 296054366 718264170 486037278 876407496 951914932 220100752 762840997 405127174 706263172 264868906 419181906 171116320 576270677 727663363 349159234 942152703 546968349 979344228 338856990 657680466 514608106 353231069 667275598 517271676 63091847 266833997 757147513 659628563 585053541 722526370 388495263 330458247 571610846 334288957 168428557 749933354 689992031 451048792 252843451 740002131 822783497 695266803 271794947 384669189 117210816 878089546 221473565 630078309 393226696 50389020 497943265 942884468 558056297 526916596 23126083 621638244 893642436 756874871 697910404 69362488 370213948 208210900 305825200 795108602 886513399 667016083 982666404 751614786 417709060 769691641 799325436 506273975 95090459 420067861 463336944 999604965 699024538 835812900 61027611 622734142 934676956 616661943 285910960 503960241 305483933 526967047 964542189 520992706 842079528 617771136 660416395 606277661 382258543 963829455 91560609 491492286 469445270 592347950 320330858 260565024 838956477 53922299 111290426 697105126 724489529 546282547 931980267 483553967 121161446 815627225 767172469 978577743 477205862 814659497 417533515 557569231 742019589 24676645 781009633 245947354 151753104 613452441 779326332 964632087 990128145 382292822 295778236 609919542 324344152 654625233 452049642 683192991 682351232 886479570 913192277 852174783 800276072 419220437 167039449 919421786 311831386 35877837 490267911 402904378 229842275 568570107 459297142 517232518 683220624 711326462 163979363 323192613 670486331 125344140 438152265 442921171 222244751 884197409 1407885 200732591 353936891 888695771 370422829 589329835 753716831 404961477 375408138 808644342 20158025 767558769 644987715 677673403 138535291 644212178 44050782 648946773 499699848 909297834 291186896 55142224 34890960 670193871 274447379 539277344 144011858 757876336 36462895 706746943 969905963 808926316 580019456 179589541 787572879 476178743 918401456 676599046 136472364 226392662 814892206 871070996 5883624 432742227 246326932 2898277 608018970 229990623 822857855 573549371 582635410 544979696 482310606 4442561 224991170 684515530 441468125 293439636 830670066 710369343 489029266 779777676 796516158 585927416 88123167 665449328 650521291 490664345 331954824 60318813 263831214 21593266 696333502 759101246 261437452 671987867 911620432 360586549 407208908 271794148 251362188 207704559 331881102 159930867 658921994 387533111 267682640 470551048 287349932 191889647 929472322 898437173 236925142 219613390 777396382 883584565 668591566 176364149 878665207 152433621 642735962 193431806 793122750 140023408 588423544 555087733 270923519 32061703 154524869 815366515 421931120 823000005 143206534 532014358 125975879 475761810 495949080 222419446 894577766 577774878 669477241 138661000 320324041 771685523 870686978 967255020 94652478 946871422 337390613 978819296 601298503 95057026 727780204 389913694 807061295 757440752 264228591 327331035 750336373 951978506 319920743 713316188 907403661 426332258 500559351 715351356 490205485 2902085 328587659 297272714 340082552 730204973 775957807 652590148 114593157 978428644 879933470 645584651 391267617 384613156 745245261 530150467 53286406 825474244 186195528 982876008 990378511 475812050 883691383 2865177 871402927 333714597 657478301 207671929 410582074 735646781 481350190 2488826 731530702 670459451 963048966 909308956 28823447 605207057 886458751 970191525 469698830 752430676 390013445 28596709 526835623 728874441 681454270 596137612 818145033 706450751 453948176 538827973 667193160 797241276 838189202 304229181 962629986 774897523 408808592 120372288 475204435 563599 966548077 581121168 502295214 506784928 575765576 203643007 730362774 701204434 196389070 605713612 189373917 749258944 222560023 739450659 244639773 843119406 179963513 66902916 671976952 683545927 171103204 13360439 706881091 516265890 141166759 778642884 466048682 201344274 802586644 521571063 24256506 813511328 433372221 261218379 307915011 510514296 198212527 116469375 43925399 775686356 700463088 440577703 13424386 25571520 432827725 833006044 851286306 92488737 543602695 107615863 15064051 49309601 863126086 575601676 669237722 221879119 701945403 629607313 420877804 464913503 592874478 514750758 961544125 875711419 549007259 640416256 414438217 444150998 189670337 472038733 255697120 878833627 783267315 194230974 366559768 763921427 232197284 981104121 638481302 782257082 655285963 433899785 474274748 138883901 3706738 40570257 522650631 154177176 872347657 198773243 357417081 518285078 812616130 925865185 131501927 327623211 990931437 376932963 319063144 125442293 69662988 849014988 250432439 298408998 895996069 758400630 245528773 505452478 333442273 88246180 23552703 908614218 377686476 850750007 816776213 27735822 521386211 444235929 651749486 410959184 695275365 316112050 898451386 206943070 267656543 64174717 767189183 709759079 501278613 455136464 938740146 633007040 645249308 895359311 280714118 505762075 947934204 248257464 373063522 691573032 771970436 81401048 335947931 185468379 789801952 430878839 261222715 398504072 888151836 681013419 419543357 937821573 242705190 328710237 90504969 847565332 73047048 383740132 365671198 285772658 784194959 327681273 320321675 484425862 250523714 728521713 976235796 76729128 258792448 350660628 562430390 907366198 933278312 435589697 438560400 373112171 808843129 632079539 637244677 301125598 265115454 414453469 324879942 308504751 896278365 585658869 914797217 513114072 188291287 847983141 393456033 563033900 327028326 981588339 724154817 610502915 481540206 269136614 895509823 987427625 455449186 638492407 854415730 919582465 835742189 119298427 701867041 999053297 383879170 588859505 747732456 493040187 451909097 396796050 770405976 96659126 733392098 443964322 319547178 266956382 708244934 526986789 900430791 502272608 73083986 565505775 613114573 626645327 626200028 110126623 898990581 993314347 438445226 571514071 416327477 135644564 175521491 450728307 474977245 453896329 737562414 969980418 293755903 769029991 796943364 368854000 572763208 471601967 835131598 961428624 923518471 626984817 140193502 357807535 223352480 810656310 716931523 609275335 980537648 718649306 112431602 383085778 439792199 678148188 803691834 352620766 670843309 154131237 576491181 795598215 710108699 994179739 633181155 715767615 79684196 896004971 741611321 934262646 300710857 860207605 405169816 530428181 917209890 211119942 588525587 128442373 43226342 165857498 736968286 395833754 15044862 780130138 90504168 518652391 258950510 391058466 462736147 138453722 482562174 767279275 200486211 257310060 282549433 18999825 81108518 160617615 735059514 47705973 584386042 395512116 990782643 923778849 857117347 603894345 807569869 720831825 487956173 682457661 835950460 749722725 783594521 278066659 327527392 755714686 517668773 613650633 739529265 209596681 315005569 669934237 7677749 878334900 837554690 286942760 226970182 517006744 612221050 426296741 241115364 80430748 881110895 708056411 228392403 39365174 60368917 267025319 424646616 588851199 130225586 224699660 675212380 865779937 440800315 657889840 899900969 463146928 917137911 388257558 700485183 818527367 494740042 326848355 720671551 337910931 328330868 4944387 93879918 11689153 790546811 549100397 759050667 876209892 77479711 326774686 101044769 246278895 532184156 904375994 829206549 805309237 326416039 136396817 809183833 494624332 198213713 636202954 552232224 95781887 663107367 780896484 557859923 257553011 49764252 331150999 334211063 307457364 358383708 127333420 445687823 646852966 829005451 125788704 665617633 325343661 515803997 647118977 737441888 816657866 967166872 967961507 84774381 447437724 386125082 629388005 447283586 747465534 504073352 184802883 841307509 131882502 213415295 735065209 928033448 79801350 642457944 517491630 306113197 364912397 147538931 35055340 854462290 82119650 166894416 23120818 847993556 533108313 666502710 950996932 769308083 630174820 939320553 502533199 214517557 663266448 993509440 135568616 457008462 756092717 719162356 664465332 988784798 586546205 65272607 840985329 118505386 237656036 604833207 206677232 110960745 220793655 423480131 957113456 225860033 292314358 297188236 176564224 558388680 630613817 730096153 282951544 616678989 761788374 716313484 612597988 482568461 284824617 935115126 642774304 430099803 985704580 735952062 332985075 399109528 190024286 777526821 697050640 300087536 861382667 649209626 492662836 223628626 67391803 830669226 311259865 142559185 503191626 966388189 730787641 606640163 437172676 604282350 409338010 846431038 11951593 208192888 184029583 166073091 378756504 718446122 756835883 524676907 626748637 266346069 927939900 621516199 420811044 380762117 752205136 12464968 368510561 419313502 647072035 175825483 855277933 319450056 590847992 616067791 182314258 949820872 179780693 702130905 674152953 402000922 597350304 773473972 387356055 156089335 622454457 40206174 895378361 653981651 935123110 455285271 386304591 513096371 98366347 570968031 271818940 840805170 272277199 156188509 625823917 941212388 527455620 414720424 376427383 93289079 51323972 60577781 610559051 448285324 921727209 930212647 741746159 261771649 924790882 138681730 735644400 118451288 656946065 8425792 237004742 469354541 325877825 147468469 639263630 50389256 724542405 592996055 803502840 209515780 855754874 793551285 617538032 526920708 149093736 424151327 988308824 646145926 602676808 481637516 136088892 952817261 589161575 328266052 10470537 651638038 685374175 2048564 705358187 212594025 974323144 278839160 840739853 931690104 92601166 214128963 175401824 668524463 342071654 108903807 594305942 336351606 403042863 789107667 170997246 929011171 850453104 902513043 457131708 806976868 330763483 127449980 698897603 317979934 700546351 839824636 599527643 313053065 236045097 666751968 618507024 267966985 486743483 825621222 507441792 227602615 770372526 740959024 836156401 31649692 947905000 153360276 836178302 25590974 605933439 224940897 390817610 449483233 49375165 206459807 466885006 639892066 96484236 183719807 517909804 516154707 967473709 101812201 588093763 421381826 34893718 229145345 880037126 276136051 613910670 126883219 54169591 133826657 75138954 759926476 160931821 314715552 916399965 640020204 899011426 639719927 147875214 625582932 597905910 642918119 738185022 788099835 566331059 174785015 898224860 542437337 901792634 51500810 717053064 779963831 858760760 732771251 857230997 805373027 969762974 255701323 84162654 274541385 700398123 298595373 774742872 296150958 53186738 97187242 204228923 700581016 382035873 17370100 876749331 772715905 402493197 288724814 564547739 438015415 946420365 416679508 137430307 844854690 401365556 579112788 673638190 231042317 94517501 751309619 294289977 275214650 451611976 441579049 574461000 162973345 875896630 402115002 244957149 845540070 555048537 765934559 490756031 409461445 592447043 24777036 401928105 805360957 459052710 559802114 54776283 436947551 337810038 811296108 356967679 887754270 935438437 775548690 820477281 565537699 888564251 493030634 808923437 781904116 801122953 37005114 998594530 366505099 877880589 48428922 29141432 421996776 969409677 160872123 62310826 432474295 215728805 366683415 829454738 906368357 60422798 282268135 83383616 985962277 615359413 932656687 206726255 844531937 325555318 121241320 34915517 491244323 944354669 786432809 405637984 449093129 939168635 892411924 130364181 693637853 412923998 469551089 892328027 824619345 994087015 913430125 696563027 798835758 525550446 62451507 824247317 363345962 900330153 25500458 510420173 446076997 256563984 391134981 94777342 300643597 993151011 231980941 262983213 855506923 50610324 427494393 417162268 569204565 11168712 407181992 504279919 608871774 749190056 221026452 406725591 554214966 448649353 593934475 939285928 548139168 196192203 208148570 597266584 724891564 665034348 291253989 71606510 212046334 279375909 835022956 104451586 359162020 864844769 203588895 113857712 922502114 298413741 555036856 466882563 708349984 522799997 341985726 920627576 627155920 721328326 76757803 904119464 702107016 2893665 207478076 977375463 803675242 487190270 81778031 537204121 956706782 459650108 370127724 354076469 554502294 550223581 149878645 696630129 72080438 996118973 711118177 483282155 951024172 236518571 73494827 529061858 190089390 465701856 583338447 229963846 690895721 601348941 870151677 644206462 301882537 998671877 21577646 683881599 463102318 899090454 982479073 191493118 9663814 79150049 811682377 236111389 940365680 693345350 665954370 7782376 659218428 779496157 712246615 478532630 300654626 436163516 954892732 189375313 894579490 206961483 202786576 133573081 731110758 599457995 844524958 608506640 782906018 934197105 360652453 587852206 601923151 5230319 578854897 744047957 918146568 59703182 609536903 239583527 955543439 955827378 62389887 655827119 854083326 134409380 930670002 156351170 260017632 768873947 933525619 489791405 998474791 318420803 47855456 946496946 686622070 337122288 770610758 816506195 109837226 635296737 993409567 806261115 378150361 161681073 451576957 235561335 79030449 297048894 441038215 89584942 327772730 259082419 668303156 689295008 426076537 193804165 444912422 9025847 691922350 106712039 364537690 294582728 987115541 790809387 736207390 845581935 413091267 99904420 750240049 367564730 805306778 633245834 520158688 579932625 180212216 403133185 177427861 7535381 854664849 50694456 455879656 537240008 752906706 717339370 497316411 151407595 711377434 633402579 919619338 516610588 230566686 798119647 4580117 992009414 357626369 943936495 935547307 473089574 188765295 952076449 125532593 232265534 926809632 270039397 232549380 535240364 303520674 573891405 148766912 49406109 650494191 485257546 464245569 185067985 464217969 308318324 236233898 279558556 54557290 66670768 409043134 627535349 320434417 375971217 479061127 275415345 86769752 454062537 595204484 825884925 445328876 419618077 414697332 851529012 68983503 799722838 470917002 244014213 814775687 952083364 573171886 488651892 401635642 274675229 924614277 77100529 54436869 614970974 335635613 955049765 83669491 269829310 222133023 823401 476210354 599722635 675325006 630715034 690081149 281269524 129813218 876406036 96709403 312927279 197882329 316229075 979982740 216814528 298395911 207247615 649973328 220894734 171735252 78589815 941163291 502546110 838119828 969333051 824577950 811326715 615716223 648520044 812967715 17664464 875142431 785731488 937606887 333070769 675951921 215695249 118677946 530307968 388347267 815293327 740377811 24201850 668705531 222006867 376942155 107727199 49319745 306241791 686535783 338922075 822952190 330063529 890890549 541570005 858668727 327141631 52800465 802665457 652366156 316826482 350435187 195595196 963489527 409001115 18836523 398572139 343265833 104452915 28672596 885690219 907648884 267166280 878280755 554463572 910561172 368333252 744947373 74862880 808655435 657328147 712298024 241041281 741835825 382075128 508846380 509689211 265000800 259820518 863771843 71305055 563811006 728048527 118680550 538249981 462076397 334164982 322349099 218097199 908761673 920596653 860133439 77660911 524371679 617745659 761711956 623773548 792963601 26474400 515767001 387012794 235450961 772369925 766534895 945997946 358349327 714348591 124514838 174262288 358345572 862516224 432580061 151302427 673804131 656379987 577650703 905041450 808406639 614400554 44626179 229776311 884075381 857472828 829996994 449890366 593372602 71283292 434097981 705366899 266792401 710294969 424908106 784404360 60130964 491052976 209691012 173149609 274406498 404218708 92817022 906885454 622712244 37827095 626825517 961203205 205871849 465120927 416389880 958810261 59265684 635426066 365232073 466543454 519832538 151220254 7646483 169766455 583547853 338511772 215247841 564287277 149070521 888674937 997439093 347859758 714764175 62362759 697370643 242897227 705181561 667632329 86419974 963151 194438946 885015916 465181507 606524950 434482910 143377157 868660091 996433433 389388303 749244223 166545752 269874325 904556807 942075915 98951739 849726199 286549165 344731373 544298853 493755383 215324099 430674372 131765269 839807734 923277902 547064400 181784473 48131215 73113307 918949679 207660840 315938108 121826321 94258551 894797742 795033373 389697849 369415436 339775020 417201182 321299099 441025622 567935626 706730187 818754448 336129215 82523789 976418090 502009644 986313039 330763536 368971874 834602934 65634683 566409439 77644988 685264512 927032731 792081737 830160283 61082900 484179013 393819039 68193588 897084467 148166780 856571764 924138838 615787631 685878921 971102762 266136885 971722844 220893711 392503377 225819610 967207876 862098547 98986578 934115669 84847591 562836545 71624534 14301394 590160910 618344534 450384925 378869235 268897375 28629512 413710486 129886752 454889612 772259132 917622967 327851093 367827060 395074926 253689979 958198852 136156290 131772145 387287674 460673010 795475034 474786566 44276029 41826127 498862139 485593308 360738683 136226274 56861882 355289338 656113905 8660272 182033291 856406474 432383178 600914964 836663805 914283396 293147130 488246079 376411811 37771101 978679589 807564470 43317062 383337134 619421898 321448578 7673577 285477148 883591136 656027313 812849124 779446751 289236222 855154333 616129667 532361961 224417684 732154973 939879775 117292015 439613054 795703443 674124145 997454178 281143533 213051871 271358213 531891010 207642221 612484102 484580359 356713026 850979054 893422578 504921144 88611393 315649029 872470134 575416198 612984838 520559121 355472078 70261128 345852424 161421367 252066111 636782949 713342459 707434284 46266674 33395781 769658568 982121594 608012937 897269559 709045717 618031218 621171813 195866247 648457661 871116054 75766038 162040608 649574106 457472314 808502017 899206325 309078507 99825594 856746081 571852904 684686064 128500741 90102949 36462028 108461037 565819966 328089831 379156133 336486737 824299674 172070195 739939936 331260005 493889570 223141286 264328355 447793810 722765090 902450204 477111587 258935467 380646690 453698628 734770879 929784728 189456560 962778890 940303263 185604653 173190325 4503082 674324499 942369233 873371881 780891520 494347032 54804896 912009810 188300343 519182316 327643254 232201228 736529429 800401913 124841694 501146376 562712393 141733997 191370489 137509710 367466330 714658299 552078204 168660329 196556738 200088411 178750502 160246595 979455504 453636243 599028562 174989801 596153089 360606119 102874164 129657380 927635671 235421459 754993594 374671851 524108933 244390420 514085673 926984767 119684624 413081943 710107463 360074102 44712612 562359929 620407832 631857991 133934421 406774385 987958392 965401812 699621167 575052217 220709710 47620099 801771854 636533838 454067725 270798432 129843961 756783178 456187996 267273902 191040713 722129145 557404896 963516882 484573704 234339314 373707553 748017762 610059351 724513923 996803471 795792059 496943760 656310420 597194389 228993434 601152368 576065326 480979182 574820085 471147994 628091121 995196358 423472457 738746878 981987338 380170958 732800869 855032298 659120229 386971058 777923798 928609165 739640171 929988209 328941354 564086598 964238818 79951229 777030726 97628277 920751574 357839924 260658838 901773847 206751400 436078225 431302636 875917936 450748964 557260903 618822327 891350076 335930472 783493241 546218967 306256119 599586754 342302670 624575551 760365499 926046418 730196254 240853555 307005220 975623999 808700352 559800770 674328692 382718352 148131792 501530462 578493353 245465538 488900992 383277733 307471335 395606072 597324927 703128748 855733203 180869760 491446310 875940842 308855870 91968631 773231644 23342347 396326863 453966496 32602744 874389076 110204592 941447689 148222073 579213764 364101762 739289751 687906004 617101636 155395768 720921815 618748274 395982190 835629549 764023461 320129736 444944779 322377542 375600300 449568467 49278265 208641266 645905260 415787657 425381406 912368392 367068889 495795086 477309860 916471328 504614267 447337710 82589933 931844324 618544440 101088652 513911339 74997827 270470318 995232590 196306341 165508690 428033631 224951488 121549390 427634964 581963924 289102263 738267416 759987745 853333924 763899575 99846620 35301106 904485173 259734279 696387815 500184970 693422406 442926174 465278422 534204325 637253992 905835754 955464503 47611432 102393769 166073075 816408042 603911273 699214515 706196622 788799447 374658897 456325949 716463097 994752168 742289022 87097419 809269724 882942083 114416517 32785673 709983447 572565296 474295222 987924941 779021526 492917661 368066612 759629044 752766439 585316651 243008012 290483038 26475938 220408182 718859647 427446937 402492787 779104998 784622894 889138605 356805398 971604513 758681205 255692996 491850874 429288869 293116711 697025464 207801709 631411864 669739402 119924210 857516157 149593774 235907421 983645909 25362982 426307978 362171494 124423431 912972203 389873701 870776614 393166337 850542658 708961571 229779378 686601401 185489441 677327366 805389219 242536237 23752783 665960674 296720205 717008762 352198612 823274147 122156265 208444983 150504647 397041513 663740885 367817931 168276635 503665589 784327929 446636729 934388325 601753938 303413808 961817106 170229802 229834497 788322201 977856265 17829463 689382842 337797103 927365662 284639707 272652671 450506870 237675641 941204541 582359378 637812531 787170693 698086311 723184953 612770505 452238548 848211763 736849240 561761314 349792679 495941980 191347040 581007914 147458050 6253760 844477093 424796242 730424378 96132237 750626712 889182708 37496794 296010597 221602262 488431734 612279784 77920822 117774382 445963903 398148975 960686151 376027297 463354401 343886622 368107861 265757079 967114102 735913048 148283006 46009761 453434112 311678113 901059361 655420940 730140334 209171011 889880463 368431841 647842595 936627110 937198008 58484632 528142063 789629499 939119449 956872688 728882670 288694350 577227297 151991848 199607004 365183492 960561121 931556220 697973032 202499381 288088960 747689251 659655023 451351689 506053026 909755053 186709069 489530147 703739237 165190267 138095999 425205608 983430615 598704923 240645571 411172179 700419732 210315828 591918807 752506822 143490891 204419005 120960617 293249189 812988692 164130594 431237460 353651238 661039387 711682297 813842441 992413545 808591438 776379725 793135088 114627782 450149150 602307296 7888169 264875350 537507004 301339500 954503903 315118626 397773142 107603717 568309221 924563562 312524603 955106559 795639363 813438622 941145783 30559329 384334201 727032478 106875225 862840731 134775550 385384462 347582538 692457767 343902495 56476770 508095344 166639957 307210075 948253243 307947265 910977405 571361483 404494915 26343932 849135954 24355639 629240347 565886187 346926843 981311734 816666225 744153179 632083280 320462884 964409851 945866331 478437264 743569778 289306423 309219780 988237358 33420243 714049924 944002989 814197111 967020888 750969736 760218311 957244340 12261766 775484461 17021605 368210771 981344297 789579007 471257412 554044027 200629066 202207493 587474890 79599191 396733367 884948590 757685369 537829726 818832265 558702608 265594744 419535751 36158012 454523746 28364198 365414711 166170854 100754844 705115099 58044195 848062755 153983001 596148884 609732589 450028555 873837747 386785847 582266646 847816604 295446171 129066049 738468767 207405132 721200984 996728488 323181027 139557386 663174179 779704180 593108826 401154584 581415536 25602722 110397714 168348223 421057012 485779049 157734070 841660293 46969491 743421901 918306517 910630113 764018605 593202500 649364509 758099718 793399741 321244824 882548753 354271089 210584557 261549131 798016760 228721942 380663673 3785991 646574027 47054234 445164988 494466316 71443391 964222970 298252947 583676667 773970063 630979190 435936022 271615810 468024906 295186865 563882548 370477630 938273061 245431891 800376298 831209557 483654986 399800232 544064240 973585596 834491182 86851175 686463655 976914740 292835758 735743889 369813334 439327968 911817357 93782906 966624038 760153761 869188897 718081772 758302620 415866083 708556103 455905498 967639240 617717959 653832560 273083772 498775526 1701256 163382680 225365025 959344800 802233231 242324773 667325765 630280495 736459092 752300898 701196086 737704639 439168826 905494971 569025685 1102728 647767770 813142895 400741380 533746400 34811185 686682066 272646586 866699335 759951780 610971046 930966926 94586692 172028614 415564447 224714464 338810760 931896868 665837729 58738845 526738970 26112438 120710813 262330858 489383727 653536778 215928406 882780178 362638220 281430399 238443593 767288897 770849275 483536055 435711681 456037583 476238976 729027629 512875452 256390533 951431482 793038866 548440558 136368963 71838541 374247700 847208820 329047081 146885768 491345878 316372576 830575891 926404417 913134172 872868897 525225995 483199692 299537362 199191878 209214029 123619632 771008315 704678116 824639033 461092160 262467950 917994787 92750000 630383730 919538699 374170312 769500031 339074044 247768465 499611927 758424415 1753187 836205791 223290131 800039364 756697135 428232265 803649341 811742377 886458479 494429544 202497751 39569813 498092444 847661126 711205205 315751013 457465551 222963087 840947203 250960521 147221948 724131525 325185933 575870785 220578170 812245609 873147512 375934480 105216145 202206505 78396542 796545061 546084114 228966322 199580723 3565093 123902851 967418518 103598036 300149186 446527080 719257337 78873176 534832518 735361740 397141528 597101076 456524265 544352744 886310655 451171368 579612952 366342164 324411400 357385916 190926593 935279491 280133464 802197959 294887836 350604195 1628732 784098311 914263522 165687736 6372934 123190127 93857846 988769151 698186260 793508078 140021417 596102517 209652758 506117070 414965820 139832831 502406684 765753203 897048565 418228576 298133783 439383132 603227466 395476624 556228549 451372934 494554711 611222652 765851246 680957844 839581490 469102977 772967666 429772780 275629031 726548206 886724635 457904350 947009374 129128148 88541683 412164479 49331116 237314191 841168798 575407185 29349715 596805061 469614277 198243583 236747453 691066431 728618455 674614085 470542949 818320857 363700813 596215968 934118056 308603600 997736333 947207093 534059246 583226826 262977989 863774782 839895866 738123675 26746510 411035606 491591001 873473630 213968759 621986193 501764149 623662788 350814769 946132925 949685249 700848328 700349311 58871307 158801591 78829174 172940581 753571635 14939734 823273606 662081418 726780466 973138511 314567366 681154015 144769205 361254918 322039112 850438792 487432782 557242620 495337864 459001588 747712769 436130085 976465886 198926679 981670525 417981695 308819362 742811352 289921729 290864186 719995285 427944474 583085828 546017990 47110930 34835881 856260045 298086008 56325748 84671467 161962671 89862227 323368344 484412026 282092760 360505248 669542175 979716015 982516630 341414973 721116418 61849257 98601380 95752808 287219269 601672533 867935352 573762312 187756539 679735192 34712162 183393741 307145785 603105389 288305796 548927819 946855719 693293864 421684510 514959603 693715214 799545545 218068488 375554569 546478383 799921881 731475507 357451286 288942744 129482685 859018332 522526507 160361262 844045219 72212517 285985480 533462006 341151671 614570281 869078477 576376504 562879628 873454134 267198690 867088462 791375785 285744860 432729423 853869579 244729526 654610233 510066177 195101816 100137816 298401068 936899175 437735773 494566006 247038112 314156624 498152318 510345601 95453034 824905698 353042461 544415248 134062892 165100919 445606689 699258858 721476719 266710970 831859666 472014648 14615565 108329516 441802613 459307206 594641784 687896752 578606953 511628847 221593558 658801405 446202297 154434823 619762540 322236745 469460360 680448195 592611777 889504457 542934267 138306785 738086866 995380309 170370713 648971882 146730283 297475895 920959751 723834271 123742169 825143979 745645628 817507672 315333174 490519569 895471937 733383362 675624082 635811977 104960520 931325786 726085714 220886963 781022591 450678248 473662616 183471893 314256485 459866709 358707687 949431344 164296495 934674893 927515489 946733506 235258211 267740994 268992829 603738445 396258948 607804061 56350753 220752220 848701248 354346010 846803589 909513660 492306025 678303586 784475584 651688456 482518313 594357380 586550180 285984948 383138387 75457350 137429822 438456232 131814345 465932493 566866925 661825269 190501554 228713960 698275555 195603653 358629157 925767119 529955069 941881114 584994896 219107315 519491095 388462384 973931945 743325054 356452242 77560033 866568327 352889119 202546106 495430983 686143647 222588431 797157967 473608669 714648538 637895411 221585334 520495868 874528393 715502859 750429872 481349001 368023242 661506883 958481791 318451878 960596334 954137842 692942430 174393520 115207004 140578471 834909393 603708309 161319458 252024784 358530423 661064779 760383535 45063672 402176905 345953449 660012851 611531424 836791254 640754628 251861067 254602082 499246876 46066206 732694209 534479066 501355868 218337773 70639490 806021639 49573254 553015964 769791077 927846100 471279037 613528093 851169384 780398263 730597297 39848349 262063353 29862328 854096054 750948519 201398703 747926953 126206428 569200913 616439609 563786523 464436126 353362007 165712245 406927633 848615552 319498691 418004764 902693914 196321446 334084922 808653632 845879774 516166064 860380433 735791517 533952946 369517607 869167428 31254935 199310083 58643885 833407492 104890147 952343400 472014257 573565577 57641031 164786885 316272802 282904181 761593904 205792926 206825547 627377568 671765143 415075539 790387809 587598429 19059069 350889416 425448837 584326370 28716842 707608909 476812187 394348751 944722832 863404138 443139576 842446155 833705968 715739889 867984479 880830042 419760731 159944995 594182167 321450198 632507895 595044000 111474202 128513900 348241382 942700161 848116010 812904088 927059459 227100431 829997016 792026797 546731991 239740085 781553719 224942757 443983346 960010696 135101234 304941786 945142189 925049990 69618474 468417921 119887055 980111451 295781372 439118299 124149097 727326126 520798613 100184114 33451900 778487711 216908255 205039009 929983225 97764223 516065546 608017618 185665324 16383864 352701490 757744385 168752933 419258685 163494691 912579430 423945466 556943434 770828206 493712740 621892184 414864109 72647505 408157294 609705836 166550601 160025855 233334722 195531821 699172260 513742764 524469683 962264374 946681384 983318933 442002292 268442324 327220258 42742584 121023051 899393094 792642954 263507404 941441542 59250922 4320963 99032337 279527585 973392635 694721727 622179322 207819449 118592456 528743316 617228014 798957306 758066014 972990454 414758442 900794570 726276123 818415025 557777908 471256266 743423983 81790193 36862126 261541747 648056587 399414931 169592948 769507487 658420516 244581272 618426051 336018218 922820460 359015983 143834599 676938125 697049739 213232809 416344005 236217896 42339389 98230445 56896136 434431909 643152106 973948099 653895130 39473535 351977657 93826426 129348286 685066688 476115929 428604003 913426787 6205190 249154953 392163237 496931468 971033910 816129489 856297427 909663728 50061495 17488447 94072427 762326717 47594598 786666652 801087341 418617599 183895558 344603583 532556970 407610454 877964057 788601380 279832111 685147295 306937042 173296907 338372501 448343595 937156061 9961967 918689477 92910532 881900887 610332456 58154834 978456685 34412592 740373266 615070061 28342020 766012662 724966836 752866500 547392665 86844008 904704512 576868695 294231285 784425810 878914416 249039853 114764171 871026228 465611647 145008692 728338458 527620607 35683602 719065216 558808579 569953725 881792574 294304373 643916315 751403488 916147292 813703458 424495613 39732097 169883155 119279121 333641840 545899639 992244412 266253348 886868048 414142793 536691355 118555851 339169763 792636407 114034822 11770580 707612003 858614895 996157631 520959693 54198610 87995802 589429044 658321566 540083067 147590647 877384419 706757062 241186793 82311306 467085346 524742024 722107789 400923193 403278010 431561153 212316534 91865010 811150160 927528746 878886232 474851715 960787377 734811940 496100550 630861733 597722320 898384783 704778147 339766138 93195786 78070968 671072975 137584650 588734331 54049499 417581341 258784078 778906479 599796983 156457435 159591458 951469267 629528879 368082042 402057792 825118045 715934905 449488358 669707735 714573118 886998159 4885344 648142135 476459062 806925796 365837257 805126999 335008214 972546157 929456398 854478302 242961204 606598093 206936011 774228678 566015227 927156779 818165682 154047646 878627708 460810232 845825355 225626702 789623011 335381030 846612074 778140084 632257105 167134680 994715271 444277148 245872556 290274147 978594189 21483835 89152014 476057433 392785791 974201232 5806748 529078076 615466821 204411248 548969220 348811795 32300168 82006019 604702913 617838752 288770298 96785597 37059388 596191174 443915240 911758727 902968160 780778602 923044674 947415897 763372114 869895448 763660994 113810068 103134438 269774159 952671106 117545033 440334218 92993763 410403127 185708748 313022636 88490305 75992326 733188065 597583989 825264517 213839269 140643223 667376962 305217649 966288007 559963592 303968287 969593565 691758866 956337818 766088367 224855103 232646658 485340668 768830432 72503238 694285796 449282629 884024125 910090147 432507295 915839118 62594865 189911105 425935087 7868096 122280617 364855136 544399396 497080564 256889055 890393922 210235239 385861137 278465820 436892942 490214510 575414886 524073370 681142058 454401010 735476534 477942476 650220480 958935226 684379723 930032661 36933909 902509751 315908857 389820510 768944986 234475584 173095601 381649584 97829770 795615240 18916574 676131970 403159911 291291195 660895921 121716965 523444159 878558521 939963305 178162674 110108798 933888087 625354474 745843963 647612823 469577917 556646471 462766183 422845543 536433278 439994384 924912577 227317604 614539783 622572478 806714749 934177806 489639277 902008445 429836995 876419073 580136123 114584491 328853933 187351261 605166765 41177876 561117813 808363929 597430398 625310261 877538580 708341253 950014637 492816401 475615630 56623546 307129888 729608037 954425671 491292241 560777359 440867109 105162895 188296391 228866175 779421468 982966963 833454912 719162815 524629015 559933666 460280872 230427951 980261375 421589586 150228787 999349737 751766091 100537308 729944711 279958371 990534584 585808225 193868230 160440710 602930112 82640870 805950704 601215092 2016239 460254923 732781940 553669725 213277074 59946892 261071109 856948348 430818741 349907952 768029448 609554351 562498289 716169617 165791386 928294722 137772568 721019514 518953564 723447939 284091164 964368202 489266259 280482233 747509042 511261925 834561629 67183882 549497430 78080156 351862888 6305688 395355585 530868761 750646876 472614120 180297793 743034874 966125203 443751301 548490864 227202632 864636503 706753751 527079583 140655921 195095804 245322230 646775128 169676174 385338755 259049719 150572224 567743884 584200913 449435316 208384747 826679673 203963095 979061928 901490785 67167043 153493675 562748220 579878399 593126894 723106292 644397212 4666324 301367243 929101917 827437450 821934762 965660981 938321785 300030778 984635149 697594114 395201555 309294376 355065842 869755559 250040853 560703744 517171774 389792922 402473176 577415445 106455355 814171553 972359682 756912068 455850101 137233922 302503055 539449578 902518733 519768225 799696238 269094031 793676740 564517786 217363671 277502875 382398828 354859138 143479335 810545175 242141787 174127577 115324429 417900239 526254135 590761033 133772732 434684906 264122496 50237042 412316756 215955009 56615047 262123164 636431716 861038442 117642006 414913215 144771855 932234134 607098402 84539259 116553000 237373679 665198941 932772277 802138039 561175034 476821113 195065977 350372354 813313909 75396698 963526105 214080010 315272365 306805438 377945047 239776559 91139342 634296702 613955326 48869064 242488359 471394287 479924409 387599819 66771039 205699632 151018062 374548200 775495971 435607984 724197608 434115531 243757237 53396977 334632484 902652438 956611634 507938684 308123752 799305787 268191363 570884406 276713711 146574824 857214257 838492531 690737166 550515995 99088579 198806324 540884357 105837687 376262726 665299006 222168229 536557367 777940880 915876879 672251558 922603191 161258179 529786002 192469991 965368018 893807642 290233130 687290589 378562166 238355293 938379416 526649988 535612030 254850724 429031673 838752354 255284640 944126110 609616363 519756075 26421035 767992404 911823926 238707619 444080192 331961413 927345367 695933603 227289707 210058770 212428906 903533865 571905787 651820175 111233904 220038953 674965750 983644858 630986589 490206971 157364718 1532923 897254559 680951680 773514120 228848245 528879682 502269279 918693144 750717870 6645545 585067557 875994165 966625806 693619035 590650499 978476062 18049361 205511769 323953747 954784528 172958693 30760809 982402780 890221132 642608615 357801460 25128762 889375694 967279536 253874819 673335178 6595117 865071259 917393014 492513180 803407268 253761627 84017880 856740376 450487268 492060815 895277665 449896942 941303873 329564035 593784099 407141537 245726753 322982663 965428584 769578605 184091140 736198680 36710938 392169428 428906441 459105943 806425496 893908176 660353867 737805760 476156946 655304245 5184168 63929196 167773573 384631483 441347667 574432759 696134345 112027522 451019286 990438751 707854721 211789317 913855801 56849042 847403940 358263047 21842893 89343852 18914575 131209293 774414314 340218557 18496651 985418480 865340014 389816017 462455207 657128413 642230097 769096853 311315422 348294042 777540884 331695556 209628956 593958235 689103561 41689948 77337664 195681052 211684002 59630016 327651518 914987694 887256592 708270463 124962620 842676220 145869268 487539090 865020243 650115386 373858477 646915698 311139810 597841153 534249229 241253177 796312264 820711121 730421599 793144802 876624385 728766296 404896079 596638347 570254883 868080270 312702672 585385834 131035924 221266525 145799266 553249324 902345426 288468772 903385168 296362762 328005429 917752215 733576175 583261117 101287867 804085829 380082445 683256656 570286419 285714669 966650418 627259574 708832669 422974414 592327490 720728539 569887224 858341660 288078969 653172772 832333001 687145006 955201053 559789282 835592318 874953447 421875916 256363686 358998478 606658746 528747309 124629599 135285754 143115342 104938812 567497242 108741425 635918677 748930599 834534248 980139443 410537866 660069911 167319440 845567864 504316846 885697866 74690943 969318897 357286148 354768713 279197977 98435796 899135362 853261853 313341783 250895880 152186789 292328378 875608785 858784636 180399304 596210653 192189136 998423918 569275238 410681202 855588825 642680469 33121035 498272409 836381436 970402500 537032172 390166746 734494963 124356411 597163289 5612727 412967003 752015916 458535869 868905017 848650154 228659654 588974933 865317463 765133345 322387360 642138105 842597378 25669572 630704693 19315460 7042948 156765570 23011789 409230104 410890306 653088932 303074001 471105889 441295868 365199885 816860035 754616789 877676335 573052702 943198622 429558685 882741566 41317036 801647647 319548823 902431194 695381746 932976440 818285820 882792105 372862231 261324344 968866779 643866421 913357067 995885209 40784824 407032745 546681816 340255704 388590882 380322599 485392821 20513787 224700837 957596913 8139490 952656732 230881605 13720865 22602046 350854866 149118295 843322742 86522547 385267898 818223807 517293859 827838492 543546339 991586410 44565295 976970079 183402096 549473018 856263878 698126493 252823649 950372431 539261350 599582720 635024108 61458905 289246675 101571531 412193687 620298561 893685927 437927648 509178336 292007918 671296726 832747268 825124166 920088726 727321330 556735334 718215896 212495794 617475787 212834228 343108327 781507765 973140820 251662210 461833098 443136999 638490492 706789224 270206770 718780262 40817782 179890216 844154819 891151829 748057488 296833415 70606071 683636245 886365073 923055480 284951651 218043742 458979371 962739619 687239062 952787952 727149281 920360495 686764799 340975213 205168768 12359743 655604715 594329412 153052243 289432733 356120455 974454813 537819572 248122596 240062111 782717630 848612672 87743462 705124732 916256202 464908814 520667858 928365009 832871613 262505597 970540517 979477947 549747589 457562796 107567761 569678929 509194925 834077247 232088045 990758798 207335491 782968498 565013527 985112337 69100514 753048093 531360306 652089676 710839494 952049794 746116834 46130888 503617968 141004562 676362818 980549774 180512175 655112729 635419803 317571051 166435730 496906451 192921170 299736881 264832202 319664032 875670445 216786442 905485089 868735803 921007394 296239019 813680956 788381228 231363712 848672471 571739696 171190262 29308493 589179083 124356918 424970343 845503699 16005725 101529283 123212464 23719945 373293695 241343517 644026956 159733516 698281954 549408741 383839988 513268957 138822743 362685878 545944745 798546458 704869119 32556189 265029199 811287017 532177167 3027651 574456033 409676611 532419745 861149914 246143566 914848840 29775422 643153212 374188266 634999829 241823249 118894688 278012760 219383349 766496663 438421373 976291894 416910252 243114736 395930907 6648689 546686912 595808274 804566643 542007705 699912669 873013956 874431183 62050686 194202912 460829803 143701896 830749183 454548091 135089397 293423869 214119103 233736258 917491906 194827780 936868983 183176491 873268713 631123410 485809424 184931461 384796233 675228189 266396994 934525091 730322536 317011910 464653181 481431341 200197392 412055775 897515363 844542626 428621918 860541441 208166116 857478569 457695236 974863980 535051243 947637759 700474089 872815951 487056019 197919030 890253876 953796458 223833903 927239708 564243851 164617501 960818172 441389565 96551483 146947085 230354577 312309989 623553677 530194056 36230466 466722656 856062338 88273518 251035077 131270008 603622107 553896890 155577387 495394381 577334686 966437738 360244339 856413108 457801440 277088735 323538699 757347856 476638918 369222176 175637170 148581106 558130054 880239996 861840342 625468635 805953290 396342271 84329662 699812887 480626178 114747572 942121347 749152231 818735394 165376121 202935145 448586931 662423220 782245037 491880267 979380442 74556240 585893096 767645394 927135779 563248346 87521899 655610030 740723052 398001917 410496297 118133185 324434559 136171590 361044281 312235314 669551827 275537232 486687151 782328500 308194437 913241178 967844092 488435102 729525070 191409834 868955681 759826539 153469375 153075797 12951502 427836966 755951568 771443826 18829039 216994870 453517978 553212289 486046415 518793506 761525874 21455068 220248378 726062392 64289252 497452428 344384470 696356370 504044428 806904123 855653040 361797462 258367160 79554845 822691722 468507482 63959833 824892972 926201274 889809930 798489448 771362227 903160267 831019122 599215905 335255326 792923588 667846660 275474515 784229779 681100689 555006598 492374029 66766140 344618463 318621993 215959689 989485123 247757622 326259774 280834422 218138285 830815552 861175401 362806686 623107919 808881104 426017291 644549217 27836485 893768607 117632911 783417072 146193166 540961411 116100976 762367987 300246042 242619088 66477973 822788223 791284577 95601270 249922849 101835778 192580596 903866505 916896122 753157506 688405105 773027303 992730052 485350572 52784846 573296277 178817488 451824357 886314902 3951492 258167412 146471686 884222222 928465643 813773863 297226749 659701549 543590728 377305009 932240408 213028056 593818817 943297213 476792140 194622240 124919653 605874278 723703725 24423833 683435753 159533148 957264969 18655485 563030614 785003312 180650461 894247136 148707150 410151202 926048725 830342902 569574280 110404262 53141971 272798782 477421337 265350704 761343306 290787767 852442084 416931512 158710667 165820544 574401036 832237055 384608917 419918363 617367297 877254760 486889821 830764516 439558063 93214730 894649934 501915771 827403426 819927816 798820608 230282304 797395690 433279539 887754529 703298811 808412976 947342206 278264812 53001766 872375464 468029805 629948288 196300128 997518711 323468366 783030764 7714481 438942644 454001400 808334603 85222896 611695034 818887309 191823670 981965934 546801826 297778670 693553042 279151954 257624676 554251285 497312451 397234988 69337021 724731684 241418192 846065429 60957868 299255380 372397182 330902605 790585291 447938553 27922150 97732707 531856347 917106536 629862173 583621792 268129110 780827191 490246184 666811049 263780497 534514400 869649399 348565269 163066336 528310403 305371774 130127367 468786350 888970595 816385486 879223600 467453116 20153957 73075504 745242890 532255296 811701687 551566298 399717757 330124551 427102183 390012576 456832486 192101938 704717228 65742740 741937916 167265565 773944570 72464294 279032478 133472947 108090890 559199322 634169539 348635424 812242259 501270434 300744346 784738720 451514254 739339366 292511215 90729772 840306098 672747106 811180561 307366618 94830631 470968582 12000114 711400919 802897197 883072647 982382434 897809302 37639419 768249444 64263928 9473319 829938532 452841641 771290652 180516215 299184614 459780354 824445233 247236856 47715978 776158376 290333520 653414282 183423612 380009686 344732317 469819599 755021439 40590199 855203001 554989397 996501904 923556730 330678154 893186637 442155836 909886926 784182866 459420265 773355095 259455608 359593320 84569228 26025806 78052796 751670736 295918436 610963015 401911410 456942330 184522280 31043390 520044493 519034944 228418136 504421946 113754743 812284301 789587607 263332735 770868557 457516244 880922191 905188956 613500767 188968079 504663694 146348757 599483853 356209927 535870631 138839125 435733965 48538793 590204239 255972737 127411353 995178988 278421964 162869279 598708155 279393379 800959287 449487411 365966116 774160897 529518769 895751929 775038860 318371667 691601602 25557550 831742655 24487342 959824466 887156630 887560400 806568960 410822610 689063670 191850107 16203939 686802210 322660479 630840986 592628736 951688960 345639784 684678061 757754081 695893148 142955882 691341676 479513931 75662615 484416564 20676219 735219299 884798898 92478998 947487887 224213099 386390478 579322979 224594927 297651814 439025485 334919748 54469018 581239329 318848156 298640717 135302114 268786157 831811758 19771393 240726202 2266312 957090481 487370626 959495860 111934403 684170539 14203926 429675741 154775406 587680666 331619243 191803102 604901344 8627337 795009822 755674185 381105814 227045444 693559838 920644301 170710957 274046529 408098759 114396003 683151016 777368663 599833340 683027474 775847596 91728336 187440306 549741468 141592911 572648241 827066131 286284432 972259574 282129456 586709471 369450963 294163515 784193055 234781698 895848975 696121667 107277915 448302240 154692601 46482888 252626168 239655830 957517549 241452566 902726979 891800865 576820220 651631341 493267187 610166773 458671976 251904771 55001899 9625242 534825031 676290015 76109968 205181954 36540437 891935586 813376460 582792569 959472982 191266296 771568251 651150770 520112720 51772766 730641157 385303248 767034731 812350203 206780982 826077 984057374 667092908 404709968 179858151 810236731 532300974 374867530 44534316 58713288 501196242 738644807 971989415 753591308 981525034 304440690 499618829 652948941 556415867 889020666 793281033 350769485 439867168 442520913 626398419 986588787 645595771 924354958 18506504 439699275 7539969 513680709 579908068 323646384 377832884 688096656 875143454 814981523 39512073 955933323 617134350 301053194 878310183 546770327 990626860 610645542 419165060 735044284 321697638 792747326 835402916 225491129 15544025 227610519 914419890 469297849 392772472 87594840 90634728 215645390 63004890 174281688 504857483 317680229 963662833 890299950 651994606 64535977 680711297 756205054 88074833 872628324 16156327 814038605 264894029 360740873 336598788 39364934 719827043 310475286 617997263 183362739 803947129 37665228 878630451 773184425 769624518 507195968 207792492 720913064 38140408 257731833 385215286 926127417 574920138 340660142 675974530 908825594 907891228 866188457 966230243 435432281 482771616 930563416 214900830 433729847 21197161 517451142 686054674 390731931 343689760 904660866 298230928 730745410 94720026 136215591 164836436 784035537 475756520 131243770 804629499 984230327 597877139 766103183 459303726 842904090 220363438 160248751 724961285 381395101 604284970 994541529 92123198 598025485 494041578 61730956 861227939 549988585 832967353 611663917 946873819 394421080 398502905 789203419 525167901 631477650 957600784 37574288 143570220 483113901 343142809 654351309 110984823 602468624 203286669 844748091 500595551 907307048 291033127 39833100 657593491 569457661 733208972 417804905 579803031 891099855 335768922 647966153 994404634 644868172 252238993 297899705 823480727 84169643 588759745 957184510 375569858 460070062 74173832 358360279 136238034 265329825 498609660 690894707 933511568 821027085 425514733 595557769 637092571 840983267 502575069 258139402 247064288 814928446 423225584 408069648 894518226 735451053 848241179 952665232 97343307 742916894 817438280 908401564 581878389 963345253 350454208 507109894 796848746 410229715 201190202 947709671 634229784 129112235 530214983 507718971 796412783 32849079 350941471 549933967 478169588 182483474 864519253 995360600 953460369 714841851 851064965 845481062 122102758 719221410 77312857 975617440 322221124 166414233 948322654 526157356 885315106 573963602 820149358 267484161 824705991 832195742 732906613 908499099 648453311 701703684 724997885 873161658 800268906 98288366 906310951 155171330 307071189 507104656 509387670 434305226 531533929 255674874 918215133 243621755 641408727 947966461 350953237 437301461 766141792 633223357 125324482 270441734 591911194 847478219 633210247 761198457 894114097 742195139 207125863 533108807 393940065 985983565 130783614 337682898 171362514 168391324 609665599 986073136 462741960 321043771 19265844 103543566 461192805 217242304 987562020 452066298 402878447 947246414 644730848 355784596 152318518 95144685 724538630 680276518 46904777 34626646 344486968 676594747 960689492 180778536 411032032 362967572 511463197 903853369 832769135 240348095 646539681 112761133 856985117 153279649 510905881 626496303 646581040 580825658 598003208 951816410 228643204 918571796 307435066 515666293 630688651 642006514 600593249 614656417 504295675 576215340 652989656 60142231 319513743 559848578 892806681 811633095 920372135 443732163 846230472 605282369 635713692 469374822 79547892 342442381 22799726 380852411 415900193 31614553 511680741 430077745 825784605 116858572 655234553 461631651 650107754 352179310 958886988 492218782 139753423 916865166 75726827 467851022 737943294 451341071 98014477 613647195 449904788 483394763 967819424 385562469 489374626 138128349 844432705 104146939 796876059 92950818 773608722 694813337 20204557 509691503 233573503 549047044 663580846 947250227 414395376 684735726 588487400 680076110 830898447 410604412 106328256 370533646 968371199 470559985 896289050 635681270 137138092 530439591 68901184 668459209 618566938 569449823 613986501 523025664 304274523 395460278 28974110 682520804 556177866 525255023 379800203 52017827 307307159 109780724 1448265 491733711 521949745 710440559 725747720 966469375 520850491 328022172 878111245 182400436 391868254 784989145 834867714 854618681 904736134 110064452 654813119 159646289 534065909 277660907 269887990 695982527 912645749 686037807 33046808 349676592 200402054 283084223 521328954 144500405 516616101 571685100 686577174 295764932 188235507 949194689 272302397 390392451 882786614 390392579 311635555 102515293 163739321 725321994 794851030 8462664 371769970 397873040 481432343 550399252 537532237 372140312 977381165 52338932 859434678 859419180 233294972 74708441 382516336 406087686 379497913 597008170 864432604 243087874 157803077 213310373 28502113 594571217 482212809 8455718 592781096 818195257 229102206 536269169 743286202 826186945 747680319 184416640 150536483 831980330 441673259 25905076 422987000 245087035 745451733 880420796 955623364 720328864 255279783 501900023 167520731 138373216 71375348 88985697 571277472 551669672 320637216 241091307 343085025 645932129 696211634 735164471 19746013 358616005 138015860 903185893 999902082 635414664 844372070 797532404 314937318 599563878 248347702 884362921 290635263 219211918 68666040 137580162 945822995 362386968 305614017 127226793 124902928 861667116 304823064 335953720 912921969 66389376 826185667 807758650 765085653 852675346 863802177 462651305 659980845 515985867 836389014 103443305 513958667 563839303 131262266 856144013 359771947 592707325 788284660 236017916 245771263 66922138 704620229 202855096 80043001 586674971 587108524 55700025 114446281 613385795 744495598 33983444 574682784 458836495 104130221 6459996 138789682 326521283 11674622 734614342 900985315 198580459 803370058 266498986 680805874 791209927 19111713 101139425 833598462 578631914 582374019 813029160 571618020 459925783 591822869 663750160 334089433 951224083 29969220 426068962 728841275 219904569 219389771 816295321 268111137 830984174 301931914 566324705 594315229 225206269 993991043 54519111 826284079 58500915 137029996 589006075 132948700 62097345 190388292 106821416 293877129 7450730 460705153 227701948 149700377 863496969 939249062 587344669 547837951 834866735 350933950 22175506 624374097 246228668 273729761 684535691 681301540 656286733 952347335 70177473 357019580 450904825 866576427 746305157 963030737 940124158 484251656 523049843 314245478 904304613 832175921 5173177 156227830 928051905 5158778 635062615 542779699 591954915 854131655 338546967 906812993 39363596 602931686 816479844 643603532 14530721 7543206 984350956 952193 861121138 213730901 609441079 992009017 473167300 739805787 25552060 5968866 449958479 494774620 795896900 572834925 173602399 90585941 384328648 833964226 860991243 74206526 934228862 717203687 784788781 835539956 222545894 90942572 212314660 221479692 495144702 958786050 395275716 163538703 905506791 631203610 883689448 289647180 278604638 390695879 741665593 730443276 155218147 725463647 648082537 20629047 282102725 295280832 529554782 876093139 934651249 602453484 407747643 161404425 172916411 26115997 913878695 418849183 887632920 234594631 372007458 113205117 76566717 754155412 900074603 931312940 737067638 934065274 525263373 893807125 679841556 430624388 683712521 873883378 257027761 64575336 56630262 107174207 418507546 63440793 587926480 680519701 605767844 747302081 275211422 55158668 37705082 534581458 308735863 301930563 147757046 106772260 754661188 695562117 442247994 694972616 251258450 753841189 881952331 813025188 928156427 886867499 771190932 470726282 344802799 288699809 415109746 348970853 907830985 475845110 390050427 539677100 824840185 657405855 196743573 581764574 678382108 893543320 260242780 176538016 302298649 205085198 4174237 286358760 952434338 831331127 245220590 755539162 730443207 928790727 605590839 434738154 534025605 888553438 428714015 118858183 61955274 348228322 504681236 271962991 3412121 292571030 284286946 671761016 638515501 773404297 977191628 659669980 220978580 902526578 58277046 531851266 748716518 76900732 725907121 87103999 865382110 734992930 285917928 820761608 731051480 74404648 294652866 297921694 974038791 172757222 875324076 942250471 540027422 429815730 208129464 100678694 254230941 958806741 313723304 947916851 471133771 569659587 694095319 228476185 63111773 793941940 732363546 352954382 673575667 836993855 261496509 620358282 465705741 878302028 820539537 420778981 74600959 527181095 68688662 718731312 462874811 754482544 861372165 979213697 805213108 482326188 608124008 93897363 925300157 238720099 265959091 67964607 342559073 636408950 798871505 301490278 332467312 304550975 518175766 314795310 290971373 644995205 954142350 718659945 938860155 855239305 174865496 384724932 4349991 409077676 556400364 87713666 317059141 630534286 837561159 869140783 664587248 355317353 421840926 205400969 753916005 694214899 968067802 142228647 452198048 510815900 266482794 472790815 515490561 417480015 593505900 513137565 312178617 595342572 67907508 63184735 607793394 601434035 331942509 153376351 781888111 929020694 226178881 742855564 688911899 474687134 862421178 783279055 247362391 911679914 800758416 178671868 536948916 490319507 474315624 101378022 943106430 230386348 435309241 450277962 757160180 400225321 956080655 608968347 312018717 164120692 394845703 496196334 999750863 461255574 573956575 804599474 733099283 520895084 121303725 135907445 222619707 502210996 207042973 636346203 418876899 854076360 419783110 670264896 781553986 778629437 891021176 238084702 878849380 793448056 587393478 702418866 91353233 348262056 554936903 323075890 830532364 905719294 1462359 882870905 617030111 147205944 359047034 118456497 499237672 726308362 564190605 978950267 240255558 886987158 509918760 123071488 578696926 886682782 413173518 141894180 20734612 453299243 894745891 134941935 863458166 339296249 625557882 294176704 422627686 923949452 705128025 79586740 87211859 465318821 320080631 512132450 553444968 232593368 766235844 468552461 981539644 296138459 768799261 544890577 936475816 488372544 785280449 362217786 525227682 559690923 943866528 733940415 977286613 730504199 654921521 538704699 58784354 272998140 141038330 573148563 962066391 988987024 139649483 116528804 116657657 500131365 494258482 82493471 113080080 262499701 267282960 824994302 68980921 530762817 286832580 776861856 719135281 30992411 100101542 180969632 627573624 615501994 424181168 812707498 975847889 274406228 845044150 869096749 145035416 402567843 66546760 324998056 656570773 603813677 63935169 206833518 519018380 634181239 852742942 414715223 93250657 887972869 750595321 886635505 517050946 758531867 963223381 101035346 352892005 678909352 544341318 258043462 937686779 564480468 221767068 964204348 286312670 757716269 915396892 3196286 393301223 691564859 528927835 238184673 763603892 112666376 723036658 445605084 107069821 703421363 211521567 321036949 172392777 42856774 865217965 34047484 262904532 862896335 904246963 565178535 196314755 67042640 262426101 220760078 603168451 599251165 441725245 162915547 146594214 168763351 767197726 579468769 228217540 234299712 200714451 970830171 839160748 128135495 69166664 936931175 838766027 716952337 955383452 258393766 974816295 23979395 928133323 195501952 20267190 303365157 178558914 779838511 150491445 535808237 691507323 304595294 105329457 445105928 901725748 692333890 753479263 71424511 184898762 164036481 490550634 894552215 867890951 841244944 62214423 372999363 302516357 951694895 324343758 360902438 709736073 148681178 151535029 564145813 460560219 750017568 139975479 880955853 453462051 684756928 206602798 466352110 974039477 455106767 280960704 706853629 985576914 147218109 640223133 701857355 799891570 217185363 120025050 866899810 373342385 936127088 887543108 893128985 994483373 473473684 934926491 641547916 149328253 922907118 33452938 462316622 425894279 77357562 28988669 862168594 134053018 519178287 596086749 728119658 867482010 648954803 660444533 778190037 322733437 606408274 347776341 250357523 152100594 699538194 999085053 751911783 455025892 115773628 33431648 257042059 321815919 486080811 496498934 940349544 200123817 612120994 648753278 44753342 764797838 716766880 603544431 195130134 549587960 221210146 625685040 785299413 604043429 307538657 130192400 165180706 983782233 72256624 19474579 569324583 820634699 761944994 549542516 415985827 496241757 988701129 346183399 919319877 923632171 77109974 744253323 975546604 518863656 212717281 484670999 561989412 524987638 153345813 460765686 537514379 568817631 268999668 852349717 704598944 297295965 261671904 188822437 200085464 359008611 294222684 210847908 505027286 152966342 566992588 550610942 831744607 344569232 496304819 353102659 304590905 744814698 524399263 775548231 563808445 417094223 81384023 514324626 208108540 979810424 381906351 640296677 218119919 811626746 286604445 595910832 110476469 388180427 99445109 144892288 520440660 10117396 232200700 4252853 235390425 667019674 256407894 480187199 48306352 751795229 515258244 263410431 476032247 218966087 507267003 444159410 496742244 257678293 101610316 566272781 988394613 403041180 99941536 579362114 647711150 512197199 906060464 901457961 703728541 412134280 237437442 656826400 128433444 248551050 988797198 789604435 548032023 610852635 93018956 975634200 962177580 829956739 504370550 331656869 937996952 75185208 548438432 177907475 150002041 425087441 396052802 736663086 140530664 506764905 81181916 913843724 311244872 46946013 727203649 981801230 171854360 640144432 430533762 293019222 723100792 743732001 618243926 847339556 858535755 239664245 237635613 571668851 389642738 200699688 516906145 774157811 518815282 388366805 697244775 799920026 293834446 605816912 662826159 155887673 908060805 229208573 161755969 787982634 157275907 295568510 824290903 995546592 472364561 100549180 769445342 262703560 560311502 511500754 357338053 406213546 41301775 611254517 543606542 165821072 643299830 442746154 662076829 263898678 430989358 44562035 229233426 394865828 91552364 150680274 996829812 295212934 274650017 449683451 725440710 178358251 866034742 360612299 532719125 420652239 373649867 634020889 250678326 234998493 526458161 504023845 244284632 206979706 476569830 565413959 536297871 753166184 26736947 42773312 801267354 974753487 887610463 723102865 963891133 294456418 60668353 933911771 916020107 582606333 708758290 804915591 283510529 405792420 204431555 272144771 429573221 505819730 466729658 152722446 366213576 828760686 954629124 123620696 752201257 248421614 549955683 45627301 150468376 203644679 765011421 115907914 598387570 562391000 745570477 392107411 131668061 747535905 459574017 641742748 16982119 790779089 480148205 462700701 981389610 436075062 655226990 990864443 206986619 528044877 373980436 834761962 58767531 652490601 192523997 146333699 172140352 378591578 600244723 741654845 161402759 296756606 765473463 741996938 195924667 878406197 196123680 502109874 714698871 889099484 634860612 985303526 871128320 613712342 790553125 602030023 187397619 496289326 600735303 560672858 131362109 591741100 446953608 813599790 953956302 5035933 787186309 511276134 307402889 558860017 788739348 551941051 44403587 547089088 14647050 439136562 442617845 326121532 843293994 208621685 700686528 665560690 527891159 438136613 29061554 114566723 143004744 210665392 185743561 184578578 526253399 650243857 172165558 821189431 507666452 314365863 381198018 420492545 728702138 925860458 26514365 40005158 755161044 759213380 495604809 34888504 121362763 7849780 683239196 68908207 368129767 832032421 27883824 510914808 802525757 559408120 397070969 60107596 487564628 503089334 751441911 646930011 631363533 601489469 62494848 658050339 410765814 280780562 942595838 445819983 414770721 340180295 180990673 573081809 73895942 982665868 970575678 561454627 703923137 276101916 68761198 373595514 695582365 912601573 68170245 130996601 91572917 285229628 747438300 894229570 826173212 920906700 71549875 92715389 589650972 717445899 531391548 346739421 36634762 486124034 324777967 986651902 483824 246814173 621458791 600886084 753903090 457323700 517694316 35612386 322293149 562408966 76879854 849559365 340597538 443888610 456315795 231438578 817798012 737273673 961971126 594373281 109259323 192031245 670299615 479498859 430288846 645066328 181378947 199446357 36020667 531383399 868654365 183436970 207064363 572493675 791336042 297372283 608125940 398151456 263484272 434752907 257580041 742278392 377540760 138869540 30161911 569236685 326033322 206675695 256970085 810528757 801743098 674270392 551141123 172699375 250284295 744531315 575207587 417125425 711368335 567575394 896554146 171868112 946741044 340699215 259299794 449989086 681189678 848656442 460292438 674675024 456940186 869591858 466299812 82073675 230421724 764005680 279896697 748541181 760231022 758126116 351967085 390725450 854047182 138215184 163537647 339939372 543183065 600304757 683162830 314917882 155656727 920541996 719194628 258676178 166625514 287768757 543150386 925701181 927778169 671655610 288467380 756830609 490530975 115029971 191818585 140386202 724681167 79711515 974714200 906956668 996247813 830056027 82145237 833184952 712556107 60156261 862281517 22719567 513570945 770923245 973234640 348585130 322377611 608616508 920774659 72192873 968467259 909517644 178568827 518909579 958057453 159532212 500964273 68539403 692713099 305757142 113695332 370765630 763691516 124901906 128473544 414312098 675181245 885805648 230473208 902557259 142682714 888755598 730696785 792008688 5273769 178232971 404920616 298515521 41647631 516213452 734189096 781389659 22890004 895596209 89382209 642612557 503462288 247190998 58198783 309246411 569678993 939304309 977253000 861049212 777626900 405019375 458560533 486974826 432446725 314535343 154296048 762326632 149625149 65307649 415077437 673413008 922603029 749884427 15658083 703077586 696105195 529586999 710213768 800072377 601583216 199307531 558070871 55689856 251495448 914422266 121168421 281256645 810906485 263001936 35227438 894324593 772459897 499303377 136918625 8517885 742849984 466651546 464353577 354633699 548966483 321199663 407036202 772631407 202542397 964366827 577909383 725928425 307416454 427255614 234475076 462723864 893242463 375276312 876117393 579159458 386251890 633334869 859221384 735192499 495272245 455417076 945324800 380155206 168593162 567261794 30895927 614079902 761027066 889574900 395042125 240198254 493587158 625379517 979981869 873999482 700260763 912040284 130751329 230214143 484950637 394927583 575334368 552574868 572496208 826138506 440589860 409968996 684543944 129996046 393637534 19595927 825701809 228324897 123025210 673616341 697681501 59861393 162312897 403442624 780218075 792759395 216110937 277597683 27281542 688663318 149192443 731983535 430299931 689752321 224658840 801035617 221947147 66738158 393427899 732645113 851333607 389807095 831579556 145604777 489137937 892971206 454473920 76149181 600558622 934989336 903734926 756885783 788168846 299186875 870159745 382819451 330841639 687538087 390552804 469378243 895501134 296880158 943936493 479111892 186570536 298830285 772131419 710238604 685170419 522396345 327450195 112211952 464374820 122454874 488696040 230642516 187291471 458747469 450551544 919375071 285399939 201251627 871530108 663586360 754609828 281298788 839494748 999206241 427991676 458370752 891363785 448130855 659885410 938055837 895440085 56472320 906010799 471266644 278824897 180009278 899581995 853701643 312977274 545774178 459404510 214829286 416327919 654117783 548172181 702436254 120253579 709074092 34016830 116983503 681264705 109760452 198669507 746186049 369561826 633085226 590771362 443329779 117655842 279112833 451499757 690708198 186175092 500914006 525473717 174817170 343834255 636066022 347481936 354936132 558044165 832276805 740895058 556977332 858733528 725021854 62518269 269170730 726658169 729544761 949867639 739133425 510439759 57157440 169712337 741741564 718065405 630173947 744199205 190509860 412636237 774280177 528914531 474832332 111761121 63873271 716153087 18576526 346825339 261002461 710700333 703958871 264955075 436039143 84704040 309930884 127977890 745060357 415589781 471567945 747764686 661687149 657461376 691145733 882618692 766725817 336284375 455838204 364174580 440214752 134591001 872721715 658846370 808679685 986224400 370174648 274170119 666215432 283750148 946681128 76371831 443236142 179783308 143737442 434568204 76155500 772690686 896788517 696144877 15949108 450918223 626025405 757704899 606047078 890499751 306453314 341264710 869932702 116323128 823830912 802082379 228618537 996458378 601322779 50560008 344380732 113124482 338598079 802093300 166908668 239004007 533070313 299498730 683077670 781600333 249015828 143379325 433783971 42774270 138776794 347239917 679428522 336282162 313402373 755790310 987734705 155056253 36948022 331693350 900791579 715331218 907176595 698129193 860474477 866987293 668331869 251713299 343078307 646253940 387274106 365480565 606691314 127797823 61903196 294401817 665405646 118713466 657137524 159865937 119860983 190153832 913072736 778861847 840488431 440368125 614767549 688164087 629427883 432957570 978210662 775918430 685647368 407482412 721658448 625927347 635390943 688877193 919897824 197906861 442814310 226545825 42648989 291370896 14058262 597387319 882142432 651113961 464658790 544481969 865226845 753813823 609208080 247963940 62210320 25127952 355085134 714299680 238173788 558611875 846142113 630409520 330023838 240970016 404894018 581032318 346957834 481287865 353443745 725441279 254893978 746994466 871642570 670389276 638583601 163585207 49564228 493010674 802698264 178735024 237275607 625726310 147664230 173750439 131046208 983510782 406483652 541594850 353692453 911012935 18154991 70595052 787727207 882473660 509114026 309792752 391211581 104574616 659934877 99845978 993799182 274379051 894029868 747569415 466975308 666017142 742966175 528403787 865817718 320359912 402431257 521444338 524718032 448873983 866940854 300365382 160365616 917597993 835659168 787918775 723059717 899820028 169889000 155360928 177625505 727953371 733001345 787955599 792264901 154051814 657122760 469814239 427428075 901079068 143423419 131181788 572484733 907731773 113501955 840742714 776657329 30755863 534161631 896233009 248373553 661942131 344306930 366898378 90382430 91310500 965868798 540821249 99978363 766750624 101764718 249597052 69017273 618563421 774056125 2519767 459427364 475917361 696016022 245979326 884698895 516386383 908513119 747661179 61866009 984679933 487671312 788227830 445221113 702881177 414290729 34876220 653970664 913541911 489991697 278374920 977161765 625963960 168080102 251067900 642756593 243699060 141546921 864129305 828623632 158698967 875728837 308868156 715124995 37597485 589050512 41385300 955467797 460404121 891402637 2496017 342250045 835822834 691639497 213469868 824491613 957748583 71152579 644100477 131281892 328726576 174185288 514401120 702541083 285359575 353858099 434386566 843719241 489185753 644311061 355890735 462036014 784694867 605929816 115380205 698347305 362584398 13166000 838152568 935914636 372255046 176390477 419524130 283918615 149302498 88065528 666154128 934436596 773717860 956724661 98184067 223803796 4349370 53854873 991202446 987846518 346302159 354205346 749233684 796206872 688530181 440297124 585486305 230628592 746764118 318310059 350776321 598706006 533672576 816270016 762028479 154450494 97413607 411845151 43015014 60644480 864290480 193758682 934565102 410103380 234527795 492496217 700489482 714528736 294885392 855320856 282783209 388939798 719737361 214448682 5472155 299509104 154292790 929748315 825464692 960223106 421900459 696178807 97167493 520832111 416662429 411383960 382429897 981319513 430984158 587465224 267964897 717979270 707261148 329113621 319523787 903521849 622355994 41933500 502023292 346393465 351406738 221378724 774477294 465738709 1224869 694711173 156924176 560444342 46702856 28866745 311917963 444651936 979417340 595849249 371583961 118018605 872936799 620620079 122630831 427973121 675705561 45017517 230345458 395923212 50495855 788507024 371247072 857662238 846528966 553482653 417520328 378302821 945873389 655741060 315429387 151053297 836291600 439803747 824295692 79787772 346115621 53973291 855909649 421997060 870960013 161168624 274073133 251036416 974768047 320293152 921995995 958876404 824517497 551027981 371993427 890319160 111056965 523894574 446967772 930538652 624010273 435160258 761125782 669854046 965020021 167568478 145863457 654633761 54107720 23121744 757318953 441807809 128873530 175412859 879618991 446351960 264024887 259729210 341487300 3084704 428120921 71330280 747694208 230470463 554151186 427074726 747827937 528959744 807107071 114870040 716865754 175571245 869706987 970863205 994945436 274840025 62464034 658324227 994763570 948838521 555900700 217618874 99251875 65745001 999983568 758811045 80710092 684285158 764477292 507105809 567141563 503476221 759137206 534490753 606663421 179491795 697212792 223635174 88363459 311424777 938300543 31667655 501714011 614330664 17980753 329893456 740179786 489158294 312279517 202979727 438892488 659263417 231008166 962973858 246139337 349982503 137237080 958098467 302493997 9727685 332931885 939265929 107004779 679339687 612083233 736411703 511604003 31092348 668666662 336219231 883670411 393567034 873409498 631847035 57421870 871419140 628634319 74203248 438490789 887015614 297032771 225715740 153498907 679748448 724786290 377413655 379442535 23550820 869848442 652754955 472537267 425320248 399839310 327150338 940754894 50434331 447247737 39406943 546320856 546193982 278222016 429623855 176928013 723716035 3617629 688142813 794594220 973339177 598091583 599302041 538211947 773551640 15981930 4489249 624510715 297903409 314713326 589584973 729082911 869615173 957765111 573093376 927772676 229532719 687829161 301056443 235489622 264715614 648417758 976193065 500972285 541742954 286096129 331720227 362207066 379295298 497101969 704974207 525713328 702736459 357042711 474282885 666829620 980261304 483307486 508860530 839043498 33457644 761056343 86520618 366014014 171599583 422318051 429468937 230634379 476037685 97089669 981346410 7722979 179545647 633327120 94785484 354143613 47123831 448703427 30213154 42280286 813501569 831961868 961518464 294752155 172693426 33239140 105429858 403587221 473682696 756997514 625703924 221157885 406426596 693643243 756154167 294016007 390709543 661900092 566207323 601658240 142813675 37408991 382866244 154598739 27680683 414187238 798007821 42667033 994196233 715344220 710826351 165105882 533657422 364032435 855490921 449419758 656995525 405014051 503064828 1199460 728741902 321524065 934489377 27633908 202233120 604572185 920229780 98468249 780928961 822594103 136319686 336713031 277612355 132534836 377612444 559539750 232649747 180620954 95395151 743699334 602625614 478532663 577699916 732310748 352828234 605572185 231726129 483769752 50045420 756417505 861051308 331948808 404979256 262141216 39782815 568245777 820849754 482791683 929688653 452095692 558302709 569554809 150073942 984845464 963301815 376708065 27258381 773096321 220599691 186683189 883517100 487297910 515008366 905041479 831085429 994014990 456103173 353000821 454350539 404431407 98113473 964489677 980042721 475455301 527568886 556201714 731463183 968742937 783343674 568989873 4677715 557616005 121016026 610698129 172509550 622694536 936031452 338590094 704642923 400173742 161267109 105734318 822036832 431933927 249607767 661664847 820755625 238089022 286725181 221968415 403597900 57048357 704809636 30129039 291865492 413016724 91403212 966565673 427029192 599880287 304268746 126015804 1997787 607086861 2861382 895563139 179249241 389384897 153705484 262077937 174762988 591731151 656961314 727811669 348211717 58811273 250324617 836392672 448122259 380853969 151835942 383920766 754115213 908662947 171865588 424134139 18526851 835767239 675750477 212694849 773578547 875221625 540722899 764813073 889745478 942270337 310343872 781749079 537060060 727487501 635787230 341576160 194328569 771828609 92554970 515184286 724444338 994162617 146088714 235251144 697230842 828828261 58237080 678155327 925379956 455264573 509494865 380193461 814801730 352964881 331672307 642228861 918965581 466498774 297884011 846514702 351024589 60512286 326155755 792351493 887433554 892937716 696668659 586282877 862130024 328299990 598409641 22492782 25517632 484088302 472099948 402624342 878226312 660731917 378718684 623710666 947280126 612880575 723452421 806759132 71508840 980457420 65907744 988313293 908885044 236121511 533378552 312669103 86689494 945398901 494333654 569597093 755139783 900777599 641355640 56637223 997588491 532788935 35752273 447371923 175528872 211993095 933510450 429555581 683364465 199017420 717978995 210933153 605243238 214333509 194747136 549101769 304427513 709706851 672870888 93685644 655188930 615463859 505783656 983119307 470216860 799390193 867727027 521726189 76878660 893870089 926674299 529352743 447654017 774510758 322691456 52701621 856630999 29209850 540650182 970557584 448030032 197393425 653568405 231708517 450561535 120933033 94167884 254840485 693438232 715191347 575818753 890476953 637325281 405934834 341146252 705124228 567026908 426311878 168425420 506681538 215478389 658153901 426963359 806601019 571026273 78425591 102443444 474327522 552167543 963493389 181688930 875807981 2023271 510487835 174142607 480150287 359689300 153650949 457822847 256439492 44889755 666593825 427163353 520624187 813938972 222507448 804056093 484546034 571454610 902677736 220137769 943342777 161311027 614552259 715995007 498130749 746995311 836532705 734185243 160363485 186386318 902889521 545299041 665372464 780869050 821160120 204163139 196448646 283205727 521835906 489026425 937504600 705147777 958531561 452868740 282849371 26492558 238164623 783586953 824854037 157055388 237821811 247424840 984651435 965584863 272247165 634937753 879254325 310951815 757783165 294807619 798073595 456146618 525502663 486622235 766138818 198237966 442919297 936826959 9586183 112491823 985222067 938293114 48948567 252589112 780144723 432565555 379051287 729223861 334186533 115659021 646757844 284014609 592140816 849829704 276942547 164169014 783439689 773145656 825939798 391406932 145356436 637342619 109637780 407446285 182556109 230088586 323294842 368604783 677871097 973648565 701799238 70070182 756721526 419181790 324926694 324423801 337866989 229868464 22689777 348677396 416360740 382431986 87291129 14217118 984586859 477254198 205109967 810737455 952317944 874650646 486914635 467519368 650268731 788476767 701027469 25486740 17805747 655568812 655008114 439796972 265902018 821438432 521656081 835547889 505478896 17331258 717535052 934737735 36954976 361564836 364574330 969135278 24692890 99899865 661400010 577771840 967183569 237981747 791236543 576159396 224658547 237756245 116722412 343896140 439841481 529155423 304679766 712686211 849018260 857184193 770659134 613457072 25331246 404485555 243572085 73441533 218915988 528562031 37437438 396110556 928859098 326498766 685289828 253754989 885838085 944164431 622928390 883515688 949559799 945608134 707583295 811857154 547480807 899408591 839314959 64083718 318186511 433028079 175345056 248913212 915523127 895446983 548430198 376090032 452104249 586692340 763678210 498863237 56500552 518588398 535621217 114275305 143687693 73442040 369445753 265475972 85391255 790662641 282974791 563808749 124495789 990220075 97624957 689916880 529883249 746926324 96217558 294336957 1220010 525574416 376967226 915833625 744266059 394535747 23712567 671393255 134456069 438797578 605961023 388486052 939202510 311664739 989014165 408919800 362878501 679228819 242557819 767690906 45940755 273135815 448580229 947640570 609958617 889817018 123548142 102915215 900433435 966767594 102174469 101415823 673930010 535638880 852237836 15987694 44726738 89196669 744629914 254230032 179704992 217860482 557809800 179419023 647359026 914835257 112157730 890257195 936397027 529194976 789884830 209038014 960998089 714433387 619952523 209472584 547071225 392251560 670422930 450283950 452940437 258614972 140476179 465770083 496659858 20139696 572163149 227308275 278442132 695570338 116088245 481497420 417908093 707751349 829946752 280665999 826395087 482004317 362873311 93084630 675355834 456030553 859838499 296561910 542463955 126423564 91418904 107953624 581777174 917153878 71065079 200209529 737408021 908895566 674314749 454806570 64418785 718775743 788427931 856041419 549775855 813740348 600484294 308785096 122245385 124320055 978263546 839739056 412895338 382399432 500177188 717426180 40118019 149939754 781458193 878429072 685214152 446348146 894949721 518719944 760583365 997017745 619117009 123646171 810185715 9355034 432120628 908720318 755559481 139695760 490912141 595106057 964059304 493930015 591021206 923112736 253023661 457131480 181660337 83384117 477809777 66269820 860375126 807492350 15473342 985843977 247508413 809111128 934228822 964336252 294338906 384967923 762484895 293084104 802571169 134508099 724793527 341083620 907696919 977372597 700433744 430081586 624483202 331142852 695885153 931141574 424964470 345862654 467282379 282988209 513329756 601861541 931388148 434458294 398436275 874621477 412257149 90129927 602936567 11488573 223653830 467501329 646088952 365785788 904458698 507605810 848040600 61832343 956263469 998818674 789156646 934420873 619722735 218913602 994416635 637015170 437890364 689655559 76598784 192458916 659810091 8728506 933803535 332812113 220115893 829124196 917596778 879916568 22475370 178263509 828261635 688481950 619541029 203252790 221840026 735656370 426753101 637612979 596011858 42651453 213836873 307563970 770717253 20967863 6706042 283677392 712751458 759667635 840165191 81121038 361788796 100025846 618076989 968129788 290101434 825649410 510755538 616077553 789660445 226597488 906545967 940420624 707727500 873345536 137535375 180419052 612321725 481898744 958469143 504256465 116666338 479784167 655375599 216390875 337877490 755257997 45152116 273141990 760828437 67366624 536268822 322646905 129299298 656150780 435521208 13042482 588429371 41757189 237738348 77966209 35285226 704327887 776810610 869658309 724731189 832879957 408731284 242180778 381490744 579884779 144591695 121175664 861359902 363505737 842666189 926368841 657338501 15640317 514411092 477862756 64972851 122293090 933903425 509242347 183547595 660491042 18634445 292446992 261781497 92442088 418829067 402104435 697646797 14553424 97143570 836302968 86973473 318695092 499167189 264080032 584870381 820802712 813553836 511175209 50304616 669394677 207016682 884401663 310603432 904025639 911193379 743958662 83592267 581033910 298940511 999272686 231848523 677038802 93770232 930963027 462089207 55474509 989788593 73072352 646282867 982306240 374039694 137897760 62244765 998859950 289210578 189890063 882109809 885183568 973370910 88018514 104453150 713441356 751968768 446057929 903252349 16277394 728023943 827956252 435003942 410958854 981782162 749180727 720785902 569456834 283762270 496162934 333348842 455936483 484583444 269840751 866958363 579470975 53514900 741412619 730368765 267962685 334313490 518397597 464672583 722894547 872219533 675430912 677865330 749134996 719694897 934986208 158334486 947773589 390020 782361309 44168973 208362877 804930398 508919187 198444783 445613167 807280079 232576717 912327612 86185818 156522694 96020287 766087477 174005155 970975318 569834469 987138309 747743625 310514661 698318422 653980662 622192835 260821170 547702621 794289669 796684809 915756487 392196664 223185557 441166227 806959029 480921691 547374346 839579935 496760319 240348525 604999563 734674182 31158338 685169105 952003608 972579627 529498274 582000748 301583276 88119969 984273840 422719310 514730815 769459519 544060189 77158745 123997225 985226952 23277537 435837742 851187284 30364941 601148472 403373794 413972569 60809019 863446379 223401919 982632612 680872990 874938225 712537417 982864388 881653484 77131936 38830829 570173913 598807201 67820090 638992201 450737873 541239098 828405956 939979462 508388770 944486205 545888685 1980696 5902007 393352699 101008786 987690175 880304040 943254987 928635101 52743659 73010139 345626066 20861594 775522880 101372134 53547304 744464482 168779839 808419820 757235865 551391936 941746781 140735275 392432167 709816819 608578348 778326991 458494618 328289201 969707269 518493149 836332822 492631751 112501211 244420038 470304456 638883794 733817729 81548729 193196955 62614581 129617919 706926796 823730887 124956186 611585388 432447004 101347774 424550900 947602199 734926086 69184671 870220398 66934502 711899095 228381868 128570246 508513711 83040198 532319327 296709390 497940674 699961158 974111065 525304966 875867821 692694390 270209942 794671240 713912832 757214837 590937186 830201929 573079052 231709947 482474156 503111582 631964343 402400989 155011499 939652406 550014431 920749137 870346576 651036246 81046293 482098075 150912718 997059325 401543125 603319223 573424858 345263788 374281332 17966718 620290191 886744327 841076331 579093445 914053980 377143393 26906938 859544913 614982426 554315360 787588806 213710502 15153260 669228092 46520854 971752171 189439631 407846319 446316296 801745577 260982485 57075423 300546904 859851937 166756708 512754557 443546895 939218003 9740384 12069692 389399132 298414699 833032925 274478502 397777346 286421058 112394625 417026796 909547693 35291892 565834399 177567360 436182786 81789565 996989481 244124084 782324949 635011379 794976856 789108217 344489911 833387443 858491167 793782377 318304181 182612341 912033489 144606158 762030558 618535324 820585185 591931762 477570929 990132030 642508399 62429213 183449696 242670235 227078459 666368231 201879293 772965204 214328988 22930367 354720040 122676092 839117551 296108186 893221785 629434281 921216397 486356960 935228159 864719203 751590970 996460523 736602700 119219047 864821882 392017451 784437815 157386616 111012110 523901509 125408095 234751931 242016387 985862987 765654330 97231088 703000431 374631821 993070113 264483040 608896234 361288180 414827165 481196852 531903914 883262711 744005736 997268704 922676661 677539911 313255836 128247712 150815399 93286401 137792676 902825573 215693904 638320984 382594678 475816838 651414608 185448243 302914353 874464493 26372528 668083757 52460124 399513876 205724964 406350307 704535526 112604473 555513493 171063037 659345777 65906794 934425847 433772385 951726916 794863869 438548244 9486413 98841950 368799241 792761938 518211181 488706802 642846829 537421480 302875657 484990795 860380514 137784214 27534511 643965053 285805057 694436869 835628283 294348321 731478363 398494571 317487254 802457920 721843575 927274794 945930192 297661084 658782093 48387460 757909719 192277984 483113360 148633427 910152220 236467765 846179900 226406625 776611268 259060432 128751922 98445423 497626450 808097871 522512875 924348381 108700748 990417918 683571209 491523297 248158040 358296826 217853040 817330729 517176890 829125833 181240311 259629288 787020579 759123748 586649031 687383502 167332513 747979072 792467120 437327136 793443244 286111732 91338438 804988342 619462325 428594451 383984605 302094621 800234727 936458743 621277926 80510584 256534797 448285416 224794279 422890480 242606305 198667416 862634102 877008331 945650502 84452681 405855019 891688468 925194759 898894602 799487994 117297581 310580506 572139861 907252483 98861193 604488234 355927434 866778158 215967121 558395630 882671297 295426333 850341739 160605238 623142097 229323835 512547815 738284293 639342754 29363326 345279773 66983045 798569919 335675729 432257535 36124619 797849718 978222473 399950275 664265883 875694728 310520176 61417143 940702027 988522674 144996774 310168264 368032665 672291886 214379300 991283336 209164855 316136957 999516514 453594105 153857588 940866992 83088584 375876613 976562427 664959325 991615858 89892191 545790965 635102669 170889505 698403922 213321910 89990068 787326748 803789962 696936348 948899154 210583982 959455125 455883846 700219997 379809811 841314475 439434951 581770341 276346038 6208406 725399093 706108133 647503552 746480342 109636914 593265667 523856385 100023814 613568440 930632262 39249251 289665894 849438459 5623656 984885874 404959812 456075773 580934595 549757310 350231424 235256077 407308572 218677323 973461311 548476225 202070926 886421693 290578232 23407155 453862660 544986821 289397411 491459782 221103048 906203680 491476476 58238741 982943446 963206227 339558627 996398130 258381126 444434253 657370144 165342130 985493157 409400184 563100018 549272870 442813942 450115592 571687295 935410701 114401994 244623839 2168780 86810037 453472490 767540489 585662910 282617156 33244704 979300953 752286546 817986630 575146124 403055494 602154769 772132764 828917155 236670741 308645881 342570761 702197760 361273522 99304002 890184501 935673773 287841514 877720017 813895806 35358287 321054002 164360584 659642005 122454953 302040000 853003909 919020308 417271300 43201457 538215534 966452334 131185187 685579843 972733137 86302219 994900013 667874686 134937809 752356706 620255785 984680262 651133163 119171845 850746943 719055222 41375198 311041983 27403092 439461876 304018004 193629147 739621341 759029451 203236101 851101436 861443120 289599562 214545155 322697763 193418503 857800327 136221171 669965800 704831949 189344206 5814488 843042380 29763638 425719176 757201162 129899456 194368627 510702806 114751177 930120984 432289216 725670828 375634165 400269978 686287761 969035871 52766727 743277629 68540541 450945605 582757292 341756744 397124417 88440547 600026690 188128615 957307502 105857854 819796282 248829133 317114563 727356651 406992083 616670137 819673453 554531191 228067995 626135763 398507074 231480964 397274733 82223149 159036061 695147380 181917359 670720325 403598641 502940195 121117692 711455702 244852813 115190542 437265856 190882791 458655371 853201367 375839853 993942013 408052577 579892979 123753818 63587979 529052340 98099623 174572974 622555850 307315516 70306484 722171083 384912376 689639229 231120585 60805433 35142394 616207934 457347052 623706589 697328795 816927027 775374705 381558003 301989896 540494225 235774244 152787488 962343258 436689588 260879341 386820564 328705942 758451616 331307142 278482880 295984022 121417573 532666068 657761691 178045444 511337837 292382175 603949035 365694741 59498683 528422455 250742091 95982559 666404336 696196666 345603541 426678267 776653242 529171944 295973720 790907889 985860057 890010238 792820182 226761581 683461001 353436736 236946198 145353800 303469966 31091595 926017339 460901278 388497466 606277283 446099987 603989513 494387303 770232853 232414749 338349989 229115103 983843931 968924560 806644353 860124 787600947 482745202 245702622 297769284 69773387 534555848 411226014 820353541 1196193 549528145 256107789 331515786 771990249 524888658 299889826 544886761 965286689 1197955 923199952 27664370 67800816 802537782 138688305 990613553 736713727 189278827 954300147 887124811 499282199 311874941 513976221 341233648 655653650 688410904 892276866 166426999 911636086 839568042 989500957 375644564 653693549 985457825 416197537 972961064 359429302 265586823 875425947 384844751 742183411 889655515 889537879 783703440 826668762 865101908 473021669 465436736 498141873 553309809 40448765 675400486 360101765 172559122 940988261 962944109 857274981 723341094 813608953 896099725 583468247 697770507 682817346 416897975 646943114 73611171 380113737 967273317 464576707 352692100 414364218 730732220 706837873 737739391 227797436 264556618 145493753 356414276 613692097 435090534 337093965 475064537 128493830 515735068 755790240 312485182 16786831 929079297 370075584 181997196 586289853 872266706 223083178 466146382 470320323 253616371 559850097 33576122 571818459 663508936 168174151 604019937 547909611 814406263 181270538 20078014 648260701 400897296 755873960 721607975 544135098 325257264 59729204 482292434 453282053 692715047 407177225 875005539 162930225 945605629 202352260 165273377 878224793 987205202 743727457 959329804 393561208 477690542 568238486 810903469 296155561 901631157 777624522 302138943 480211304 174679089 309183316 188190486 272817050 610122485 77387969 880876588 815778605 295669279 170428074 623270940 549802868 545335349 757760471 363689907 674381239 579616442 372257261 426258232 663943970 836436843 772511983 79935060 273262800 294995272 412600188 759081057 125956012 568629893 586478962 678494378 968931557 903358968 623935912 973154384 900124178 812660340 345001333 126372357 802972728 692974759 378741740 73691426 270939835 67796103 661278163 727102138 501046097 202830839 46250479 131315625 855124510 613276549 628499663 236388592 770866496 992588415 591230843 645187331 882546864 384653198 449750196 715909200 24495946 931764570 366129436 45494236 665657334 137257132 794979004 423495059 679895309 855685754 346151849 985191865 34780035 839349027 823813300 389475904 32725477 406749740 73317821 383955231 318486359 739633285 707638323 696224772 148948443 335820414 232308650 428808455 800186330 233048763 114143441 78140665 884020541 513633290 949687825 617036558 791448069 889108595 840683651 666496648 937633664 309975045 759067904 649319765 64082681 562042118 254491858 253516070 568347476 602575835 125433183 905491290 299629607 952385552 189280798 699398541 408952926 852441717 379643436 306844773 347034885 621530079 911450276 142113086 555270445 696446998 117193191 887692757 177321505 258892405 404944756 640182786 994687230 121726607 655231133 239706642 510826746 874726902 138356251 868036934 231826392 640690460 317424990 639890123 818300062 747077440 674150035 740238936 842514866 470505524 99034579 192314768 337617700 231091956 5808709 210388661 730641617 472256189 361226850 895088665 897379171 195301402 602400914 244007462 453477765 554425745 11401304 479335034 895180584 39314284 316805487 964421715 777995631 518701646 959087338 808736330 733765623 870935238 747685422 543409107 56308043 228905517 666906883 300087426 720998107 534849299 747275855 470112300 196422816 56091314 941268809 149055091 958651440 264876437 737774951 861306926 463047743 203078237 864118048 60362506 634834734 606133779 60133446 508804695 166519582 757704750 882752176 561220160 38575103 274553371 554801279 11260141 464252470 681671910 203369521 492635759 480947188 739002784 882030417 532870922 986740054 265285847 827520373 512732895 881576600 629489588 898921344 86152396 183138254 989976798 912714686 904819967 236111513 985458405 615495493 186077206 595607918 773759585 176406322 307363658 107795307 681916341 852196429 612221655 467100181 158214192 81732028 669434191 232753982 774611245 666246058 392031275 42471493 523835076 114235575 432648210 262101657 782382955 261914126 200381463 502867080 29964444 988531417 964203161 747771229 382099426 613621600 373433754 363733721 862242930 119379480 90014415 282021934 475680506 602031055 832587519 24749440 242841947 423425482 654514010 102265234 285483947 783872169 811887589 359867370 213456302 915636315 960896258 123115925 964934726 827945828 464696671 664511988 971889514 950874290 983132180 838189821 826770611 620399531 853695410 854376599 394852455 111350597 990616915 381813047 149033601 898133615 834719409 357495978 240947301 733985136 454462562 641330636 27919384 742097173 951382059 595226539 317530921 589415456 467031855 924903061 435578412 696274239 79065810 978086147 195729956 277173091 50385868 852122392 206587952 218464160 779637522 714681405 978190176 44903079 329548706 581857815 660843166 895993013 455243040 823815128 12937442 208424059 500424270 122478223 47081520 771244956 383893791 832841579 99041555 630816411 361692588 672311820 882524792 932773873 322183900 723227672 133889888 935416598 235460279 620526379 887141726 717062860 384000897 581104717 964396715 240618103 202786814 926652406 649805415 379614573 426032382 817388572 235945973 418656313 607086488 933449225 372153595 3246345 747658282 617225236 190281952 240319663 410488181 108733400 524965264 639835705 606500529 523581544 213626563 646039519 217536552 676869088 543332644 972304721 676578249 135263384 45850133 280792899 675084075 911783392 900177924 105354402 769899920 100368603 793727964 994632666 827716455 163158413 644892689 433243725 151845976 752856753 826089958 559563080 501244960 190485541 514313325 924926429 337717828 656981776 783630018 103236091 983019403 993656739 758986139 820166310 518390507 675818731 246821760 673728680 485971382 388261935 353700529 981426615 445377883 893947877 954188369 622334634 711606302 260527442 411245691 68011212 852747000 762064633 486113922 244232183 609291212 623111838 103785383 330923126 649730448 820397440 383271370 481745895 127039258 284499680 155719046 408874756 898813868 645765330 982018405 262981793 376702944 10881574 956306777 859662144 618238749 770884148 146343711 719095083 50009759 232553928 359040649 676963616 478633748 621580632 630162201 629078058 648005384 205463580 117942575 906041910 893687821 852120207 343014599 60219601 212909891 430626242 164157835 317732687 149223258 807090734 21181214 978652414 884450128 248468999 802826870 787588288 531962367 222133424 91142544 891012327 33548094 293010335 296309335 560786087 833782794 905995728 496764189 135618497 545466447 344834509 371534825 132167826 348765255 959788816 515662821 950245719 924389401 655708081 645758844 870796572 284739354 208528651 173320266 100436816 543692932 152451578 173235369 518654365 653266021 887773069 81652787 10932007 993512294 676348937 897755604 608476652 677384508 821054352 286388167 464219352 20078808 687385235 28877172 650602809 819588631 694591431 786734121 986717199 63636366 871840382 522584493 908580232 683788946 874125077 291688215 124899229 909912983 920244415 54470772 906572747 494989032 944730833 194889236 368683648 902727928 806211208 644441795 144779772 92516590 26959946 192303601 596634926 534462559 887881972 752534980 952147039 828817206 765373305 128469730 950377028 962519313 496985714 733824559 38181691 467452406 562338785 813779175 510435014 163369287 171531434 412272648 911259488 460802571 924209325 819618408 663673221 257754698 624502298 193766572 907641582 71060526 200445579 550747265 123602217 985159788 143000085 343544015 67882398 663968197 209018832 773455078 697351931 503331990 320587730 994120650 474156980 981340962 301902917 22255935 677393232 21083417 599319783 384736574 718354777 463312723 63032043 793536888 316596620 258104562 254567814 84485690 763765735 582953146 351624771 50317814 655555974 637135327 477995437 237528733 764371791 201538976 766267187 562926846 412187274 411270808 113299878 448523811 793617477 911261872 983875090 788913901 382215287 783218495 376038414 167681504 426734339 997950678 643892992 918686177 519119867 827108446 904657954 962775943 77743641 560814465 413163376 591791784 450373959 681308448 119094193 202584390 292294170 275167668 785946429 922636898 177687227 393910774 604535139 551785595 149190885 515158740 19488957 802383160 63121757 615362045 534833322 191592784 833209583 617255600 337914837 370552464 877282659 228329395 641296103 795861983 482522996 85971620 259073600 140671906 64796384 102739266 113355793 86026202 389293785 697179823 924398146 492313100 48798654 143488527 772216042 965211666 985020712 662221452 344381738 560315841 323800198 735990624 228553605 760320342 683528081 557950593 804536856 304025655 794273297 807307380 416926616 452889397 359861883 662856701 802275847 547379040 304925165 36065295 266069182 261860166 376838925 158920998 311492757 708946620 207992855 502206343 705479469 977706708 302075292 582736177 589663306 895590646 600419738 845421391 371433273 8404683 251233425 519993779 459163348 838679579 873347100 985363946 109366573 865889716 21774676 307619012 441450272 33769521 62351048 443995464 403037916 584791914 263144395 200959468 968292223 955290747 445962495 97725974 435933444 937172910 560529036 487620497 263124381 523752263 246313190 752465252 893155556 186431578 253210581 22708297 151214462 110768535 547622095 651077257 357053787 795760552 440732822 971894908 881025207 897427330 66481326 328626362 142140793 47869027 811363057 708109424 127601673 531009474 464188973 606462451 138666468 882932643 492925971 37353279 624092392 696611480 131893508 219037771 471481989 500345310 41998485 534603491 552499753 818026186 404150509 708163913 613372400 145401480 969471614 980823436 897480004 451544338 903305015 808664548 607155170 145364345 652039396 465345817 609268671 642515902 420719091 111586534 515663232 751935310 28464582 509302234 16203984 787649230 696733831 132011900 14779659 403724927 418949761 848598180 490066212 367483122 353457818 174147873 365871724 118109660 86982230 313942237 726322915 739580773 819695907 948905014 325051214 140580826 866599240 533945978 425786445 366210866 124448067 162348162 259322094 851155516 60413048 912382458 206770631 192971353 789549828 721350305 222516836 950103021 60707731 525583001 114275926 207863646 516937544 656950306 26207551 763422856 717609545 214762453 927543379 710618134 870821535 337223463 576909162 56711397 931645569 457601296 522171820 923761376 192355585 909038391 345137112 482068642 895026526 566143012 330732972 843275329 150824182 485139957 914726617 923296902 405651243 732515194 464160817 880317744 76919403 708776089 562260362 109382686 930584787 368069437 536595333 924866797 543920332 618055593 126160838 387929989 385408566 395600940 688902094 723319613 117340099 785615786 20252025 808220869 71143357 970479130 334560720 210970378 528876436 506166492 626219381 488426166 851749862 702537397 830845687 113883151 407707418 873599960 426751594 871374979 428065672 276069499 697227819 177907860 880411184 50370456 938511227 909360032 379597250 661710936 433583345 231662682 210950556 819253259 793657806 593094469 741949342 893875813 206024708 94510154 668753817 959534957 662913156 987389106 372790687 765181410 394500724 9035255 73331530 120621095 533150869 616709529 815728507 571759761 997935079 750557170 947818556 911721376 264402294 623374710 122720882 584492979 200591836 993842515 905223438 277657615 550880024 895721051 410869069 859138926 214783519 863900717 214150533 336187672 632480781 277252286 509984053 418943455 815010741 610987147 960385463 466640506 484722310 523383643 812378946 757571267 196746731 120129796 673446958 331813095 76123380 930755289 479414027 735003679 779382890 622292544 340662944 651770326 223452423 668738515 349535824 299637306 38210342 388673643 701076821 493408435 337272237 980596753 398495305 855585401 718572973 716772727 462959212 503150674 839198105 931002394 772604536 664592698 461195802 772418589 669847182 381339519 200861548 320961915 910440234 159468145 149277592 943392186 89224540 919517427 93289283 815940223 130951606 388654258 136714465 572186378 250990855 672731233 885998215 237303135 323085471 573290722 69576066 439581142 394549348 27413919 425225361 418900977 631237419 584719389 976480630 376527811 152289707 110445788 663476930 581605747 916079682 794297338 605012912 981863232 536934815 534582056 833268495 497314630 199770553 553737568 601728699 496021924 810856065 992232728 566839654 675312423 192777097 657598511 119255827 22412660 641187962 803804262 427095913 825716049 558120889 952945691 49509532 565706189 248474120 278180821 292405722 733834515 852031156 138265956 933598192 380976547 276267439 969006298 423411312 851151846 111181169 110627943 645315962 356863305 985131838 40483204 635406639 264746945 989253802 797339475 201059435 742129443 404496351 396905686 825321512 577436551 469946968 597747150 507339245 880796451 149339962 770139707 114933280 721593454 759855655 515420862 645069973 158221126 313366182 716200117 128435461 604882448 91417022 439092225 752595971 724493987 487582759 664393359 434092432 459035933 662487240 313847132 359952868 150357567 332691138 852070570 560104081 766751683 692856881 963258440 664557755 6939021 734016210 294184664 473231033 540329292 272844368 618577315 870117352 704979704 214945989 748831076 505857577 321258913 298732299 132402863 194092914 880391442 501878411 246238414 969913837 964163034 33961243 368420668 830640104 418700163 324424657 933281999 596472275 161623168 470982551 641460792 111445446 924066793 142485952 268682419 138999192 644552931 827264700 70576351 501958646 902319078 845711787 496939530 332600707 864168325 846840984 396461888 949984932 400537032 278706132 125181658 621165695 860926311 726561205 260316880 465761792 540849106 588587562 901307672 149389683 723146649 15867428 409338447 778908372 292058462 163623326 736157490 735089954 764280183 600870980 788141583 666077551 481745935 517243170 902611243 245554413 482356724 301301136 813264539 439774996 407671058 510323187 524614729 864122060 480633092 893984126 861557817 557371140 761236307 838856847 790276795 33392434 509562168 136579080 745697982 927837702 792096684 764657316 604618368 279643533 926365212 703626019 179528403 780302644 417504791 330856212 337354332 265488632 336721689 560430986 646587567 853318532 730051323 806923056 550830493 7320176 528088764 651053423 949354637 325082874 988442035 24290679 583233735 332044737 124197157 293269602 346242253 176109884 792769743 182097046 303407922 715037084 159471152 391072974 556074509 443191057 222795717 301762027 609417286 730856946 41065029 787717745 302856559 823850178 8954854 637372782 47272890 918551958 540700909 482634164 49150087 38092625 56106656 842482041 64141716 632725671 747818823 470206336 504817656 125649975 346222688 367931 779633691 178926972 702814426 802338375 480950444 656474184 197803001 508775719 472271599 799458262 234161519 540868004 719599956 27957534 155235538 939021310 652931337 867371458 856977225 852234588 47728963 744076693 427523391 535827945 525979 992181107 596069095 161715293 685502725 11087628 526896245 28768165 252437322 470401635 69225483 789108078 666597317 406844629 457787742 928204085 183913127 610410651 538067129 347616493 392281487 689312580 325119509 797776376 836987474 200374123 478522501 192436795 320151186 362083866 376128674 186940938 952673586 238324057 557418707 71983056 189571528 343400171 743515977 111968635 63362940 318993866 528232970 219001546 34389333 169331682 536007271 91617928 63432149 286418985 267102859 521122246 374042801 580331662 147226594 677210522 627810976 750865416 868247439 274387571 781383788 52429600 992609484 401231173 837321508 117610745 584926268 773569640 410773105 602262331 141342330 427310416 508291064 12337412 40139084 59656076 624541213 179651687 642061457 925797684 566979083 857097496 319838797 802701531 882718778 508437868 931777538 518874577 670286751 750795233 471643297 430028707 157560401 178605414 256872860 111488340 48134407 981154225 839410718 324044477 570301688 157743828 869720300 882258486 254551701 858146292 408337014 974546381 54962665 280998318 229747454 583622745 126121805 450908002 765823878 216432991 657861116 568502548 151157413 559422178 466103091 170755258 828815974 889842517 690370463 780662708 66292389 312435996 669578783 817256141 836128125 922897310 464750103 755430545 479245852 282445166 663545864 56480106 178506763 842607735 251223482 945617911 661945615 38209265 470395258 970071530 648667861 139617674 91329594 976305036 596866398 631493968 898307595 841507342 687792341 301503965 281526155 247643008 873581967 79043875 557092553 336201533 136366073 484313065 85325578 21276802 539210055 461982093 252371649 244757112 687622065 552256145 70657413 687448333 759879002 250104569 535585061 297853753 563108586 147805121 221921394 769139698 842709508 150470002 848348833 769867504 116833399 790730461 342662404 373679907 4543164 646174288 972300028 240116175 235408481 356085512 631139227 567028269 530473669 144996550 811602794 985345183 305411274 808368291 290956754 942057128 492695146 542779769 736415772 785212321 591957459 482301990 91721840 993227972 953309145 714212570 478342998 433824899 991901910 684155737 709192575 882249421 487239624 522162555 788428716 236084414 539193927 523423991 637215205 317284000 91094201 593524311 761450808 808549427 461776269 760020845 371520906 319915665 456327274 739945120 117748818 623209803 695533216 900071287 264400597 129563509 897083978 444124450 425381594 948669296 951159848 960574822 677785676 122802683 862638618 38342392 969578707 704786514 983204488 303779681 577303049 156038227 380521539 823239022 323901370 683911808 520445470 226583390 183628386 659916505 331194674 135925140 991599106 179054585 448203135 793807614 5753957 963550910 204437866 706567643 952701072 809340372 699783737 453044799 721549860 223487396 154779890 633409964 867576975 561619948 612497345 576778743 920469753 802703784 114820135 801015329 321268149 607033161 507277797 408677039 865365521 212658159 194764226 934472232 874958877 466880091 257728676 713768302 235702043 314616961 15889372 587873533 839397055 759967797 972560333 8330878 163207800 996770938 551959249 306876393 408635429 740195820 836119907 165676863 355663392 294034344 738471089 41740172 327532265 748837587 736230941 256436663 564569642 467400071 895945434 656381932 803811220 674452934 19136864 89849432 885531397 346662194 188110646 511380675 327988641 282420351 235996614 422385676 566367654 8156284 372505291 665697978 669025277 352826924 712596891 791230693 185196757 244009665 994067824 560989615 5649679 203351954 985342863 539595192 670134508 916296510 318052781 112667684 256556440 114629264 302475062 527456814 314446079 829223180 638750456 657670492 850678047 524131055 939639743 627402057 88827028 22756951 289180503 159329540 686235833 72485912 548272970 669369184 685900023 712077281 892302998 495516469 529729941 677484824 961422470 475218976 659144687 83330971 165809635 763583032 276276543 859520848 38447084 5515341 755896688 616882126 317755978 852274874 179949057 692301380 56942350 779565218 665403468 766644383 291182877 953165139 248331289 92100524 641528331 150708336 263349677 678308559 309993142 233301795 362272696 668521564 565694745 14456647 475593822 766826615 627739077 183167195 339020470 903533087 709874665 867417454 990528517 546973559 67502906 988225538 371893546 640900357 476797846 979007671 747046072 10815781 569249242 80495665 76731071 258860724 656983328 388344734 513075299 907738416 444004881 763104420 882480278 447316424 728981319 970920441 588183095 596551730 235656960 943374951 48811828 168210642 408451247 28735901 50460522 856402874 422085673 608299304 595945707 518876688 216568908 202870755 8593068 468558491 512754254 203173804 466862592 38597379 219935903 604701335 880999518 544681282 713816618 323341333 35152073 177067556 799499735 520506075 378535144 480263598 178253821 536016953 714583445 541589343 788006909 453172776 573471049 970978092 37825014 160013148 798346353 611897879 381515296 20787030 405169949 269169404 221849328 479649041 652681319 280689502 839684713 394524223 463880775 884438166 780925327 626402046 40789895 701661465 75305106 617215633 259505044 942920948 497466182 469716689 157972189 99818167 24125454 173403139 992246897 646613851 209688424 788882291 236891819 370158325 759287143 398911720 99869828 449517097 680972233 498959909 187013156 887850078 996043230 893389345 543737522 122368042 249645338 203463540 860553496 237307861 986999628 877715238 204147110 910065387 324586486 194744082 903802444 449030969 457108299 825416432 899081292 182996484 483845966 403934560 694629818 558377428 769799016 862682901 689923282 384267234 463380987 535233900 788410159 862350622 948975446 365723143 118055090 665899721 992685203 618877503 1471547 620388093 274026379 681781667 198834866 788668603 175487133 881038492 613025072 88962884 517319595 923348933 80261960 998170657 599431310 378878412 223521410 108269296 3594366 592143096 943623235 523679379 812195574 747302478 382476309 317653543 647785944 306238759 928749860 893908638 566507990 208341003 173812401 361940158 531639818 386540622 121363659 281210799 401341087 18255933 802377619 938367456 459271081 856332069 643900694 327686702 799163089 501751031 530969369 395017843 428799483 227135552 387131951 862608272 715351473 615383296 199583716 172476542 718060313 853835686 751182877 670402050 280806248 633768778 796542032 337737669 704158906 270340269 270901456 816022893 632668321 707936529 873786212 9409693 181184061 332761300 490726333 266597237 587353320 984857221 205438504 403376216 749641215 919750512 78161689 174838949 465180876 171963791 788237904 369893438 728136824 138849115 591308282 926175187 925740596 122098305 903634674 50895158 459423698 561330744 598710345 501547541 515140173 119209988 941592141 410938276 987155194 57609561 543325640 730399563 627672146 404977215 687408842 340506777 185426890 708072856 262785497 352354801 416490367 142520710 586482733 275212314 833622131 288059025 467141122 193697351 148064159 35029044 396828790 885836550 218733586 799840979 652326438 972908429 284497844 272018680 751843315 708933608 887071100 332711340 884469328 421602485 969735276 793748325 570376988 97766979 536770803 830047308 233575254 122809020 439760509 728818111 853435964 897381784 874368425 171949847 571530027 962506755 906937859 644316051 671301506 222971506 866890250 175319721 835865541 761595988 9434361 587871173 449086340 295688925 845996215 772011402 374393055 150105143 738025966 238950660 19236825 642469418 152885746 323973903 231815144 742857805 346228230 746945331 136362751 140871618 178199929 99377125 55642240 82510156 847537724 250557686 100959207 191425856 960151029 641932554 198798735 46289636 478322444 44345959 585778569 514478724 228008026 744038310 495157769 909141246 238744912 828172195 735356288 794048896 288426596 473176455 892903523 360333554 350514286 44940254 410250121 630109890 93229521 549979435 201530908 180176823 276332269 888014720 994731166 777909753 567538549 722278221 748061278 955568190 551302958 925199861 892170816 583254820 739591853 505531908 484488551 215396904 229372731 191767487 212059482 200794990 712623415 107217164 180653863 260563347 303344321 276229514 223892637 963394367 576968943 386296215 52153025 390863790 103138140 371131431 99183548 137065000 677460606 228668332 653736009 430217783 898916203 577597394 46134075 405336960 134140022 682457165 319475517 158112915 307922667 267159515 319252412 856747221 463107838 760346578 211332725 407409200 952196043 845834545 529427698 801372401 781526485 887473468 911208909 260518584 900351605 955885144 700545610 453117081 795282312 245406799 963192247 299981495 375130170 949653005 887901229 347031708 469466423 618331177 868738923 423784731 163376416 477124099 36720045 184134648 430344277 572239906 294249751 480096387 450494324 45799400 931675456 117348477 489086160 238970040 493816757 656657638 266198670 330743527 371217392 253833276 93419211 566199530 201396208 868773642 196205595 724706760 912788957 270399067 368801547 54647883 515948175 648344429 736832126 846823007 262203492 206601195 297104028 157411107 21012339 261191761 990355036 108399994 992461795 357328014 871561203 640147048 467501481 456896713 162210178 197298868 494304832 927041517 361518456 151264512 852511098 772149677 461379497 851071879 171541550 466912403 70126950 169086088 20293128 616184831 628851805 978843106 820787596 862147185 865489582 30315558 153971162 511580927 433836899 368641515 915761076 600536687 188323572 291681298 963522800 370994975 291534156 521722083 331896946 335057451 391628025 416853198 900228848 823059134 625005067 6934367 281768255 278033013 563621397 311844027 810780708 186281099 48525363 166082929 521438105 716456319 604461193 534023330 153351329 552326683 252817761 997467899 147992074 659270527 206815038 380144183 885812939 927293350 327146708 602033781 952501222 1234707 22713939 539771040 897145723 688320170 945484199 5380392 449660358 527129314 892300424 609978272 438778129 335187245 50826150 97098647 651866387 848679176 936469760 34338094 988414585 105972677 493107902 182384374 745845323 324969437 967764927 815393003 167656809 172208891 275137230 601079422 733318542 604108525 536415785 703033079 969555826 758189149 205499252 643471750 661000223 435230829 589247649 651779146 299773575 995300231 369437384 245841357 833871630 136452016 268247320 600691602 349701284 181665635 605722296 923135488 942940470 197364854 918783094 588806395 695590573 950351486 858740730 941932132 667641169 136183370 572052714 248119890 645948041 646995924 603688312 742780087 32558314 872223735 3668497 441947731 900599040 970616729 832539265 505414278 619516749 815535236 497074010 950887078 270395486 666229556 568129952 193147963 734819693 692992149 952183072 960083924 281193939 774073278 359412627 46256615 281546539 221647688 488043641 592014198 900238154 243326718 86564989 311636908 778004637 380179491 879998053 741282894 145146831 145838310 756340380 722003761 760610532 930279827 844471157 382983223 171949785 798315937 961466111 524841715 195935375 983339465 933761837 4308444 446626627 362751862 137405288 344755768 501836165 957548106 205458466 163126262 155594050 654558778 702391571 254612750 960476081 48773247 719738095 320187169 28675961 718582650 590556644 179479206 79951446 940303495 243946905 230463594 764837090 305161587 214986641 119551433 832041153 948570088 695599549 699011303 463389255 390385388 217487583 205496271 42082913 238954333 61465575 36667210 645798047 312557908 281864088 621974941 935692328 620653861 942442388 400049656 456899704 32985390 678436635 391546327 638102336 950495035 607965925 636156776 730273592 155349751 983212964 839704204 238032707 429279317 679228023 556647099 442295984 609092404 338539014 94193891 551511700 244394856 412380734 430192759 227034716 989424934 220115135 828953204 166720724 674981499 479551791 321711696 66005001 932045183 535375888 953882784 725065555 812830267 26011472 859667318 10668080 269023194 157524305 150117474 722850637 677433454 247361576 291911476 288261259 331622237 669338971 652584176 433111632 592524637 507660362 254570313 62798005 333691103 114911506 879042899 711699517 434804031 447102491 314990480 951473458 502720721 166780247 299039607 379917900 225524794 819628931 920575112 485536964 222994498 260534423 722529092 833024732 772563789 821789060 990124116 214854869 105174263 807241857 958792211 155637015 666039050 414921949 141719024 523147379 459601951 251120759 763220280 436927706 14930981 478876431 723279977 802408900 357365417 337597563 335017144 680755198 175916292 829861701 388320165 775343790 650906134 448503190 348380918 170897301 333207449 974167156 879310296 921730527 173524631 286601351 311303088 643938635 919482405 196987428 577579638 428823978 583257295 158386733 16397142 666082891 349210093 475731298 624187930 777865523 345568398 940056418 795783475 922393395 973457464 244621393 896498787 986848410 462852794 518918919 871542323 496449783 536608818 529853832 241287582 365863341 540489225 6102842 121169982 22075729 198199360 909814524 400027852 198437243 976519073 682636445 463773147 369432070 58354846 889762312 906921958 799996605 478560881 643475167 538507541 693525445 755103657 100016633 359927078 791757643 767021039 69641257 196835884 900699622 271751859 26034700 408973605 36235313 281394234 908833713 424935951 237955684 841956000 289616783 364726035 102114602 131967340 899129212 878985287 381440638 279457095 617830309 703936357 476395084 47978346 172222683 991539820 702590703 934668275 246552729 445170515 808614900 636617359 392211782 506440372 268887128 774449380 138644440 499199793 640750943 385669853 193193435 280876294 570180588 5390313 5504512 495944705 3953122 258047172 313003262 82870528 881530934 612301822 444954697 888471060 468170112 154258976 959213346 287498838 841814423 904614915 379832033 36342698 681288162 88131776 953866208 542345837 746816056 178317977 379418182 201165659 924483662 366234120 295641482 342173967 931559458 907286243 369071471 176368363 905702456 132432370 540195934 336667965 187394129 528632295 792950883 633062351 128502136 404746243 401824055 585053191 770692241 983713483 703928400 989252785 727260522 547350836 442046680 419037383 307269681 331287259 712730195 370179322 80462123 982492214 986323178 525596806 945760819 855079705 75253537 971609208 530972858 190489421 288064388 959784001 485448964 645023183 861576596 746437142 206038745 47992228 652567940 852991435 102183663 910990181 223139948 136113806 506944682 642296602 473485917 774457475 149107993 337705851 987279342 633226091 429113898 308551159 716169857 28761789 230788058 550966388 907815157 296757469 417092398 500073272 602858891 929900346 231017938 733328946 472135306 991011684 943362505 156569527 25154645 422221786 87503072 238137182 919105720 300868384 285576753 107053114 651009698 266077064 375962199 616329605 931349214 189977804 144905981 602904815 622452548 840108675 797651610 68534063 816996275 397912274 453645606 326006874 266612485 989183962 775109323 69273285 256152173 427465934 425216111 820357862 849728196 649761200 426576688 188233071 973345571 563808966 996287402 762475153 400061602 616682601 359052199 275113716 84652764 374695954 398280270 234587378 149039177 359820545 178697482 554748772 893448847 684129122 103815117 132309829 904953893 343691469 103764160 412817534 974886814 476196551 167912165 616782238 879633656 794594607 738927941 326948633 914731728 574383849 484521998 856876247 366565526 79241573 979632640 795623644 144788725 325788623 728728716 507569985 410538385 423831254 962047105 647411515 497123703 128188428 437886182 554464825 56797304 112881077 35197441 748230039 865615406 479735716 425930968 983754168 412374979 287903838 830636936 401989365 491241839 957803782 499385602 828436875 100906119 660348684 709871287 666912751 646898268 853175608 591689045 567433569 220674239 471529284 855770223 778802773 481011403 155991950 647652384 407453174 178334945 387482261 666340624 222751678 588209985 197268915 723537581 739467005 809606253 620779380 307754964 128753589 624604576 114218367 122600748 719634297 659041235 302757593 590599582 188692096 701967996 813385857 793151784 734752805 829907632 479821773 125071561 5965232 414503201 139458735 710913849 769053639 775258265 869059654 436972552 527162737 148959933 188934077 935826893 736555994 503601294 45280768 724833185 898685031 584419100 840914382 673928920 109782187 831811192 539158848 34811913 585347684 220800044 81277177 19572822 171580388 35731708 758026264 284593039 958062795 355237791 414826069 767845043 205824222 863815404 678712489 617130972 304120658 752063226 641143452 336795628 483037758 498768107 426080421 5932656 399341269 968437787 922075366 906736915 870704021 331603188 401971221 322891966 928100487 492848810 811763410 282213325 23939315 180716165 145898317 739280418 186564124 919843265 914603785 848613105 797182692 113478227 486214236 709853918 836174159 546659163 292921179 766085696 9001045 453686439 672973260 810079387 646021900 357052222 190789489 67972865 119307016 422684802 296140711 474971808 674791696 747470357 4073216 612236199 534874992 619471398 924460165 781925743 191790122 471371532 295840168 694791669 692618292 584637304 815300535 361265811 722436189 813742869 173662361 668102938 932961059 708327888 672979383 201709358 392523475 216687266 61981024 653656156 348687890 944496054 441073939 750161527 401362773 677088917 728866763 785659207 409728627 800189731 766039625 346957032 440718068 885662067 982028974 372197569 530369824 538575080 385579769 87191954 218046834 842049749 437210202 746552707 551512178 558185835 552006220 351332740 558888196 105052458 445324265 861210489 163255805 623736835 289105157 42535492 133414201 369889140 793526293 786095715 315292663 693173882 535514150 132795956 285653294 536879170 664818449 78920522 952214421 668426379 184802376 546816260 816551619 817936600 995255705 62126160 598384667 907392535 748467963 451510910 412344321 919541974 718417191 958380790 300552049 263108985 774885247 194805308 241236363 379267288 607209926 51277362 882387489 716680957 736761203 611380595 275010215 474210484 415169449 894627572 934125042 978105347 901068106 441099690 37300962 146577484 849248405 83037227 867922100 539705301 618040154 550682686 429872294 929993846 295158041 313655115 400292155 393526508 196537420 333518499 363936279 245538825 881132784 574690255 34423437 728842426 103655450 58531885 75868140 397913058 307648131 264311402 207811583 723958055 179599181 185742551 620619310 981421287 929606484 324672793 523973397 902970403 3913335 916553489 414497453 712802608 744711403 803117131 850352745 773901713 602725115 404787678 402098238 777237750 770460672 232198366 522996176 165572370 503036349 803696400 573237550 58288600 637466312 416593623 490301345 183697170 689352338 785392479 407176366 645306391 175080015 163904320 428549419 637297691 244666697 629151789 852256607 23733982 652859306 729997823 413768697 220349667 819370000 877778266 641785846 829789121 698016961 680698200 237256071 471314694 335407199 232567494 266501596 668274723 802716262 626901946 104587999 834913173 934007745 586525073 909588900 143373399 211763609 336811724 941907541 481719753 682536484 911807410 491253932 754621460 948272072 666404458 841634373 78291506 498963745 570249036 282924482 756784333 376577056 696230760 82481683 310802387 369596757 235629134 470202143 655961119 394779203 253091732 652799496 995423774 91664321 787211105 79100162 818729878 501999781 487431012 66444539 93383334 539662415 903799280 768392842 109574853 697984781 527508838 693413943 41390597 373972564 998188974 345078926 280165035 986277715 348730660 658811267 23998548 790527890 327345554 132528569 679211663 293209370 654943378 257878336 959273768 704430844 40560229 67666583 877590355 846553383 60279437 430959501 639763509 165322027 716271499 71276723 210438690 346504070 7531723 727850441 998791560 294245207 873293644 897154416 49901519 879141370 624494231 583609600 343788892 669230792 997351929 977698928 679046211 831878466 595832740 441813955 307502069 616427040 621424798 949261946 285441995 543200292 121034255 227123834 688171917 851599267 756396653 723594916 362744113 837542659 437361428 214914038 401248748 945203690 447199223 490924939 619146839 197373240 214520973 454254733 917815439 854963173 870785388 186515894 132879336 189444771 236088817 477276138 755837750 491305309 773107175 353330632 878877002 113099435 395688609 953760118 983054837 389828330 349389925 755538551 747174900 296033729 225736555 555287191 608836317 497988872 35864810 881291938 243288745 628728797 348622321 740477380 229544674 906493479 589475693 272064146 443036046 111531482 653481947 924117030 845459412 894825053 605023133 401980117 518438866 659266877 736973275 667397489 443867561 408247701 925435083 334235304 245273711 518750537 397269327 183455503 800935331 825109228 302780172 17468352 470494450 978969872 940162752 527846387 850021108 813030618 792049491 996105612 468751239 982985250 138871106 929414382 903722955 478426815 284835518 938717127 368251582 90968595 508903559 918395978 550081241 590239718 171032468 902076223 796571849 952153438 239554752 772671761 92160653 372762353 937216033 578817546 461787926 587947851 824355923 3931097 780847966 625990527 498258274 70778836 558256859 373951540 767142491 137388000 967367025 128190690 200761170 927260754 298746033 574066956 564083831 913409596 325953074 184242929 715450703 338286392 937968867 321460522 643865461 644362019 235603617 684964013 81491756 712583138 920926072 17608058 699207356 514373911 72748910 374221585 976432722 201964699 74938800 169456887 389501813 849632666 293441341 440445069 979207643 611565445 172074565 189545909 181666804 290370002 180964624 106361921 321601832 67512844 552188760 80265241 173136606 75554709 634694194 865726396 490541830 293450654 951885310 209464581 445491736 129460892 466024883 58119152 606614691 544062319 754443030 688240949 206880248 87292675 92476241 144033870 547954479 279246424 703860106 609968139 572517542 520609017 256108729 605894272 383785829 735466183 237863590 178325852 399837827 898267021 493894342 450039801 118470665 578421754 669645676 654801450 537320574 272418431 424740495 209034647 163565433 44519777 157419905 318938373 553624996 551617820 915956595 481139287 941200961 655894216 530440049 173741821 773526086 492826847 527732895 572895232 171496044 235416094 530321804 656263815 789824795 180897808 571040259 950516896 961036842 840535534 374305372 845272062 960825149 535353460 461051850 725291752 906470955 711760321 849953365 516625269 899610276 810776918 213017930 334855574 773377036 946827855 869097940 534488208 670041177 792589481 169297541 788380001 57494163 852549057 917313895 691247409 205558145 770313955 335728300 903408527 757199218 897851641 654713689 754458745 714348852 597567693 629249043 671317193 373443418 895695549 797841349 436928200 296815640 749854249 806410604 63172246 436224033 642108014 80949098 785463275 574807392 934412893 54408352 934749648 61684603 701438047 557324827 896901493 85144143 659249810 896693435 702585062 542780529 756865452 312995320 839094049 66742056 881271294 220675801 742254594 558906692 162721084 922559794 28642214 314428676 584155229 149915981 315441200 882400546 608270213 193434584 289024913 478678807 308842208 911624787 155517894 258082628 138669295 318146344 963586226 103075144 520902458 458630386 925689351 979466526 470106763 915843633 317161345 159655900 976041492 840749369 966738451 752815067 528561412 302608950 620752506 370463865 294038973 662098360 657784638 407255030 780998064 745639040 938715905 390094941 879716920 578825875 246128442 878078274 688636716 990927516 252562490 518979684 571827045 990891395 773638965 317219699 695093967 784856342 770233683 686073382 142040374 674914052 950840887 97301319 412362550 442399384 467243138 57512889 434483461 479531674 257963444 605700510 676032583 220924970 834733980 575459236 947759753 480312206 36455067 973182309 137502956 273548290 862929543 899828344 853033565 954209386 431955147 605904290 186997969 547063616 539845549 913523050 171316798 708925670 863901045 462120497 550962644 552695956 737673015 178440524 373756173 525814473 286339185 63103582 227615331 82192571 696228131 746127433 551665037 712909426 124124981 525144653 263241574 343810976 104391483 655245787 96726747 721186420 692104533 376107957 508433737 632517286 875017280 614291721 467068295 918516661 745412244 691660483 68892066 331586084 830643983 850335398 180837989 438844747 752565634 363027503 128781359 32557062 863449395 517456899 767826178 241916843 500835174 234281883 675069462 708944661 123936354 507329436 301143318 560419127 929030484 582585919 988899892 616851151 868938600 560262577 803681514 683966201 839393674 248505165 602730425 776402006 847411692 901945603 852398397 111697075 413889473 904760665 542967789 842995954 991918916 977172444 512038273 366253284 925020435 818327696 769857116 912441385 172554679 400948222 285501200 953576454 345052666 730415467 344628541 118075247 12851706 619592225 404373650 466879543 717988397 69562771 465750295 84736748 352566426 875515445 831414441 467678508 249306279 83765280 784401919 549286452 552203848 277726887 389636777 44728499 290676961 156684610 383971739 665494049 382316814 490690677 262479902 399585134 636560337 510013954 391070856 839269072 393617624 869849115 43079650 803925248 513830351 596825577 415270502 14526544 157231037 220860288 913752995 835347193 970394532 557902260 260888996 295359804 418724186 367438851 473491771 125012609 274565797 300981201 560536024 802675307 99549422 76682789 545179089 470468276 851327775 617229079 213266402 6066981 687599385 785132916 364702325 243106045 80605457 25176707 894693835 180040329 661254299 465595851 763179337 960685156 501728154 264050257 252716919 319248833 554069422 166661877 530335180 517915151 23125511 27761445 524615271 283153136 993334608 999507428 362336504 341516418 18500595 905317943 192230297 443388643 487161468 884238702 57472333 527616307 375540826 423924896 298560091 699676941 684525810 135109074 854207149 472191546 122167508 452519711 781553228 736304001 303174486 737934505 352430412 758572281 23972663 389216430 872529788 425710195 688482988 647857356 647597365 875657520 331490841 534328504 588375337 593931559 44459882 22235201 250768977 17495942 968930174 42808524 442033929 920570612 317302872 461097700 95216575 193537021 150173304 168456781 186350762 563073257 683512396 704377619 540192240 233033177 9023480 783021892 511237328 210987257 127122131 601888062 797942246 728614489 651799738 863221878 227169500 481122819 586935381 366022426 247153263 44644077 329454638 451536491 175448176 222783886 245869154 613576259 643058064 316656317 975873160 333372779 743670820 3694017 915287476 858097790 596408603 605594634 623150321 554836588 131809254 270633253 551580880 205687235 850097588 976470448 160878602 461342603 652434491 448120412 454431172 384696140 975829244 53464106 897603623 933825104 472866251 752102025 157263069 381050164 845010754 719655915 154786944 457837130 774390747 515081075 874353997 489562913 326242911 220730369 170948131 519794962 971463907 611922096 196239140 257274118 506880617 605172836 906853756 219449326 498004071 450231410 169590658 913314177 870057968 522764698 763135644 420469143 847379505 374994897 426125411 92677926 414739430 649153899 81258690 43879476 532260601 109470258 97574629 840000336 135185047 409647122 469258433 508898991 979361294 451038761 522976226 759900467 780615074 741364013 849137688 905695398 631790695 31951503 551096234 454991763 844251388 886115519 974914457 307287278 977193229 292635982 879889138 16375395 463227158 332556467 165017152 422214803 749500079 483851033 925551269 92690437 904519674 490306595 14649325 540594140 49571976 727798085 485184737 254644363 212162642 554019964 867188415 135802767 198907591 825205958 828435055 116871980 676989390 984878436 168653325 987979661 981913205 280237280 833724981 670072117 328017951 487803591 159747434 605401333 615135386 222893503 971168664 641561210 378821887 735440845 165197868 325902660 154086939 793401367 259259778 19210151 752057518 575934274 648259646 315544586 48668413 670043700 273581565 700337259 653651787 604173068 651226196 305469726 493803820 350002420 618553504 397553973 226144902 243486439 302480227 283560264 695316466 160752677 790570057 185299702 365534972 969889443 990949495 151340595 227764862 497593841 834805667 274250175 821377627 268511387 485136883 971896462 954475127 120639757 271551234 715007398 293483156 930854460 177618896 457597723 24308726 983614764 39029391 885096215 939741933 277192364 377720642 683657283 591279472 128103133 462071101 399382530 207361244 549974269 189086814 138313964 718201107 189979313 490211448 12881457 291240282 818408335 19752531 973980774 454697548 203086445 471141223 775394858 464369301 755076832 798069201 373514580 613832499 796026492 473929102 957326916 723175255 230091452 630411947 756487611 26693008 246286717 249320902 634950192 325953266 662678892 444519082 239747074 334578918 132982192 405592025 319795843 214002840 786869731 18314569 146547108 153914040 913925252 317026092 709952616 840126214 406466005 792952455 127058050 991405572 867376855 928163424 978005145 961687951 375788912 653113411 65492088 960716981 795210775 539530051 811063835 33444504 589183319 10024089 82696063 352953963 413642441 103670320 180539395 908703954 243922634 950334217 283923427 73996811 484226059 679058197 9042639 101773833 508355994 413610015 19437691 188529176 500327800 935743536 110214673 819948228 506862932 444443878 547854883 388707055 899764979 286935356 587633089 827506013 556996929 242926342 534407153 89560495 210495926 304352558 44614480 472112590 165502536 220437986 4227649 607772511 609370602 588878345 975025578 375815070 523209027 201191520 653047821 23274824 673437177 876800015 573509963 957476998 561039429 904024426 250957239 708244295 534564294 403705567 537339220 720712030 637803984 901087716 930933029 618699309 572759123 34244554 537993459 57411296 118681610 135989729 216412516 657583167 919299461 471494785 200613747 333162922 97060696 996307180 108801058 841581702 548594408 124590357 448597773 877864071 546952127 674240328 765235474 454697066 300792777 24835646 19793535 238214056 231224972 912390569 190529679 745811067 64995161 610328431 422109781 512239110 713013574 221755247 796924204 646445965 657147720 661002469 866431550 583520619 856861047 822089516 209238008 308604697 432103406 644821652 431457103 191374800 955689757 953380011 482802560 72268789 515939667 147830934 824106251 361067453 64315026 669023430 856009362 861755308 950602656 111947058 413825427 481644740 214445362 185536475 406845049 271818931 587713091 993951553 360006825 534395518 718954752 38272119 438680909 163115891 912809932 970574347 216847958 763757361 562049731 149986603 217352303 26435461 142124577 911166576 618351473 440807661 670094921 143451945 891918631 71735603 469801899 648714224 435723947 170293622 778129889 719437502 887743822 241049739 172952780 885076596 167364859 21294225 798302842 795628097 975154826 856179112 632612717 529976481 845155028 351409687 292685899 883472392 226970495 541743344 109464481 595085003 790828544 254019 546189045 331865175 125321094 201481823 436503007 362204453 557109999 152804100 777943756 657588272 722127065 811041516 140047676 769875349 468057075 234574637 890675628 950316061 599084946 217672628 869482703 995757730 862053403 988468325 17535579 279807734 319277647 222517277 144204339 568305009 920520631 324542791 897543125 566553032 339639114 674854863 695275896 284601378 856653186 588049747 996733317 351529008 920079788 170695687 395648215 73874075 746760933 966612265 481702805 850240342 417580379 529876643 722783702 239854537 641658062 818242116 334856863 656474422 494921252 680503543 543808111 233416783 301176303 177997758 760129920 298001335 471881368 12465273 398949356 632337916 91526959 186765970 210857533 631357855 821690008 806281575 356802071 604263751 529295065 756806557 637536075 686979169 54184585 585586755 471039904 700632077 649906376 16420592 833962758 711218615 478997856 722032357 883217833 70530228 445084222 265509703 979168669 261258703 179419975 310352850 933671362 916210657 271130267 210970700 837752484 792178493 613710803 445618808 724678385 187114819 431066380 626048781 113925051 574671585 306387020 945716016 94750553 969663557 801776137 403144975 329920850 576115674 749617361 177584718 298548850 985712301 636464649 625309778 755013292 379788360 563736975 860211462 734831080 921271520 472976008 973918911 270457364 749986352 483844014 220158283 918589474 988888142 161405813 177249962 896665170 466627203 874851082 759141592 413690736 202684828 120247492 390693489 175713939 748614986 666194419 78719486 23238359 653074288 552347068 43867615 19707468 308411539 703628589 734126419 753605000 798764749 261137644 650571195 23697362 518198215 973627387 209142865 541244502 251836513 785083792 249604691 596895155 406058379 545382295 15639395 236968602 217506805 985580397 907277447 314139996 208042952 61642909 987935579 433053790 382526071 787855876 763334000 775614133 220320085 692266901 657063857 211951215 267601189 391565508 836479479 210068307 388467234 295164123 605204481 234895573 181313897 985707189 230316019 892232963 587273751 871873256 657764134 522340349 634591763 126290117 458086147 563479212 766675125 735356530 126019049 948129650 379022413 415178167 497366695 861546322 475965177 753837924 546563183 192702204 332885963 402596362 19241466 643138186 781716865 328010520 632678900 822222183 334659892 499985494 806141733 934707902 268719735 758974099 564132321 202500524 25605696 607839064 809234385 294134778 336038177 694195105 691415253 765224276 910448382 282760841 417922494 969918499 470792600 122298182 76413367 829824575 533570743 892152726 875984120 736589382 723360085 305455677 578456149 974634253 558713300 919283350 454170251 266715969 726878430 172815941 770842948 877456295 756806952 886440084 700270006 990722150 877599875 746046605 379414777 766380850 84212793 354569029 732877171 55772136 737248408 867258901 525557474 425426843 31222628 759098112 120063226 307006930 711555466 60622390 666277416 106825758 896372724 135701852 826072939 628890515 365153349 533664352 779610170 554352868 239898929 769809063 398248455 3539215 813721087 780814833 302901203 111516849 881188417 612824483 460665030 234242645 778282769 428797859 797168629 181439331 476502179 241367964 282789813 904911041 772858149 552854558 492073768 141715113 568038422 364103055 744904776 685233131 654456544 355959274 807570971 322680125 501062575 219771352 379596260 958426807 273604900 159659820 816155315 289272214 575260663 431274886 501645173 616378765 705553829 258157100 105939587 974658878 757204304 375140331 24847006 341559402 590090886 517812807 932560210 607690829 237297379 787731477 702258061 353497850 931565769 468465504 140158773 762754208 765640953 611422784 367700260 410275016 888265164 464089024 726295983 437843406 522271154 71760567 606153855 756865517 698356027 886361664 962932488 679452979 489867321 795422745 441476406 592652564 827538259 346971473 473855304 979514841 153099294 572030454 333852132 449116505 383929100 234072618 749030412 970852074 449258383 131109438 788211891 687066353 703236976 316281255 94173201 718404166 143967860 724813452 181242835 8320176 948644615 782079202 588972728 683174501 213553934 77382657 4061628 632140570 108115502 407850900 235041644 210705583 349745278 478290525 927556808 181457034 433833898 751104375 510672682 678708304 867759188 822166004 845419807 80765276 604037297 180980511 455208161 699598687 692963315 898155654 137561851 285454400 523552980 729643524 236873417 809032165 480205957 931316260 186298285 664867342 129054833 273801367 705262794 737469442 897066975 943952512 773264362 343391137 984898170 759626765 980617121 949621099 233520687 545503579 713662638 720231512 574611981 851648492 940983397 155002296 42440624 298569968 934147661 696307734 180839179 413724505 929841609 417060354 793090943 214321352 14258680 44065107 463396024 373126558 520542563 474569242 205966344 585592876 700647686 835387707 203926429 933304115 806790844 465753308 483723800 732030432 43117771 232945646 453060920 456151942 210908100 977507082 310465580 191560518 536788486 156244316 857913205 313677594 376710244 31130629 757436923 813177031 999333007 558802524 871026950 194921094 775996657 752896007 890824891 924657991 447409971 256073555 597753404 824937312 933174295 152485668 393329018 580867620 754480510 595063651 797460968 819013457 661465324 230666088 431646115 122454451 849306030 460081403 209984919 167000609 168259713 53627254 771382104 424087815 68128705 825407368 898068648 756079387 667440324 575366693 536216214 415431773 735774623 343039364 472242815 503699910 348817503 689575427 476120124 999493111 198097416 345293831 509492296 409860956 168386857 924060605 298070226 615631428 152623099 59051190 341135356 489562547 905925523 234812628 687162886 571486258 193972778 488330159 466286628 63620790 783154639 308547966 535490614 262415786 424718376 156962110 847950880 873687709 829497558 604986722 601793056 600441844 300183163 655721900 891482710 968825258 738465376 461932512 716915128 486716823 694576073 174922581 28052479 138886024 148901800 253506281 108879993 368338602 764681113 527663252 181227819 243438438 542309916 676963040 175344765 251030273 284723146 947979391 650182426 271839567 423415341 760073703 214324097 460668541 691073059 15833263 518626544 70651008 749980534 828950929 930649160 447478047 70845626 729747691 360226711 776169836 181721544 931683917 561950300 555292605 572318757 331882967 989414625 629052367 925868147 119810688 669298018 550157819 34894187 758104719 158997902 328964937 599936068 208766635 95837969 371968232 223423324 774039383 36151079 408825445 633524296 603243751 123207330 920136150 179089167 698697181 571532267 911255402 196416574 293533885 887316570 234256883 222461453 451493625 241078702 506651268 513821166 970347228 329312839 491898876 593394795 733500278 631440827 70492814 654671602 349674829 749286415 743061232 548178556 726498350 77222681 389538103 68971545 160723683 570715001 948212004 826721411 337397303 779358309 266695053 712202938 992608583 447493023 768354537 354523355 496038101 591281733 156100128 312902212 638597486 753651881 481274157 724609023 198083244 434197171 562449887 333713279 31860241 28049850 792150581 881968321 682220534 292193978 22873426 886561268 822225817 443858869 514726160 692946560 43486375 33531375 696019282 531884054 626476313 640514199 595504215 221492855 515621943 723926618 998539512 229137543 326145036 595978407 170684001 568158254 598180553 607073359 302338957 669007361 373352306 912831584 552097533 331467905 21446163 871389707 977583879 940587485 223442730 255799422 707356490 386641122 710691530 407900375 766164802 800752628 953393372 503595637 749266756 756024124 534299484 848244189 633626075 431470140 843663454 55063451 397570961 946053107 183394789 508657747 749645241 726576034 899589393 416514975 38189255 498193861 206531573 592136206 779148350 367428264 932229785 543351907 346199920 140777759 823275243 683727453 183749480 249861277 616185657 485767696 168891252 57908363 579636078 605172399 548617573 57066859 22891890 924668784 327610848 604757810 87860316 318254448 816955740 118733841 224977437 139651818 369771017 823666585 462165639 750663833 445059672 398991238 129118086 368743388 786493114 730168565 729857856 903430175 156466144 824782837 485554986 960820884 928689539 911133465 835214643 28202636 782813293 886339043 701796214 211563957 216107916 175476672 798080810 807298268 119726737 625557600 419014605 44239731 400587435 241031234 281335281 120846587 920616647 947411202 738443131 413013024 381070930 708955025 439218177 626359917 356676827 965126716 602743220 121233198 379269458 203005893 798850930 394815287 88844450 876703417 625391423 143559592 507072002 528997611 97204537 577854360 9194602 446887543 934852916 270330757 532692815 104490106 730501470 611125778 880687049 861584968 890382524 504505642 361884886 778768946 107848558 346521589 535042472 70712332 777946770 523604222 927530303 529999896 922238754 463045021 387846993 625857097 507193656 950954827 559082656 279202556 195024339 640924586 349362669 89879107 353718979 303317294 818846367 750039925 706422501 222865048 282010201 511447936 762401994 847139093 10788423 492179847 643336927 37749263 979489598 344232360 639622159 671396552 304146721 952351073 701126550 259743423 584169803 953977173 82536490 262684786 44036899 468691877 936157455 190311582 948915367 798533950 781848681 786484770 515795214 755741028 175033398 476530117 402070406 60873357 867597882 353641053 293272460 228449499 165528787 44394756 126417104 998511234 765699446 812168352 964646251 737251459 256231599 320508240 557748095 448762865 159276859 914377826 617941846 991265937 18540226 307449618 994060619 272537669 878174416 531058504 158098209 996918764 848801594 411364926 791540258 623849050 807488791 421491664 722950278 759511248 884738814 909843693 108209847 480754875 179084333 408875369 742467473 439647350 288511689 885061628 100167333 344602263 520162775 95609656 420832366 478327363 4572662 528041930 56554730 64976658 891091014 224193912 818071306 597567028 232446449 618732246 738985519 362714176 763637837 190810009 558510284 569748102 630966432 135762995 101986523 589950831 583504090 763875472 473124791 248626258 704900167 879383693 798475086 477592274 240750372 512911818 894108461 568162247 761180025 132688280 446356851 418976679 71763305 707350304 478951320 972271285 293636693 52244430 569253181 597777014 761935680 320869431 841748070 40190905 728180727 896416647 971425028 384797374 986914900 241858581 72991771 601648307 326225823 40087687 523902739 709244292 577590165 356208348 378779433 357897329 648131100 636558956 836330002 748328628 515841475 286229843 411065074 545731607 526728803 195884472 553684838 482566979 542810576 635860126 444536558 49950453 25238808 598430399 786993452 508859081 173287612 854195270 179830024 839192779 766957602 960797979 294639639 805982094 543830547 898417965 926994024 816608688 46557247 316814697 250712780 264007679 153356934 150520443 684084984 58808645 430754640 541053118 625442616 361595180 673193265 275854976 257241392 136269604 209548492 911491100 270809844 868727950 415056056 72382599 857665798 530566159 488557701 753855680 43771488 985569220 694292083 204314482 392387107 613281374 613517507 823768472 220771634 219589538 66407122 264972389 421390856 958752111 357712418 63223444 631718586 580274562 90563808 183768196 724295369 8630213 484182514 315197839 793605485 730219310 817467443 354292650 754616438 93888106 626035016 276405848 787742485 294032907 666094492 866837557 887407597 335924004 409984768 697068258 962403794 753373369 199518313 766923296 494454288 689060650 77944984 405284325 267571737 472821614 333346870 38009532 356148672 714437368 616717580 455004975 347513502 498437861 935239242 908239853 413354457 337785034 51290304 363370168 992097698 613564358 517801321 212148421 100440707 128496507 334150897 417467386 385414813 448502113 373083147 910335411 468786644 578674588 254941393 397371941 224784942 252940325 522622462 465449379 649468087 796073769 944046638 831124948 735389806 104000462 747347385 993957697 251613422 527008281 997206058 471861905 161583310 841608362 737254863 801620150 728560622 77494378 50237383 491098548 941111673 63705466 152549305 830988837 499915116 764796173 147569605 118299626 915887737 129656483 726300375 329837960 594366173 185289366 278956452 714557533 108308160 253131645 714241244 723708648 881994954 503141511 739087802 449908947 613407792 397677992 823728808 770911785 550916422 806571263 467300166 146251651 663745942 78545505 432193341 25211778 287610554 646265191 964882245 500656592 135649389 418395327 714969508 287761674 304965952 138725302 254475876 905601406 497720298 292091766 211163184 313933220 700616215 516324185 358706263 408874126 894130431 460700518 245812500 230717399 246833738 359428798 550225465 71953627 258079845 46109268 444923004 630149774 263102280 357365935 987625793 278292783 151810303 950583831 680998866 719403439 455527281 284788740 180086387 855723231 203637847 941256504 820826455 129510542 351542882 24919227 519338409 692150781 517508976 174464315 604126171 854092924 518776784 856908331 125942464 609862323 337029801 113460500 6282920 338967524 465577563 145938669 840000425 915070275 303426624 479246902 815293396 120518265 695336619 308882533 500709421 559415503 747990726 839155395 706053881 619562218 158112259 640214904 831228155 820980739 937919147 745336426 219877006 43954158 812648898 779924331 313161952 938184756 854634865 213970958 668004339 164857905 875233975 413238749 763321017 928889653 177364285 15355150 608175780 731194994 87799575 741073098 310470887 151116547 967680111 644791884 859415052 121803988 689319669 563516441 59595149 173527769 997873393 411608337 469371489 783237607 914420134 698437163 889391820 991727738 61049770 583522599 777771449 421317404 801706478 761386402 158398564 414117965 482924294 32452820 956128738 776334011 196698107 996391883 72147569 554831289 693018743 419075962 330091240 251882341 787122807 542758323 983205323 225826920 201827147 962777254 2738708 707802481 36730631 985911888 355575163 833677242 612274245 923447113 486503456 409548908 542089525 114361577 342393140 733512579 142288373 189979560 224936426 290893909 338348674 277551573 806499407 838630972 388111105 221414396 576013732 950721107 412033651 169713341 769629540 473987227 679925792 13243320 273318716 767538747 898801304 176397435 200963813 157315670 793773462 33273892 682349046 20285442 425280521 749350806 301415514 660660878 444832343 133475183 712646831 564897727 520911103 361616629 392943139 923134015 684455104 817155708 648746375 778588844 635100837 561819017 590393000 963246232 75423928 986230461 820626644 654191615 494555526 9053192 219829384 853633590 662036873 692900906 663042016 694167686 490934055 909344808 700442149 362550952 180827705 988548111 720054173 139850992 202163581 25715643 28168569 51786549 955793617 267791500 367605601 321001833 96952884 180082621 803871814 276060964 803089714 79975833 254723229 420362258 792441194 102028632 581116129 472176046 711567943 503494733 319974789 36308508 83258609 403930312 118163688 249164935 260786683 764096344 498929272 151314227 107507501 776169058 310871536 34724734 466265138 461926739 315086318 35283132 351178292 570101303 629132268 841209441 165907185 977984436 547720578 794150493 990005104 21413096 506663847 109321669 155449529 824290537 99800591 413250298 261631018 169648141 479879729 462351236 746888731 113883970 339616259 407540715 989663283 69151283 761298190 262810805 801449596 648008151 888297166 435866079 861985882 926707976 951146393 262400614 918391857 726900844 822739896 764727828 719889452 88104452 77179260 862369263 23427472 860297624 864654259 628574753 633914932 986290209 25526058 241953909 396231520 862397224 526503902 510619282 611676489 575940141 2724215 365029853 554891189 367727370 733385882 951155211 745114805 432732073 731600607 666965481 614600678 340721876 405881858 164475320 149464210 558161300 597159948 218447083 45099423 483897703 747804731 889999966 312151288 735195612 156174708 315106054 676633903 542170452 893108878 540874051 919460105 363355861 179168528 96446463 687610297 25852582 167548977 85755830 927294866 348772014 752094349 311248579 229276975 574853207 17293969 423501081 442932305 818968079 80007590 470850927 925316348 367250561 461715305 754464532 361886090 727246557 938617790 100226098 68018121 157967007 745488404 876746639 274120854 321298849 934808848 148629087 272756213 533830642 568989200 27326508 120609526 748006759 71972846 417678497 264914101 87601349 422033734 934205568 442603556 982245947 811988760 705950864 887657200 698961989 119140890 992210871 925661211 491972655 713234157 880647314 313439193 507551692 937956761 825094987 730225120 366867716 916589899 756933776 939424636 268190654 509765888 388257692 355667734 595757292 410064391 907399696 645656501 627120674 287223404 267612153 722934855 663586837 126255434 553431443 642652524 835589615 475263835 529713093 37139166 709357172 545527716 968473790 779365975 936754671 584459369 337930329 56808278 597367452 976974048 832924430 267854243 161750774 586726468 572802669 81663208 861730903 701606179 725100415 319314287 616533079 856180094 991441832 569018346 122381126 463715244 618308547 944860214 518995349 133734903 844246108 545465413 746738775 305520350 483234727 752805739 954979258 311003562 993947804 835333339 759271423 327407998 539430909 985228391 344352630 301366900 551216543 699424105 540955304 456382853 481990371 422756169 209347993 284282517 729171266 812211888 203443694 700975752 664335568 278323930 220992867 938155873 130082109 264976511 163902434 2184827 501109834 1471883 379826943 205524503 946263826 15397396 482357510 587551776 116657102 107987777 555971430 387943196 468369418 638874830 906310346 165328595 62707640 501447755 369458204 321776026 504217505 878160127 900206338 78412658 674813845 652999856 711050655 257259469 542120026 872948568 210496816 40779995 994795135 68851077 960995678 934006915 912870718 349061482 363286979 918326917 60225547 798927405 375549713 655102969 43586758 76657677 696595962 735391834 358907678 391861930 196082143 509162343 186263356 131982537 837728763 870999306 440064157 525151141 726242530 490668375 344522315 184715309 331092511 950328029 234040960 158691168 116227828 771909940 79382245 8795496 90289699 96079036 723033184 546789503 551928849 937917994 499846272 526844293 622377088 324569689 845913931 574168773 318375977 315257651 423132835 851794561 330762501 817083336 535407330 859384092 663862550 391828912 63141038 120610787 182457476 363151026 271050486 717713002 42536857 865076032 608136998 785882809 648297946 298107615 44933772 897937069 488211187 271735777 441910840 558066807 599010963 942537424 643201292 833306447 292691519 214535894 584054372 175721688 496752315 687115633 6907794 457729441 484579390 480173381 59375180 468846010 472671572 113326894 997011877 624136778 595346922 969308041 968594844 382532649 594969292 936079228 377832720 349706836 236813333 273540692 65230741 111198121 333746190 307089652 331361614 41381674 413209355 552230808 924773097 44115785 608318466 105790011 237016128 42501581 790963977 388132863 232014394 355339624 975140275 589792050 912409165 878701347 717101182 8507320 968835571 65768454 575398080 171030802 252379367 392031052 109609670 690565707 342587051 104478374 543500856 655651038 544847062 216625196 518696612 405542043 731486240 244092203 200933132 782023296 482434700 571103734 91057383 264717873 230193727 900239156 932734123 117113197 900179086 138348546 417856460 718751183 32254801 234287555 206832000 601777674 407856627 694771775 849496841 316775281 979463987 17108248 136923312 56063279 539593568 765732053 219468462 236228423 799481218 27975149 609524484 507984196 631613386 569857228 695857539 367100381 803843566 463287535 486091724 43967754 224332429 714513097 320564794 309987101 714063403 479668906 211993123 381590677 25291425 375178028 697811937 600630959 961565 812710481 280421273 32667954 247089840 826750485 283678041 442541356 894916643 912859132 644691845 565189747 974751724 401900044 452121476 476148835 689802130 723297118 513437910 990293736 196513863 391413704 586022390 610615717 217559775 565034359 85278408 3695897 592806753 872347303 645158893 426832964 972805120 392926878 7559700 167190032 924899675 936330902 910502094 521546979 882314708 986450027 76192677 372391765 313285929 932790894 266449870 775096406 886571876 109012651 10839416 192522405 270167157 970371576 227147320 418095003 750886119 988232095 409416547 614787187 117721272 203967645 4800465 79115289 153456776 859805185 892231726 673743801 173141958 236661679 132554463 447314814 4091223 194045901 605126741 498968312 11674615 470898995 57645227 590778998 550398309 726668006 882609843 993442170 794917343 247048521 643448151 709522357 84673994 968513244 762288131 242151887 811227019 788067166 725742134 418699301 937874017 544559351 50047338 326113120 148190137 971685953 150093274 149190737 874860073 443924720 791054929 798995314 363973599 148025700 265578861 326863788 889199345 604560758 284773453 216358351 640335637 826193363 856594128 449914819 784479104 200104106 322079910 662288900 805922298 493304655 293597873 45059329 274662812 21159619 831897029 444453859 531858200 398119674 368331775 640924874 536669538 697606827 632979085 514187248 450868046 227206632 459124758 41440635 83752581 940085525 634770783 999279584 727451280 224266633 661747607 892987471 904986219 884350204 573925511 604060198 598210166 320400777 580963616 37732025 592896974 156265724 818143985 828063067 275100986 439720511 738646857 727940775 84370211 385814704 584100884 349897348 692114000 159288530 217659933 224995029 730354011 540437646 901376292 284411350 135071178 435204838 446117085 548083079 793356932 22832480 102909250 11264610 324816557 289013766 309970489 23506524 593398719 850763619 17699907 694517049 411906351 618496087 702540939 212957373 896747139 150807626 332915803 961412907 220917856 837029932 343617290 214919913 376551076 796073520 345425775 795289941 126671657 498523491 700600473 777042018 765337809 622265523 158732584 292755156 250559467 29928047 490202282 527583242 681164692 849395016 255843188 555717561 114199010 860508688 656540023 390076254 458498242 326211336 878120690 988032058 981425363 38846185 190111876 806397345 832518523 906705191 76094229 354211313 980233430 164713173 997555437 411592322 152897990 410679544 587073061 293816117 148948108 487714007 469639024 760613752 203679255 403706269 792737220 754641317 577956751 418255301 709899888 69375770 808723452 297591408 393568430 800071272 304083911 367741642 907141503 467646022 434844702 693494961 138316342 485576900 460774092 555440553 903533888 574003004 656710479 93511049 669694702 2841590 39368751 507018470 69522348 635280526 56755517 959632727 597132120 250621816 682593655 119795489 898632694 580286679 995923450 662933306 10479747 763630111 132248306 515087326 666463245 440627097 476417818 436856677 537345026 116724627 18470666 18143150 330340304 882982808 800633513 222121846 312433352 124548711 76618386 744276825 676944693 293879557 855110483 658640466 735108541 187784819 206592601 982579540 571266721 518527891 948739644 64969869 437619847 706323669 281212126 830522959 887504551 776626485 70132543 711516959 943596429 511664700 901766359 898972191 259432779 116785307 154947573 729380007 898298745 793083232 292628794 909153213 126790820 751615784 39238714 487133652 775301598 96337686 970908414 972381059 959666324 584443419 845306662 647508221 926360767 484084265 306114845 873512077 396710524 442901463 738406165 727473761 964770042 228456650 362267070 38787161 870531450 873065364 944097524 571918645 2567232 366860493 948342143 538361226 982978090 385720028 994920660 201187874 74032991 733062905 138551702 912184871 381150163 364772882 587163422 390272235 823216327 733246697 534981889 928494173 37720213 227671386 595472638 848913848 233805651 496796894 400774973 908549589 270989327 722362211 738539476 966935935 951785595 833573002 465740411 67082307 652549585 844834457 412623601 7082583 904740887 435853993 772554916 928751184 753302258 646668978 918110339 822299684 920876995 299026663 621462106 791367345 268646435 65698628 377436060 648553965 821845712 347727613 942006097 238605291 45732815 248405023 777933486 398504995 221846279 342549506 124044998 145486634 93536252 746114041 814957211 937190722 892730580 308800553 817957433 124349613 318613254 880309978 974444266 82037318 547158265 876843667 229474438 70723664 301759435 413757574 719577568 770665079 381206856 561568954 578213323 852015923 38706820 277191819 765727957 371272415 122569391 214804916 478294012 103677645 641257113 217047085 882230460 579665059 370282555 260834576 38804761 251404106 539765747 371309928 242545915 838103003 90411311 952952477 259019994 137102166 154271825 956792465 226260154 175417802 836780409 653924861 909444786 456917359 48504715 66822459 27235322 554195586 108500056 688109931 355215266 294688993 603221556 992827041 446074560 278806459 655943098 742503435 36499888 505667214 492274088 7753044 894731876 102889505 355730108 595054877 452814961 649678492 171615678 562387730 769039401 867315215 157936230 34523271 539495966 954108347 492648848 991100294 480978865 334309894 550152943 825505672 878118333 953131978 699969311 112814338 849953105 892167043 252568437 684537164 452348873 879681245 515963297 301364051 140058633 440479671 513219654 683823665 564073274 400824077 917251206 345871480 59520375 47490748 398121864 945379534 28827674 995852818 583218612 405494080 974355933 677032377 513423746 803443793 910253725 91276569 519610266 794752269 72338699 62235290 589970041 997056108 879075454 29353633 444807478 482362327 602542529 402998812 1511501 743081880 68443923 174115618 247842708 499339478 774862401 189589066 416120942 541841550 547708236 909441233 846088861 149517358 555869181 915314703 24806370 243010006 481311049 694261631 834119331 448504217 892276238 942777377 898437750 872261812 24146383 709968914 209029546 489231297 966886320 375153903 622243810 632691948 275087407 783523604 411023010 16268385 540445856 501351747 397818404 957241052 918092352 851205592 497030695 635626317 207028806 742759879 98255310 184047471 732890844 837776623 84183508 111404278 575733175 524671420 119309953 695134048 75966555 677084560 532429503 921098927 17056732 815470913 895586632 818024423 48168257 317341235 520250995 772884318 673484401 160359092 944957459 916051452 728925171 620129891 297152125 9259885 661743905 925619172 388720086 884610973 913555031 905334913 563246042 551666675 578144681 645030907 306743002 225302076 326875284 798243562 556218995 324621773 345090929 543762445 29683457 486852543 976932354 60391750 47819909 302967722 946729279 393541470 937946305 111510315 577912019 550972730 785739755 548253155 590109611 212032234 485504824 542748957 957624091 873106896 520210909 213534397 994433715 546212518 186258656 555917608 985974324 551497240 831919690 621485018 508541473 762258171 598301002 31838758 773113993 524233084 64518079 668296564 926279642 577407239 412913758 244490381 809671515 947274246 784268817 471426921 128126188 851119657 857471607 120155971 517262506 659305581 358860572 930290927 106164089 977575919 23654235 534960946 552162965 947780710 394663059 373345705 482379158 728326825 4707069 997910760 348529503 785420181 489072165 546641308 502240779 37339693 337533045 358407206 128934186 443345869 602238068 447450666 817224785 785775301 68841578 637141791 982814528 211126292 361796166 633944837 363166676 496980049 476640728 704709632 580088223 249004161 343669456 336847892 490501128 377709222 870114238 889853065 479550054 599240552 513590164 570551457 792704904 269532780 309894454 364597854 463745612 229119265 239225261 434146727 188210874 866220807 494819066 736181370 878745354 183856439 281826886 736243034 479913851 794251441 131656871 146332471 124916421 862197829 449661747 403769907 751779841 525225024 913257533 436738889 18243639 219910968 282007349 185236591 23166019 885062492 949177799 98301353 461616987 364171592 791641475 362234729 397280786 690982509 571042423 510563863 339002081 247315828 519550657 474732510 606174406 365125477 624580869 567558390 211779767 428511323 654137336 645835304 74024153 299842773 422630939 418615573 618947672 440163230 873895633 52008406 655005487 487859811 347530889 56664793 235980038 500559888 983197048 894505649 318085823 618912765 967550489 755801698 816828608 533981234 322404024 207789732 846552970 882416008 834934943 648433707 977971841 536713111 443452374 274920639 338298979 740136597 866345375 568433720 89142900 150745497 938269123 2554679 940275393 297775586 869543446 379982063 350124173 147116862 709046321 423201300 589542750 17166726 181744439 5938893 234286054 639188702 596535101 248911341 699451462 855667292 3098281 711738404 439768517 391241328 602620202 691534226 350669874 287258697 632709373 455842480 801725250 46476311 62873304 254717666 30625999 8041605 48367634 856051061 618165162 700714546 683035843 707853008 663805415 664436503 72275842 322080567 307261973 101666760 760246487 516885655 440866394 934972819 250941637 967872657 105197593 520012575 281073931 148820388 898122623 322182965 712872481 359664175 405058698 353826258 115687717 450259249 511120507 987885759 463638461 727076196 300758740 885610541 328545462 995185845 876295376 692781816 692492694 223790448 214496913 423040898 522302079 268071275 106101949 31095051 371962358 933946713 643976951 584798543 986108252 954904816 518782189 757285039 745993461 389709821 686704898 452774095 325865104 18247587 690316754 451729499 473688985 832408825 842872985 147613514 879109720 100280461 222835191 29904900 814048042 959820044 74782083 366021957 908801045 978418789 44288072 157685233 887485006 942293010 74267890 947600312 110379671 800191404 491427650 279102255 195781901 924892569 614079173 640220118 994412736 615567132 919078659 55754258 960134958 165098641 221868435 870109111 793035431 955508564 661644885 152438321 604933810 17610050 216330449 561241803 341931993 288640863 663296046 162061817 129855125 721275225 839960079 56506824 34538740 437541916 966270268 280412629 809317824 247800371 630429816 490001009 898414103 377072104 412628684 360729825 16360547 465339680 457503904 724328734 191997394 79234671 302859023 64415131 489674486 910966736 590646587 583360181 165564796 373958946 878491970 105651891 746843142 966829857 575100868 133231746 17864191 573836384 250159908 563754339 768399547 888890343 147788406 317146797 399524743 152213970 296012113 647132576 868764337 508112120 447758504 367657897 643087479 598145071 530586251 97960720 667243270 707894735 634454264 305943504 82075263 973744111 242222864 760882509 522965678 828101590 24143583 75547588 749575811 423568674 223372894 223318940 411816839 461501411 400936616 391703792 177919186 973632459 960846701 597986078 652866728 89479349 133364537 427789986 145003050 201551871 311060549 956850302 75257922 300539075 581962678 699111603 178042822 95158760 753123152 811306693 126845529 760749076 45160775 603698320 253098536 926993604 126506340 701415850 654534374 702584562 307028288 380925325 620419248 613820281 410576378 406088245 468811976 304994295 690100624 885887624 560824462 487190729 310672347 290508804 399018667 854595651 706063464 856912941 960370100 12255987 790233219 524473139 375216078 13479605 808797559 723040150 328491049 826175954 741412009 981800162 478346589 496819135 506642587 258112507 919052335 664802474 786075366 446704844 751742372 415855389 176905492 636842408 245428969 544593020 959641102 402210299 467604010 926387817 930317187 887911757 469529609 979242470 709928971 165354594 74946707 868155175 884887460 855723570 321994125 936986458 375761080 829178008 164685026 21537828 434017922 137847212 75185313 851195068 712599989 849506510 983006420 607530879 769318545 883280578 759527483 902564809 305896732 566714200 397404008 551658687 554834926 939091634 612750291 735387332 716387144 540153069 508305092 50751811 944310091 849795884 189686729 452183527 501327402 544374061 433765654 267093087 489026703 814423162 346029231 513850411 422939964 963495588 290434259 651040189 108149548 893756035 794430301 697126160 172506489 80816559 651224930 17718804 106943173 706529870 338112820 174411654 253261977 812997394 384439345 280384256 918661755 434590410 674931657 810147352 288474098 465742034 434613219 699120914 821955159 535605560 522954834 118549014 534866973 762276425 3710345 739681881 123387761 166617032 487447441 905620284 201562877 960409449 608360187 716028769 659149662 765017536 408952442 540100570 777389708 405933467 736472539 929279006 782843174 101167496 737089281 137194165 568730418 748382821 823553211 576580156 83404276 965626584 869979893 573661811 214563353 199951152 138813142 370834651 646771858 870633383 614653497 462521754 782445816 193312162 861944279 957934178 699751674 49023782 950627001 193064645 423283846 897215297 874435060 584771407 320310186 875160828 532020154 420006791 51915914 617630354 430011012 699355808 133863450 815945546 239752401 209389284 550685375 748739004 335791559 599424190 842506286 42490219 411827635 670470527 809015367 885074863 482437541 22194298 789578863 764598657 919599629 7507381 639633404 304624864 160778546 705380739 983454763 649327857 967901941 993958735 706064023 385615307 930900823 566335254 79010984 221112273 12427415 855044900 971734691 104343933 618245500 188793735 372085711 997889445 819245366 384636673 458899669 839547996 421529338 57212246 224935227 710435355 252794199 338455855 589935716 844178768 772861429 572379627 32837895 146133536 671911630 23746975 884783015 337433497 709195941 84631728 334711993 558823152 521986127 226323259 556997182 767389966 571492580 789295859 302249273 117813416 488546704 807085711 947105494 931164722 257393862 229188872 413597507 149752999 823172131 405308840 623963155 28155495 853396968 206185602 958145101 796392661 31291095 947014379 277939849 560032594 411473256 987176743 827143044 302629124 689253854 335892075 983041130 893648689 887866584 414743938 116405896 142625569 267378638 924277936 703858784 800525056 657166965 777067560 611732501 557764747 446549088 567910725 584577382 610220071 304917614 511724247 800210373 525790155 187120955 582496377 41049608 450266020 995793548 522236773 145887055 328981041 541418911 443267425 441894117 42720564 68142449 921920318 668962945 935329815 571647583 777277919 216299165 58692019 723290125 260003246 400963444 264135948 412083702 53635001 57542893 876622218 968442263 607084248 280537845 772955666 340379932 705699814 318406898 306091094 273773361 584028689 416099739 830288084 331309940 777688770 408369259 401679529 126427231 559585286 89419964 521483882 930636530 553922926 699654023 351916236 159933599 93312126 525666263 266632611 360776930 62564933 815542195 394660240 978622373 213085634 657972472 323434908 4003131 260572576 593744892 775412448 392833679 267394216 795777723 421477130 837183594 310446172 157197540 656042149 52172143 662226904 957908677 354729844 257486591 75195430 270666768 575668256 395614824 678093791 50115510 168328078 4838666 475660730 85112443 419969196 534836454 27407417 89623097 271351204 871075209 993858894 982329682 807353722 296520332 106467818 202256128 603476174 518676619 348550774 529582645 674200668 499429472 405310109 964259946 740843738 721246630 890074882 4906514 222576860 797647430 559047168 737611615 656294266 660211955 34624228 95241762 538618947 973435490 227311542 595157592 121468854 253753451 406999270 873392815 489294524 728244148 487457635 333786726 584290045 548302368 805695445 955821952 818608762 135630970 587192000 451862109 526817112 42025525 606368777 768251068 823906231 98894140 928940055 268948380 805099772 455937831 973260699 756957617 113968428 5785137 651304245 661913367 682390137 581491678 923860488 574549062 470100461 286748056 282471150 14740887 581435890 730868326 930885046 64326301 625555181 678362082 623625584 607118185 206577455 762660045 747743027 19955954 473992994 884025387 572338469 727154797 513314796 162817930 538550633 728132993 202711449 344191375 315417444 477585520 568280575 645315736 179848908 972427995 42637707 638711672 258120143 872819575 695091239 87274193 879486270 623844817 540674319 149372165 326543043 326482853 549630427 998070738 222380776 467947724 697211846 276899058 222217895 95093751 863664795 357816583 290730524 488666851 916131642 855051088 402169608 356797121 607892126 170117379 172996971 212800327 821841904 184180185 863501998 723132202 761360548 731354043 661741544 831835710 212013487 636142681 77216739 184362251 414250205 317741004 787830088 228589045 927682084 879273335 739949491 628482198 852944749 30268287 955618599 536892113 904430361 266888032 580496731 180052363 848993687 948892775 388404386 350001009 656232223 566933549 306379937 577508923 199938065 993833053 247673552 535621712 903266459 566434420 205786157 651473541 511815501 702448506 552245388 449105889 838734514 252835730 881244542 544200625 221142659 966819885 629219110 487772892 72803835 791333616 66814482 685043115 698189795 971742511 249792330 146271032 941491333 777186130 678110987 757770342 714447092 427073660 26736698 642973388 175660103 547136274 521975429 305448144 594792068 49288905 984221854 163516275 308989966 157404345 211286316 559021770 400847713 483750104 135201067 686008664 487574103 549636320 722665992 173645573 68530370 135678731 394755991 314159499 75493361 964455307 6795913 900199448 506208215 387660535 758451459 984580342 392797569 440138550 88821077 613083879 483347710 254689665 985887172 805353 612621984 623614252 74404661 581767970 952418145 285532090 928036200 317212118 863030804 65124179 49074672 102154444 499382748 442445098 479586715 751388070 962547846 988902213 704689170 592220431 693433461 638690695 485918305 516735279 464953943 376358508 975290510 991679976 853006474 909601080 769391777 742377761 865409137 415821983 164908775 151775055 360986855 745767892 161488615 121601520 928009989 803267259 965713494 633374789 116361083 332739454 343178399 246216696 476167827 586282359 786168089 88595992 309446865 241108016 464620788 436135636 273054158 641341940 61454289 848570962 20430328 571319703 362247920 574923415 355809074 337993103 418335764 640257348 992305698 138861554 194088141 233464645 874261731 898376209 184404267 448428904 476699873 409402630 248889824 746562173 162720735 741695092 134648700 152565061 992081482 523103161 97061191 188259678 388081509 136388750 550675294 357205906 888869850 395074780 454847920 784633176 454193856 233187113 260257008 174498542 883798437 923435632 924000523 916340667 168564501 875151702 260262137 289143709 844907504 878909819 864216941 816622005 858377267 555430942 920550791 695205808 704889165 422625794 717534044 132538981 301054495 690019269 72516857 493570239 799525227 577801757 92456123 471677597 672306326 728868029 900361260 218550273 868288273 28784999 67077916 938434478 644041550 882419565 951605275 499756838 79140350 39005993 453676572 245951117 19083573 365484169 681443151 752516327 317615771 364840708 184587913 105352027 167945232 562899582 286468659 141905381 650811775 717167374 969596680 197296766 295152938 54809984 741407021 363622692 17163298 798684559 420327021 276742680 203161676 806003041 260858559 587610740 724983919 320985014 749844867 450489748 722127448 507390406 930534448 92479767 621009839 669289558 991101174 926531598 160046307 233216843 554003430 650147962 956803204 130656870 739270475 346191018 86771407 396476429 947428595 562310525 737961174 13286970 463392104 509982729 242525334 919377898 861454102 537380998 662809881 600803649 912022503 592636606 166087003 806296338 958384873 575961228 790210714 969578774 279068487 157782897 905722827 116705314 866817033 807055844 721808126 217250823 466479721 903500127 981543548 602987223 865722252 737505596 631464959 256576777 480580556 232615435 841156478 116177920 182098246 764130914 335015707 955759207 236704840 25570197 985437780 569279178 751706858 738940120 993053976 237708200 767887751 377392245 136021243 400966783 7985487 263558882 720623032 324819999 474614693 328837621 606905450 968751377 223431167 750879992 67670814 510695566 620580289 20956157 436378004 174544618 397572553 596441621 141306235 132982714 285210342 708179704 56463417 466535658 930218028 920605116 884005972 694274396 450570232 292302261 978374222 687962596 257587710 680628392 478742359 53076280 238510286 956413922 992404892 305416457 986483357 580851568 570824188 236412725 179098605 293894879 466545871 477903396 356178820 821977619 624094249 101315595 119054839 968104836 119472412 386139877 957110429 556253242 821185425 807832718 925203926 781663992 159192340 196695538 82823425 674667722 196108642 709122511 437222293 553600091 158704054 406441383 700423949 458278551 349545038 96620165 335128791 341859162 61026695 711794840 442608665 696563700 610084232 14800353 657103748 754159523 593052818 868635578 356944857 160141242 281067422 363210712 402844081 718641210 200388419 971086301 745624898 740844912 502644755 460373343 74738460 966027634 635980262 689826749 640260285 667974616 803189497 771060783 255504145 669484301 901978436 189402174 968544208 414680082 656764490 451840933 643300757 183059763 162548986 525943515 707643478 898677239 492565153 715843929 74510667 254982078 78013747 392573327 540054533 319060881 366626205 462782279 368938388 32101625 30494817 322337681 551611034 915105786 350432966 571412548 87946645 903160871 143621507 937735587 710454200 502675948 691529144 513116640 270720613 600803110 471853409 903184761 734929352 65701095 189277495 803768744 67683694 851531236 753411906 822166943 381266486 482201319 605298471 313177217 804694034 665677829 931276436 47566219 217840508 217526530 54585737 838532009 274537086 990950416 440954055 15550256 584767226 245180694 557038031 107262023 481910554 183286200 533080265 576153608 809235210 661274334 908133968 186670883 324762671 305313442 141904729 526624175 659125489 882924584 303695691 905456796 931589318 453628202 886328656 665457886 694358073 870909684 858749045 961317756 911358691 683466801 609993369 236734082 414865975 749472790 84669175 643607321 176272738 586909408 308763395 474729412 461422108 646427247 154754940 1066836 483661932 307569337 75936551 712643208 445437694 320041947 627569186 399395661 688416646 333971357 108406593 822126609 288459218 217892447 931774468 411113030 464881063 85351591 414226511 613802602 974195356 45004558 315286930 527366526 662099445 393860062 398967448 593973569 874948205 88221298 66118323 721186700 499719336 226656919 223424416 415657724 394009929 98354161 833464155 576594514 448968363 947566238 567868544 849487971 218959554 614902769 328810343 230209310 882876707 432826431 939851945 448791398 368478657 108871486 777004528 741420373 687957831 698094808 476605168 566669672 719880524 465526607 135557680 696815413 406578811 679160235 554855859 199547813 898654409 819748541 814200170 719266203 929413153 645407106 416234680 472853266 741167622 642583268 588963794 171014202 920660302 53965578 916932805 84742129 2653197 75926246 565585862 871283577 483189328 902790156 476726311 665963958 610252138 596377188 915202665 581816810 714396206 273362895 170121872 657113493 656679359 173412974 143589695 578331253 22376221 932098792 989335342 762219756 846069967 715264099 686810444 848553707 400001903 507582893 767389206 224668085 770333401 278304920 441651875 233165051 820022713 765462388 830136909 619086570 236382182 603385947 38573439 248058426 358602535 976626019 327838161 179321372 51401590 2382321 383480555 194348857 238648029 415939688 488531512 854815936 619250033 26485721 109338705 127002056 228563286 850924603 994290000 972146908 23335187 167935256 279805853 437692026 359981199 764031101 77072441 249763994 469712875 812860785 198030478 491825541 626825057 868972936 82964990 787263703 799485055 669476377 678613367 335816715 905726818 575544063 977730343 368571743 976555967 249853732 205697937 271396651 467522438 838846938 212434035 977705152 395313914 874812679 166080972 128809738 997887109 861555572 858100192 848163080 305524941 821262559 438511483 484798949 161186145 276104328 9709448 224713789 902513463 344083855 579759677 70704648 661268449 816555773 80865982 208723691 276375068 524674876 351733565 866329903 579550242 450853611 934528320 445546945 926157736 89116533 751974499 769892112 889469388 996741972 138792926 820552385 605253713 377087940 359361315 108596460 16704401 331539681 827010816 924442431 431822594 816130958 620982697 428605293 571558651 358546815 405450459 515576697 624172862 530882778 545736920 775527601 343481484 822371559 137818594 995031933 307029930 495386070 615167727 840234374 808753416 62633588 613316800 75415403 492522474 561787729 595297353 151042456 779884203 472029436 726337255 283858699 837779505 837069000 324252380 191806070 994342543 451015082 476527290 288262352 719362944 955045051 759765102 532276304 304104896 462044475 599405294 507323616 358801545 121076998 459955972 338557999 89340659 651009955 284865812 752122410 519666998 699176438 99927167 413898131 195587728 678630826 339397786 480420162 795133584 610091658 267973504 952711984 28921509 204879140 198467200 40097365 797563837 223300851 955689281 875788460 449737172 60576273 857373950 477257532 582417417 799243612 563470624 715064383 80138257 689463736 796125162 296325312 799877679 325571925 903092896 324956358 586511600 155480073 287659876 425087221 844915187 539202278 532814345 341767892 306746012 547455441 387532375 884562474 176045275 153913826 489681286 406126785 505380864 565655741 536292515 530454551 388987013 754263577 909767229 713603538 125268187 816072975 730153637 988773353 246558402 808470797 689587142 796078153 14703442 67624792 160759241 980247257 562190900 690979472 190155881 581031476 699004588 151477261 369727954 767056702 583349044 889520152 834638092 364651887 813620721 383975612 742076541 255804710 955811085 729564695 662068744 504472669 547661721 405172652 969484065 814479804 11774580 453447158 669567758 954086281 697520097 488463562 796994842 169011069 500416204 634800032 485487674 259153429 862708517 329937237 984792427 501347166 622777230 201403968 331200996 944821189 762095154 51968349 864852384 715181103 696502028 329705956 238894187 864775143 633375500 415982016 717391511 399319612 26449746 396964449 153552539 445314911 697238422 129412902 502989610 640909263 848776261 897871390 13002584 235604643 344884320 46382562 537873735 909103248 991052240 529217595 618488906 189068720 295193944 591982381 10823722 574311087 365632733 317395346 237395885 694942297 693910623 910680824 241156058 704040875 164317433 401016590 504523510 821995610 339679260 84726436 303634489 592423349 729802854 191421435 858762531 203023310 746767680 872741093 95550714 541141724 907663231 988211856 700574761 644459813 313691583 80737968 133847247 351914116 423006367 976387410 941755471 367416621 897238380 602675370 513994491 215840338 138161694 573781743 949312663 585568364 758270558 473933293 282978595 161798864 223107095 348714046 786729672 898074543 177669784 798221098 513105994 217187928 54791756 429762911 595205877 360944231 15350202 151365223 565935203 922693779 583197462 187766959 111247494 651125915 717173202 406376964 661075770 108834371 795127196 839687671 204943156 808842648 598028205 386062272 807482593 479106500 266846695 191123943 184064068 821890210 55394325 900144779 241834929 85807315 802269939 812115455 536097438 869676102 430603894 435591221 497979940 786455363 372869901 615395740 742363463 56301927 886881808 247216192 618012978 468920940 193601473 20849652 278938186 28122967 963917509 968950734 705825187 883305576 355269100 827203052 750421381 873090035 84223375 160097056 566151282 859702603 593556372 610384524 863286280 702853170 822123435 457488929 557801588 57651441 590979074 223453972 287742802 814872842 630940768 734671638 657615737 166148450 72567608 971502495 767101616 971551917 178111124 634713723 255796238 251338143 309905045 508231386 257100898 296475886 186925432 630217249 988269847 646365303 239998302 622690372 496214408 774472995 765366563 815944537 683018522 750938106 824138213 960608739 427594897 18744562 451794923 405917322 93072817 955207275 230354216 285175406 242140194 226232140 731269681 394456658 406985980 858641360 997936350 407828197 998838131 537971175 363088138 366957195 856634516 32651540 406984328 211644604 367882649 679167038 418236986 69508803 961625761 431254228 784485433 819418092 446756730 772189372 268307081 390174150 815367132 576688887 602468840 624155350 820701614 855540317 329481872 750563613 706673536 531476040 255873292 7300481 812322660 145302588 62435628 674871017 71720086 556607993 761328160 193738920 677761055 717125721 275631329 818999973 661237482 675309144 990390276 245393716 579693964 991703257 165352758 175865833 156583386 334572791 932385797 320550826 649565800 684173556 686045448 400342756 531638993 145978048 847339016 41540793 233660344 689572622 812386370 127504858 258372755 365467701 231265758 545696449 159158664 710353344 727169933 349763210 283331727 951951043 138864759 542577148 682342678 543793848 868824081 654809436 97475749 522949939 234413191 168751465 338493148 691518450 608177635 668417251 604103743 696177532 244855024 73537341 544831780 29770816 150953114 99328849 653395053 823297129 897384454 67570624 572343767 133306073 469653768 775242034 849313046 991161066 950409116 947385178 12055797 537825963 622112751 7728454 819136102 277018052 701202479 327633747 266891799 90642705 902432011 144236328 570399704 851574935 891227325 870496176 761262797 20345366 980813474 771462381 782965383 663801721 563536198 614469781 886031199 197908495 157764620 831533318 93996462 277888769 198866170 49719661 264545895 380242317 162896964 154982551 316806054 66738725 869357217 970757823 980251088 544116413 709027645 563384801 550883495 554245204 743163621 110447812 815223936 678962725 271449162 216885683 870788786 626298137 621885757 671135621 353340672 693205010 536817278 27205005 282997606 798644429 43975312 621960756 926868423 776961623 504902049 137166641 148556076 253383567 324402182 998282265 860277965 962456635 173712013 533551464 987964559 505852635 967845128 888721300 909935152 863341564 852720768 73129032 289810878 139645515 417827110 231310501 25059467 811444291 400571974 886649576 252991516 66593354 477993998 748046594 54537753 473719097 352197072 537208103 214285307 698635973 991510767 655602125 260568666 865008579 969054951 864369475 926034536 562920402 217683325 55748234 105061607 306669870 413112571 36359886 640633744 966102379 996828695 537384390 866861290 971564590 609683904 853282231 329230249 413654217 330533837 225414918 509844725 354857637 579649698 312733352 138565639 903264895 273566528 364308440 326841079 854103331 389973888 484746022 690437333 327633190 11028483 990440314 844525471 350838682 745825824 508468143 295431100 363615409 130894625 817149888 866510783 770332361 522338975 55364790 852979683 737481182 54550920 666704433 806921754 268701009 660911676 426643556 809587793 94816078 155510498 725135267 44586987 424192284 304033190 214991037 885873214 968549313 961548393 515685089 882695515 228871667 543998745 725754080 631218992 606597405 750690845 128777776 787752292 474405054 291545683 464494989 22779810 121162715 427772814 744805449 249627009 648890419 189635283 109743031 95992291 745521055 575552212 368816537 561999830 35718162 671702005 820959215 949134473 506250430 237894159 416163122 285009595 572057556 692015439 734097973 787193594 9187005 979552296 35507105 159746344 908616304 58854205 279211408 867867819 310165579 298865614 909908051 541026695 766691899 602778593 206598015 40709615 14623130 299103805 314643007 369937330 574922830 12642639 879751639 37659266 852830678 26491454 564845539 894513407 135040761 464889479 914960066 688076511 546210311 781428870 527421694 4115351 501101081 915898220 686814601 401655580 766859189 916124118 34396824 321594563 621654925 876396762 712484994 337666259 346434613 540276714 996451478 983783342 127968647 274401360 74976476 701401064 26777935 363291358 76754511 435752406 38841135 933562376 80122442 693453703 221812615 952853791 267402258 879174459 519409711 210100365 426618596 858270820 510092142 279653349 827576360 184992260 871676569 149064502 7135853 483179495 257229714 840905582 423697593 119493764 713720161 816693792 453678337 358921930 772130563 916209765 915804648 429420266 819224899 261609299 434455034 353711614 528598925 154109188 474348963 284604227 240434377 76148502 429472492 602549108 173913030 23979480 380301109 779039516 780532344 800060463 197440559 841054084 82285351 476620356 483945527 989922829 778981407 650986729 566860097 383933185 333038104 285244447 150646799 461364796 165820606 19431523 405146022 747772410 507305032 453190124 724273740 505706160 466457841 79321184 632291307 789360530 349092397 784802075 859226967 324445312 862370535 319962566 750213967 856466014 247035279 491224740 916464940 455502895 930631120 951303195 313785270 474880106 537101543 879026324 438629520 35890308 556138286 766066572 164970699 250871599 201813586 565937962 391400895 926643090 237468693 881802304 877214219 48498969 427592392 531741427 855486574 898755615 475474747 2887289 431194551 197253535 170452253 671724050 698621373 266013096 520600005 661690764 541019395 93866889 178891330 684511970 711013012 343087276 630985876 370211805 21720983 944559655 551265887 490158869 196382534 884826130 137507302 953476007 125605331 999720254 211673443 320250523 658948653 914802881 381028857 813636536 113429729 45911824 640723340 737121205 13046411 662186515 516741546 457223126 779055345 902740307 84108966 631923962 63352208 226938018 155436864 958822593 135204303 624110263 725519627 511720753 868346107 636357625 503002330 302277752 195120125 887251638 536021150 345846755 223524801 999846874 875249151 714425297 486860188 424009491 717940825 579619234 876896375 509626618 906897321 459353050 256012587 674811421 986791121 669095379 750391180 796241886 304306351 146290095 273277062 347817245 297955725 638420773 943701929 224497679 868583479 989901805 984915996 531497711 761241580 372128268 384476445 767736482 192468531 448823762 672274858 729835900 681669174 707637562 777875220 916787524 84043844 196972339 769039910 41962796 201681626 289487353 411049833 148773392 533546479 665507808 827207072 641006328 621735844 250397874 236416151 728426502 40106186 815379357 320038970 243764906 694527866 877503508 356393366 190928452 440342573 344208604 565819067 863562952 565728239 644248643 801084268 731526369 265941423 923138313 759436671 762148516 892828961 866438530 430710960 459433836 1075070 211188316 622188423 929545954 966553360 163163675 813657344 365171369 37223137 708782669 25345352 80833977 810933660 866066708 927568028 699512959 506102158 770935337 819040278 436911060 898968932 479945024 140705877 870580306 556132558 365579962 577792520 225665212 764117258 472828012 620044985 43093485 745551210 986254619 364970397 416896131 109585020 682153254 181408134 297812866 311467728 391375117 916757128 431605608 898579237 61599830 157362698 515074302 761481812 164239705 628830189 654043924 73146575 123060647 632787218 194266923 51808070 85820013 225472892 452403690 716139104 442456286 369031373 500494141 652613975 236402891 839577559 501627718 578204843 55456909 172457082 298818019 981702608 675590130 844160195 316988593 433725827 980441990 512517627 514859768 382922256 529286457 456200971 109143355 819292305 963864252 753621364 856143134 447391909 448242302 786449711 954986 946972651 5379690 87062611 262426128 820123570 550896054 207921831 896527625 25247694 282968507 282077597 586492652 43065887 368362692 134029039 567489126 634145074 17644858 885579814 595791360 196475518 352569895 876266194 352350793 442173256 749237767 549076823 91875517 952636450 772992063 298382457 74190510 858402049 930264890 979752412 569620672 966227909 657507275 638564845 789154350 839652534 384004309 651922121 117199002 681770755 810443523 642793254 854070986 101659596 494780692 14091783 344504761 414177739 448672500 787472559 793708996 847832011 219231128 899664812 153536280 259492696 129191768 208374613 937315915 703055593 179391085 164369508 462118601 986347778 576692226 413536846 412151474 970965857 444439705 546995944 747081021 629541820 914750008 826043903 63165047 964450695 37115763 292681352 813470858 44430217 202498268 472692221 58250634 30226225 626536897 543227073 328173904 7933717 800478028 293214326 604847268 39980587 445966472 707592645 87998977 476593912 493019747 903902752 884120371 362670037 577125752 4555965 463600675 413680424 123692707 239710157 830033866 35387747 464122115 217762111 179293590 143954196 822651141 887594180 513561712 589408080 436491841 845868049 397106048 153606624 180535699 618034316 386643553 245571350 384502862 695813973 943159517 961918422 458564010 606288189 930356326 84212158 311248029 348326436 989832722 222036056 967383306 433386669 367222886 997392665 156001848 376417798 545026240 907577270 838213562 535819582 79047552 873101568 446530025 79761069 428129231 869726738 657888381 580000404 457499074 305687589 124140269 680760426 284693327 584056992 883074039 675257418 446823729 140837297 251354079 827190943 333447146 529520109 598281822 950592941 631975932 495235735 404356216 532547419 335597630 223602642 505884201 509425039 634551349 851700201 207090471 726464874 956862903 478188996 347873771 819761772 604511256 565098015 899769782 523227126 737192006 690036033 857565835 729877849 460627562 406932932 393391894 996267495 405978110 368037519 218764945 364771420 932068935 469957241 624844611 545673903 115353340 301132822 469746018 17789088 812817786 614430730 591476536 196940386 421022031 747837572 828019754 545190232 640359385 462851044 66395204 390772148 273758719 653162685 207682116 367998685 944793482 171122470 703125668 529105933 998756044 105421851 709598149 67562153 617218067 926639758 605683383 875628322 622812692 248309876 956130420 388396993 888764207 610645160 94918508 346075468 987607377 152737977 349507722 63401022 305055639 835123555 707718410 584479548 406954555 221135124 230957508 797774425 803487291 502591846 475580282 541914919 624095677 650555521 68380360 62314298 461895324 205801911 847744220 551263133 858959836 466475063 240433202 351981101 675978015 767417945 586807423 779940941 518053503 44906202 676458616 217561507 482701086 476966356 302165330 265914432 860409484 643784218 944984358 454780280 904546141 52499585 812357066 689557077 149217724 58191141 592102859 655845473 322061281 156787871 91742429 437350372 954178231 796331078 137667234 772294455 187966870 111081359 636983936 993232224 147363000 516050848 26082680 709025986 490041233 130333013 475009530 589122277 102455676 868830294 512416768 299038515 35776322 822498557 82943041 289281236 392737291 373850645 462166814 889896501 892539681 564281855 304293666 771078579 322365075 734416111 737164761 213777910 255273134 449994463 465566894 361030988 569982735 393330035 34068697 152246534 259197946 514928919 330894535 598461805 71661890 717926537 848655322 609908805 387790297 865649727 435013694 162238451 143831684 233018476 789116891 726677213 856890206 630240471 754230729 987504498 569577059 27762691 510184602 805229779 435161983 241133875 630966656 293925649 949174859 601603038 896171945 938903658 627352641 304039551 514771642 36159656 609499417 515292337 166585836 236089995 11210132 900828275 391883071 690969097 770700267 126557152 594517062 217428282 194719326 342282700 670668976 201974359 292251614 190721818 563962738 373880009 912772264 372723744 822961943 467625359 316320343 980273547 639372387 62278881 260017256 300254016 595171340 993864837 488911456 794110004 713121757 273408810 85051906 278345231 757873878 609130693 943860133 408429963 200983789 98614181 259372308 459916252 709733338 371559661 556861969 281168356 471167927 411459756 688424432 660336619 110266799 288534538 270022589 407318242 616451504 145608735 886614591 165360178 506200271 765165253 618153288 164641324 224633861 923161941 286446942 773064259 372013783 400409577 808695856 26492215 875630206 339678715 103852527 779152092 64482041 757682998 606932732 553818911 666088391 647466738 309561078 522998999 866935607 919165361 564954257 916764611 651572240 996694017 31838263 253951883 422693834 473185101 574466711 70948844 935472389 824778507 146210813 539546909 345214063 834927212 784014484 637166861 839893505 337197318 11256472 198229515 961625166 498107351 184283341 189291799 1452868 308418393 111324044 731512750 838258842 341355821 860284349 551422730 683243318 826433717 264628114 823286733 464669460 994045138 403651947 843952979 24018740 202583111 412107127 584726957 644186889 663962317 678260490 559855709 97111664 425795286 772994455 604631918 830143324 783500492 47406476 905007067 726361992 646630664 150694338 178902757 230124367 661942872 894039120 141452418 913381568 332284398 372981024 199333895 321001980 604556582 905194537 247212392 285486499 509459748 478787202 139980499 945298960 110755710 788873638 601353376 939179813 681257180 684846472 387623211 928150643 636463277 960052754 360943378 11380035 790156374 57900164 373571487 972113434 499764233 592817675 811835486 764619357 879823224 780789054 666150127 29626896 507996972 425665308 943117344 178453862 518636803 119835626 419308281 699821915 183709009 410802449 168236444 937158455 158701384 186840133 67156344 498794892 991636551 266331091 315286326 6771300 163929960 852110663 10970480 981571876 897830951 258600506 619590331 783731716 358171412 155181660 520233544 825379723 978598443 205727525 572625617 254018176 274718952 347912543 415145114 344787253 469249186 283547210 874938199 508851238 9159963 678566636 23240306 156372506 896504728 347777962 938866771 971519570 524681846 640560221 394272276 665382518 774043363 600299839 73171836 184656635 639975996 172037966 888686803 704860087 892492974 125208830 365378082 159741490 606936212 89280612 941300360 940314297 241708320 713392837 647062020 257949559 283817045 127489509 307766793 562713882 300412457 912524328 329640148 630447924 160304030 899507210 160172202 255115299 523447474 615712759 842416029 886058345 986397746 729525030 624776534 365855701 704459071 900858606 153591652 842839292 753635737 103046155 627303153 689271669 167334370 983172572 447354766 519041044 211354834 447797670 822590692 997878455 90536067 692552681 550459234 192403122 497872135 212802708 469440975 703821599 207883701 739273068 975066321 386114163 434408719 736768527 658352095 897219054 324580521 700763900 13102947 41888168 397376617 45162320 938741803 847722202 79653238 451861438 570750508 334063486 558410897 398700908 660730358 62856650 29129438 230297671 109630896 830717810 928805316 469182263 787214454 538100431 263697147 188178489 370073392 879516925 115384223 291461891 631379057 861353455 284448118 423258943 920553093 644002487 811592523 203013918 913113977 900786738 981160692 949847636 210663330 373095005 579985016 62614255 944636024 420092791 182703808 732623503 145084777 645048441 809505889 659711223 416914752 360683882 39505544 577161450 767301425 81117759 844842575 706967341 291456099 769303784 974762712 729136787 291983087 600565929 579438216 432287394 206413093 623029108 77600713 12235243 474808319 451557491 203907911 692370434 635871412 919331435 501990288 77276290 209129581 714319709 535258863 495037623 549010563 162999773 75739291 502563710 259388592 654858711 535634218 93765145 654567773 109601366 853956864 2649294 98960836 719093492 462284023 754298860 301422877 804696108 282394443 570229797 672743037 494606690 151419116 572658743 385815257 772169732 62597970 974997761 776688047 693425819 294705115 997577990 95857306 115042368 732963238 551519028 588193149 646114199 950739006 545549681 83455401 240911867 91777936 779158789 871037646 644402494 290028943 650236515 348326721 721617277 926367736 439824810 732793383 621698896 159341482 392875450 144917223 213089276 878918317 274975739 620326463 104138184 598799750 704160956 828954734 426731844 442233000 429821081 540244444 593908398 542602002 523051003 157283521 253958524 928450234 475203631 234508241 252037626 898969182 824383599 250736395 695556971 297083323 441288329 267117071 874175573 388680539 494872011 840651310 697430068 579849992 297689307 924826756 903908454 259760210 947035439 488488980 370967235 250145444 107805321 104957649 795697123 791518241 87572025 903427768 537278114 666209744 699824496 913510105 799147798 592607342 164969641 225854988 572093398 552972105 676653786 414651779 10485547 268695193 962030885 458575071 842026232 301227331 104681156 621657976 151198253 346863286 427136576 15780490 999343615 853307400 711253023 24342686 266352363 356708168 132567847 301529610 42975443 286008685 675079544 512356782 287664484 947907068 426445698 306886331 116321967 425910419 684952257 379282538 644655077 164572223 224869477 518757679 576742839 903697022 931544349 684393531 96606995 372266056 485424492 461117954 303092978 233598911 450296948 387407461 136478079 759152380 303885471 111841410 588219616 747365910 839653301 57470624 408064539 403346014 161100328 805334935 299493714 148605998 51662487 906512225 121885657 267545645 382838801 801684455 918614738 598532892 875628538 3206706 365662052 998997163 80953450 590117422 737619232 611438497 218853855 293745471 376496456 783365680 798605357 905229030 83820726 430186385 516723180 819383013 647080124 610938535 772537704 190588045 129966464 313528157 917971206 409706506 986800448 441561371 479539889 335939919 444147004 212860357 705770302 168378655 666137717 254901760 867680122 291077267 349071408 700667165 613355574 144482920 537475809 947348164 405610926 947120737 356899005 215229821 516465726 950956971 13479223 280201570 589910182 308615545 824633394 249490758 914826953 997705050 889337218 947115830 172226090 127445016 807519012 711326086 694195991 881770588 602021875 417422071 244741464 751173309 257118277 519908198 535401872 31594464 760945188 761369124 548190825 420962045 537376249 244165720 674661925 122748824 276810936 525698858 615700456 93222925 155591612 300488283 269668742 419901247 884599611 966113407 235358320 362108132 281256044 858951407 640078378 757004679 83814012 742165316 954465485 566269025 172109293 944554344 47888210 653175375 86604104 230160063 408409915 426633905 156778072 110044879 42968688 226162450 772922283 144755898 970658248 515791718 46117432 311663275 937461598 566495914 210244726 396965727 475222699 483796673 556898604 458431887 998593314 829114444 502689231 585004725 400788003 96870181 861374705 594684778 822218444 546485642 35060006 350552998 208500441 821602749 731469211 144658254 857204988 689407097 338973922 298242742 751427227 113635592 400025556 393932558 96126602 481696936 870603496 232378949 983849392 610178904 98666094 649760941 914563098 812759881 907072442 78495990 536333650 22112798 154079724 841636672 93642601 126697868 36162337 399911840 983368119 157494798 44804221 763426622 827661092 921325270 47890363 469207111 75837961 707858727 866966125 264533512 789721681 407233595 34854639 721316500 886566102 354525317 430318896 843762991 340482807 400140163 955634538 877543879 279310765 175743591 298648861 350061922 590356635 976604028 210355703 387993355 432882257 866616616 552562984 791718094 537766948 587673247 359093324 483323250 555443917 438913927 500599578 155734815 262248382 254947767 112748436 312415403 638647671 808894748 976501841 879943570 764716202 19571133 217653871 598213858 380360728 479823335 617530194 430479034 221944613 836311149 836593300 754706248 204036215 84620673 534973360 146328823 332966129 265489575 747209589 991029966 305364692 642324259 340707676 330963925 992209525 197186948 997669831 641698853 886994502 931359151 108325538 847483715 555365716 693379268 302763182 29930283 371658840 302166357 826179781 901263298 737272341 533325632 953687079 786110061 420783675 451267949 397661885 844182952 978998281 139082870 52121743 890939783 406489513 361726089 515700591 438663268 519750365 832678668 979211316 669401839 712678662 532526306 538179653 254219986 389181121 955835537 792589323 152218065 571559342 703202925 872012772 202316595 688003413 988621867 72204114 201458465 596797778 193489177 677986034 202866396 614358944 337325292 722288527 608446380 460154869 730250643 380243785 654204038 742677538 907844377 137986981 227126948 199503983 67657293 451546463 176785987 231728013 38607585 774405295 185198164 48559459 149348218 580360408 18926517 369503019 47673778 3192807 452379033 462683485 403387223 977895755 322361546 117742181 424564273 497163901 865560433 472847873 647806044 688498087 809077389 662829023 302726880 20672331 142219623 62206152 564400829 325118229 378573451 643789162 449547336 900820148 704445646 328400507 291515669 841934203 321696615 584626209 18012741 461884213 387119646 884734295 891056254 418323053 266575532 52274054 124767338 508763597 549730603 408833623 993343948 752870520 599719990 76832828 777843070 328819041 15308188 707646610 200312311 480477338 604331791 683045254 734463156 280912651 777500344 166134133 286530098 789507251 463130911 635794706 67815173 736506594 382302930 316874167 500781821 738576641 375648581 669542257 506023306 600188038 503055760 710899127 592827643 305177466 752401068 809873331 178943079 18544448 510069721 212592428 636423264 827211879 486100922 135408547 395845458 424721665 927573376 547100969 213715781 817200429 607736992 818628123 457968704 931988999 714459092 272650189 662452935 100902892 657050960 839398653 704199111 60332381 965445347 733100520 126576026 266969005 26397950 561891937 202016989 186226555 586148843 563111614 392784500 986679977 151184762 591394898 304301987 588813714 50130576 897188425 889527637 792748 41347842 770143604 494523995 618753472 171921622 205332520 18856890 94161104 334796084 494920395 829150803 952626671 294739226 134809133 754987096 8596098 481758236 968135516 329887167 911670953 24875016 483646759 359286687 381769328 178383930 580523838 793241869 506118572 899610027 612376056 381880729 471903064 468178277 52900379 448746893 315957128 26059208 686314327 487167136 113482913 923337089 524206543 810389042 310305154 693542176 573155917 467199091 709599104 97731015 234204186 967126335 478865011 532013879 83329293 913671318 105225051 129610822 579938941 120600509 152639063 270578533 680166301 20318151 810869667 363752412 834675764 21601559 961381711 197424438 313180281 134189957 671932834 948092537 656177621 164808251 2124956 711896997 628801033 181882107 737148842 194924577 909384850 786267807 214772206 45332475 138041688 497691670 626015333 875968389 681106572 735003406 274940948 441950566 231654252 147457913 987388342 356710136 707552060 751934329 439970741 223975402 401778167 606772426 690191371 919757871 7269726 49665389 385365961 423286837 316839248 703364586 523278225 619690362 340244851 847313612 112248921 656866482 583906495 546673927 937930947 689596767 120853494 2816171 562464318 553093563 96374934 99912030 672294450 370919352 105542755 535186727 518610951 252992386 895599950 843016963 754737963 620675438 117096510 844090290 656533342 884102335 715197409 487657245 264590372 967137385 533301398 626766871 32207255 314628860 809898144 62935936 756463147 174390264 236962737 883682619 565665101 507096593 238077198 420482271 974847146 527440304 435869686 598522931 926964413 328142448 542099365 210278463 29166987 432901 171561056 365486047 646732921 866568714 308658881 380681644 147250488 533355644 683735871 905565478 737102401 143766397 200313703 84097486 702034823 642564127 406027770 267535014 78642836 782053413 83189157 82401314 17385926 14201728 249262310 827515622 813893776 180025134 200851680 888381476 560417922 486977216 68414114 642215194 871907216 215748941 524402935 971566502 969729306 131587659 792509881 694235590 635034456 672922194 604563648 191955939 224544217 612803212 432124109 874968158 638838679 67050699 22016392 556292776 483296884 402806038 102017001 299878960 339723549 741162202 197755783 377394361 469429931 749722401 958492043 913691705 424484713 266659858 589516035 407728515 848125757 978482671 394134309 528481987 829362451 22771961 18127777 120753698 736481812 63925251 71428856 745184799 213036048 707132774 926095385 185467174 480968912 490779234 820757185 922420995 292435132 70095579 689191540 253844637 544795639 333694870 591231350 280081613 740184507 868642254 667942235 555680541 307615432 141391210 126366481 969966885 290735905 114527087 570026996 381898547 178521768 184921542 311375607 2279240 305238879 932967337 191376988 530421470 6888773 77665325 902584046 196526742 707352126 820529232 126361706 566742010 271073272 522685613 640751984 170523278 716048992 736177351 586618348 930005108 510188561 435038453 739951744 947075552 815489942 774783519 438671097 535007606 735191916 249940139 138996481 639095248 861467900 790006262 210373096 450950799 685822199 254373596 246376933 465301045 774314518 759695085 241599717 142760049 490372143 542902413 993329168 619288764 70817722 42821323 967631571 924532173 360242655 575724187 33865156 656954988 614479309 824998502 634470448 476524391 718945345 348204700 507252543 388457475 451733464 385972181 320513032 712814730 570677926 790481491 894766878 31403843 80561387 115615836 572993911 1768562 552767024 903809750 18935166 176387192 717030078 232197121 257251482 862032503 481974505 676550041 480310526 328931917 252541797 70330248 503495362 9022529 975176960 281722345 500631484 604822960 383492427 419295309 453354922 89300261 882375864 475810910 700925747 888177301 778228853 850330803 14845973 538902498 979591028 839460428 767096529 930307718 80071250 183855859 402680574 859033096 727348574 733444560 558544227 873655576 971470188 567403745 902937990 427719570 933069148 536848632 257686270 408532479 56993116 719139924 344300617 37701398 872932410 230612644 646237760 705665418 997558021 566188581 508240220 575469830 970034536 486916480 362689802 439548637 844149456 424950029 843441791 706483627 416414032 251154640 105238149 219681641 284453947 572969576 501616631 43548853 818879355 738204077 540971247 132862612 566745310 606055410 767054268 339797332 476929351 793462610 115553630 829577867 189318852 660922699 483212717 984389287 370822544 260406515 907971141 427456525 549847356 327233131 302488391 81689111 48994102 844365972 45948705 557436698 180367481 397026342 651758402 7929073 737711255 147815150 645643197 961592515 855682208 678288197 13128550 331473752 842578363 125497832 767582146 713682586 318551218 949327172 756796572 485112895 497455773 989891056 590384255 327672649 165487887 178841138 775002384 28709185 941958417 741292123 662474895 891963428 512888814 729216006 590579750 314329368 900241441 263103807 572182214 456051813 241513751 854368186 355014302 537142143 43253590 846770893 876006102 571634187 630742215 244026100 38666918 55607235 341247164 621481243 636487685 277731034 719491212 909517354 618721372 787683690 813076092 235122629 120102194 411751439 423231665 85962610 115030320 955756561 512738189 762126716 172476883 75996216 253470898 745707650 122533070 357565148 288130377 316852625 942217505 258012148 345401139 569426170 553784208 127658019 662598972 12415792 624119492 935373785 574286507 408435165 708511810 937135062 846593512 659846580 336505926 147512937 883130851 812833512 697350232 560352240 288513706 586460455 749204146 644287303 441584481 554250843 653672366 821310517 4900874 272768330 976504056 595015214 32130049 402396063 43264231 510017267 176680216 681738167 353388340 482213581 853179975 877723552 241752642 855521871 789394705 542145058 925973423 716912191 763679260 128360810 522080537 549977043 180211335 237180036 820570527 107897500 253780260 921617266 847314362 899242437 796137663 92276566 357497511 823040698 66902313 171697444 488816147 287037017 656658131 393584700 403920062 450576623 145898203 353630714 860475766 446725796 602213039 620715210 79769165 506677874 304869871 483854621 506632379 308812757 100947986 378220496 701506982 578163479 407460379 319464808 28205433 647572510 439708317 640463404 732665320 383222960 865182728 507582126 69983312 229412697 149354743 318354015 270733780 281687054 511654852 38352360 916236798 791918956 779089630 29580369 774112659 40946394 508389629 376757451 306057898 467126734 187865009 673851229 256157786 372536 878525599 641143543 205050800 418285397 712264620 273191194 454788765 233230806 520719316 881051620 20039419 174632406 366376896 216830126 742424132 218625668 844621073 256717323 973391295 866313527 168279519 651830376 689713730 607422937 761054744 506719878 42015363 803177381 652386334 955964554 153007748 538648663 930210747 438618594 178314587 167569784 607869699 308260648 319030192 943485942 707073547 43678292 18372570 662402268 61396973 972422711 396643699 438779079 4340394 139691535 585151722 344587683 988249255 254891683 771208758 70525088 68803678 745076626 310042840 764603235 908732590 662617250 520099223 86626227 340816941 401985389 469332198 950793291 791210297 535278180 580530993 526369232 228288943 927148912 582212186 860264345 801951438 414992843 638158688 665557844 276092710 284724043 903517974 980119964 398272099 583105755 981660878 111497921 466624999 377581044 39722826 541156336 466921196 23462613 129533466 582367574 515909368 107452400 14214410 695188742 750610717 629511200 866488188 524942411 459924488 436233259 196320697 787042498 418935850 418547013 454199122 170702849 468205490 169868037 782245980 717623324 714190720 539027829 969029039 628632804 27477174 149370156 33443831 806582039 371916042 313397415 654229687 325870450 151586432 865528845 655409486 361488087 519053676 895357294 724165473 495075074 784162112 197417864 326086039 748193574 175703871 240781013 941455998 125673775 175602847 469516472 637830843 597040140 616048490 968498200 251899 887999028 806969934 10143690 394753492 718092255 983564222 703203981 461784996 922730480 652875762 672616979 688335960 408380087 420852589 489333826 420734791 472727489 64354367 961158467 737184376 500188680 313627739 271573287 406183852 735395213 825317506 858334688 587298088 334857866 751456794 521520071 711982741 261512591 771666493 560811035 250612067 594617578 233406312 515260529 729874587 265425826 391106341 672250343 28328799 692143304 407886384 337523170 450799700 487601594 278657527 924696805 371571090 404950868 694308502 500663430 854380261 294999084 789289775 142472542 529743546 371794749 794804610 242221090 710410153 464405174 79061716 250806819 821983013 535462168 314318715 978408611 767611993 15967943 914768869 327454483 866322225 468774442 764870236 232626509 980031759 769249707 789338391 754081441 843782410 773310029 688211653 284174746 820257020 827463113 141098091 89827098 160738574 685827257 92673330 151323739 191574876 233595145 118903890 533339377 809596466 27534821 164916199 824402261 646773308 563688270 97980998 500055080 502104932 802899152 850475010 95120928 488486636 327015508 232310886 507278094 977391979 707474923 42459158 347628669 485601612 400879552 359481199 895544749 615359218 475518778 876149172 157379783 511374980 760291417 390519154 912783337 249883140 68379103 405673739 787687542 84807017 50947178 823572232 492193942 754926404 420580726 271951221 502622700 327247179 951582711 192939065 24451213 557418968 673901648 220659874 248001489 389535565 484867137 458428046 151154040 715222476 659533692 841675772 213129564 398006266 246716545 327347476 781863816 899406960 115636573 622909595 797807239 233058636 3827070 643729260 358965932 809842312 216598034 463138978 850985889 633704720 916310682 467689697 712683229 712232773 959959670 758585628 189067079 568617784 346305993 53239575 2315703 640014883 257674318 39764740 686835131 787459140 434814019 25794579 567320335 741368259 655510438 643220995 561442036 488577547 31304098 395884922 292621580 752512383 853613235 237269176 775349747 589003189 513472440 942477382 163335910 768212130 10335733 327359104 898982502 4392736 847237599 584632734 605346529 283684128 467248534 372214267 855671455 667408850 831251195 666834607 361758156 756902599 971735808 745132532 924497038 416293733 65237929 510868969 690790780 728708105 993289829 605785910 757976761 221086071 436070859 417829520 751194970 292240227 748215107 74445307 124020952 493503304 132112652 839093080 169884445 532188419 168964093 451695358 580015135 85166836 840519074 477502655 277685645 230072449 752885373 283929804 482771328 784886355 334900305 481154149 632830934 472930590 715949465 824318086 691807652 257792587 286835754 94364308 915182591 845487404 795249205 633785639 3326735 179279691 215676065 907405396 877263474 893646316 228306605 780527183 293070697 237647882 24242938 712552232 257544392 280372292 446371614 303457849 49093503 359220973 594689738 884493579 995983161 305762839 636109701 431181120 104243549 891839001 730104953 409433873 58610761 932996820 486573714 63145259 707315920 207769895 444959948 109407449 23865766 410047992 81764809 778027226 183832321 168732955 544348233 80084936 789555295 945331888 580159192 782185428 181542395 559920973 670395146 173393759 974475685 411020045 945269612 759520533 465623566 11251594 643447458 975095065 328618552 930371213 487372072 818060719 586062857 548810504 618385148 577238424 704885446 219618997 786956153 796840852 260504868 517495231 640642866 74030587 463680892 872654820 295788607 792574420 790095612 539662480 263899591 588175069 290702340 202588047 633036570 337788884 146545017 343017071 861534931 354543236 11812154 453855988 820027166 335072023 649018101 114152765 745517419 428760491 97432230 972666746 219523382 167051286 499977651 257561586 4863877 831515468 771551030 495611565 540632344 205281636 839406874 569568130 91139169 148799526 680570627 727841365 864551366 248412113 116987431 282492225 861768567 66979983 7068396 941434940 294019600 954772993 750895288 355135415 500695818 968818004 344802023 676106684 665623999 664329857 437144362 583096732 870947076 990247621 140838614 998790051 256737136 252012027 293447359 391291174 727568960 326318485 113438392 429539365 729519794 999516127 7246367 425696265 720817575 484607054 969855295 245551388 661314858 74368716 324851324 424559017 742618903 187522764 554801161 81760044 949425885 281330205 684959904 500349945 413410162 954879121 719724623 740393741 681350896 393963356 329451631 503126714 639668704 578767422 201217184 189579186 477125236 953572306 969334514 413415576 241163830 965359467 518291532 323779172 832647907 55078183 35359555 613402104 299029671 557404881 427766977 86295088 75891902 185967036 434860421 603712834 345519512 457367837 845700471 352051889 769398944 920237228 631796105 851646207 674594862 649377881 736662025 897223955 624812853 587110103 156361947 564638654 385622489 547815009 388255282 739092155 625859556 982081693 958974865 372651508 841740839 128213414 604141241 275447513 719445448 470894421 157916540 25112644 394794314 659640918 211651802 853544630 285926816 406670401 118386573 654722673 926088658 99252971 985533977 410957090 155960276 352547404 987040882 33174171 920722952 739530628 470918075 246718047 486696777 351282951 366569788 657242970 485926816 420992688 308944179 784992306 304011408 815830638 990741466 808960 56067539 677287025 112291797 961668004 986718452 140716625 800014020 617601659 720738433 798941939 18248012 612314093 711959837 989349556 282540022 224901254 568372347 386204727 308804192 654835759 717010908 733082813 571634550 753786527 825721821 236876861 179564945 260315697 523773570 736694998 266904967 824496246 313573894 633211553 788460031 677592693 514698957 533394280 569125472 611838468 888925837 650182475 867836600 656543268 339768057 601417937 235377026 606282455 179374228 429587652 536945309 751441131 334706613 484121783 345311207 883245023 767620093 716504353 353376671 640622812 562997365 418392718 481396136 90837531 57452816 578822968 191437689 799655707 683129782 260721711 973697057 687470255 648770368 944288348 866683306 420172877 691980988 275136602 765585706 886343029 741154493 972737338 8808761 854660357 432653881 112331349 817162743 987998216 950262205 11037392 526532353 67117218 169644304 674966420 387300467 209967899 932064152 91102680 535489675 32668850 410597159 187896699 324505043 974496905 314773758 318746127 66610480 372632548 585371173 291898407 902733033 616291398 714986832 627252749 907631721 153797961 583551786 890942959 876683198 336784699 960176720 952255041 289213442 490233202 122229175 5498571 361824375 800586039 958518947 431481965 949047208 540508351 90251414 647175338 247128148 274752528 107452964 616317378 860630760 199810161 785430501 96164324 416310746 714929390 577393758 769595257 19487510 441921285 403895834 229288949 340779403 120319602 928093157 971397117 451041653 947904401 716154385 82776782 269654183 998899895 749332582 807953278 556557714 81954874 123339869 183985261 568439803 986582921 530378845 491128129 961901178 580466080 738581434 802607940 669773730 813702309 875117333 471780835 733862889 407569874 968973392 25935370 260979251 138842386 393143687 524634533 591611651 693750718 360746670 620956400 449937956 634663993 343943989 151326029 528522034 90553260 374949354 408290337 936505842 582612860 958040469 552937515 183140521 279944301 153069997 832415342 442195922 68474119 855725023 347461142 497007068 623368508 683259976 979037372 206927086 729955116 822603519 542660521 880297989 411033441 329849242 325571639 859430282 413677254 508582051 838652101 551926788 218517468 346844059 22461223 326961467 99321291 431087071 812676273 134623328 644110609 11751975 303948822 7913888 137620980 194457177 926139976 423472985 649065410 685354515 952193377 544736713 976315430 87838138 652284303 6137843 248752293 560171307 603620916 39629621 975350050 394862804 877114357 148094455 498216667 454079810 172861804 680942980 101368113 155974956 902473525 192551186 205804192 29864829 141346592 837745002 503871405 329539075 659345365 552204334 365551284 911537001 746858489 592792150 638561777 112527667 898304759 377088524 897878280 755346107 24981463 832753477 960083468 867491865 81644093 733480307 64967108 670232449 757412941 127650444 370664128 743400523 562218986 447031123 172742465 560293175 65821172 669338540 875162916 494985999 323306188 32644828 861419982 853716801 231387303 293020352 597582334 650679307 146082912 823890255 568134471 564766783 318279879 177825071 834782025 734086825 10925414 427814377 462522651 60467005 857736190 659727227 629879160 648609834 41750084 34328069 116242255 551081601 569377408 255292070 398365035 776114467 387480734 112668075 40724907 700653132 210817327 809843584 517974827 4168784 805003800 162818042 533040276 645238125 190844912 556916262 286622052 563175459 749636692 535571113 175593923 122308976 693593972 448211779 559232379 945180510 536680712 401155918 937904098 34123717 128952365 721281121 462613020 590322070 793303499 292835178 683511673 430443217 959685671 793907764 375418121 216275463 992015455 850886952 193329326 82719623 209971847 805086896 854968565 569389023 343668764 875037917 312909536 384283207 998566650 707804500 249388168 488739211 242822094 694208059 248846849 357505321 274592322 744981095 121929553 804323248 561277800 690123213 436883086 504832147 439754073 42632062 252897152 33353808 772954785 155159688 944813244 537036981 553920083 385819681 620576698 635654257 612117015 104746306 98692961 568648646 103166464 293528569 25049045 786240563 49035159 977860302 55151611 878848955 192468603 87556147 870313558 532857546 595469568 497255011 141800078 482089268 216397652 593079044 775976503 517138377 450347093 826008350 775738195 713840610 660703577 609856688 887224344 638719716 150190265 687343619 960735982 390538410 240546760 883229207 497966477 175685189 928334712 182043175 149006360 598662189 63916614 823024052 416544142 527737583 608503142 415837470 671190278 189828008 690161594 8712466 405106687 902972961 542521828 262258829 386993564 413311530 18667755 956389677 553799765 168189819 642630975 953598192 180225033 556048016 304914992 65990190 13460796 602197329 786575913 24778195 843822090 774873877 205057927 108439472 268460730 163382388 490757317 206928919 289727790 898132209 590173695 824241635 413299831 504002974 673942294 669594988 744783442 685694764 365933091 15225119 335549305 717723538 428357316 998039787 720959053 568275084 808669401 912474040 833307860 722002893 619009825 163028469 536577767 560843962 37247360 858839398 150198678 620362260 474435896 561147291 595355162 550980729 916336908 421737752 400823094 863196698 186979750 949567525 546936170 557857079 870341704 451761202 714310762 518467379 206072237 925693982 421231477 648231928 931438408 945847546 184345375 851291321 639978034 336388297 694530394 261626066 532439736 764319640 238479613 365932571 798896445 192896313 245597237 604851585 395250273 422996248 290600130 788339147 114517918 809044918 387309386 621777827 342424194 836065474 712405221 453573417 577235193 686612205 750355908 368146268 840618442 286593709 504858333 46339574 367193307 363087325 411945189 364345915 677309260 475463946 35144775 864118720 509771739 697752932 631576279 154292892 999260785 618632570 891165914 510917304 142226987 248977992 166996473 75948810 250773701 138702808 914622794 112758602 515639768 893337029 153044494 909331014 123947307 45699870 734168660 382648473 325896969 971254235 440614242 3625480 337085324 773988796 220924997 756549845 660240463 805952225 54621250 890459070 367869229 655114159 957844201 948301055 935081009 284478964 621239995 83108571 708481705 193935486 402243908 676156089 996729320 443496665 657801846 581623028 904908768 972248202 323181104 241570395 769720326 858130516 976093605 115425746 236704925 709209949 848620548 932107172 889621880 678554789 180948056 557027559 137573280 847867451 691765905 127332580 237699702 314022380 789031696 985881406 678380545 474015209 734382203 890200778 578806208 976774002 410313886 507094280 818097393 358105661 756862395 151179536 276385713 162228542 867509491 790833661 258472196 814766499 830672166 475018044 183422462 231626072 93759 911249692 298750580 27167816 625775909 623924409 637474973 50242740 978988000 609975651 417233549 287410058 349702471 616228458 83031026 475890585 414957955 257972403 93953748 897480644 98797943 196101140 693515041 241480792 294262264 283390337 348779468 23758645 909026655 747191285 548919081 768151791 407020546 330488828 705693724 553492783 594402541 559462932 469133031 73254701 462561723 121057491 61284267 435264623 559805839 686355350 775357992 49927357 200131306 83178729 432646252 325717857 840182657 399026795 454297529 474776241 916122937 978511198 818928560 743624196 295535153 146184292 493577264 169351400 553121503 165843112 889705963 875726583 677175544 532936191 184713419 35261276 721039122 147192893 572065882 528830404 485152414 66153783 550008078 43029089 612800514 303018107 397265089 832956056 612403430 888448421 514222461 1352597 623863149 68557916 581174432 307071982 272696910 324015653 550441088 461611579 434200217 608444688 23427375 519707795 324850939 637285106 648666687 823452618 750777389 890402300 136312235 186516146 249955659 172978250 162530379 941030924 197269707 728920991 883366735 921160397 127209814 991601641 993113295 845431563 657161331 680828124 737774683 775760660 338033940 803718162 617995512 684111264 390749469 646349707 524386382 443480726 368906048 968194796 516602332 152201530 139981279 140955578 665238807 562132989 195641734 406097902 337528503 826224475 411299172 780984273 546283930 539353031 308774591 885591644 574097272 508236102 134060488 287658414 674256708 100104942 119010963 791032277 660962055 689627308 364386489 441759620 591084580 210476324 883370231 830431447 581863926 393154628 965687842 429646687 308097545 508028895 540441456 165628288 941505311 669865687 568273659 616049572 787771631 944664006 569769285 687706259 260117668 905770121 377930494 760178649 426331577 298175268 646512033 623555255 445230471 263320642 159976009 548046674 410871228 977695137 655340227 538670948 12104190 386510528 732893027 936780115 676259965 702001292 577762736 737437810 306601172 293359105 28482520 730803474 606044450 48246873 847443590 110172048 962678963 185609348 623591361 518868235 825851077 352001412 708652697 360579647 168860562 797953466 231658809 893765284 482933597 615747536 598797126 976863907 15234925 811406578 346010058 438406053 626696403 863236587 667461674 999947032 931220548 280502224 23406008 505929918 833157343 943199697 358810782 178678250 775077450 29714535 472836499 380105560 656559611 357829341 56843344 632285804 343060983 607905564 770384156 405731320 314061744 997613174 232935226 912496494 255691316 995150473 4915359 571838702 244331483 826222435 359655828 516079371 564501861 520937963 591096543 895370546 975898203 201111340 256449338 833848099 26192152 895705289 570148621 972403845 536660854 840442086 97570193 195711829 38351740 21192487 281554180 955661265 248335589 624149034 355004545 74446714 260873667 193957177 528407869 249945535 124902099 628014522 434087013 991715137 958913712 855345816 811538244 33543356 748156848 179913810 664704408 820640095 101510033 344207325 388037609 956615309 239322506 220532181 230839487 279165129 406454519 104765002 441308273 542233398 111209552 366526026 644014744 495558335 213356537 753165707 539979375 27378725 644656080 435378352 366010487 577313752 399878554 641464882 875223173 265516717 276441678 731236807 860847730 938561507 465474185 114423599 177345699 107638980 180412380 651164743 540408061 27050021 178289325 261934215 755839777 63085541 355340639 370972879 620850622 559889848 321700061 750339187 3380014 920329948 744873678 113434913 673801046 738018531 952505315 255207926 594781003 462981974 151727334 268079242 981709084 918695737 151344914 413477988 321523051 27172314 541748993 772328490 918938822 867187740 806732590 395246328 700387283 604671321 830832830 108137406 562524318 85618423 736083037 915955591 463411287 497384922 327089098 748969552 884684501 513719586 770559213 118605768 109705687 769632607 491365467 411564748 128150761 312020107 302653407 836024899 433227696 307754575 251891142 952167993 450362834 600813094 253614313 751831136 807782052 927225842 366501982 23647668 710644088 401886803 828920986 152106955 971615551 469022338 355664889 875455914 445660344 107000803 662351313 917068581 905597023 759851742 411508668 227596142 954693311 843613667 315430623 105281111 176349198 785664368 167653203 909178472 734901540 225854078 146396073 491875961 891612238 496748696 358042427 667509716 144505312 34343727 561966267 385485554 365008224 415779683 513944722 988012117 870417518 127916086 910194310 35900029 797215438 261776691 839204681 622836580 120961976 25636401 355047732 709417549 867941587 573979413 946405337 946021884 229732065 996039062 243492805 691333182 110441825 573080987 157473374 474687025 873689709 714794662 241039143 211911094 955992435 294434300 855493707 157572292 979064781 329317832 743435766 773115744 948612880 924082853 938425128 744795053 158180625 38455546 538924443 257362516 628177425 774204442 195298804 344434724 653869684 24060574 353819169 740836650 343159636 651628590 145384854 231881237 523788685 335614377 893145522 663233100 661311354 127295373 593438341 802590628 605721481 689001325 789950637 324926658 67567965 835174928 303939854 76503677 354237600 97642581 511790656 578558730 730066328 630568660 290220171 270709000 428425958 296198775 620156025 391358050 927042417 808908026 788674720 710521437 216405156 604456730 928887834 469281867 239358068 139938013 559426656 866627769 782396567 183059660 412993989 777580702 835230448 495941087 778369733 799166110 432412080 532531976 932461479 183815075 555733267 805643042 167408943 271645281 704485764 295599072 854559721 780918673 883293463 313436299 961647345 474227518 641018324 509427918 358740770 5307866 1191218 817454362 148989924 613308903 308639440 726683050 790959121 783783607 363992241 330436844 418594652 738105959 456002390 964009807 729301464 555955185 208573439 649736881 476704187 109326207 335132100 979095667 487939241 90113783 145883903 460775662 993766185 560072105 979044439 509972523 491536593 16422345 134438691 737855067 272018068 899889620 429245560 12188342 314383504 457857859 809374037 678851930 335440950 356803130 824964271 428959315 272611111 476675247 837664112 480620725 652350050 464132537 241627572 134490299 909667014 994442934 112460024 572821641 280057928 29460459 306733899 509333574 223995781 11428981 296222471 178525455 433133441 311402240 830533407 317674999 738606208 72102652 468894999 302788741 525743648 205502700 391672754 182919455 638861896 212084374 541729863 666731670 329685028 7681384 203154267 627605462 612636454 907950252 908768904 602202314 800074426 717000691 91217765 512071204 60456750 486620420 17079275 344740024 406282476 294927884 254200984 587374795 474025145 688299823 549425445 588717601 448477982 760350985 163664277 835496093 693461047 331753010 971471007 144179632 966596206 510353011 382036011 679424246 986183430 226610711 47936660 592019599 206810737 347937144 836620227 680262256 972493176 871049015 668324054 232603455 816078016 91735225 975240544 797000984 968360644 598076233 123798033 87573650 846286718 683184647 682625475 266659427 764130808 673235554 674638453 951312642 633937449 920168488 860708196 719961825 275516060 437654816 894919773 948423106 142959773 719188988 707650344 148939697 505190904 382060475 33494742 458654070 610262156 865977525 794637869 267264739 971667302 478989238 289621705 962721684 236833341 132369609 321231050 416996177 63840696 575494464 877269545 768714995 730590313 264957005 11357730 267434372 70303497 754785916 540436771 604639999 43170998 645952240 152169625 959424710 858698916 32772907 759813447 370480862 356371647 10745094 967636162 924158488 859480502 858846447 978404371 124322308 144226745 865291217 717173210 422361212 450185332 727139091 225548184 820991284 659477652 943709252 329092151 451739593 64530510 690652261 669334989 471205149 934135691 916893888 706214469 965879939 960569448 945506335 84064152 345489880 240337577 849172025 145139180 264693600 257382021 770382680 271854739 790381045 719515655 348954490 195472551 801626937 459141559 548263779 227345909 939943592 227299374 317382804 136802302 625084109 984246481 112218449 881214859 969730399 968966794 323204962 919781193 270004095 94732662 175945799 305836600 447624169 109594445 200281247 156404954 326445820 719673786 95406346 29661693 596357306 244384544 71630338 778868302 214828713 948156972 63073839 657450301 352698261 972865409 203713904 795861069 165376636 429341739 81852979 157991660 957539362 53156482 742921497 301386966 577477508 50356197 568024503 551721445 476653216 27934440 951163034 500856819 237731392 256145635 611096561 700181220 595136206 22116634 131446733 693345381 580393385 111455041 289038743 235753202 187798482 652227392 80339756 944779243 313492056 173478345 583047648 315114022 204173192 802425291 964434534 796518373 591978581 790301362 699315686 423647600 974138668 617784729 711772634 674950330 485262026 239766803 161959691 113614469 30992870 806527823 879600308 533269584 170921061 205836609 394218874 974431526 477088149 940235439 921443216 32430173 373075379 195177657 291942772 970392343 268690749 823883624 682310074 487047981 673985232 473995112 668010669 427918189 234593986 493721552 239455435 585547880 331643270 641025760 176519012 788523670 815385901 699269114 200506616 556803852 346739623 526062832 117512509 788198078 800257104 978837298 147983109 376097482 948193169 193925994 659776880 121835710 421072627 417412678 230780437 951206929 827209501 695536041 753771630 450634206 949632735 962750577 66177858 482782367 135993544 737984031 679393141 167467905 258466489 43404211 200390838 672684394 392000861 409427616 609090094 715085003 845890315 458373595 803106768 224009551 534513775 900096334 265489146 758911707 342013872 2366873 803144150 586543211 381260082 48591034 827523364 500204923 732753983 345941490 989448182 46853586 605351854 829597609 474539274 959911465 478202740 981335483 505801084 190726857 117701206 988200266 841333915 955717068 534473550 964795347 163925437 770538199 901861372 910492249 810236827 786223000 715050316 650443092 436030625 391403112 690567444 508420409 305465137 907075369 352449069 123123918 663151894 253904939 386921784 535265566 723486659 810865690 701078782 608025354 574539996 166862249 518396398 681698108 413143482 761883334 20234064 704526760 248129409 404612872 843991402 598069482 640206720 286841063 374425308 978070786 713711618 403984425 437643006 684450060 950423723 667546823 103049275 487311916 239300076 654198649 677185525 320731033 304694841 307934904 106284686 944313461 77244011 613870079 796180924 451794624 643515156 467685678 440429836 430498162 190612948 694298128 516549614 110886207 630135387 259046489 65168966 461358395 40000299 589181670 447564700 940201462 660401840 161656950 134579304 530417731 330234550 276692401 832420220 236341314 931176883 259798387 172989561 770545980 996815594 546419751 512483521 401904523 703979936 736833255 731043793 801470859 921186430 932540454 445710338 602425954 952595868 446767969 215824049 469223105 94575649 508017787 2235279 637935394 29550651 29984031 294916753 57091998 764775768 965352296 87356679 889643988 812838577 765113248 252250312 200147451 888085683 612778101 300427940 698283115 174071514 885648396 766885186 994652981 356320030 647665358 304725028 907934371 646327259 970648656 258532628 990462474 992797046 206413761 525030118 708152409 179076096 105132036 743751864 415540968 277133818 68749 933348874 265416246 522544730 417255743 821612857 978792164 681912308 187465156 548410252 270380096 85614336 676413574 699534108 477490094 997970081 308392357 541919819 653003678 989012113 643299900 874550067 865823078 776573228 966290519 724605013 34361616 21008739 129110227 299366694 986836796 349831416 226462287 910823177 901231321 695528073 914293695 871794542 751728165 134069082 155437887 393663326 594166740 406260642 152521140 780112213 595269007 392288042 964102023 293331911 981388801 558567264 40883516 918653850 739769788 709225328 689105665 263030959 902498405 974560634 163006753 570339194 684351776 180128123 300634438 165344192 557692926 666291617 868113959 139831995 923487325 599191240 16599117 874640963 924757834 521666781 483371815 656830142 593175245 929924357 437727427 657136942 713445877 761574748 120392013 214772864 586631243 347516760 447044072 777445490 330407320 897896479 19124497 53524546 704245462 619941595 51679954 413642878 751916908 300159460 869761382 518594560 767170692 249257517 103612387 1156577 654606124 729373300 158450985 768144926 612342075 648293095 481791988 632330171 126911475 966011190 662683865 24704191 76240554 47613046 651204963 147582579 831657559 939802553 243249785 897159898 215445351 659632428 133084328 972887616 595501581 148314678 585161723 668358576 125918099 182000298 434638995 622379933 478469192 660147700 569147092 162353819 902034717 838923900 359203567 26183529 372587165 503492523 956219850 761090837 858589178 784974025 268723197 904774552 227762691 419534962 422642541 823262236 762862958 584850359 149363119 793295375 959001258 996710512 234869835 115423287 487323851 407378166 821222576 193085121 662705231 499282331 671801851 581277755 246595431 542587674 837181410 30591989 405261284 381284490 406467116 343594430 38111988 656786470 678583220 747520212 200300375 639909285 408573266 251452443 991121660 65785940 951496332 611935624 155609004 689979602 96520222 715875954 43324405 814813651 906643623 441084454 399745593 785838403 584238078 622541742 79509400 478197589 223336895 741925505 703962264 853295195 449665041 433554812 987538524 632455072 6331263 74514979 826902333 834441331 571759906 808790632 425721861 909981739 313024604 474202564 879926386 18030479 874639683 914131338 331762328 34383192 185659890 21078563 64727695 841142295 244238014 257247783 775859986 973169023 791075226 886060899 291601658 873244541 83208788 612364057 956953334 235567360 537407954 254638062 871670111 809949059 312737248 645589607 594602583 808737704 54200091 259477534 122295651 856109350 635727351 111182289 734193143 517615746 427776289 50772746 550996239 986770386 163600952 663039274 706053376 646473546 10564579 289247078 384543798 656199933 453679956 675947838 847320760 770536769 992998872 853296398 704397863 753218788 422849220 183704358 30938396 12225905 662063615 165711776 189512732 162687036 416720727 62953488 236611042 293788230 660745072 119238079 150292317 493283954 987692454 415206358 319530155 177854421 281110223 80141508 823076951 986888516 331193904 306564158 92837383 690686971 772584316 360390111 258081406 738290099 568289507 4474073 128422618 928440063 156458766 204605374 818594819 263701051 292211986 897180644 98173339 902722914 62946712 900057470 880169157 777444559 717294674 914072129 328326061 457208608 843040238 197557566 628929082 759086229 941696435 655333231 710994548 985832339 467354580 275782097 998134850 82260194 716989834 267984683 982763533 238149810 111304783 854280672 653583638 108832652 565926570 701900378 194275771 126058588 389539033 567392984 512366663 532769496 855592912 754603896 355087227 164682666 499966587 2349140 511164088 349679193 136612974 738642423 358040250 560061513 704879853 212611600 914608565 264571202 51826139 254312089 427691057 830158181 570538611 506957670 313911056 285306287 436226307 142372005 814185827 458863478 217692515 383259000 43975605 58874982 886169676 835044389 696909831 613339017 909779195 602678318 583179257 319239506 739332255 885309713 288575331 331286015 499107595 218864395 674439759 888843699 603518876 714120521 430034624 775249335 500795868 185465682 291526794 952204958 218374714 733440406 786467706 400523643 180027759 42147839 694832947 618881310 618955159 175682199 921292250 740238942 457314196 610593616 778102660 765431771 640539451 819578633 89062803 349628992 498164783 882113160 723435467 33707596 939153742 176994561 765292933 939445126 168126195 324934446 183757836 448483276 311336791 77941952 196674666 604309415 328730853 718049413 363278680 490279843 896496087 628640074 255337431 639070154 800336490 387026792 530845658 268881454 314152891 390161853 492099493 940457218 245612817 337472132 382152414 240574647 53946956 105016882 456642997 353372172 733590094 452720369 490968777 513451672 133929534 397049831 380144398 761487487 761160071 916752737 885386298 743208213 437885388 417279656 719922000 267107695 647593112 986927903 349015883 571462549 553326631 157539680 52374976 665717166 241999115 665658574 316763541 285124327 397268103 713802246 184710238 845925955 637559634 430876154 641032930 237654042 53278410 713203364 606657453 296645784 855535872 325848068 593080835 975512425 943919450 860683433 661447262 213457532 547854262 297904129 477205437 857801743 11506171 32204904 493792457 594067127 261776841 636272705 57602545 224917099 19279137 651728098 108555250 521381297 648502250 900190980 737211519 479815810 596635836 283557962 262846847 662754524 469909939 699095621 9140764 6041414 381329515 977309470 680923681 610864915 757479415 572088991 389718526 860735285 940043937 723041581 35486366 231646047 647671331 690208113 604786322 843086133 188204753 525257123 229308 199716830 989283164 101576107 755111637 670103196 284310740 808629555 409526133 322738843 321376907 684089298 114789651 793701538 50761278 319505941 748851552 976054221 417432166 366917938 299555490 772261775 762665065 215296930 778978579 222246084 534597616 814403543 288296563 230303976 632716993 66407226 386446211 220203202 240336538 770914061 497460352 435515107 293290496 452446886 891030343 984145411 161564440 623778304 32037150 729254826 355695744 806705938 521175084 287951945 112356176 15047300 212184305 745570213 976588188 529455213 829754161 394486251 721602012 122377994 302074436 975410584 844344449 854224813 342851284 172598879 254276959 546049417 272974025 731345899 551269241 379724087 372433608 91639766 872877371 972854468 293421459 380888779 585806631 718601926 400771303 334692714 693711943 299893129 112666733 214856201 305081706 341374702 227832422 423515580 384659 454804456 460376192 96985076 697881261 269745292 463841159 731723622 635446537 479058601 482502847 946157097 840597690 548369935 450539803 422738208 979543688 933823019 573740916 326850616 426428662 991223975 310668627 965309901 951187003 898848364 630374305 248973744 557393391 550433779 774003329 495726525 780763073 10579977 753851175 359723400 174529269 228784750 44596645 630869980 725151287 517414860 531587872 952119268 785531883 956339770 130362160 385732381 636064249 560935780 846378803 111477259 37841750 600654284 187323601 15058206 391807676 249113227 489335146 564169988 117332287 156159565 817732989 569753398 566417037 797057018 459179802 936456314 238050386 919886097 723577278 140866449 671739623 868865569 559182884 714278554 745871912 217251339 973731680 257990345 141559251 129479130 589346216 362122961 971541635 295879122 438512393 701407058 877755634 726377823 413723514 685760144 946294805 738094277 46120701 416289784 852740711 278019686 346150949 260003482 632618558 949688599 647980314 452935317 345613940 142237437 343968721 420687378 54749124 908224469 653441707 923274601 605172279 825244665 292835036 600587545 535025258 160178297 137800052 356559082 818006800 827462816 5528269 869354359 734949174 927627557 693638431 363561289 369362603 237926487 997521071 894399346 56462797 510492539 703005372 388933558 228904472 4515415 367451282 934284944 713869303 214269970 696769284 831623097 431650952 544144852 48013788 290582338 328711604 305247544 119698102 386177310 379525398 119899014 45258738 713272740 653904797 880386025 257612265 317070109 605521403 364589257 516531591 404225962 189701608 553909667 717748107 897527169 883866372 144148036 870231193 887821641 135507988 550370023 268248820 27776016 21748417 676987597 402442015 435097619 950951030 773353101 927471474 968755673 616241670 321999243 529751957 170683195 463552200 193953445 745883662 532201726 683091925 686263766 317834762 37921398 310227409 827740892 393227299 469994755 629176425 262869836 844719929 10037042 103557142 987492224 664485987 903251025 184360029 890396418 465123028 237383169 485915576 871322321 951792404 27036823 253111868 481766978 897265920 382570317 25311830 893088164 860812439 244088150 911454166 492104460 139557869 35153299 884060944 398693328 640258347 452474817 346097720 838833179 228498309 498104814 197164220 873595958 496418056 463523441 640376375 164047628 773405386 592943660 505972798 250241346 424440794 602862634 889904444 964750045 957317831 675973664 80578559 549334779 901576680 273210070 31648713 388375405 143735352 670555349 696869856 693194215 949894776 659100859 560004858 455760212 2239354 176373625 778653986 267144222 336815004 855642163 997597567 484402072 177849616 358883352 265866832 306560794 583451718 123233171 378227556 645312742 790350969 920577239 55252455 808129015 159075681 825117728 123313998 383860655 670930867 946152724 397447490 157632656 541859671 843275091 934290963 838466468 856262004 101207519 423949573 522023361 307992942 421987430 93521330 876652852 511917405 814081153 963527059 345485186 785006375 663474125 900469933 921643017 442951458 516465965 714418885 319659203 217657394 776644691 529573408 727256490 422669489 288639805 490855609 960750340 624647088 785165629 427400548 819642919 996547462 96238507 743275026 241075118 859777882 608806559 466112195 308679495 713199613 962233880 149664339 183983099 197717220 219856076 911508853 45369388 482303024 518689864 574302715 272691872 819762036 882468265 525815804 104117466 196046251 355536451 525861989 496549580 721016164 809647090 276338875 803084995 810529773 937188241 75939939 943669770 115446299 93837963 563685934 769388658 301286356 344838475 523374519 16328103 771363222 894189140 20215482 211863797 120045849 226579725 934632593 697111847 546622443 761599655 986196855 745764783 403928210 385329160 723785682 279767608 861421110 498046193 541860103 899367195 660495191 779996597 278359056 604693847 693595954 913865489 275639287 759335263 196101317 903196565 7508998 160134821 79951443 258116415 776325808 960071248 553765663 732059957 208042495 893588964 542595930 355334609 542671484 826329048 868827120 625854773 572928421 375119395 542375062 527039667 542435681 794008044 942875731 824382201 530712727 761174219 57453573 588250905 682837320 25012317 860429275 514441299 172061001 236640205 478411180 42417198 138060038 967307410 546594454 438043526 763199669 591745805 101063209 908606641 458595660 900463343 469379847 296769207 258376247 174200010 748114055 729152393 702011430 551398554 945983844 144347888 209807529 337991360 182174228 804203144 463560316 59826325 415640054 281273941 952779345 474786449 482231087 197655116 995004718 858088382 533405553 925431631 589397178 219644528 907791642 46280241 584353905 822699485 856480800 949211045 228555969 663912397 908388853 581298805 276132412 11341303 406781222 492067547 113237264 493070151 410760233 519498860 855114549 667377761 612798197 68470710 591534135 897029323 457094076 327811455 996155531 144694302 722689452 606503739 536729864 48542704 423133436 441971813 722116668 780615233 249495452 526605450 654605251 367713094 345193522 409687137 392512029 468576040 798808089 838363508 516757933 319580539 275628015 850203820 890748521 242000827 28636950 25416613 887596054 594913310 326748100 628765035 183200724 481090982 456414819 19430656 28202815 826800280 73622407 718303285 912534056 449488325 211472523 596660665 754238611 703808690 885255847 664027040 747791390 208206741 241263024 449140998 363492463 552551583 530953687 208135077 902886250 978044752 274073590 196235316 984608191 756401490 885959915 630069612 963760883 130897878 137653581 320704469 605007928 713488651 366705421 229598920 200561710 832674925 715726546 617299168 925604795 337013916 517373057 817447956 4588923 693775211 854667331 289505415 82647160 588973676 798953893 494130868 845094672 662294782 368686744 946860833 823369383 61246029 878825094 314219173 770527763 411918463 803815258 843829653 917222185 170938663 911640426 275159558 628598751 393449631 809593295 170353226 622414491 91952215 472946622 724780512 766204644 568380914 933992613 220864380 915665347 38695162 699045965 346889397 278583983 606623115 775885982 29729909 827791274 470144661 627508879 968065482 703370548 913103193 453552062 387924156 446934936 695518254 580148678 124342793 417784594 333485351 613500498 443489131 360876916 36190327 727829342 859776819 568642464 738316858 884568833 200964468 465696976 289488826 208480017 921665574 926912813 676342157 816086859 94626297 350515378 406711159 374626284 689458665 807932460 63793791 210372703 11421924 373330487 137767938 413214508 57513189 78882760 922773577 177385167 736706491 216198585 696348204 942957589 722346345 282790453 829619852 756689443 713327192 430084971 714085677 593462079 830909457 223653681 242931446 790396313 125443127 17766233 670538546 804792271 266099277 700815848 944282936 414290676 414926064 6269439 833141186 626000639 937263015 306702111 711917374 371305742 270570301 403175524 260287665 407750740 979717207 810920751 552566044 661380875 894096981 282954220 10549010 190775548 592344082 516698462 454808279 133270634 712320489 204726007 311176480 88162961 931218889 291735151 229285086 576583996 288557340 736373856 4389865 452546323 451211763 913090325 588620468 213594374 189227693 994090909 838711216 413775377 151057044 528471092 547248886 512367031 977957479 908355975 726803353 449621621 391004543 586256615 924665685 100947162 9342716 601583557 715686508 569287594 697807128 710800178 671485164 752421013 12250320 662457373 634585485 556816587 342574303 630231087 881582144 25213013 468554551 64193716 686599054 421260300 450563484 953430467 450693446 331975723 117922698 892434917 200162835 139212008 562484334 21799582 197196727 465110956 34446503 799175399 642996289 14668709 148493665 584187638 331870934 408683633 896780208 45217127 547229722 525085811 405479503 302052750 637373141 693480375 330135729 904398832 191398006 889064942 882404693 363710597 490235118 900213657 44051762 122480525 293066525 500237439 35587802 2940570 806671594 92294319 324657766 396958768 606900326 91876495 920368219 244695303 158793863 630220353 482374364 307048977 298343312 542317333 203881809 235662760 566718986 188355641 654356770 527753312 509631723 765638795 508250976 462519581 148494796 232894311 710417687 202299348 960514852 804843459 893905595 576399764 841635987 158304240 259383163 801967163 880819037 114937306 562591868 159460965 487742937 871283302 164759771 79367783 28714621 818569439 50605521 57604276 752405482 482172554 816859419 247604417 897092528 667879103 383280863 538525949 466478287 586848338 326185826 896751002 384362885 343968035 65242024 801474839 863447086 185824855 982821601 964856153 325703447 229529299 838406768 444667152 554975239 593632722 635297856 34431100 677785181 489406004 478941335 431309813 483942629 807427066 70610641 433162955 528693434 687984972 766976937 611552255 134848963 611119861 704393157 761121232 763386315 862408414 429547530 933217179 788668352 866153624 342169889 858105836 172349467 755535479 124256490 339488567 264508892 422907955 939202415 84432062 362262597 909886814 571277956 577795331 177767221 299425243 451780385 699715053 399877392 962363962 292687741 594636471 418091201 49938797 38584002 370439482 293526003 833153295 659519666 269887238 307106071 450374764 461970823 789285504 245016377 524954348 821425599 743231261 175181609 135526856 390081431 635449290 87966170 670849197 982913577 207549949 132158000 445693986 904248330 30254007 210521702 469622506 942642704 134959969 933379844 786469190 193007894 578651102 788488852 926256787 314683711 130476328 443135945 960397934 35356049 785295226 39069850 485892292 119538205 890978490 828329619 423819986 553627474 953219037 159707175 347527005 869047404 984767502 697381492 206891986 326521739 980268648 773445826 691124864 14734099 625720383 129685326 564594679 504863157 719212732 915161257 976052734 53635043 472981435 294634690 655708355 633262192 710417751 36347789 342053090 761212972 724608567 81366751 46302642 130578233 456642340 339520749 84134631 447576032 731726882 989869749 244120248 156870744 932198128 563054898 391174507 176100543 139351046 819524822 426702737 324310645 618104594 558102462 779360429 995412624 493186561 572606968 28311784 945714168 302362809 320595653 783515389 4612627 939786239 678080591 349932722 789372318 126515251 614637841 746804123 540495959 760370692 901549365 862004867 916562854 302616818 553834686 19467185 883337536 758885660 619057320 868386020 390097451 110081180 566239367 434425458 9263941 666691551 729829431 157504404 9007134 841375065 481013149 934376687 92339470 299087731 561158931 104308733 972292208 876185472 578364363 168874256 956643914 153251025 630439567 141510780 746254974 841287533 285042830 543675229 828740613 335525897 789600480 109124427 900458086 616060518 799315604 334883034 946127239 421424249 698270262 64495460 430141466 383873253 631611414 846315987 249168245 332830992 921874265 172667472 192925507 348012209 50182840 429987857 430431124 263461462 323720042 923796730 592571455 301313420 860135991 643075655 299536753 736752194 19999779 402321186 903487831 314134964 355858443 927616897 396864184 933257351 157810982 339124850 697135683 34755721 343547545 842219723 439102278 331808107 816672049 613004027 209125661 229008311 409104938 108495839 239683926 337730155 154397251 166463027 279985113 584705687 733005893 337988594 465533364 991278845 490416535 170034741 897954794 280451599 516558012 322400193 154767166 456059302 509300879 138001188 195243936 856437278 725816774 103578181 324814801 811661134 491778867 779476546 849953308 188469069 936402291 542627220 664351996 578440594 699658909 634857420 755643691 889368144 742841838 84511723 688624166 92589041 903919020 979784297 889869324 119546496 769308696 603034264 889224099 413474479 962667940 652198001 279144279 823549790 974181397 998080309 139177070 420488229 216663037 306068228 979631537 769954604 681292162 944087585 996222485 902749554 119711213 144566598 212734903 870645338 369136499 737801901 76885922 318182476 968362614 352886984 958194931 681418446 680221040 518847939 496231246 86375185 281468518 460905550 607381952 462315082 636451009 332256153 982489883 294177615 868289063 216443627 315213226 717238779 456989761 155878675 889736448 952549475 231617024 803354307 487085120 892521968 505156636 543077305 820622159 907233847 950311 362122921 48889395 305927612 735918756 88186522 769565311 547982345 282282206 158263401 252980404 474553997 827115106 299916557 677073147 66780691 484633906 779104967 293834083 79809814 912187954 899696230 629242698 281787864 397496897 109083531 778945745 5382821 894532252 209270631 883121090 30644518 963667237 383285953 574269554 99773777 208618309 25164761 638892059 146216692 154588813 881068348 23580896 208585026 328543190 150199662 160556041 367973168 909096107 475290156 741067680 644025403 660072445 540789554 951739131 483859228 339849309 71896079 326349559 224615263 76450788 358584067 384233811 820239515 948761709 300762648 998767260 936539653 927736860 593137708 500775673 531141807 201227772 351912653 777473620 721544404 862137383 440107803 378486689 792189362 461905551 45947564 837788135 444591656 748194772 968076005 779514773 23767768 325767438 252910547 510406066 728452418 138519605 935095195 228314522 117545838 524641139 301877495 716425256 791320312 979459880 370120362 334646620 420688262 597214535 394897218 45588525 706640382 160511880 542173790 999692294 99492869 919666695 892654337 358897710 601129520 230671250 235639486 62544177 314137146 552972473 715820241 699290320 122908629 433887230 995658506 261982624 489455830 960350485 295587594 310315634 934470664 825468981 561220715 443657682 145441512 594779256 405884847 286688725 991053493 215706177 420401672 332248647 176652789 846395024 211432971 656287982 459479479 921281489 253766316 152363768 685265038 663356843 914753098 264400190 906116890 521612836 901143475 615147852 288173956 805912437 839892499 547301351 360187867 65802131 636310592 827063612 492400190 651801559 961373184 547678493 316295050 254158868 282694025 511136026 848163733 647984580 538040272 814456579 101900341 959089545 644671437 302428246 264343550 445448061 536585051 120799123 996746449 844818788 207376718 137381179 384646366 143470831 902946803 56395249 587252156 599822179 816337415 18594674 93889626 539470565 139454779 610503566 131341743 953296674 766128724 479826041 260290979 201249865 679383557 495384877 143417536 32978502 400186454 347118788 57624138 549195387 311190883 392027686 828892198 478402995 687318607 387189618 163712774 453697387 925161209 255563231 327615064 934628225 600723715 854170719 449394852 795852244 262728065 855235161 669501363 214499188 186349713 484238723 846927361 109857516 18917500 309795477 827034327 734229875 494768839 982090604 236969464 311577408 798343222 164609058 946418885 535230166 823836314 47102927 856470804 255043114 644741354 559782728 641415989 158471655 106557551 870822631 210114581 565364056 758679242 173901191 358227655 585704227 338529229 415102301 540935625 21402589 215335205 948679716 277110487 486154581 407488458 177155145 244261086 236123320 503412695 440226680 380898743 40387681 129559304 347444566 868725555 186650685 270055434 256989450 811686198 266414361 960666212 873478230 266858859 880513098 357046220 359722125 356470824 435971153 463530116 822615834 977709203 174263299 304307538 355510262 83550385 56162050 539593327 598768447 561039950 271668382 393512583 160392152 53654304 219564218 82555975 724348214 276835722 144320108 815960893 19343374 59900840 890425326 255251811 93636070 134838562 500874127 362868388 129668834 681247464 62735719 347121456 421036129 455572896 426460214 737962537 558788450 243884376 236497413 129273386 999124820 118079361 785136466 876305930 256189507 78659303 380443316 268355379 346926569 414900630 790204935 312622631 577861940 960470422 508792061 927956199 83396985 929203849 472132067 178689233 70218900 39059713 776115492 643704350 88864210 477615952 147152158 402153970 236307608 368859357 826289997 663045851 858846476 304353329 129696465 857866821 97489854 609375628 244177170 187908313 487236471 683738903 616870098 448974324 387947418 302741176 236412376 460287538 390856520 452452161 925011902 13824640 868463366 473325799 979772532 194865234 809950370 24679225 948968725 996344613 653399697 843692978 574348396 980211179 700676242 337894219 888675382 117783415 842445741 862223014 123676351 628689446 298572297 699678743 6732006 283779185 776074009 26614982 532174760 187629024 199453512 909922286 524484068 115852991 142808770 984282070 891382016 8896154 551523789 649347727 484075682 252408108 460063562 135294434 831077315 371357052 749268899 98722299 518873484 106048556 210942574 61594327 420571715 556943176 768435237 850400235 923566080 4468619 656465129 861246883 807702907 959102806 934810758 563754028 215659563 579379991 85028531 608166080 63876853 525999157 35297673 374609761 320641028 566117933 452382840 145748887 242569076 579929088 227800867 118809579 89351507 854998270 267621034 583994291 858000401 163670126 742545293 78312781 170117030 175778468 331372106 685020856 307802951 753818836 724054489 203603111 141840333 609105143 433322666 66629640 142690221 169473683 92462525 647273328 919321816 322873567 269984477 715085571 279680698 942316270 977993926 710488109 361813729 145052571 482745438 385958603 577487374 109978116 591684055 172362272 871421547 708936492 243858718 380685171 353032529 901973702 863784415 834539256 617269231 186805553 468697187 22880713 313988300 178132409 878748444 135564453 592347855 454266804 905015362 635958686 342090447 880104663 637920304 619053122 897852556 338695039 538338396 891637414 53424868 602429339 35715498 245401571 648392486 916464384 68288222 301913111 395933082 32270308 985544292 176845229 62011882 877700527 891790320 771530299 661153671 97350155 52635685 132560119 768382106 517112771 134735528 915217785 865188170 740324256 380652708 812157707 830938275 78238047 130286406 291445479 255862141 957112223 496996272 543021105 273568281 369918334 949774848 536856072 56572938 281069494 774086670 984493340 871130727 840552293 689443344 399614431 547043506 872284498 349855338 962560290 256639699 370301642 333114061 764500642 593290725 614983813 286024578 100866308 805934641 690630462 985778918 602358925 281777407 961687248 575222988 907555252 225196982 288489938 632519588 278996044 526510377 657465273 824458563 594680748 842813959 45674976 923096743 848222336 793840834 364241599 443437538 367920895 960904372 937439251 351486450 396988298 915701698 728971988 87580853 619961008 372264129 303011805 723923349 912600921 735031797 311454414 848782908 409775128 44753727 980727448 904261307 216379085 557649600 507077348 920655337 230739353 342155280 300370214 961944008 961670529 932352789 658896341 291430045 318907505 10618615 800979956 800006661 321642083 992020087 920740194 286215048 807903878 370145903 316581383 666019950 425246555 448138370 702422392 873792747 676338276 451263697 83586350 445164564 624279698 376862091 184055329 507268192 375727735 930223886 61608129 223494477 618366112 217269935 846276181 133787318 632234958 18973026 539758270 697973861 759617564 511122218 378061221 735461404 464713838 610454239 48809847 946842016 286574170 59417848 24298902 882703326 669394370 317065125 346166185 651704663 384189548 114296739 851703046 948088383 350333571 300612963 392231300 780379765 328491150 819827655 899558296 957182446 112410213 613468340 691795534 481479252 926272801 805438368 440302050 334309200 982158779 467385241 526960718 278546030 612324513 433149801 30620714 956780664 571174239 56528841 555667578 544560808 136620144 125473126 450612586 855378965 176527669 712020293 691808987 742161583 894727109 109969116 984717754 654774681 670081572 507429540 299276262 779761250 51065255 409910652 10421029 368256891 877813928 554466519 85124084 383409104 850893029 668925814 337089368 136519421 267428441 531040331 579926722 492399324 491262567 724683218 180313731 541318843 433647273 764535427 580137652 691901095 182326290 837414810 241024613 478057318 325385824 456656254 844344863 457080192 88603889 702862550 599594553 458039484 959017152 307182744 532645348 702848895 756986456 734256012 459078405 199548180 153823066 689231295 834099594 380488415 781825655 348014606 689535333 821220549 291858596 700923172 985056796 681103090 989896470 917815208 658939713 980658572 601095628 815919037 59477511 826874003 142611352 322005554 4562389 683901744 491032297 621630840 396307193 874461042 37526676 358651081 764255625 191980685 492246890 235102598 408081849 493143679 323719251 210276616 922980679 176818922 850118673 322573542 677955545 356431883 121644801 919342531 577848377 493916970 288438578 574564850 973251976 88402190 747848211 770094069 353679450 815627133 644970579 962975066 642704282 959381665 872329799 966853286 506487072 970938308 368853 61005511 534308383 615689053 922586188 281330317 806238561 781271758 82611159 26622501 216801804 783124783 8714740 959593123 285391227 621955327 521368488 167528211 515745596 434516457 459464194 764023408 683978754 982908482 660839397 448281766 340257229 257328449 124254517 367177927 45553622 205308331 517006534 256730816 51456799 665231910 248460128 737104186 365329291 216619556 459188430 534740874 541959378 425264605 868112693 312148511 892396577 480222307 275046962 965655410 434518979 9260399 650278524 353146730 130618530 75261186 19266429 572045896 260107609 143040916 482693302 240487312 74613259 244436621 348685853 953335224 334710038 979996267 616909582 173419984 179456580 443202482 448541882 53549442 42252291 109854538 957910197 453742668 376041717 34330012 718489528 980756210 451951008 841523023 39043881 375325701 533525118 301774504 247783921 399079905 178639086 967010149 783491313 661301460 240360404 978084863 447925533 253185986 229972183 220895743 543742377 103190920 248573780 901339207 430031651 634703300 834871729 231977359 848239219 579050573 467608637 51837733 520498035 731461576 563719022 290175443 554624175 333403125 578300565 436638478 732517950 252479703 409738594 53341626 545603581 948883982 216620793 884401870 807228641 482330947 468913607 156506088 783264002 16391593 380839234 815800715 472772978 232411415 879465548 652331458 329569480 666722200 402973847 633578833 997699092 977606521 810244564 522844591 646891158 571665270 685574779 557498022 782800675 849579983 134387951 979333988 254497571 4044975 595950212 436236054 640924019 231635898 286055591 422607855 910595682 62194516 581690796 670291451 424110282 52902944 551492476 462638708 808216276 49251457 442437074 432913293 875633082 708929039 397932493 97385694 30963979 98998683 875556299 573904614 941863899 560117801 87653283 528895982 591654287 554763994 994570279 306055672 746361050 887115581 558958591 538650183 745053543 503014647 752819869 775394370 277155140 407198863 461473356 582321669 920707541 993950266 365536862 334992151 989144096 583887099 812350419 948834607 128874179 157953265 63393006 474113166 899834794 51463204 477442896 650316166 889651470 841817434 260382391 635721182 689944925 455008311 53372207 81013419 126194389 733880575 753135235 932764458 390784080 553066762 356657249 751187143 636860220 453993451 912995023 800609517 685432584 930729787 223345218 825959247 702366867 527201241 231807695 703473691 928470374 100172346 893527080 389283503 263435211 924919568 246175062 167671671 46413993 320417256 939606142 609380958 989512290 805279731 400056394 883131389 254883544 864528497 319363144 821080532 981277620 199744428 879535790 422066311 719259079 792085011 556998998 473488246 417052919 295871806 602636980 565989629 381923334 601561463 248141547 666492194 143582025 256367120 556969118 163924771 265110451 992372820 487237402 714870171 8716744 547762011 194309721 428070765 329026178 275627803 834390119 491048466 898722191 685779501 311649208 878414881 966496513 52183568 808417975 545073835 996937993 286196839 53292785 779474821 858353070 272340138 463876728 57325403 791669917 517719632 270970738 837310786 276837085 422395638 458928184 789257971 377915736 649834697 125141354 640064548 179107957 102651405 173027815 876080915 450913777 781384087 786809833 868174941 262582114 456461906 497491039 5096266 434316976 99505440 777348260 849929778 394414520 490168806 726006359 681170178 714660636 308177680 506258073 966136806 606752979 156419508 226670878 348669630 130393779 464095306 358072157 959252779 295701723 858440540 683063593 622509356 167998842 247794552 461225165 792169124 801784868 724579413 756059848 224752698 733510486 819426335 137961483 661808488 160170150 763987954 321685506 457634455 280455039 979380446 899222130 566705828 632849605 341450694 383902403 444721342 745446906 95338052 172825201 514600060 458824994 869977491 82677637 290914245 594172860 537902387 152974200 576149187 250287556 253125803 381812859 732065916 143851835 847960544 913314693 542205900 45662314 552580914 164475122 33850128 451021986 824995359 599379087 572365988 899918048 283180379 59943215 796435082 10492818 752232230 897168224 654880750 912251252 230384463 550187369 286685881 782679862 556017406 647270197 799101936 209555969 191809145 611264719 928878191 361121768 447666722 52888784 704534542 299027857 622830597 86811308 562391338 776359665 590216409 177793795 602079373 418251921 525117393 752232886 556879354 348502880 718042191 126901183 821629250 72139563 947371944 209227821 577975669 205622875 439670443 236704504 581718912 617972963 305087665 440510460 548431905 513808577 752490113 401663769 282767254 869484104 39918188 917335510 851475560 648260871 846703259 216761794 63167520 195117150 510739843 770373788 555779112 342723362 87139896 508530593 565833366 918909019 841730011 873218352 208296557 336182219 898131202 835959426 16211904 441200293 627028480 785572746 155016619 660993870 255678266 587068188 913087585 373071053 16132928 707401939 655321453 155950863 779383103 92708672 323967963 831468677 585271005 755698690 690556602 281773552 717124337 933965935 368455950 312870856 428454505 153836085 381900570 831022481 108625965 213496364 433013095 843116346 736402283 788071484 315801769 869484146 396492485 858605068 309594679 992980805 374982632 733542912 819633385 50822089 682684930 285734922 300660616 226017809 251601192 564479572 626812124 743903582 28606179 370729016 950239739 168953469 349230057 435931658 846900436 755840371 471411587 971545478 215435550 614965762 384240194 703559734 110111173 783554618 83470007 882692222 507490890 887764522 444604100 997108063 623261280 865828765 466416224 189009118 916164885 268216969 249057679 738508337 796283442 696587597 799259893 373663577 277419719 350985967 152385698 290313358 47655234 418040650 472154486 91608896 544031185 829443481 246943629 285471109 284823656 834825383 823154941 292595978 595259282 403676830 654874031 532744632 17260465 939477644 829094833 712949805 310251205 741421550 944367691 252470936 139003291 130577097 777118234 549792709 794062323 467840609 659649749 190321155 572937318 669473171 522887989 835137533 848762861 607016789 471997340 340114989 102699003 391064840 832444556 411656423 113321158 389639271 698276547 666561518 437580641 72493725 90892759 546460999 678375305 841940037 525560154 444002305 588411375 214561560 54656620 489265234 589316254 530895239 669258194 167734137 354363967 68768633 329476714 459912840 978999706 75490091 600076849 32091877 439924085 566214952 371759304 599795921 717314190 633829101 463860755 238099578 84274420 822964833 348925030 809790294 915811471 484160947 804215712 713482701 954620101 128752007 927444752 513778957 742977979 488414845 779083257 737777873 620212331 950584693 926270261 628773662 894309131 436626156 171266540 530875462 375935186 919432699 291854378 858803564 792629434 619462897 873986791 834576480 709686212 118430082 13318963 149160834 528042814 972333385 125678010 338200724 961119449 929343691 810295681 326666676 979869397 167294732 780350883 478561918 719345241 759835250 946478864 441364569 101163621 251312997 689364399 172431499 738835268 589664879 687298200 450935360 342125444 41166448 223926042 898274713 576054051 470282662 354459417 793134727 924160381 749661638 866570568 427777255 993945808 598693288 800242749 179546562 412051706 987363051 128599878 851665516 686787182 91807252 702298408 716803168 134730961 143719068 371687880 621799646 209933245 763688655 76044433 686894613 937049316 312665428 798472262 497054153 622926596 52076789 36833909 532264234 12081303 744784056 14382018 846286770 581443250 723586592 376007641 770257457 540872059 376306030 542132265 125723808 4134654 995663549 446756261 36384813 678624094 631576396 3211252 709627274 939774070 59970852 531643976 630232377 30790624 30323120 550250207 949484122 623336929 659880772 917303115 910960616 319063282 988039448 464683112 517963372 571279732 498532588 992549834 153120220 927482992 855187387 175722664 564249425 502264380 804366461 964606816 262034203 931530384 821466601 385567823 962084263 106601236 305313273 757974082 11541010 184385281 759354006 725854024 760619486 958962605 279626295 9543555 862853411 660973342 683833171 544044219 699331756 653848468 489683544 535470252 724089702 687183326 964013665 278717173 568018404 682139023 997498391 925331463 85232223 425721230 15717305 955851608 317263402 879802396 520658847 129904937 686755244 459620811 459391732 599168495 85839037 613594191 709525568 554012448 993918526 458464266 790586466 297933013 841830552 712885292 221642146 69176100 961197083 584885048 311968824 717364478 433422287 147116160 946588858 344014591 963541799 268059688 53612219 347173607 736855939 750991173 573914991 453378892 771907473 379230529 118770599 784442361 718758360 853731836 973786634 600663221 55110089 438639568 883828352 872623490 793806994 198163687 25441812 708419684 319905105 952832710 525620888 861276071 168331291 864950987 421182189 867663863 121581889 612749876 516925019 113594571 327001701 753002915 469361293 993754179 532690761 466165459 275969336 29069325 285813416 935896528 64401405 413808433 31784683 523256680 218952869 92787405 644370506 364575312 830497699 88295218 733808975 703064070 683572672 759877814 27202044 572588284 998365633 110515026 651154157 152722235 250961299 543294476 650055169 308410267 579514409 855644318 386496526 102491299 334971723 59317781 26032874 268374766 449481745 682534313 40592534 615555719 608497084 304768997 213068391 96564836 13595895 393787253 351820430 253299544 725211306 542531726 474572488 585402285 723960708 700233681 15793015 173414464 385479475 692916127 482037283 634192352 475930477 816550508 50854488 545944182 402708744 574326059 331770977 596650618 437689287 118716398 898252083 956910059 669001117 450370478 146479754 187805669 34554055 684048632 474078360 402451975 756490893 436019394 650512115 835248574 216123835 41730221 725295780 732360663 871240049 334812860 384982795 429461118 512463416 119582569 526757661 949512995 742418660 237905932 930263674 755472190 977555263 66913413 12495200 178840343 268634037 166325120 10328979 426231816 135754726 728405906 908264192 312156129 729696632 464836009 578190687 796554033 868145742 867032946 676733770 229267999 805572699 995435615 184177380 719736153 32632368 826956183 570709823 121983554 972455425 213038798 503477741 671818406 605718377 592137079 651009264 933271274 146288119 735906227 708720278 819343851 388637986 944320037 351971251 884660212 395073430 933455540 809542174 925669391 603433461 331755898 141920764 539800593 742198442 610070857 2688890 22773269 925445509 971155150 1603467 107356070 187201607 450811533 118292213 577981098 683832616 59423518 673806333 617112354 349658949 153679418 345728963 428632355 716222542 154046042 285637289 723064204 993259619 187292548 411479262 636892173 586551756 764828566 7993145 830305052 231115766 65248220 162079342 926817113 485311720 578772534 890656074 336908451 757461003 302818071 341268342 535008254 305774491 309786350 191901149 518330447 633539328 717570263 518478388 938901481 776584058 907502657 855002463 895198079 291682495 897457102 754039745 547045417 331530490 638092190 5071427 724746422 797829567 199025057 621593136 264331823 815738177 967223038 597024012 251962729 833161988 507426496 650060893 179353592 204240829 274556421 390144210 898950335 37559088 855588482 320662305 977612090 293532004 602503939 783484147 595953315 818825610 245770872 649541629 932706902 702913699 218802209 6504868 646794804 225211207 396154813 281529076 451952578 88691774 553080005 243608133 183802931 619869980 71836081 502925179 315714855 341547025 699943765 935901472 978059041 204842552 908472333 886710441 170370030 847654399 814143220 141447585 934752389 395639871 442763286 399046537 412238334 424832525 948529654 908219086 84673750 274822694 642602007 921479827 392152211 70371281 598499356 941215419 179305323 964474875 468224421 612622689 791240198 730759272 972112114 971237910 47790171 858632874 689749539 49616115 144237699 418816781 499756915 207975302 935961948 755109804 980201364 33521645 846876859 44770628 980034036 804327349 905578652 47395998 182103239 995912658 314825812 630528820 100087353 655662946 338875150 459309738 382502890 1665399 821734083 761015392 565713345 242512915 676652928 13550215 330250261 417372787 822001846 372351000 90334347 280411089 581931366 198788390 634747351 233808097 637680427 707505909 969281178 115935321 352077377 123060308 483803715 325761037 230179376 596600223 864955150 777791240 766240576 172230251 2409587 505149395 63543691 335904466 865271728 300125858 231409724 699584247 896075731 660598629 20162291 434124954 515133316 974878469 796583094 490089407 700997604 745943516 651529701 743663340 4980402 801525168 329735090 678281660 17051451 857474394 361550196 236260745 969687972 803009933 979557335 8106052 694914748 718685679 233967182 156207199 448724895 575482443 663851417 97731281 344381910 243564011 74465992 718697474 828327112 689551747 851679260 391319991 160336473 260027330 419202232 162394359 606535659 311673803 731087434 432763265 359705816 655053824 350308429 885450826 681830711 509087980 506590477 238174243 120296293 308380906 274055436 931890714 227934564 807083314 459505136 825828941 966885694 937792324 689220126 145008205 935688853 670034695 980913886 178208426 574776709 846663721 242801650 304418027 978481338 213401066 131823173 709703013 629701583 567082772 621433459 693052848 781872394 818399952 140792470 591361107 188504563 488853111 182068681 193825709 372948764 27573094 733390589 42891207 907803884 962761879 793207421 85017099 612502065 577824373 391085545 280353445 557348586 792080688 233368335 453919686 848398174 945100056 498744444 104689017 936614447 588265272 923480980 185882636 223657248 82292099 980938786 945659864 902606376 262063618 83425738 654563963 624166953 827495291 81702406 26106815 361716246 642812933 683894873 537309017 825497957 20718081 92213531 795831832 89148875 606005203 942587798 606581236 504899165 805616934 248004879 683289023 401788425 195432343 790868819 800306470 756241431 74209774 471994702 591209068 633591778 488638147 492634724 390287243 603673243 192983297 973770410 784992108 968420884 480691380 403705754 583971930 892475807 921096977 754639584 499350285 24316155 237962072 783698414 432416140 258792919 886136254 14729359 299617894 654811050 553042018 225989384 570171664 987052641 49145241 390036670 930876415 378218399 720612511 583547310 75453670 450913059 965532926 699777226 320687394 732188178 197856349 584425541 899361366 305169903 233114573 967323648 849857029 800114309 200612028 377277810 302725251 193155139 495937249 305152596 160831282 184178550 191286418 232206311 533745506 442682297 962251138 336486831 901937183 912051026 165467460 122470190 129027533 427302280 992075660 524920208 94842599 371878737 502738163 455861367 513585798 92369259 609894279 690218138 321375872 371921489 851816477 494972684 483124105 477887779 886538501 134987316 985228561 51421526 422103938 840455425 458335597 154911706 57528248 640078180 473120041 124434849 439501453 815452590 677140190 833449189 347703955 242693113 757929876 724379604 406381425 114024364 677269741 719751313 686719856 108115826 304840480 206476127 728980475 466641455 481279101 709233707 624916084 581548956 436506753 134317360 87270836 651379182 597424282 588419383 256278527 908267153 748765265 517018627 462967644 917289670 845952574 364792427 243453964 564629061 855952916 463467905 650910419 66597651 484016068 580644489 430737090 863902733 75762000 973441774 594943513 536982119 550047300 753941398 467598751 755597394 681664666 128786548 66108188 168459765 835688367 405131528 259706887 620369694 66480961 337204996 407106555 855640615 627136874 223683061 409064541 951510602 768821344 567813414 276194828 628898622 359318018 638495701 473459644 718588508 562261160 530242392 933016443 661661220 498064880 491640206 841761651 314499904 161517426 402974571 328740748 911826279 76978104 607319702 662893317 553972796 397998164 916270308 748707675 924430900 4768373 278736322 945858370 38570612 248799426 658982532 676328947 672696760 666555763 63236987 528428928 854280320 19444759 309452796 408464965 29411163 245944480 282401345 385319626 73022032 382719746 454297663 502164986 155613929 14260956 618999828 222678659 974482683 511821756 606337270 613822371 30964540 716568678 763446218 457411312 128206822 838398821 154134558 339500466 929467873 391724717 569668284 790955203 543268779 256858521 695860666 573289324 791896769 94506504 36021501 958925763 646506621 249477003 393701668 858382870 51077951 889918483 921764771 408274403 2066225 392605655 927916647 37370660 116574215 832088191 435325272 720108441 202659365 755548211 974290475 88162541 653510019 3751805 335499538 606651435 512990397 75672727 212566837 804208798 615367929 446055983 680856505 52522563 174917930 417539320 209231030 195771738 536808519 880395602 330505017 395897206 422706640 403283008 385995394 462782088 281962802 150528537 504564882 340767059 140537625 35748324 35482373 277690646 566250959 153557487 49692743 634862615 467013222 17154759 649857262 901637600 961650276 163047976 468047043 990359167 273026659 716043573 656911983 456629529 443979285 601899538 188779363 493893237 302820412 296867555 337478852 107564164 225077463 984774009 942308947 752843126 745485851 406412974 646487280 409400421 801236848 321291820 861208177 820763928 396239765 848261576 713871871 549460745 280504459 840279405 576855589 7995939 797338392 3809781 620440975 581214411 465026316 330546407 505777634 168265040 209984215 126536788 71560538 561306206 798263156 734049825 347509222 308719531 554924001 87591415 203521784 775236381 778411386 207705015 324124505 140907362 32561996 899592490 905124454 894376440 892643509 987627383 783726082 263684775 930196954 145760771 762101085 780158463 368033745 460314313 412701673 804251795 132963085 939446128 101824055 802655268 866543491 659382703 323701418 216433595 498284002 921237405 859168143 512352729 801204509 170720840 953201360 426718584 541373218 804888009 272399982 716299876 993625386 828784431 621317514 926190937 363742087 664697661 964053293 976633489 787891978 502234944 599138615 357238008 540913163 806360439 10732228 597230157 107177608 966867214 742136275 834170552 190456825 637536889 175172307 159085714 325448585 100185582 760335932 413749693 223809547 982544736 27551218 560310102 752745103 268679083 127223296 692576444 906725694 571106667 110740992 418745595 96632987 569713051 607723142 450873918 243134858 736522799 619184604 700486585 182777988 207870737 388433955 48527090 544610019 598633578 744617243 648728781 648329301 876914698 141452112 484793701 752317312 42727819 660833251 467628172 531073733 796210551 712589137 393687913 709954623 764090967 775925056 969176962 904352185 178884828 220401542 71684613 996296906 537344906 497523905 853555735 661716036 261437332 725875590 120902474 296926948 738905799 734954446 556400137 898920945 273522729 535173532 848470511 27881794 631321756 572752926 483330552 104230097 954129018 543186572 238512305 467680915 93697613 992072809 784693645 309096274 900908354 174715030 413309180 216295490 424046441 194824115 533230942 812891351 500017142 751473346 770957144 432777550 737753221 611945028 812813390 262127438 106282725 426767803 464422435 980290427 808424344 249443978 380779736 185293087 297801868 399383123 699430074 341742532 589212686 36140631 661249840 347319011 228333275 214434769 575287422 189535973 963573337 521554614 123483833 376682265 72922529 181109263 411782302 333507764 62213903 894448226 270169579 75671356 613134512 918377215 414283183 17038624 989480227 152674811 795443162 691920861 213919688 507505922 637318537 841571903 326360310 835939702 811805497 251919601 99676655 474800168 750541547 602834306 918798691 967900033 90062765 573349859 584882152 873757150 182956523 659391730 702715904 537085769 300003620 360615694 446979951 578627344 254820256 4071236 867218949 398982847 686884176 895308769 568624030 352937114 890074896 646139459 82139461 289128240 977609798 303090295 798164918 594234143 712242566 870785943 866272295 362379857 785656469 66439410 21997124 383402288 943611238 868953541 141355540 765885738 326119460 266203688 736548219 520257638 205328431 378605697 971355169 578518920 951794636 62264940 963973144 318895511 97558381 600957103 570738319 911314495 485095229 239564438 273278886 926388428 987164403 252918233 733322858 591984098 694623711 735662203 348033627 649860666 710421162 884463365 614242577 913496843 226057690 285684645 951605514 838332211 600683188 689111294 478618584 613864576 507506680 311900495 963390237 242269863 984526319 283755299 424780503 371674019 920325509 387854938 597697208 525972329 920390689 330693363 271652043 609993133 716779926 114513946 947431269 319327533 513408180 14164646 283319141 22352908 851942713 622135884 989106329 581512678 528447303 953288718 316705885 523850832 535709481 820218943 985503023 986706912 588134435 44809305 987829292 826901660 330178385 318174095 591702045 894996625 376609831 728429555 729534482 35535987 525881698 264270145 633547047 656772086 264636612 23682402 793812519 928837529 681608566 287205001 893568003 192212099 525952563 535231578 526897836 555942529 41935829 884459883 792197300 642483735 106975602 130973158 224797575 162239754 187510330 100888038 899142825 226002 326910686 600330968 916160292 89070695 730326228 97449169 29648224 140210362 438184299 928784688 519627665 526183941 644086846 987655679 987240580 373319555 441511448 874931217 609969622 479731171 516980676 363138082 224227302 203056525 879395259 599664062 651916062 941532234 713874332 247246141 580194743 710481172 968460270 888568176 965871638 782570987 964669347 135450631 731951215 723798243 428154363 658130155 317419350 737717720 182442321 351345581 526305372 272539059 242984131 564493964 530494220 521201395 487041327 974130378 817159185 382752683 782127455 2225481 377154270 946248096 399021260 596077581 91999026 353787217 439683572 215379441 195349318 866119783 704243566 881342383 486549750 309239275 624639726 976497628 92281594 98259130 117742620 243888048 916284505 288505560 986267553 425113091 176250242 796169359 226631563 334953090 586532664 621162283 491144596 174806184 306910781 425836993 72004627 526195363 980309909 567510782 174665360 456252603 403903429 660155853 338904327 878904741 246604338 164792425 262129035 689862465 765296805 170521238 3617500 893083105 60720739 127233281 819274113 765929138 179637179 418922255 500070343 577834037 274881519 966276296 800340699 783078811 595980367 753785091 33500558 833949373 142192307 868027912 574807152 228076253 121184298 611534570 843517171 304871238 881774578 153695068 36439423 88902466 408939980 796607798 339223193 698071909 121486384 16938567 516260615 792016158 116140257 617177601 689876835 165950339 354351734 358951961 19203930 281706102 899562460 815245344 38155606 751029731 646655190 129420165 629512871 756785795 136454513 597540399 989202066 411988603 946207931 11849263 384043162 723561382 80945348 375541548 944393118 198453757 75675130 284092714 386835950 540625121 140232493 637239463 502225977 705474307 282540380 707468095 884538174 456958412 285525877 226496307 356679298 872488790 988880727 74204091 593735904 66450676 592455585 435367512 524194573 730049724 558476613 123106255 526401550 883673227 568332949 735142425 535959832 196100197 700280794 826892353 361914254 67026609 532582014 645937318 188228885 345482928 81733376 523759386 281189791 449783851 437628306 945623707 524575291 585120667 738440516 34756327 283406814 195903514 943094859 931001143 882155007 163449715 725583364 120083259 694228922 413643280 296448142 813095893 340463145 454751874 711188786 563318345 44687597 834577367 572296832 12786476 299542701 482902197 257525179 919500188 521472100 714820085 186676911 283650488 529536107 623187965 333338904 620008474 504731860 49983447 456503768 12090375 204321672 478516716 465700812 91658435 588169645 685781660 637978233 524391558 846506029 289391324 456760108 848687840 775941720 788496909 661671196 375064256 191749089 611906148 11942858 400340649 553298317 788508004 131841309 320287264 64160974 465438890 999604941 375168463 689336273 986565678 10943089 849233495 97003657 918231177 686068164 119081376 866099040 728582317 886258115 324628135 717917463 994537753 782847087 732715059 22554674 265553101 936550170 228769334 552989153 388940977 719448091 799356503 607025345 842557816 554801107 668151451 330763652 727344244 955808510 599519054 902255622 224029001 771350030 853792896 383504290 604440185 397967390 25011308 214351479 936139636 124416985 595015385 170663533 48265632 941247715 290821304 539252239 582728150 712631628 649759232 716010763 74163063 227073917 805596699 591560410 238561498 407072156 252900163 646542654 772963130 169193415 857262892 182942688 185670975 626874917 63138031 339118466 662273663 376670138 512423140 284764996 923996920 944846738 760444995 921503492 35355907 6063663 14171365 880250729 462837213 869835149 901396112 153510333 187127451 267052468 882460122 14801548 522723526 375202827 311470330 84952227 690025491 153718880 933038354 207269988 799199910 616410129 129874547 935916813 364271042 323293970 285851266 480820267 717114288 421166945 713389641 601741765 765522172 87288264 519612246 941586512 279968876 366098242 923316276 618697513 642065585 51213774 146925454 162045004 408856260 208550778 223159832 542317570 807335547 535549874 712131516 976979417 674621230 938555207 839113969 726823174 823457566 427178860 560208908 328019168 910331479 133298378 139126149 520212265 863670075 263301746 923658822 300863549 526800832 480806468 514888394 712524439 43814807 476618344 294213226 109408999 569281986 171161738 811801781 915505019 634535777 651196621 810249198 29275519 642728595 896443174 476758514 581817873 799076492 593232672 175161920 480129096 196696398 900319862 336567064 983582059 966961072 745948589 685006319 295783981 793646978 117590474 891874159 372718700 82610325 166232751 571133670 493228536 726050508 390469297 900385578 827283592 135924161 949368723 771129523 265448610 31317314 269163623 764105671 818810652 181136554 329156153 273889147 89437414 996941329 669919323 516067481 138032446 886173003 883445810 969171910 880987933 476058034 980833689 760997119 291107114 826811066 92411613 974798415 954562557 897264167 871073490 730995812 799959644 897246756 682553891 644180732 800592240 685045125 964133850 804352404 631629358 246357379 569765835 6314830 978431787 104175019 388562848 866148998 840807872 600885636 972102080 19233746 426556119 280146352 450701284 103552226 781089718 164852339 537619584 753594366 445896841 394498419 542109667 589924224 74864287 930663889 788928694 424629573 139485828 780977828 814842744 562251648 17784766 810214794 326515734 276276408 61780468 608895981 768858536 710294043 807570609 237976052 554669034 663921052 434479541 767463167 742911147 867248563 831890274 611171851 975399614 240379979 53800711 842045527 307143989 895977631 239468456 850881483 947920254 271173751 532744743 370958370 459844829 453031424 290264513 627821094 56317576 715115807 963716810 672936078 908302145 12836824 230186962 429851389 482888556 769309576 33075487 215306511 190341761 806128273 157328814 590332901 674017283 129113998 257659484 642093634 448900762 904962228 547987256 329223731 312261108 691769448 687171351 992215362 49717417 489252433 641460037 442459317 663971087 881049830 5452168 734406932 249169429 488189499 757885259 729023050 91500416 165865509 910799160 980203940 783332703 536365518 711536597 718558579 156562820 596365684 96896666 805225637 807280068 600536629 753552040 971710873 118353887 733719474 110442068 448821983 916763164 368352805 803239780 425335515 635294199 715864510 717324773 124054614 815529452 976775835 104606375 630287880 961843932 279234840 352664057 427340845 141254985 148761323 342851458 141221736 556022359 668269984 794607955 943549057 850879247 13973984 99859205 686449813 528686395 97540659 442581848 369760122 824482532 877593596 199795683 879397760 604322566 612343999 48722456 744896468 542096826 67333196 30992712 936263728 318427288 455143292 29259288 648146734 562227726 463146035 233246601 280797449 588461801 362768426 232661580 216117685 230130517 799526675 435872413 576089413 885340579 563937621 314092080 793499327 358460217 636883753 389928726 179193103 122502750 335419355 577774802 270737691 287667082 854759458 859146554 472892592 399875216 966657999 270826603 63243541 718930364 678188222 147246863 239012709 686745704 223909560 400083333 933806043 585398644 909517546 501665548 607067075 745966306 923886807 597543154 969963287 939567112 272518693 543892329 341943608 559915843 923806289 123438594 688527966 65042449 377871783 578257602 75857749 445928161 768874571 904828431 810861274 334568560 823924053 238771959 459520653 694120082 851949703 332246138 99159889 134280976 554784649 314953623 598042058 616553687 468711248 266771541 250704856 237261386 796818585 455566747 555383460 680124305 779622627 458266085 290124138 396659581 806206257 719103877 753498876 374570442 867227525 498997535 214713756 428965829 51140735 81695616 462310224 699007346 953523755 95853657 298652077 615839796 780707953 417280206 90832483 949755242 424956774 251331343 377013075 58784897 164985211 75978675 129958914 398630892 438651898 901300755 728324523 812812738 706389007 400380849 84669601 783584582 131945158 635290710 148318072 801255039 491572483 640131237 923045822 153487342 854718133 938983608 698706620 863516420 553560234 7637642 822541470 648198601 571090953 856869638 339085102 894025065 215692329 207661297 150743693 440623978 934758745 34478419 375198048 240784203 956929007 887726082 365338722 302672650 401424494 43433357 287613301 629730049 794537446 264559794 120446992 769136337 389374015 190581982 912070458 916586316 973485801 703698285 799484068 368660169 314562027 939911413 778591972 279014688 116313999 510230381 66161616 934903150 456219462 378055627 726932202 550582318 744482818 967749917 82886694 587124804 282256113 511864017 418403648 85707892 301765509 439742604 288350922 693319828 79698316 747125634 205226984 903492984 645738016 369960545 1425560 398905714 983723439 619328382 9008287 393207872 229121565 319937983 992881543 707709161 364384340 6369544 13150468 409401967 678095153 614251844 168066681 421817633 368709120 829575978 958529907 404307426 25737684 416878871 108246505 344411291 573225779 950052644 219516003 710056033 429072537 348860433 129232826 585791928 687712735 647760214 335232395 759465940 197452701 201538945 649262476 189818957 985717736 410157716 771125560 85958195 363625667 844544760 311044036 572535688 654116186 778233990 272433297 809180256 727192720 461176997 896745293 762196909 784389638 196363303 702557573 269105255 547140056 57071520 960422977 133404707 65652879 733581765 98805466 559965253 111322753 671585885 983468438 616040069 998789608 192372823 952710143 395740950 753208664 573322195 408986579 648316871 323235225 190735597 842170150 911132457 446411733 224549137 368181088 737026939 905782862 320536021 724305594 644065926 963644024 626960018 903214049 626018765 600496821 120690391 310559956 144735774 146779157 794735461 440684181 558211817 634799579 123368439 78845202 752166707 458625123 550801385 526217012 933569030 434188162 333091964 364796169 208290034 392365525 59648064 988203162 82956044 879929425 864460955 71027775 901793517 311287910 360459728 802008227 434517659 35113271 27064090 898616092 326574999 780322893 189625992 644194632 796011763 806315693 250230978 88264565 56307577 134700094 764956642 221982583 882010108 978425185 56865689 707805938 143683916 791284057 181479131 731336550 965109738 689849054 515421954 772206167 584971143 678703136 786407371 216590908 816735727 983469451 783312430 463456177 634682226 116428430 150010811 95690698 981240556 895476197 415971122 312978213 857152628 128575092 352796753 462767517 325565772 6234958 226430898 746702357 307520686 984240898 216286089 863733840 879069847 252739688 937784237 825666216 138899585 378741563 427036601 170194777 570119063 393537839 7356361 344363257 651425390 91105226 77926845 85488662 22158010 871683685 517882200 294091493 543640818 815760784 70214194 46858062 707603294 171122678 366007341 141764354 402517251 465481703 352264828 299070501 304069780 173796603 517637656 329421190 183115675 373464220 222575581 577301744 168734626 565602926 945330054 990899057 251689502 328663785 619870923 708777095 175947629 106493630 743555587 724997241 476424983 613213968 862357655 920974070 158890613 611329592 871425208 394932765 447739006 121173615 873748102 260410832 689378188 696466915 916568936 433564898 880762806 964324883 585648860 195267597 788951566 425295056 548610452 688762819 199064773 109262737 327219673 594138701 149837974 731922351 186081138 183655181 331622886 116973188 797430800 714696629 543800444 733899055 309989745 381888657 403333430 728194302 632929446 866530662 697802790 207800565 267183931 968470936 847588917 126647000 37748032 148073770 401260170 864805366 847341453 530763076 783719101 900315504 257113298 383563663 790922780 540702909 774636679 960670951 186517301 982797778 84278481 732236154 724381028 893381690 238551558 677343279 958122233 301731396 664746538 375185461 272577175 435055496 213640119 787969492 739897454 759421849 738444625 214258065 832783889 839545010 581053470 575992194 705638233 522983954 595832546 711567658 663986482 51162061 121450935 357165993 25153877 71211056 753690070 878120180 79449719 108596496 988174205 887197258 270112898 89292422 800410737 15176465 644245690 739995093 485442257 716148494 888604865 375824746 96965859 274244955 264481457 645570311 84660741 398801610 458271621 928024118 689555761 10346792 123827475 427402526 115459985 284512334 29813935 221800664 417710333 81215690 509380546 86171780 297465831 878528910 537256203 398515346 599832226 852149444 869367758 673869402 261490764 263484248 90950280 878941912 248387275 120009012 138035602 452366960 750590743 118409981 461986341 591537218 554082108 960620477 663633492 308153117 60119381 920835936 268813108 843543258 649576251 148216214 532892628 819857505 525278358 950520794 953978145 222628644 253507777 6711585 252038698 896348462 130494155 307108064 732217479 992448269 687486605 784581247 531068372 413750498 407128513 481731343 752908038 435484479 415897277 358874230 835903518 578330431 134367240 593754766 54360853 314830211 562910559 160948126 116821793 171410409 142031825 896035273 213041875 259709928 358866456 43131394 238839302 280723649 15030431 985714903 789079898 28430159 639859330 433957764 613148754 438319443 493388899 579379400 642285603 875723779 68095458 678714215 476623917 833302845 382848385 456156975 441133725 971629826 337514201 260282233 641438 846360082 6571141 968650751 538004924 431863019 192922357 520244154 902166131 349092861 635757517 153700727 131489365 576803138 53969660 30731319 75152178 753769777 458133632 14843171 778181808 610382242 736671506 815243191 281477207 35161266 432281254 358291954 586208043 812322741 163628690 753976911 565851197 909985132 322506348 716917050 231468969 123835838 175800094 218247224 373142721 853637473 319921969 400333415 813022567 259600924 448386995 670188705 145300729 51880290 895379004 664837882 566681834 276031429 945698947 541815768 518680185 301731321 640858002 513078023 171257829 433361308 472021577 327683066 316016575 292833584 421436491 374484707 912896325 996659516 118268547 592339342 811519188 765231439 407013619 595402550 33146302 546991868 942464323 188229965 282576451 723285070 364089786 448478018 590015926 61982599 216361118 600944958 896349080 79255791 26416100 672797336 99454139 700210310 839452461 803565383 954295125 905001185 277866986 983941521 349511563 571244102 654829787 63800692 230785700 353833836 984220313 972121485 985849234 713015653 703364403 585646494 794935207 747225154 636236067 839254735 397150173 774391829 819119029 635272663 20940537 985440018 863461739 509284522 938614284 437064159 250165526 122122649 756102646 479719329 191839629 736896107 662290311 655547155 921251999 441405307 804914262 301199097 236903305 287477974 795889904 16768360 630345404 320578438 704069655 309857903 984996376 190171939 944670843 40893710 30333375 213367193 827018096 271256368 709182636 968201247 825272485 648654157 736974336 375406745 414441914 994768081 210021548 133744377 406351620 984958623 842655992 222487915 380451991 196201139 142943770 511851209 491782176 296615869 245817092 240628573 578268707 74227429 381553344 850121865 482746314 337324388 306890785 339140050 716852090 475458818 652671230 861555874 254467962 836328904 261936835 600489301 5735237 167126999 882407479 886428874 871800309 83004641 680375809 519950773 555561927 542930150 514358296 560635117 193304921 134425225 222213326 217501768 437139342 323314746 123160011 316903159 947685419 240571893 87302466 483730114 475134939 338613302 864207620 707249153 785009459 522425482 123329335 928952636 771625455 524609775 407939105 233574993 67457109 228154676 229918069 848800286 312338113 757495356 164954548 430696977 500545986 143641536 974114195 4046275 691086579 304303666 63529741 13995012 517116799 641138015 975257163 653568617 2576362 35415031 192545801 245465895 362412781 903387146 239389033 445450125 165413242 648970655 897520604 143887877 290489512 329754265 345521095 953848344 922664731 17638937 781829184 984925007 135776956 136111631 379268949 751556282 237424704 857356808 182428554 754745568 433564612 985240470 187964950 642419102 345010919 254841133 742079638 427983923 611975843 90125383 90407458 553257833 683234628 823788787 107264301 661253654 693672939 374621619 853017004 266123691 424500517 564592977 857541837 934234036 205919414 387875671 202345700 462292303 667934095 205994403 489525107 57439522 200325778 595839104 257846930 410483989 573561902 332187738 230150250 217609498 606575905 615707444 71340069 269337255 329746147 197592240 811866970 793139474 402995721 212083805 602468377 323670707 167844605 775281406 52854450 881762811 193958208 893887636 675895219 140150525 901335417 818984171 797219558 957711184 551265328 604512841 554358559 812054877 71757829 519047460 677165138 881010578 698527101 819244876 230658429 423182456 213208192 481331580 176673653 355400926 910739129 749012842 986409236 477324118 873375713 64867872 829135140 535724908 684228970 239736601 628144000 274245900 424457812 70291680 879131802 712601554 472155405 900695016 637093991 134817651 87461160 584312900 770934639 299303186 764409801 883586780 986801363 776008759 420786808 380160039 467782543 58809858 793755528 143868084 860372755 851168589 630076376 270251507 437255686 512057123 345644904 280379882 955517778 921688604 232672379 195761807 262962071 484221776 318728890 292178432 399286998 374041951 694645485 589477909 219647292 634387160 183473968 48585276 197320438 372504261 727289988 204374136 384843258 416685221 795020395 672873296 923525452 490339485 715363788 406487444 274486886 983084627 89450308 807093714 627703516 829320404 532093037 290510821 707432808 140752655 773151343 146641825 65103155 526165672 939402101 366290940 93487720 480109026 205799881 403040093 864326575 739695680 537600099 918289383 437079779 571520691 916981766 458219716 134718437 69974152 645540444 664198062 585964954 779961697 188727895 570979180 142240025 93434694 976870996 118693168 269357331 673391557 438587707 552033019 796529772 402032538 921921855 149725810 649622578 655255065 446705994 871363920 4971521 103643080 748760004 690680518 619391935 542957090 666950499 81078008 601335174 121126124 245054852 396253565 469581968 576135913 165280690 775214036 791513880 585187308 104655900 3007932 534633344 757957005 118222541 24663154 64169954 194345012 948235610 675420532 371864394 828524942 409398822 840789029 21175202 308182003 105635577 327206760 55019400 250500652 508061254 29056876 453014998 232324950 41156920 809418478 972907446 408437357 304328727 626378494 693902976 495342826 903454492 207653299 898377301 237332898 548097113 664150652 444728893 428690965 21913306 749317662 51537335 734890998 30513172 839683443 952852892 712079428 500210109 839742905 314824161 822084609 809980359 453084074 818854333 557305626 108848991 928684949 530329607 918021100 26108795 655994747 755864616 192425986 104231087 527882125 382135994 267077564 205966573 287774630 901350433 110568637 681897692 682412221 143220633 324506227 145393333 711303728 680201022 459598141 819208354 666157207 456148691 274591082 609382054 643394775 233246462 637116037 335092344 197946330 178119706 134569218 275353124 812216996 124344801 927124212 699952479 629953526 88383651 579383210 164447385 718405288 203480145 360810993 483028729 810515491 793588330 398145891 86634130 514312827 940642631 19699049 418918103 923404395 821666618 395377348 863047735 839983229 999089903 584050723 323669741 660039882 864962784 741545405 317689976 353863247 982654965 936819440 356080178 596433470 204333690 181643212 176863046 590527685 496936622 608510623 998949123 99371101 708497703 421317033 226505764 687867606 450579163 242577767 274527825 898847485 865184635 518331130 164281177 460430400 775398965 448601637 305169326 189606601 246507877 840160325 718229809 200170283 763848409 299046112 326271447 110594409 144713951 273130506 888340280 488713546 789895024 775595262 758830314 239108951 247016062 721479274 313071230 634351172 689359952 889821495 514556485 333407714 301333129 455496928 272161162 324773410 433285516 205329599 368832635 326104301 781682896 693823381 351212984 133277520 88141660 370764494 194034464 816069577 763705821 586346950 336440095 616873734 288624231 252563562 9237088 409163290 752117826 257320625 80090206 337379630 961578592 361422292 444129458 764907373 319137574 982156164 698339194 69763013 722374532 135814409 348794898 403455253 739676889 698481044 427706857 236149386 946695054 58985558 228651285 441654052 14410127 696891418 150464086 86704386 334082380 480145982 493897185 122991218 466157682 510192448 801705481 809219275 982311137 264200465 94234520 542238497 90919467 789572940 829648223 927904750 341694019 414301124 813475424 825312852 859273540 20525515 798895813 687475600 584251831 103863274 134000867 358405254 135213169 428218433 615513940 598709194 546890643 792297897 441772980 28789996 695058320 32490142 117207173 758370113 680389664 509029980 406883825 782986557 150249978 159073159 772892095 680869430 395774209 968686187 993707761 735691723 510671203 637652191 314118444 920600316 173354335 96666864 279072617 609972410 484977480 7481642 321755036 601708685 430589429 92027104 162970850 95677348 958367463 459008206 189390764 489675577 223921590 749457753 422666396 918060284 594997592 12058777 27031008 344188306 172901248 275545173 289090733 524840788 109707594 820751073 495133363 895867244 797715971 863280532 717763802 765066270 983939113 246223393 702512089 486101186 103796284 459671994 162627582 519665119 793401474 842193967 810678261 976915923 441505212 491053257 926864394 642209935 459346545 80150754 31300984 342203337 938038563 358135304 465258917 249356688 252463888 344273771 394967719 211167048 287189321 257381633 407522943 631315778 488106990 407204618 355330669 184163956 995943148 996867974 963009687 617232026 979748233 623154664 90709086 409136074 451270564 601367523 207292270 460565053 973185363 331422799 490242673 22970577 630944375 981341200 578168102 722932359 432547476 508344968 912367145 66965226 365247364 565916717 636819236 732534068 772317282 653136331 6712048 352123363 992466830 526681761 689332253 609638001 603463502 836398825 355328351 966077366 366119614 148517787 31528041 459765961 62962504 545517730 60167858 391996988 103621624 144976671 494383213 933472749 172424856 277471081 601738555 553989003 219771931 855662767 388372155 158925781 921475077 256417438 94857661 865941840 797271087 867212911 625826771 43951650 599543358 16087231 233967791 243178872 298178597 93004893 752611087 763282774 158109166 7476691 210859225 250646887 311967497 327293236 70437151 850431679 350995040 549025935 63096145 918767343 148174652 208990118 595652907 258984721 485171362 20005564 694834814 251158356 554549889 774221842 997667947 503909731 603193498 199319167 768668738 609525436 958462163 1436051 289158125 622944626 966275807 127591767 919134538 329931951 117436274 257547859 675431673 725048327 361744778 945380970 276417344 46987337 138103608 189343783 208057618 202480591 443009764 722667204 897014166 754811708 356291722 397951221 569758395 267577322 179145463 523868086 156297869 560381202 86492174 813837439 713943570 52143825 795026290 929173555 234643906 942065945 839529164 861633892 781453955 550416444 19512514 593225542 115282835 373247716 930666881 434339613 575484515 615036252 125686616 32713742 729975642 740801918 854967583 717904750 354260066 702180138 656691026 744217246 46413659 795722820 203533083 767090284 935468565 655276706 723477110 83883686 586911629 68580119 145162360 203137778 261218785 344265522 845193381 739542474 236710200 404944676 992616345 312904951 731740354 403358792 631997219 988946585 352011872 276068726 639327520 530588437 521383840 805968910 130996555 831680359 108960829 807731224 895753766 799370909 362417782 976567384 920984837 74010639 230543698 798122258 382102884 606298873 699183211 965488194 372393853 523839328 816280199 77407778 775033400 798788348 754718432 439163933 40623955 782736074 355670257 720930194 997754443 644946411 945911012 807033308 320469590 789247630 94020131 742175606 841066578 289761273 163769315 155737832 877799454 883260350 377160950 268464541 935827612 604762473 356960421 141387141 974033890 877875329 738125 414880932 23587682 525573402 43450059 498695736 646568630 76566165 867452081 638732906 60777314 439381512 794407733 470488729 671167351 465384418 854979007 994849086 722633681 548792084 996252713 583881405 206606849 681582327 655258245 707591062 282093453 387778365 904897756 609640893 89739183 499725506 202044011 763162720 975729309 455613809 59527327 921303535 94215873 19745614 974584789 762108512 850415540 717206991 145049131 650877944 989161411 491033711 725374983 797306256 773800714 651424770 922748425 542834785 510800933 300644580 774455355 303927500 799514330 817970378 601096710 275822048 161930663 300665502 57451433 790027155 616167744 80541076 216440315 996462985 991443400 380126069 792069656 442321555 385491043 90120613 488919955 87213917 187544859 580824433 662756678 911582551 406569448 327187455 455005448 812701202 843985922 33986002 416446449 763294133 81636444 460915577 375975358 984613217 6706789 891238911 819011245 842233180 507102690 958787894 231042566 997775249 962719514 512055585 413942921 742587073 66906468 111562908 1483171 662508000 854804961 811739239 118386374 276291475 647433331 899651577 208842689 213709658 423772877 573741963 729014762 818435052 558888879 644550170 276823044 481463983 26362411 967597375 298256081 336132587 281186310 61757026 26600341 547598094 293463050 744525226 458390396 38681002 429932565 294113824 673623948 628785317 834010175 467854364 639658037 733819466 294315023 485684170 993300209 884669951 224713099 183815755 595307505 89956289 32803199 199528071 332816661 76662255 306218844 321962906 137690676 101386435 373771708 215635004 688467628 116904408 494185843 451636799 30705014 477512258 824042608 16362946 500996605 944280399 796008810 801713571 128830731 898075688 369855811 983622783 373428958 637343067 345590299 579811661 437029655 243358261 947554361 605310669 105166704 357538211 590646995 785210855 676488781 598433503 944432199 945803662 159863992 890779141 522319625 946344081 844643429 613097801 543827471 399709315 434109166 384857200 795515789 485709308 615419883 724941249 627595246 981635865 377390844 863454686 986197673 179274723 976043237 828191301 429689620 619002970 308525692 207905419 514635569 208662024 785706172 457514537 655391197 431776544 588011298 887962208 742167474 602936788 915039023 156889777 744381017 505237833 337168219 372483924 19024765 271228618 894590351 542591878 921763601 453076263 342436425 726456166 751123410 478647706 19821137 568111107 869757395 256134510 252471611 647155301 755454064 351054887 18285587 895956587 765495261 49318850 714057882 302544853 70984321 898099578 12108497 14683112 993536460 376547202 94758429 355820627 106706068 251173650 596551147 198491900 626237795 652365853 251275005 249458350 577713727 381585708 235442048 618299784 498505352 651912442 291022917 628479194 436719198 462929117 630290909 807084271 414578171 23158844 203582389 695529006 585889106 15360609 216029532 9669899 509463992 353882088 880666920 560018592 199375859 851284589 367878616 77368790 40411306 728731459 149969710 585792288 763443873 183581210 928375778 598877367 170785160 804845468 517116237 154479413 603506761 553822986 18854424 6162013 335272043 779383794 111070525 601899797 573988558 744222147 324048667 310084728 517873460 994422989 406063446 159727680 595059632 212777081 83105481 553026288 506821720 577677890 516439056 155926093 775211689 882031858 110848289 471394846 694943861 470188432 639089715 906507938 727058387 348814447 475340827 595249944 526994573 341272088 209768178 876381560 344032622 730889794 985888331 104699106 797210349 341471340 31662868 53775266 637782968 378810042 185054536 631327124 490567670 563067081 920589872 705259437 281252564 378719448 676173872 781675573 240558222 229809502 600647294 121932152 278297574 679716339 606114562 16251136 868141903 467562745 445016893 554056947 417955956 525790698 953576277 423676693 256428250 578614404 565382893 982763358 683429731 233446196 718857555 130085400 376086283 600739741 960250756 132715172 582329787 378779417 218992836 276579863 941104822 62772490 135020991 246552857 461619571 411336290 750163485 576344939 387930390 786598425 852771664 121630671 765235334 666754757 476740439 305327026 630639024 44258474 501190764 885447115 583859071 966135887 725115731 489789478 833370155 229379678 223071415 801114224 268845060 573389193 835353356 551979128 483190373 53362583 961327663 41443273 460260249 59434977 628274508 612897447 6418512 262885262 465694557 986068415 568553934 725584455 720683649 946220295 954269538 170141092 352060925 413951902 126178887 78698071 675447979 504274920 151985088 674850971 590438761 678067731 317712830 619464024 318365224 519743919 886411336 16418981 680471701 442341004 823949031 81416068 158891526 961413198 574624936 657612423 442159241 550709175 862945137 206842003 28263885 701855809 169896934 964444262 248671289 817631569 217722527 147852264 755815464 321936957 668578700 375670402 620216296 966452743 945766412 425376009 666324847 644324766 163871523 636362827 743965972 555503545 68725246 57867886 754622465 475048494 487770298 21818439 874696569 203428692 267019750 379779384 756608916 197872764 495599603 688984883 210730778 179941369 371627550 573839620 113496198 214118974 970070684 459211854 436196063 711402007 525384494 884155417 105941732 588912000 953346095 547224750 235282429 557078607 222537196 622906283 767950106 106822653 508369854 23005190 654063838 822572267 735739097 111830686 341974289 443179630 387336740 254167270 686858511 190043397 647229348 623889608 464319296 259256531 363850813 379845535 896749756 498294527 529589279 273538024 767249663 865428553 159503933 644622235 623308500 128192487 959841121 852468150 374030025 59003414 875804767 71691419 325823834 36003817 230717224 971414797 521321415 754224548 385729560 158848674 888988394 489284698 803706548 318414548 788037535 957115911 198766932 742444472 212704878 199827079 712290126 498651218 540083263 254145460 517208080 583520303 848652625 395803530 547123382 876498581 295287635 531455234 362788862 345695667 499540348 347265442 516143878 315176894 985958033 287981735 395509284 776935903 574855147 154911217 812423497 194557304 943845654 983424570 159397639 476035917 596705306 359682123 719172042 825285573 738508682 434133496 39781953 464189649 179880928 183523068 408672341 212877365 385519145 370005916 794990098 693667958 689308413 542153916 4723507 631477173 87051226 157302363 138254821 28292114 675873355 538555440 234043048 284968387 794822437 295045530 719906930 324842830 523858446 626528805 865920452 976982005 120228755 852356238 285712859 865383737 22420648 753434579 170327511 738793106 511932012 213648473 347709590 764328679 187448069 78031588 701931889 578799728 28594842 168259789 794222704 165322225 188601033 641109187 394107735 519989103 851810714 824388562 465778522 673712887 165245824 594197805 498330380 544388310 58349644 999257552 237690223 615270562 306084720 695870672 105192697 646819554 904581541 435038508 102936562 11400146 660763912 816633175 301896516 155542596 452253946 169124030 310064569 73041949 62158371 499329434 926073960 808207083 948044868 163219444 375486419 594381762 897734328 52070800 329233368 8044075 329828485 433225551 523269948 126883813 946620971 721239747 512026195 167600126 598453510 963846437 60026812 204526684 994296698 990195023 191457241 664575189 958998106 205645779 298679594 75716595 573013120 507579665 363766344 795068265 20826766 669281420 301208633 855066330 169345505 719060832 200560159 22090892 270300796 80510985 165449251 740584672 525181466 421063674 258586210 747493047 646838603 547211831 494926776 795675747 203571412 999452206 500219902 628837699 266314482 42332245 526953306 678117358 708247858 266687417 528510910 171222026 473949258 364280886 439331945 996446961 8964636 374119272 105647310 540528182 186063454 367919157 396329466 285214178 691505808 56550409 569050917 233814907 939680833 394654788 325965558 740986215 112789002 981990601 711071776 899568073 517675843 997297565 546448111 932869659 794516709 436260631 811625598 296308952 423472669 82922799 713571014 783242845 820543360 89970 86482915 500399074 355047882 83301699 539110366 281676466 67329272 673766092 222550600 948549798 546277280 46666010 380110689 743456759 410810364 580837884 273824568 947782782 18115471 265487219 268275520 758099437 918731023 978157439 466290732 701684515 987364774 732312202 595100087 552723798 838555304 561988079 819924368 254916013 876231472 409458624 420436594 257556414 464404263 471101156 10264977 889931260 580055448 533845194 653437621 166219066 670392251 277019791 420504079 657620518 35010332 232110000 939531784 203525117 801291376 303133350 205472718 527740302 53642518 841508806 990676737 782019563 345851754 940222032 834309552 30782221 781318243 320680246 800238642 670299433 114941121 601028358 881801356 326235988 900883131 282437044 896127810 326221905 916907769 837837202 2696487 383681269 34433503 295699977 625536975 403303904 722237982 692091752 637301299 69147573 401366201 594884706 90458629 702230317 84749890 358082387 668154978 81665989 929851584 339047314 943299906 314924669 103053058 919172426 130924171 848669488 807745035 848243130 706702163 792144113 22849921 364905486 46961270 142069590 181109022 464449678 867083361 597431677 821290214 255468375 49582830 391970918 33778823 450071730 841327341 694476144 626369227 515476596 857130925 419895873 482342741 944874249 321589188 146727646 944770820 28706709 507290604 297221097 277838075 72405485 475215507 587045959 917737241 923443884 124612823 460896504 211435190 523663261 791895950 412633047 733444335 629670343 933189276 715647497 656134135 790594840 514887674 884234418 580604187 664547089 578383889 450018464 277784898 859202319 472950346 140796003 802282217 372298478 678290435 551296051 988651006 745899608 216235224 294105275 902819349 43564843 751401456 836705216 542087642 120250809 855432104 952430167 135199072 716179412 107193961 399455881 492788230 169106632 257675738 482102048 519682600 94497742 696817542 192237119 58422011 851881628 191840172 341604568 966803680 794754478 541241173 177752276 215351742 633329387 912754237 570313019 45008738 838625001 674429424 651909887 126053987 741333206 290233080 29464727 35440705 417561047 183721110 701724766 319139982 664866124 811063896 208615184 577353666 220600365 546349223 366310952 349865407 32790151 217912733 300396377 525106806 425491397 172580674 639183295 528587374 541762012 740514540 770519764 677904438 224085024 522967311 954436842 525934834 595596486 633962167 20982844 986131911 809854200 889338287 989947589 767725861 339896402 142781982 921316335 970760907 530015853 835101476 973337607 765459375 337103086 144902382 666322992 94058452 786420558 745707309 504431404 397499251 479873207 363393463 136760131 197167054 11618093 897505341 67487121 976147907 206436247 674672136 168589431 458266645 886686164 621026502 466730074 404587483 748651182 839229592 805530687 360153667 75020142 278747747 640540155 851146761 82654254 459621277 303362490 176338609 110948279 394993986 746380306 336556200 423610967 341515877 512164089 977675995 126617745 937238235 458814664 125923401 171514786 616993856 753402064 701874769 441586639 905872528 503035398 690566081 645531778 49422721 721209854 149098840 870536896 635730588 90664505 226246539 496400699 477742634 65463631 596031505 716807366 734683771 474180348 114773088 914354803 95587256 306501475 752967334 753255355 19610564 885152733 100480923 79488809 820758179 457370336 273134667 204619656 800127939 382747323 375714956 545991103 965085577 743190434 429400414 405033957 968253679 593685217 116678951 956719414 871756485 394197468 244424647 856544106 473845107 981424375 701280084 625953661 901555751 280878458 3928935 56623497 315972743 258175698 323159313 333857179 316785534 340881206 593701306 902704172 975876289 787880610 584773488 436329857 610983119 920200218 493864397 259073491 860762009 59475806 884649988 490834685 400776329 127299983 926320611 27071206 707407286 470393554 946956466 139798236 171587807 855837161 821141260 104349126 593130722 757250117 762140098 478176123 666975676 427517445 352426377 985998128 566977356 954383730 262883199 178661561 989907517 744275847 156155774 480071449 572672915 910792934 969119569 178588443 250685039 777531164 761861329 874962319 318673292 665777288 456358489 305693655 511415917 427874636 306720935 626580901 433561148 845716118 889046110 510240356 467505825 68446226 654636271 417617082 980413067 462944440 109253594 88093648 706507 682262166 787532289 433737622 397505860 735305386 78254698 233660442 697539163 485659273 575357168 452759099 196810577 811562155 721587683 17383318 998750402 944779846 574437420 153219210 524223613 414912074 127994816 257613886 157621971 728491935 799596165 277653613 542110470 715152951 529798716 767718799 870120599 415157126 64754272 380443417 521821497 307967154 676609549 777030922 742078404 191464133 783868632 223925549 136216778 942995132 626377514 804451917 361873893 582515005 194296614 175210425 416186592 236665092 782456877 400327210 551787495 659542889 369058048 662898002 931707381 255410535 921894376 451526653 634828880 15704285 859580667 676489425 696081995 292415144 39342661 179850461 541457521 989597509 512941394 47891204 564286102 994862340 98096714 335366412 494597341 608538126 191156858 676540425 233047452 396131085 793873619 754472746 554171385 963922625 813363193 28755170 799265006 967904675 469319752 298825830 446461307 303336007 966262688 859984778 109338318 932684275 609286191 124262363 669108204 166260880 157927022 218885045 641921621 122374252 736826769 766061715 971356406 218537460 216434414 560992934 607272795 454879072 270001320 951464393 369000485 977894718 228258001 712148 948034617 890028270 754518627 572512730 211903210 488454519 134599103 208012454 939298437 664113120 86444337 580393191 967677356 919106250 397400920 668300029 921990885 714990591 579489102 285367034 267306074 766947202 54997779 308196495 553474878 114840393 71150313 161092545 971048301 279462849 767334897 949595242 52944707 60751746 159163988 180524893 598632948 793814428 72733064 941838846 790957635 102420546 682683735 894418436 66075857 838499725 519906998 430859594 472514781 185507260 187787249 708462750 600966145 325357676 334753490 694477317 782707401 473012277 822029802 616948857 640744449 318054969 881732048 191511527 301818042 790989975 936627945 270070223 375553946 657899246 562232780 236874563 561997032 184086447 506862231 423568019 501118953 612837236 965567012 801161038 862129452 125323940 566138854 704291897 344615871 717159531 143738871 230078381 487892114 479156810 171780274 264689175 612535663 847300457 734063985 645729917 515916450 375922784 112168163 511197770 11342289 244400175 631203032 594346845 153103436 743633752 281445795 433381924 684864505 757179788 299625237 116766896 798174735 747971493 870514391 776144775 142975571 921437586 187090908 166036517 291538662 11254798 156787328 71059084 814211905 527410416 839960770 682651781 33140668 299396035 800992343 720481924 515371274 271355929 63168774 345199557 596379188 272701580 713762933 959813031 451083402 735383324 602066764 6403245 487757978 753471457 141291145 522503726 61688828 88298620 358146546 356931827 674856147 291268315 50533905 191022875 568908160 895394945 725608288 503910086 647270406 820723081 117137870 36396026 572838017 704899176 266250087 152019653 935961909 504254438 79143686 250539863 470503456 277376948 452976499 189308662 314741045 598096268 874886609 246154798 302903535 596370055 489294678 132240060 497829156 875091573 484649751 699452814 584164424 393541364 167080863 440430460 584296260 17080515 382327192 156935375 738575821 681202170 221674501 360860835 900471051 358131307 513835722 521990695 710848045 781199616 888686069 576455607 631543920 723502125 236482605 621343665 428283250 279547983 620382111 671305974 437298193 68992058 714973225 731211374 76310156 266505038 81364193 342511164 699616369 30000518 261774253 817353386 864768244 414224569 319496746 442556245 225268381 339817672 546017202 958088786 652261219 190810437 483447091 785033952 731874428 423644509 276203133 637136147 220931889 211858854 353803766 165384174 236066707 191410085 890267801 272540904 557013931 257151319 278646325 37354441 14676754 111132859 159054529 48601506 810949711 686321036 822776379 728620897 82689446 557114684 310311807 500153769 100083547 131350111 258113702 519485256 834950492 887012048 240165814 692355177 606977445 220199275 562899050 232893369 496748263 697288950 339009555 662861698 98246055 156789987 482572897 483733441 88546722 832589734 230922300 577580025 616339498 202397866 89089456 83942343 314009521 466384805 217321518 501260410 173811150 690331072 461515827 252842124 959790819 105271037 826700594 255443452 430890200 131104179 809091170 281904592 664855002 402509942 220254030 274538760 897386342 455442050 819300637 561568887 161399353 436716680 785870686 505718858 866909102 747501097 27570537 10854560 732887190 186968452 94874106 557254690 918155331 96053917 837025374 544256109 754663060 459741993 893979497 376776496 523835731 839361957 439076728 710066417 713019491 619963599 82725164 978023181 971202329 550463781 461052332 700990940 440137326 551766430 170483001 12678327 363146817 955798868 653446052 61971693 453373577 232609363 283948217 334165429 265697715 187380720 653677102 670720437 285003837 206018520 619857548 545303712 560235970 523847818 461227802 399232332 802478799 591207816 674221164 433099478 808534018 360407064 87720863 135323018 627892565 221590936 635280710 627207767 606068572 705965748 905658674 608546511 872755104 243661988 123581149 726516225 246007055 186065322 457731052 744518135 439007600 952940801 395655747 567565006 842506834 938829524 901081830 931833518 724022043 14310349 353683492 347359562 332817617 460438186 160615914 643229844 84339994 45780074 448753586 832970410 666475013 375239995 246963902 112100102 372682177 449458423 752432141 256494246 956980719 377626039 345925236 717238555 477802617 140457811 11359256 798639555 834866186 291197905 715877279 850282983 623065545 988996753 142303363 107854631 357628827 410853753 480449393 511184626 658727147 309538963 21844052 816359874 593457023 436180780 786587753 685449197 54979374 26675927 348231803 311747431 348675995 861402819 314826441 754979991 671252807 991393909 683247170 807693155 209109163 60040821 717655796 766781552 960476954 812929374 87221684 124253825 271178484 28475668 964964238 481843551 929183340 947128995 634618284 412288576 909861221 746210662 615055829 916635567 131784241 888108613 712316176 960413839 854468785 111697107 909238359 474177393 791264986 847873492 679095407 847182140 966345827 510037534 141317075 507115169 253775287 121841744 174331069 245996777 856690788 943945544 731965125 265826270 103151968 754452033 300012454 491590651 541569179 869344060 567640511 756806185 796037019 419393177 547151628 37117875 159374385 844946381 895814930 237749516 747826423 202767600 502465946 376847186 486052820 94993171 283928680 546600468 564106554 719770710 79142286 650430810 17567384 519758271 873947750 734996790 696986329 836464467 926538768 229458787 449779512 965432235 742973049 256114562 329342153 770042975 508727802 157220488 882102011 518641336 215608815 205533865 677614173 238310481 224577674 365267355 146447635 86820241 673818744 155735760 984432189 759011683 860395448 447044702 847750243 561789259 435986688 423639735 321439873 76287155 196414367 187429938 524347289 86247050 505609980 66176091 199554931 379757606 126159647 673712153 859024168 923553917 325134219 38153503 310184969 313031070 270287705 355817407 577163847 96289530 394294609 638453922 283829139 41243905 24667356 459914796 241234981 38837992 419132979 542270694 698160058 916615060 310352948 499160809 689142431 983617290 564574829 270972628 922608391 43944495 548971843 347531492 252185496 734525183 36956455 712527635 821208406 856724156 88223971 198797629 78213651 57981019 370159274 262200555 470630368 270921300 737409623 245470026 47291416 99698805 156558339 441832101 323005177 988704414 562871823 530464844 740308601 371846387 156286537 738331879 398331293 221333985 148251494 542101871 392434384 551491367 77731989 429564366 604604090 998217000 930690145 70962693 203237540 635465835 907443459 823099753 424949764 425021363 476156305 198331672 661876884 251714771 819951287 315980471 367797490 933081203 907856699 196656897 348171553 163875417 803313267 310352461 575784531 98800551 760191911 635552659 335004515 482142941 260298154 579154964 590693122 721467371 835978959 480429624 291314798 950436123 589966415 363819960 203059154 206802801 115292064 602153379 909670369 536754730 222953348 278715468 734123076 243245401 934328237 568611529 1887226 736769566 496912726 186788980 741712346 796471836 367254602 255948692 740961406 414955631 394672877 991306027 724449998 838891221 205398520 863385540 123338121 298906445 192034887 651909700 112183668 535935127 186797470 918122920 462299946 461658100 993601126 783499964 886472364 997464963 662478982 158896265 789630203 331949923 508049631 716901500 855264487 316260841 301006987 825300000 485351287 561710072 77516478 149509059 320101927 480530779 855974953 198222264 792577440 367253068 54806724 129728443 726983503 238208918 831244819 852830011 1976475 13199965 447728667 860641116 81106684 903436011 391036421 64157303 261548602 239765276 957348957 852578946 673656051 125855258 921296884 402885201 870568676 37604530 801336427 729302254 862504528 348153634 345063339 386311218 14880020 979787343 925906030 447277908 961651640 681039679 711418643 291317557 790419053 838579342 809465957 670538227 127575750 312755035 560652127 134808579 527234244 123651231 978933017 281504600 134772133 912545335 684427363 900806975 444200884 82175267 853031348 514962388 812598493 965369404 665127305 850395062 776432149 49473225 647167505 636315120 225028672 393647321 653636232 296174360 75222221 777575013 837483365 636959492 886636448 402042532 695406539 372833062 693224709 423045795 287827237 985375361 461606795 637672458 651479072 753600820 841636604 440875452 892634969 665251532 153027508 155067736 817249082 352248349 137963219 113141092 464365852 237373718 363703862 369616225 299215161 86968564 169436010 211054632 109664209 240299220 815642447 240699753 985465244 833116916 259834004 710146449 428545660 13183037 931542022 275368259 345884722 378130555 431171424 690622878 208822351 845765048 29999261 909333594 909170420 109224032 903775610 146397118 292538530 287089377 556710554 631671467 652633643 988427286 594227770 669722997 876208056 419403610 986279678 261087963 558166762 449780829 370040841 265846806 641851865 610715888 246626141 227721514 213297768 446620324 490664387 702004421 494287891 363671320 787687433 350136703 435311003 675503100 919343677 904146707 644202504 122889949 591097225 819284569 974285277 157223951 195411035 367039180 48054814 898096120 145897845 236400879 538601438 767366394 484434226 922754654 911040203 658542299 566773575 846368269 621351255 99469549 792732405 246310047 163374951 568242413 266652486 71948557 78820501 406944583 551142634 518399810 655673543 353702526 507157226 960593334 603728545 481918925 952500650 66549093 701510825 205871032 508519695 227609585 400471328 470059255 261557716 562471414 662278852 33275040 596288255 235317690 51713689 461296068 659013461 820163743 791318161 47603044 919739485 693597158 733502033 317165900 618607843 342166003 959818196 716579631 251293430 72392078 517426682 324292735 935867158 220673791 970876104 926979104 432709578 846341902 689339893 191883489 521362584 368713235 307714224 2167553 421582045 386499052 139470234 367487907 84685796 433017772 531958916 651263499 504292836 384076671 158336887 245024745 883275796 593771002 668298578 531677836 947343254 585423734 420624048 206691912 854936948 348922424 334755586 99758848 235343040 218182479 277381479 392538901 695781581 124712848 390059187 810532546 88955799 459901503 980619077 530803418 871132108 964218249 908975243 35033505 747688398 631656550 483213931 734088070 976658373 603732899 998684270 165336429 26243246 976036311 879138297 544092454 905235252 780896303 974108216 694183042 479522079 102804454 478748948 41241108 301662002 41275081 169453907 93845879 592642140 992151842 36732661 269181218 572561478 558221361 957847232 174973648 61836050 497663670 511673147 38786267 968271069 609666252 811526666 220012299 962221121 110494311 985582206 945599606 363948248 399533655 731255516 106380779 912792155 855564843 517071549 155917525 23724264 458570425 87861517 560612137 320932549 836897075 214257082 342526713 820236368 856597160 20014213 994444734 939060914 472327150 372589834 385383224 901441308 197522794 595072876 666177677 186374433 141351689 482099875 213381889 441903704 184904155 222558368 520556833 848675942 272106602 473514428 429985855 940095963 292718492 351456554 838768523 891370075 699450068 210691671 141497348 912339684 798575618 387625805 360913558 434397451 123603374 926352173 377116645 741455739 22241256 933747517 659223851 706511538 153981533 223208537 798069458 233172915 872625568 567172962 881389414 45572616 792055853 180294139 417351802 856699875 700747608 516558163 686215398 852679681 278281205 448468698 441885923 975551517 771455366 135444422 564641223 688530313 916973824 771806307 298309219 728187327 25530758 896890588 191816386 315870363 132840816 297713700 974886807 213036002 468873496 913673003 486130510 460830588 826325883 588530098 846001644 415807565 720801291 639958205 541479641 757548189 583999617 772736423 622337995 702260042 800127215 338084803 346999283 243842562 664401514 265023978 378415722 191141784 116825180 725913639 98482969 92689541 639920472 947575892 925129472 814797760 294565445 859838826 711236933 490724312 428594314 857489781 53654531 540982789 566918815 514234817 242381590 828521768 402464626 692449565 380600465 244409117 113620936 324198819 317332468 713289653 136448504 626463561 634807976 525885691 943520849 456462191 791424216 582132048 275769427 549797 959829298 976904826 880551776 211738490 989875621 125303537 413544120 231965971 319721913 494835695 633388038 204940582 991139223 613287118 217424495 505869892 565503109 585374506 16992242 262520851 39166202 673281751 271412988 20976029 240536774 755319413 68634839 758427602 202873643 165104276 63472781 920133636 281904789 352877479 126450617 847995693 869060325 972989242 646774488 851385132 897643416 26094403 982445064 718927005 538339706 634586265 800833878 982069296 82008894 546922323 867113218 314314951 85639579 924959761 812061738 322623160 586821957 564124064 114724468 124758533 914360028 432720090 679203319 555963194 836172623 162652991 879112776 634955693 77665541 54407173 406632152 460189768 965805350 216517556 505935112 548816201 957920763 518822906 849178850 526406221 280432150 407859597 539243755 692903933 4624264 903199228 626267429 777240814 635705279 919244736 184378157 396344327 352020045 840683760 875084199 863865074 841751774 981217867 198151343 894971445 513270415 531802859 809573685 926166821 600188684 800805909 224969133 317712614 166291241 618814745 667178676 627755466 907960422 752345037 509357443 431250457 783093864 868351190 892858311 47964458 821458473 219102982 759620209 217053427 985946798 89329522 183189827 846611766 877883616 70811336 667206527 689323470 631187006 75006145 959862835 70369375 76194239 969293172 546772770 173511600 979539302 26533827 37977539 374891313 911327237 366468287 856839703 526995232 420921425 695781900 382925483 931440879 914774117 604423876 441403103 712847481 503523820 308352157 445945094 363112250 272633869 653480280 875965450 578181553 16825975 34415314 921259138 39193709 629881261 448091903 875502775 613404377 570252095 487658563 970950175 111218304 834208418 429960694 477303735 418095919 699410913 56070779 492983431 852395779 889445415 695783523 629960456 861070846 211184371 429996125 849470897 139703315 178621416 904400937 897461350 56264473 648509179 735649988 378699747 49538636 354661192 725935808 902218306 181034271 923929128 429902178 972731384 288484774 83943287 754948020 439547672 334124320 121007285 920180469 415785798 323105290 613561929 251382499 244113303 534517346 729663072 635496482 976610268 155207471 343885986 551140151 390210270 156076743 464740686 908432417 861234917 197292417 931795936 166746381 85172226 777627686 729632337 656554857 797795835 884781476 625545340 966488367 549720505 433122505 57398947 594399553 801009517 421673296 116191440 82196806 54792269 740603809 177007122 801790453 143334069 889409728 415279066 981107237 898625170 212201743 347436992 211776664 417641897 246824159 662130426 879603596 161494883 862510885 899041046 192294002 711912395 87557108 10037109 664631406 135729531 282337821 218922551 416410560 207832543 649292271 782493133 630357855 715447914 705969689 184330282 983948949 661500305 919416844 488416796 358678898 102188546 354061611 919961539 637384958 925984792 247665289 815215046 119943273 320519703 758210943 168343670 620077119 115532647 966912059 942273788 664944014 604676763 397370256 690821997 61649164 155485390 424744262 680620287 438440182 366508113 280155251 301716169 885846369 27022660 113398848 371059360 824323525 78445745 674336782 705457216 719447104 877146055 317400204 773893268 972077467 517091900 359156810 411863310 408551955 130868499 860095884 984032267 212152406 552419131 173543477 181692944 780593838 499010287 777806306 315736365 984860174 203365183 543951030 35718542 107170540 93606762 323204605 928797449 283485922 778537691 632408461 125201719 854471313 529773135 940434883 139385589 295808470 396116169 632389132 631503932 202975127 948368515 699264668 962367122 265188092 724537014 731028155 448246303 441623105 462717643 509503766 322610255 997119925 225337424 853817019 324350475 719999599 936525505 842162060 298810221 642931731 243463017 64015049 951132136 816843579 429248452 178994698 933844236 774611163 254530921 170965147 623149399 1031399 993654440 951472088 63204695 462594092 509564181 294966651 928914629 802683293 453232443 682890145 529272824 597362535 643882648 565645377 397655370 590585808 647458751 91881042 487220904 948705789 145868138 542024706 626412609 303052184 23030361 60058355 280953850 601717056 394977743 305230418 262579858 691191156 712045133 446583502 855065499 918324337 910541263 561455670 464603022 952797364 847477118 762833870 474051871 347650062 9181533 327000909 275286396 743561165 745419502 490225598 381665137 866984199 351808145 158237240 602127523 213577012 713228467 773553436 675875593 464722524 477014853 333773209 800139209 890000817 59813050 666528506 580651526 735565849 359217319 459501069 590243796 642875008 609247658 3046877 350172140 732738104 454496698 350253101 443154757 361892681 564135557 276260908 369268002 138505522 641375391 31691706 32125365 977885179 962047033 323987897 282131050 371460565 632715125 496644390 733720275 344948406 234579765 500211900 995759480 458520758 402597988 552428906 549846140 603019400 700940420 211631026 292365740 273681075 261408605 190308437 850140375 315961080 244425644 641631284 455455784 596780321 136902193 896420263 607955563 725043649 872742443 511525201 920327233 696000355 492175036 367305750 35335592 78356196 889639759 819621770 905382309 234948291 149446565 385411594 201386931 750045599 600708803 185440899 310632039 559395723 966899623 625333166 519221829 604555503 160493449 70430648 237789742 8240804 297447563 943419899 337639372 935392754 809538234 729574477 786045698 748810577 392095638 333368394 190676086 50756326 369571012 712891367 134904994 607318809 690850828 129582531 122520069 191128755 685913521 270061291 710117640 88134331 401629920 543216452 553408955 285386040 374214729 777855019 381802975 881912263 777560704 535831494 510110270 456351355 881488530 625979492 269911099 805391967 859612635 567035368 194854949 626764704 471743776 871675437 79414186 674481340 133651197 372981981 414342674 113133021 693706632 997016017 948919283 410198873 630101489 273779834 83524543 184062131 735802436 989001872 524191427 746851714 990587895 52945490 359458624 777455427 283775601 758083538 52134159 297362116 58447677 643620198 52500869 154198507 685750716 732544274 88759088 854147499 799572216 867522786 462941780 540460373 483452995 242608673 66050540 286738559 320416942 562845065 358191404 757220381 325917946 884754412 986259030 977839572 290382521 724858699 763496677 141286681 826284430 823024054 346610647 781508137 658362650 454890135 372485628 417398667 678824011 295630461 899851049 141290325 463586046 453023699 679937840 61588979 172023537 735963350 922954449 670426283 146694138 935067855 92249876 751653946 891480221 143556705 833653032 861670259 371132988 478422626 569952184 576344594 8357709 140831803 158332379 602702130 714673623 336258563 383883264 168399775 925668408 574542582 250826971 355710625 853079020 474489302 156912744 223443153 792521840 482727606 107611902 432175991 213117925 905409137 271051093 249953550 572874432 449689712 205893749 442703272 150114553 886873493 787074292 585644632 548869336 378346826 605117391 13189503 502835244 608394388 388453119 800483606 719823181 847680135 702929806 306902283 878777957 641265434 864757671 12650536 426939537 719299727 663095246 71842670 385284362 197901750 244366020 556910204 946762078 444516564 814885892 502614795 667475629 764169910 122303890 501810968 542236654 502602880 407302282 849179141 58511535 884388955 149713807 594913021 39729479 532909875 103848454 224188301 306371672 247934882 611826022 770115281 42759495 603315343 62819912 670414617 186396284 687670381 985917272 968405805 329133658 75465379 416006497 965990564 411018240 792352288 693682106 265218478 915388880 829119524 17720945 327808872 234395829 297251530 598872006 704445478 472616667 168813315 112782751 9307731 511849923 731742593 39370734 501357175 872044829 823413199 524990142 71866061 141683010 985707870 46578467 768236161 83915512 926681160 752962036 537651995 445923688 812710482 275858856 85814591 5598449 161108111 322493143 787632422 203251600 396836863 507443051 161847724 128770578 747676632 290401793 899449324 716450966 351191722 655586279 947580640 809729957 78311945 798149134 428556998 731983514 227149390 111755322 576479068 114777114 868879512 451507028 207266358 458303410 926309107 300656333 680644270 921719847 40487278 733536846 559839842 942581892 54538102 341333237 54757775 682992102 916450315 569603088 503090008 423606359 153747254 727003089 742716476 177037603 745126197 660304959 726348029 627550471 594583208 366078741 915464575 509266857 891767164 443029592 435053648 952469604 658386731 457236318 369247962 417286674 454842995 146118619 262237977 608965097 783933585 380034947 541487799 896971214 944426369 685936239 855895920 410376208 30681873 294993165 282589361 257734554 11041174 479585124 724585873 16522910 612249956 691238940 654784111 615386228 493112489 459472923 395996626 413550116 19039431 97424565 753644850 230369405 982891669 646539071 668763634 802405830 210216554 613545547 635093615 125998528 567061356 253212172 129921740 27407298 695265694 195775455 521646876 178860444 39821364 779274365 476139721 97690022 312974906 798725917 65251865 397557806 294496252 561147380 476687595 529911188 485794150 277800493 770505048 966070992 621887579 350394517 5170704 710719082 580774322 680581858 367197875 667742031 761739366 379984912 199249011 536102670 933790297 987832323 945801993 369076574 16683740 588858109 833537947 245141065 856352742 733735991 885776482 792518977 468847965 387805098 192051226 312271840 567457608 704577613 965728694 553097293 245802979 24087239 54992246 335253201 739611144 691535207 543644684 291507085 993202872 909519244 108968070 906086736 207484736 745412190 21583308 73244535 781142115 66081905 219896675 90170217 189174280 722684268 877532027 951012169 998155681 540183617 942578176 228694649 630389453 786423664 251863330 745226035 939424894 776344651 601027130 618152251 980201757 330409544 452729652 160152792 675565769 835775113 442362373 425185868 409428841 753265117 972781597 725306980 873541042 31386056 591077737 25492664 954924342 732868695 901803122 213703293 83140565 14618782 243528683 78052084 518224892 213065548 11736501 119004068 960387073 630545094 775618817 856972651 91153538 947706681 723382541 324471078 659210537 732780704 416579942 296324561 533936572 738689974 544268566 685387605 734132072 951997031 858989155 65258731 456187969 874854652 425346486 337040132 170303836 137710745 192081179 531739823 18033619 185369925 770712705 130278768 389365336 323826720 790907955 949573553 596169854 44391472 669996093 19057704 690487804 238568272 552368476 30619951 539255259 527053577 976681419 870227206 606255598 888241837 73320219 502740745 403705288 202453629 895942549 995188256 744216905 686169464 512777744 464039793 189199587 427590131 515055432 52887663 751061356 810712010 842903781 394881172 623989583 608361290 258815757 26017247 444839929 446536279 229542651 249432 471911873 758887530 157370460 105762928 180877161 846322414 956799438 751828223 328794313 722158814 209648800 840822832 381985253 132764708 211937535 439367327 661869534 63877507 768963386 601110794 732002026 651710595 521156798 826759805 966235964 166628478 907375757 66015739 174767022 22886594 851016108 793935929 972193365 384401595 973124754 950217897 690048181 787827977 241259873 904318661 722176177 523554811 656947217 951595634 995519916 925182693 688483083 692224470 450416792 332730040 445543471 469162112 761570278 87343336 285996271 403085885 700330645 248094128 220522963 225579212 837336404 981609539 416192911 294479252 978989847 444904388 270983449 188300841 503793365 279180622 141020263 930476651 336836738 196903547 221721954 534580928 301428305 23231424 272901928 782618249 822148061 846259125 750214619 229554883 660722535 26616594 586909888 818278951 880283962 261872855 736181000 105221642 480933596 512302100 70813979 486961788 538497330 177229879 799491387 322202800 458120180 805758975 48029329 139107415 122849626 389478883 572220976 447364681 12094333 839026918 466343067 363248358 329568490 741911955 52835705 676144658 821781463 948394385 554945026 660534082 552619911 741421228 537771569 828974549 432836756 754252121 866110777 681366620 104761281 245726244 365405405 436675874 534440828 171516431 165660387 759925613 304843661 858767719 797121393 49495233 656337734 187246431 584778502 14748442 872129367 730408154 199574176 338457880 877124667 619813137 199024949 837521817 139522014 508270325 824255904 986327467 810726826 217471426 483032174 515180803 302015212 934089295 118708362 972256667 267255178 612633156 155147533 974437251 510921438 436133985 938928284 323907384 852811586 908459540 239390977 269723080 588024166 976016366 283359915 615103773 586617605 907517939 43895944 885800766 406933239 507341160 171983824 699499381 368444355 438685302 125702444 885809784 142636286 54676010 727785240 786368767 112578254 707187443 954522230 175486007 164950462 236011750 343238958 177941004 163222487 757721563 897381393 119390989 764763647 64082940 683180274 978516965 852698774 752364787 175013993 634175790 277121421 77184851 570782416 510298243 735517700 163637530 872517999 853975041 378335709 127953122 35034410 766565948 985905678 97109731 331636573 238281642 341309444 478951693 37823185 912830200 784189361 830600370 197242324 907451325 669509798 967272832 253173854 347040964 835053932 860098040 232660960 783759746 791400858 843259215 229100794 293959856 964965063 82848024 607386845 898645616 683153992 179361710 331555578 317651236 576057372 165973539 985680053 706264198 830740738 135470647 492501372 717483514 62224790 511380897 420657720 880768070 436229363 164096469 716736993 612496707 349930348 501187775 302437539 797298742 538793797 406031166 297195644 651735800 40645249 866807390 601030364 324142977 976478465 347237731 302465080 708914715 779902356 441674823 438001567 159222327 290354657 230202566 359322017 894838745 62233592 148599419 463605933 530296271 547224092 306611580 217729363 123726919 6264814 86821692 744052488 485982841 909561046 926476608 80926893 171354390 682742358 297679921 464155033 134581504 341209930 999279818 199017247 971232069 678220578 69995133 724808735 932281961 236017524 925082816 94153507 403696388 619898072 671219275 447866694 417446707 549035607 997837308 451101786 346787760 89699398 630515765 321183182 188820655 891344163 94016910 924460175 308623903 405820807 86903198 592129567 227660703 468932254 765931937 339473864 789773567 858133327 301772939 473969103 300278353 748300178 981214554 25126074 891069642 220856675 863813686 4988248 913128782 726861748 664185243 516390272 218433883 515491368 387543267 276399737 484428267 537764201 209690686 465508818 466608264 877739794 154079296 939067253 612516337 537753360 514537955 446400657 134011072 713737107 725038832 858422167 380213905 112709976 614404777 948235129 832049505 722641769 975474600 755652475 658108230 384879922 304250978 76464007 913603050 126285912 566557982 617425053 636160448 191674012 530787651 874402415 806886190 372776201 273524021 810833838 340685732 350372918 227197180 438880669 118149011 211580971 224113536 989600537 981200154 541317950 692584003 632739838 846309209 98534449 982522628 139557948 184549463 743581561 719987963 168364249 170548363 131095850 980362760 652039336 261530900 75966711 636498860 377693709 451763720 336384970 624054328 407389217 617728796 687646272 276617091 327894038 893219161 572449726 497582501 88262688 163331505 589415954 732220728 141092027 283811152 768400216 383216555 136491551 615892410 878826645 154657934 145058457 424345245 319691458 160170923 282651547 919705559 97470182 624268399 99728351 381372352 626905711 860833652 231762693 82679722 643515700 68744654 27345343 983081837 259134675 374109785 347287287 798780452 853933258 701805300 103365625 369457248 755785795 964450034 157516946 544947004 964791745 655717562 40624353 35809345 305154579 547126297 322174676 813437326 307222952 644796879 613644547 95170515 85545571 232207190 582835623 484722624 373565041 229089968 585694283 847754152 496502918 781687449 559405281 109317438 761351581 112112098 222313672 634752808 779024064 231466629 897743618 9083961 704026466 154573963 835193621 123470009 13555029 570908095 364576811 864967518 252187038 606376240 552135299 292026633 764698973 94764554 794443553 999612835 909030034 896590808 406323750 180135233 719632601 272004197 975917005 952433044 354525207 974555475 538860337 14296806 880918265 182612962 204622008 452709437 436054550 814003944 145799886 363765302 173752761 270265458 778653962 415593703 648188144 677778588 194770084 821415675 387452893 398222524 268209865 87431660 119926071 668159109 700600039 736292719 117964491 815366895 648956885 412341121 892777068 703184604 996239272 808900462 783301440 564615714 203162263 572878306 371683705 664543642 877861375 512925921 585591825 826920510 243175378 702273535 729296978 564559785 831032872 458470413 315015746 189591364 484630824 771863252 63778951 772676045 760741715 655454717 580290771 855630696 537574080 401065343 492733385 807663737 967830617 698356875 651932524 327603372 127638236 457382135 293939530 888932685 15823478 187310717 81839981 112841070 956998441 597406416 257697447 467552763 672197433 317687072 135699346 873231938 327468825 542289483 373072007 394091847 857919710 894268551 312533738 519551198 363403718 286004794 952163857 125137128 55801902 229132666 231473340 688541590 863814421 704853341 172840399 919154054 572677792 362188185 122507913 650364473 745947650 330662752 198200867 398612060 334841578 957125244 276608013 681077132 748529083 636147588 30579044 674795545 356309382 813860760 893604212 383603461 280440288 813130397 630161 527876970 370828332 930239463 514863068 937889390 733406457 649479003 810307922 965610550 393757734 755529497 770074444 137775564 662182865 759482895 290155165 197416794 414557580 547136604 321726597 213595488 221360724 141902630 853795030 478396750 792477581 880109917 82225799 746813941 644943051 215679158 54669678 652207197 88137840 273706011 289724897 252500336 871978147 51685926 475712423 943197377 479781135 738661319 910589084 270402084 614777425 985218181 338079450 556054797 133449800 287886553 985146713 67817869 574670381 752027408 171693607 46271214 748498743 783958936 241351182 643633350 14725085 127288369 536587090 915418503 699554249 776674653 364897990 851839408 497429029 64390001 181535461 522797471 817264618 44340390 525919029 449914676 780067430 389212098 747459994 871004590 960146936 173902325 482803916 6175843 266734918 989532766 880219406 18029439 943897848 873308113 692785152 210835366 540726176 369550823 230672718 460874179 453967700 220854826 36416966 320256918 174711596 600862325 694172851 82979226 523010616 425214972 242631532 796480189 744475997 470023672 659557297 193040103 264992756 80467061 495528859 878030384 664621543 560135152 577489899 746847607 570159254 381430506 800610105 804590478 196969141 105182971 27486431 867619020 278058518 589668344 674192941 49300498 835218916 682028253 720609177 675985125 87591996 44194095 935808704 686870139 720672680 73760124 165509494 518392118 351678437 41238153 416898157 527588641 107361662 413696911 444815053 518484458 317018849 887532988 124139293 599948721 71314359 281929438 610086203 292934408 642819189 583793585 783173501 196919619 962278742 517879769 790140609 696034408 273326373 805477871 579589754 125558110 705112213 147137127 961377762 366085318 957863602 494690783 20976035 450267322 79702891 648534017 991037113 183118617 344159303 982166244 73458852 191026223 525861526 726426344 103535445 428321163 30129807 949450511 857268261 3462281 542369242 941634802 71631036 653802985 586594909 863642328 59180348 281495136 181884498 355139355 372400614 545991832 380977731 64144646 474825102 93893891 436324682 17042037 895945869 77336998 102283423 241257417 422290651 23463499 667614250 669427650 602382444 964497212 923586050 796289632 516297127 713240054 157675264 451953206 12082038 949375876 760653048 651216488 24353153 76372799 230152553 812029202 499606223 581742903 976850798 323004330 267181312 605952751 657431533 774555934 625402010 48656713 55772434 407986534 932545574 646867677 344532830 370347163 324284567 697723498 280808408 755787957 773923643 776225229 331197179 392257721 636775350 277438926 455171171 248836321 744605909 938024904 57920870 907900206 530399462 221104787 506119447 169775649 990049911 369390473 879679776 217498643 131302960 771727790 856357390 507953007 949730181 194814193 134891189 371788360 551777219 734485478 365146147 911698780 548076340 86729354 882142413 689050791 645188165 837445227 123457332 644174020 970358101 204197390 3192401 360593421 165300728 360016357 60848537 901469254 673780921 928593577 238883638 342623687 906139661 976842896 175003222 319538387 950760312 477342168 80663742 320003920 659535095 195430762 785216520 522364093 943330764 403892661 994119466 554912362 606324721 472284833 97859854 280092287 140355359 337890802 76022002 441334200 444702497 684317227 697563714 809362060 223871023 444497674 551590300 548886103 82833220 321355616 231573122 257483916 100189003 56489239 28819356 670332310 245538296 86966135 225178695 282211409 562246267 190950509 53959790 796154213 723845422 139013759 19228422 932218131 50810503 977500637 624763365 144682103 520208317 565327720 715838315 387123803 352489813 569507495 682717624 279115463 18007278 390222931 45874648 149513056 465168485 42063340 506113106 348975811 99820849 776827867 201299595 529767647 162610761 683492554 331128837 98659930 276533520 877881901 983204548 532419779 476964935 630950693 494959480 706091115 515678467 673407401 945096444 681495005 14344144 383651885 333134273 189497674 597179371 190685726 71559857 553348428 664104185 971818585 996677139 927841241 399537386 657180500 281431247 858049319 510439748 115018145 736224142 978630950 810849934 95826391 226557439 194946755 278639303 517952600 602626647 504550412 386027454 487629898 69097097 316505206 995067428 859576788 278468516 519322944 699540926 39421591 14178959 524512258 847683996 697999609 556580719 695585132 9760923 951234088 781141836 165707084 6276080 181690376 244709515 402050369 958811312 271142793 319734751 278164210 438343599 98993628 846205160 192356227 986052733 487055297 471699113 867640669 676253323 77975040 311024899 206651419 862549143 495150024 378303017 961623125 577595575 499531871 830522678 182178091 735004078 26123534 325840732 882713266 905860945 800935183 378059783 415472198 991772511 870687960 403862126 566789738 926132613 892761919 93704204 354430917 810194106 280390288 741277101 356421132 945445358 114639682 803987723 287296672 324864871 513143733 392074265 296239750 803316984 687665 694772592 709195897 128358624 986672046 661919392 1382221 2239674 642884853 903929948 133300298 240793186 995961859 386877886 801082160 13197702 459122476 934491881 921097702 650539099 616671728 451643378 309719050 175385277 51038027 113262412 536447466 653251692 476208074 284587853 864184008 228830884 871393430 651864043 881450582 204374723 335872856 356751114 467445236 720776470 730210698 878150817 96659116 161708885 97266047 301519504 587781117 607878248 705469490 451904904 692335483 778868268 77227858 152809308 673723805 299508033 467528798 121663784 877574216 353858964 575494451 249683425 85084600 506497634 128865091 428275778 206882489 257998292 999509509 76996119 334876662 612305469 370399888 843980849 648660501 497526652 296003883 226151942 850675992 513496434 66413056 723858058 139212537 605085671 925226311 450987591 992450759 392329681 759403734 24786884 817548347 672817925 397057074 284744168 381343754 93694165 7017120 193558427 945721854 499169363 603949243 167844114 250922543 275668497 898637389 49652210 866167082 368189411 38864602 393767667 351914781 909865057 506853553 962052644 116441826 960457655 409226452 20506466 394400625 509743602 469722592 715992190 216675108 100276449 839884693 829429281 962925976 294975631 688876834 832084254 447419695 562912373 250366459 588542973 320392942 516452551 728418491 314403652 667626336 371315995 556265168 530637816 384833540 904506985 945942097 621528684 808292145 381133629 880970035 782555822 823772262 348855945 123524865 424774827 281501916 578771669 818504936 842858757 622566946 502967003 53576517 11148307 914074739 444624564 144059127 635809928 56125419 491591645 530863267 384833324 460931618 476828881 792499797 252168723 227305661 86548800 649016904 236538130 6299242 697699663 382214090 253644373 992026213 300477680 155973056 446237196 820094996 614634844 674163195 323381525 805683219 177622659 84020879 73516612 562587413 447190967 229793042 324158700 575791496 815474717 596356157 297805158 367587130 432664535 45123775 87119139 371140773 902735249 333090571 662616810 513402035 974413788 237943349 244513951 747802201 285687287 66206636 870605386 724253636 496189369 515498063 738755456 706773485 683995561 536764560 64897733 87841434 84291931 714860442 820399622 796382953 493309875 456869312 62905942 284009617 391643217 12130240 255842491 134775255 126889705 765920622 489399050 815038002 279696789 651708416 186070042 813950290 758381971 458158291 682265066 226780965 844923361 664371425 87420122 941319815 923708482 577638838 19050384 911223790 796593081 777141637 614757262 439481110 546545213 386310852 582083274 231441007 276389723 739108007 273238136 469698717 955920443 498418051 63644276 19984036 352705363 178791465 942722877 897322129 731023607 122768520 523141243 607232891 913632405 273541639 162095369 257030886 807942635 256052975 80861193 641556679 266068267 394309063 220840855 884989689 986988834 895367541 501377318 187841416 923883956 995580194 787346500 894535861 734047582 882550931 881227636 140515413 279191990 689731007 38448548 211580709 940434802 551436264 937086065 613264996 762352031 366851581 434968049 625411852 568370424 994580679 903150806 406915912 111934895 417198223 822079258 836352919 310910162 69315622 396667238 99999497 764608608 3189953 219471129 563596783 301596701 98350132 766186629 9442407 720200225 111703553 424567467 77832877 389663172 879444052 641404700 75613116 740438057 303241995 68067676 436903847 85436350 259113709 417070410 106223064 536864465 959536105 762566559 294731597 587124246 601277389 289363206 394680722 654790848 456802862 858159110 576222515 171135107 718381519 376259338 487246094 554583963 731598614 672638063 318841156 743534730 824605647 8564060 629777667 65660940 579898723 299499183 582336250 687797907 703324109 725512476 747301444 101808776 160162608 510698975 260913247 664760880 74304129 780103807 369243537 594645995 61574538 466151436 873468882 905177089 95934138 626048749 269189460 817529296 607618259 218444657 120543388 876405552 404868137 954132549 904087737 109599287 575876005 820378341 695216959 354645821 979766423 206872097 53600492 594911653 103653205 199943029 248778897 647724510 555421869 7413989 455308793 315537810 285138905 686791995 546342535 311818408 218882865 642378299 185822168 795052114 547226282 711204510 573054805 927084864 802524532 402772568 715503252 370421606 812132735 952940704 41024624 992997798 9330582 338107735 705506784 460586893 806983878 570475028 235842076 775799879 780063086 596049533 530343116 402507207 84970976 779489949 837244432 613575219 283145672 11271201 269620715 275951684 945929288 547250454 931110929 655394240 144980452 239041113 791070484 888707578 220869900 257432902 536141467 757692708 845934925 194138397 697954283 425369172 561437597 712538730 410301180 588200161 997101144 303030273 907679863 644017910 801762330 311002794 933537939 505847289 671835020 726269425 102409502 120815991 373532185 623343869 423932024 488639712 731604803 256133288 697758482 480631998 96760801 279607205 903118110 689375432 911753781 845623153 480382747 855385374 309416204 96074247 496579756 179538445 943816349 690329347 442299519 943391000 601488200 394835604 244162890 435183133 258091365 661020403 538704179 746125951 515698621 222558883 660956153 836955955 542882572 462082352 262712385 971313816 973228700 153893096 841448688 643538871 286980261 447455147 932698617 345442347 658324721 167500103 206795335 699584796 120273871 370974045 646380450 82142788 859942245 228749506 821302035 753480913 702269794 763031733 631285792 307450522 213967454 31959823 277738784 731849109 374428476 328709197 823426107 646393089 495756257 244530694 462090306 499815983 973170579 168689809 729307970 675179596 332475785 888919762 149456336 21284906 700686681 807023805 680571386 89893025 127658459 354980495 281684917 438415037 903159956 893373598 342077174 231619509 598947252 890759806 945904833 342476126 372321473 640251563 415676545 554262272 352581630 846935423 869993392 526807731 983112938 194534803 96861949 252553721 228646903 389419333 926306152 61837878 841552202 304182392 790524433 667044606 806136859 816852803 722003135 408592973 18243759 850707123 75337696 790725981 188178893 72544233 78909542 871100127 985074478 765391038 5394990 271483174 502389069 866304237 134004819 145683801 765754680 362801621 111044410 434773375 130342800 124464575 574427627 355795879 113752008 59127737 69149160 291369299 253951823 189183653 44004684 127411687 62838088 835948161 621798566 162529871 799728148 776826014 398760793 442098342 495408681 202852747 336889107 855784080 284060284 897305957 701918273 805171485 813659626 783620814 508101805 752837531 905062852 579381848 425296361 885310187 227934075 543188985 196681747 123928537 321159498 104554927 555367871 921726555 389666201 163909809 525073972 106304111 232410999 97999606 921890689 878865459 237215103 312757261 822990928 808282502 29923366 711567380 211059808 130306887 517872911 757815954 999596377 338534295 887772356 302432562 628341397 476383623 175251496 854759711 533610743 336782130 431977226 218105095 783320244 708861050 165926144 898900507 815699963 8646498 850141123 813931395 235073112 647787347 500571128 73547010 413929427 110514722 740314184 28487213 615078576 45263230 293353101 660782573 549171673 876537846 724745984 406657935 471268072 92826393 753598200 682647289 565118594 266129461 7924780 265085068 951760532 10826426 825519822 297019398 372777781 103907089 116480930 819328264 849132617 924757667 566426424 86333316 79675074 145594491 177257614 841331365 713533689 424634161 234518319 911501900 898594030 220078494 712224563 620067521 885881593 135688551 144435852 870573420 614565850 285145271 771606459 810702262 406946232 100833427 808661261 28774398 290567666 714452721 967800661 251258929 554286074 829332914 301589410 576550153 927516926 428802495 388411130 406259701 634723295 925865717 742148335 383167293 597451335 795501319 720516678 418152587 843843967 695452880 198900083 549761745 256996226 355075506 395175522 606390244 518180202 912011114 187822094 178886595 378891559 399675630 145901382 910571710 269723117 534832230 682210757 305256915 709758168 871617616 492410598 597286646 191138392 883756947 310696334 661347523 559853560 612682827 329725561 850146780 914421573 351680355 661810123 862401154 375841492 562853388 549414523 224543155 205632640 895592312 470026137 925855377 243950378 407399083 842353564 264654469 98900362 991424655 217038409 453662317 788823077 555937406 555802336 503379396 933005781 69288012 753407487 239973878 389305004 452805558 287257993 581688198 750608243 144328402 140027355 833665346 749828170 998459197 133609185 95667698 880196753 40533409 87054590 769985501 222443647 333642792 546202313 495780081 167970801 263024047 571216026 159156119 676629144 858893130 327840805 774589596 36968739 465304228 877091123 893794117 8684973 791965652 880721784 331732418 278318474 927322125 316162207 57063906 656977785 125190272 141458484 711871527 485198047 964246888 171497963 830470719 955135181 806276106 627174218 15199008 521842813 661946279 877318092 159319030 630703675 755099974 997635101 989177489 453738865 974011214 223399919 830598078 170382571 646660640 529972427 298911118 142374932 447195925 127418120 641029559 863474575 869447950 392533985 968926195 970723359 389450614 841955613 800516973 948059634 195207397 233181608 2026834 174085186 698362590 92879935 399516602 784491264 271176795 218391483 17981695 677300782 539320099 959413999 93795904 897555036 204193131 387685905 755294783 117571231 126749461 558622707 77177018 628281480 340561255 379265373 574334517 996306334 879408191 967227298 87226465 416427984 462003178 234056782 745806205 377719748 241405686 449099577 849468255 538425057 313073412 591217212 834941339 672078923 478363712 806578224 516106742 782166745 348587447 183861112 371103938 725349633 725503791 471075281 310437987 552363996 153366687 702782178 302732016 401539567 762881857 932479831 580321776 32509741 384698527 216676837 880212595 786384051 669208157 304164295 456409586 84616182 594396797 625855542 496737042 813415371 161191577 543269323 971757885 652009771 664432422 935175797 375183673 29597322 332241795 426772445 271865570 557834516 522728459 483064965 648544861 269993980 320905879 466956947 605515149 388873021 826955006 879784609 793916966 319927427 266610751 932646917 402069997 463866751 166137612 53599187 126314122 344844521 785973307 984044368 941908347 943889961 582571935 849874174 910561967 351449195 903667637 351705388 896509201 144217105 719860327 797519 92248123 24488348 695931560 613343715 555110297 390882309 598880066 313084648 534398898 646839951 820132777 695469555 618368460 302183775 512846707 538701533 414676101 286825612 953918922 861947447 907668947 449075772 231825617 308021381 446839960 284798563 120353994 222778792 793804388 312450218 404003000 9153386 194996496 512666721 343135624 457053863 420283931 614170226 951613100 419903610 414183052 909398172 27635909 152321839 88918633 953556282 163759343 951756951 590327103 392802665 27073537 509131106 126691931 304140157 638863062 323537848 598840026 487332512 127004021 959335489 467532201 599099507 228477359 55265091 583433853 575117571 443087248 650063078 710594821 703657656 902966407 502999579 854390189 986340624 150579873 107433022 631869264 245204251 124926939 420528018 847422927 478609112 791765238 132110280 837564303 817222812 632872250 334591567 644960979 38318993 349339209 521501904 996885701 808087227 845637299 663474671 656517186 91902496 386804024 720060802 544361652 381234330 325952949 652151153 851860344 761468281 836268491 59251699 694912586 663198860 988796736 234505249 299979329 53880057 440877938 131263538 604610241 645621725 793703215 257206201 929644857 375872255 55010970 736570485 198097460 793163471 442416697 218130229 596867383 713538108 444293550 899265929 560551618 561710578 489667706 614740457 685186018 242412306 90170211 790790420 297731993 819627504 155403186 746931230 487628945 439421430 755345905 523748827 242297032 153787341 975448130 518893818 33344187 36219475 704883728 824666170 763134710 260612479 490859383 739695994 155951628 494131795 193557489 756917808 385257419 745509873 909036676 164285895 55813417 643919193 970828356 72203337 568860185 230747178 628514694 304295237 704761123 275946097 663511785 984933737 104908179 683146850 542894753 256759557 397431757 968115534 972009412 76588989 748787877 169451670 405396220 449171940 81675293 991777878 866394225 118335750 100483118 18558310 854034740 224559597 718976455 300021406 90174795 288145936 211087078 796162043 950321423 404305663 364528939 436741438 456779102 869960953 561923348 766546138 86810583 779659426 7530159 399158504 456153344 223107821 485558393 895696514 874598710 621526958 981174021 827728625 752560000 848563568 205825205 735857856 297031639 613939593 295200731 5249498 953518294 112357552 289695155 551113284 522836545 528021306 615939936 186192958 268466343 691388514 989992919 555621486 841136390 970209769 296525727 711200696 636147313 282384173 183660606 829851823 869381924 964472057 104226255 116372317 811255167 12615894 430944373 622526541 342710119 696027084 615000152 95184174 394027423 770142552 477756182 616375234 269905543 113069342 61592290 25690398 195745867 213234802 664329554 651015005 364873835 610643555 682259005 635673819 509361181 465586482 824766559 521757293 882785569 521911969 785550292 566263772 301798465 744678327 277124105 185890507 105173696 58684764 531834585 663892168 78828041 645912117 915072281 204302151 592936294 879550790 830167967 462975659 844315395 823261290 264816978 86356360 93489280 810521554 323817734 744681468 975427802 437246086 946021619 992016407 685573195 933411771 219124657 264834445 757135996 951131939 60085263 377563805 453596081 650183381 942273565 308892610 603278222 968733695 957289116 441554766 458705469 543721913 454106182 381956369 654449055 246595937 156913688 361946949 489667976 262126357 229502450 523915722 744577533 578026583 564910151 766423544 956983826 918627550 873562699 29982116 844919166 104035235 862883702 950708010 45316304 68993931 172246560 571975814 551524979 263705772 111640831 770670154 988787999 946728219 994480994 423051952 367554036 305074790 393418124 183034490 632704235 31427451 51184232 464067987 880713182 571857795 973184591 602941998 265616145 147696148 67662969 166815219 273351532 852657167 867300727 338376047 883783404 235068240 685800191 942962688 902970146 469366477 359280547 319249641 381388712 472294692 42126540 182974115 423486266 482278313 723662847 937448231 958900405 951610958 823478906 963840405 258690727 354889985 215701222 785226531 473438114 127641530 396932777 948590395 371436155 384155618 808739198 972512837 834926923 777805090 930127486 81462943 838130745 670113075 118795138 73255897 256528577 583869800 947688936 651229494 805648405 333631135 525210684 249927960 231536778 115528277 187510210 869530707 716990206 635066129 767706011 49544306 782100043 340191881 19163172 897990576 732700595 155328506 995619802 711562678 828268405 523777389 864972489 636614423 829686685 351694637 315322061 510942191 863663442 918970532 999674104 510294900 754760633 502832197 820429598 502521662 155798948 161035294 472159350 710073812 254560056 24981647 597406469 195311408 353335076 292946148 639748339 688225184 268436204 188409298 995891801 383795945 104324309 779531482 671825463 133886163 331932886 691470719 32751929 999826249 819462253 691973087 422894385 194026623 729706641 372522178 985018788 628265349 626394081 577332561 112090464 81385007 542205648 985652115 578262656 522862678 127058488 201641064 842380370 615342323 418595477 489738488 38665220 413817497 38445715 124125663 386216807 946266532 875959351 417858526 362436644 533971133 236172078 442456228 552692871 378760544 442638507 525844685 920668309 534576980 166316913 776179479 566087321 953068393 568461094 790973448 553759667 849723504 394864617 325454740 750573655 481673407 138980460 145400425 109830492 731158499 671074196 300225814 424831488 836119116 807981398 783487467 298919637 601248744 99881571 561868960 201193590 320405505 316725964 558860209 160776912 381466436 260722252 318734407 329252212 351181299 680829238 347529392 731217978 451570207 773881311 48959207 668093412 839239600 89068302 22310138 895717035 671484804 187596856 652546931 339984484 675759194 176680037 168838127 447821825 547619932 727089317 409012514 961189985 999618739 109387722 416531631 903510904 107822818 967631496 838991395 763237012 968734473 71718101 491582547 946819064 686531988 837924176 584316542 196535447 595625658 68913832 938714785 535731463 66052711 785870008 792464039 266951281 261778443 743219099 488876585 237299896 962760265 65027475 761116457 833156062 849228873 588891302 675045769 36142493 523901398 108730160 253261060 758877438 935266144 526519863 798828854 233913057 114757656 615364966 214614110 791921141 567660065 917421980 591761659 126586637 119922202 395519648 391334815 587455116 129566675 432273612 977416039 202333910 803942485 497657006 513152493 780072619 968835128 810167619 148920373 688925412 70545732 459781396 663526639 438158763 997196773 880422849 421311895 175563766 959443216 388852453 148838544 307090567 812807698 81724278 887923359 83338321 713449009 372238530 93533421 953602973 686197603 781917484 6370701 514756748 581535127 796308575 457121626 705630055 481309400 219960813 43001577 354497130 858273452 788253625 637924659 444872703 761743784 685125919 906826600 841841082 565077783 543937783 696799194 150592212 858557174 531730418 520413950 908997655 639191501 3431591 295211984 176452568 322654962 676798106 833095297 747526288 613497960 923066801 492042248 923757578 935435768 110789041 860717939 386706068 799519067 102485711 589110371 561854112 904594406 762879304 935698677 611347019 947916345 104327218 122105764 831785414 870093497 398063905 444826419 772380242 599993114 425106840 337650265 429187071 329387118 299466672 163906485 214999957 512939287 261818874 514003168 565396437 629051729 278522708 379707564 891972705 970548770 619234593 796067225 155266296 600277077 839073048 884905109 491984123 292028474 65535317 843609635 578602672 69019812 420560232 815155352 173668049 528440760 136672895 994776226 668126740 554756092 316037493 640957747 260223905 227672074 515975313 73401718 116488422 84962080 143746381 985834751 180659003 947596956 987919027 831917410 474536826 609038059 655543675 787805032 785363290 163189915 708923864 367973327 80812491 217681913 880817971 411242079 168568003 750682221 103265849 941541015 727151137 430631876 389945537 990168782 410121870 437639991 386310789 527333734 245809823 476904184 360318696 744892024 392327529 731419123 255879799 546393119 529536326 60379420 635678825 179652432 566686886 227182095 863496062 646518678 687705146 295386696 712854302 465943944 274940968 865980391 625735109 666997685 785464739 236752167 610186059 536216126 932767679 164774480 887079607 407398237 596174692 857165012 726016579 947708527 954344967 735132908 67818579 835804687 401522968 342760509 22821405 169560192 958950772 490821932 947949928 310172085 47284062 573111985 658107597 839257657 832103313 792083405 363365910 49642758 503839414 852897386 48943160 89528564 320630011 649214186 844795945 362618677 73660893 63773409 492917599 635077027 707716615 496473275 109864211 295173280 275833870 460824705 75179867 907695829 859502180 115768720 793035575 125103559 652630392 654540647 269001808 53932244 301093144 807710313 219066876 581913840 849618208 144062512 474765118 759684274 39842849 144679198 609431949 581376134 753548830 383105675 492132606 436501040 61058524 225000727 552662146 450149703 255670294 754302079 724153169 426625503 963620824 11814775 623328623 147341405 57090629 416269373 31872474 222273358 921634020 805955088 941952423 454149135 362111446 165542717 25540233 951243162 482159614 540551036 671845508 317822868 674638409 935763823 96014996 867359782 704038312 480023038 95889522 929809836 93458944 100192771 638521184 775386118 65692743 883382440 421294665 712970388 965662878 255384420 961150057 491234952 815801492 157990481 323309783 660296310 409856430 21667349 723269263 521692856 641917050 384446267 145198811 229946032 667280321 344765499 934978769 146019556 324263562 593949184 868340263 804421054 982695626 758808929 912416889 608198544 552082533 753496949 236590985 99779746 498152267 864871887 813072705 149036543 833556486 758052856 469783205 258236265 191266915 963066518 611730980 631528337 815769429 550462622 586899189 970274368 11143643 981778666 832563025 648735481 622430538 380022866 805440785 948726962 560740456 639070723 909279435 635096356 336688702 962358978 459300874 103497405 475841908 137169428 990259798 522603144 290488141 925043482 727076085 405547863 404116191 318903228 132714699 174400648 590912773 701272098 881874306 450582780 163469163 744904740 212323456 73978159 623024927 932952952 348793376 782331645 491183211 43898128 37406928 303407715 617454503 290262169 485284054 747025485 286331886 305978288 814168314 192481656 981903273 818309679 610180821 980509072 724587358 785409504 848508842 157854966 803853822 76348427 135628761 162850249 372527735 246911393 569601451 376878442 454317503 649024708 571891108 946623321 640117508 21819462 983416035 887276635 218550899 717814432 40224616 591860123 424839924 283632775 539148521 381458152 19301784 618451415 187685869 307362766 446694668 487264983 79962794 458818062 450757358 964640906 430193917 480108006 865066333 170107973 911118500 406632019 320313013 821227696 937065817 825736468 615656688 784561376 685518193 809373206 446222941 395818513 507601875 6903989 843627242 860137316 276107843 849477404 345907058 240511528 351043916 733815264 530225772 520223215 174683514 814454693 977718774 500032234 272864755 560879988 157443482 593856283 354822272 163400166 379815955 614934793 900418075 608732546 620961749 525642027 12625712 421996211 273915721 735395811 408527654 138509824 322848993 329718236 189632558 813865594 640398197 365236147 187857847 575254982 182742859 612249128 852824188 570050465 16731542 686778860 377378010 385938523 477306598 544331801 513184410 322250725 914726902 894859113 131052507 413130860 339317354 448218976 969400904 594771741 152608373 103168263 445812151 770228637 665520431 827348116 580044782 778839598 307324021 244930573 104713032 713115332 206822856 864108827 163888304 103402310 750980121 644048060 236072172 261670696 989995410 773976685 837758711 402622841 883574982 13217747 957574234 675559274 196986276 110320289 672114701 627649629 999143069 235327189 26871723 693131436 310339235 921516383 284434962 528835652 31986121 12703375 70609852 208056229 715172006 299992050 19021024 696285580 677671567 896802824 472574746 705826039 718377393 723629242 787430944 751674354 108983356 519276098 613037095 758866367 164286568 323373070 900867244 556128670 808490092 592057230 583609495 117723729 801613645 218809830 456379096 879114007 112365536 401914709 196063519 375130908 235980184 484340285 159402228 739247608 452576761 571938189 380919793 729394500 564602500 746876315 945231635 868326752 894379612 488006382 186521683 689116027 347922111 783277615 305937779 909495958 505616452 655678581 928789981 479409081 3852898 568178165 251680543 344399768 596026934 944675884 141429820 541237513 813877883 77464288 928556456 692252624 317517521 658501806 661430548 854577513 305973981 968939565 512245117 279666893 132407242 680701111 615684865 318416143 350339389 127590169 182617930 235666718 875552450 604560300 171189831 39231713 582240536 816018162 841922410 938133923 985571895 459309030 449235909 992488879 133675277 591627502 935275787 8482983 640032773 307634003 176827428 886168939 381634530 737816705 577595982 133758438 907587549 458060658 292757581 684700535 562796938 234914380 781316486 778432138 824067065 235473532 214860972 591164992 6928419 517996344 716228661 60321456 490829094 30537308 862955878 955189406 184576947 645433555 507661997 693513196 735055388 194374763 984075538 732404982 140803088 708193418 521564169 129686756 354726469 148687939 223715770 107798805 160578110 331881301 43291530 857192558 726146773 755042051 35335987 675649792 3996892 775268253 606240714 847555506 611912882 154744983 213689921 546611368 724154691 171390081 538997021 637246391 253274722 366332945 924982799 466535870 698352148 383443093 164345169 813987514 69580098 156090635 922207461 573063660 651668908 892013892 65755451 552969878 918742208 356903981 477541960 554452487 284608274 408726217 850923376 852702142 397304947 656009875 575028162 976216581 464349362 343943568 707904472 899259757 44546424 643313671 628634766 799737163 941602221 897839927 976774604 360011683 861149056 233654636 85205924 160492436 389409036 139248233 620158046 510465367 977788644 522166012 100905676 173064403 735667466 787988673 313688496 770591497 889196150 392227368 694010129 893496796 504541679 180487340 378722283 835011365 844049057 283072644 145323686 389068340 61215796 104446905 854241586 954354096 82277963 745121588 806238337 479735293 85223201 858238144 785219693 488436791 219232108 541134903 13412508 123731145 368748477 712871105 165017467 147680157 691758129 986086641 829225770 546481581 99860862 470168966 680574124 881813319 154208022 541531444 914619501 155608054 932151088 458079991 860028556 534031838 251091404 268581556 189694404 433669514 557111678 553418154 307284669 430605999 77044289 480921086 711565190 743445660 612257373 432679769 617224947 704873943 567070863 98634055 247728365 780789473 13458253 214933524 342730334 61122085 87502148 624152694 145669873 724952434 178303949 657282 725580906 303255221 990252322 23606053 393467315 42987791 366304090 5560132 171849483 490566050 566867311 73074435 681772066 284786838 376464326 314257061 759173890 412219371 454971643 789962930 37660321 201017316 432851584 484927794 942475849 882126663 243478345 682460016 639931923 190804849 506150487 317299641 954172484 485909472 637946670 565260848 320556338 308566115 155186540 822074254 782843235 455134941 352810854 760129988 737869721 148162116 293392944 823513667 130852324 525397563 816005877 833382040 952340352 146990463 547728190 51865966 15170893 175359702 896436635 582649794 129440935 812895341 660653740 635740610 595208845 238613227 480393121 302243089 734759715 77530959 831427948 987186790 728631881 171484613 119801244 232513695 690459226 521870985 599738938 333403254 211284033 837522099 208225191 638061311 785396912 962105244 947426027 419571723 238831304 860889538 241546568 767524782 374006548 99679964 726417446 6400205 450588580 827636116 354837726 976982490 723987437 482616349 977646905 41512035 15625907 517981854 93291905 576679323 101293481 330717366 127393375 313834213 556190469 334424887 503790165 656770912 153270893 669014347 125502248 935085793 417094658 224606345 293432101 85911216 967111077 944156128 217597011 346197939 580064147 263020571 664327096 612118253 903547817 648830430 97230381 493340432 534121505 171650895 526135840 803355516 756173274 619837328 924507051 736006293 394489759 679899686 808445510 148241404 225312483 897828095 678487836 471790951 10828600 636304231 320778345 658504989 475876397 111731165 284850400 303464662 805499953 154013848 431171940 511227219 122174641 305639062 505283081 496146220 173863937 454689906 716785653 81128109 395962300 437244392 837618521 184225496 101749273 257355191 536978146 105711562 36576417 643734045 59083124 263837490 813907322 719143688 52848483 255713807 284641679 681044864 563463053 893157653 908920624 223505888 353724506 479111515 257783902 613328714 516579064 690428838 120228804 848937641 533078323 465929707 42093167 736676208 259315003 263995413 931070684 709637055 456485097 13859192 392127664 678215359 408538842 340839716 785577818 190656602 741266186 481933102 761371603 301225451 559668167 566812417 586265558 994761674 224624077 248687350 110201364 121204237 180991485 447987082 608852401 127735708 76527230 206894125 310228319 782007196 831251624 197739861 280399002 817003109 489042538 547387681 412815400 814246364 572204939 242299719 693341922 440353485 953885615 737814979 24716906 372956931 686016670 105386300 9859986 990821101 397654581 996635698 964262971 840943069 870330793 788296766 266659835 772558025 223646004 886056008 681711009 397173071 685875699 713344277 540763170 251479313 55283292 955520265 18424379 708763714 964152337 484285110 685774672 765401973 460302874 781626120 619386268 224840163 930176 925099832 578227582 266372253 224319888 333132214 428581843 803573608 504372826 620242136 238641316 410490107 583397112 136796384 868661595 359881368 457624754 752683738 576846971 364292868 451858537 828574724 389323558 290995336 761581134 208341628 951900835 395336107 908939204 451217815 575765116 381984661 268156467 255346249 436806861 213690010 862557682 852928817 213534889 167063138 925634898 718664260 606385670 462927252 844522468 551432350 811428151 25184761 875357212 381385578 721130584 875066422 681201285 653510116 905980759 819284152 10525208 670276630 272138889 752194412 180767962 370274216 242201910 399401289 927472741 9013512 954951351 785277044 65146398 180448210 26928122 642646495 67325665 165712936 183270169 343367541 833465770 137580296 562148049 664397440 129025050 187626847 742370047 147042684 646429997 13684440 234697171 272385298 607098680 601567329 969857721 803020218 578871007 217722834 484816475 877855948 32329102 638960028 353247196 176036568 96187440 642306697 674211751 341274921 316073150 681603819 204201598 351893206 219591193 946335992 392474628 321385739 947628675 196470179 971478707 895208959 504924697 303939670 855806496 40847462 727039743 196372023 921014481 338071077 447008832 325694977 698690295 60267415 74523402 95339159 287822607 597205662 981647072 465574969 852339604 996996891 733883163 393875430 943056103 620988193 543743507 810379902 796102081 3684015 935673278 277908810 606853826 90674307 464983554 401441566 128847253 913621840 262785746 792631914 251259360 157276742 589966655 486334923 234849247 176835117 654281194 940293152 924926291 283306743 458174374 329116015 641956951 811571655 506441778 844562103 90714593 765484280 899379696 794472531 963852416 435934484 934221226 694684521 213287264 280145097 501128462 607561874 440523296 594474077 834439161 90950761 552718125 683428577 152589996 220712797 341795082 697985494 949903224 196453411 793638890 959951239 122683965 954435694 908984862 323546393 639384252 724040780 126979369 977244410 374820744 235604341 174530933 237812554 888783522 603883426 230613105 45463270 744962833 507742625 147446793 643930115 963342399 118232540 177508598 427033109 484181128 438159476 67109980 796515813 75550435 291953393 432397394 434136646 641974986 499258849 59031463 81907484 504229503 647119259 517240365 60259557 348702181 601257226 246640992 257212085 221040880 200262799 625731891 763623839 947469233 141834699 948357749 23126270 513352285 370225615 807631013 788005804 598913178 195993743 736569435 749290420 397234596 524639377 828494954 465551557 92440080 21860138 304991371 257819030 475484999 771656523 864098436 846911578 529005101 351415987 812317942 133287159 598847498 967981627 638693941 840007707 523647019 578512038 406376936 161514678 69592303 528295936 262762874 933011654 20716487 148555540 97107702 171504255 450323951 787688016 403261615 4961025 871214542 928413006 946801406 656784736 337821985 555129848 238385116 705988532 145491852 623085177 55178605 986972485 282312562 20170727 845835541 768387921 906829019 938959454 686264231 814887598 209281715 558231031 35961970 569053083 836719651 808813743 322419692 93156254 369194128 165762558 802719465 801353023 577212557 907189840 788151197 173163452 887334622 580538720 185765072 215303914 807799899 263545290 326723818 71493035 648760700 773979228 896939789 736659573 224982115 731956912 107843785 716873742 738609621 661000665 247872285 924193376 871499725 385847460 969818649 156106797 939959515 399735031 87835219 569437624 290883137 915709921 258614246 67874502 434458404 684292719 73747199 112317294 643948911 379020559 316321255 289954526 261606315 729203728 311225313 265628498 550275217 905122069 918804949 195063743 49131461 14984307 654421771 248485040 466297035 563586057 857062670 361831924 850092040 744971804 480278683 368347487 646044340 665282405 74049791 503835427 480820167 786331548 961407773 785088279 899669207 643651672 579893450 524643415 566785814 309382077 271946312 459607580 812182959 247283488 42138067 245825986 895898082 775485445 826056802 564075711 348598377 365625843 381393711 768482437 980867459 464911767 229553337 778116606 45455509 547795855 466152925 373933178 146792882 687188838 391638831 737346926 244614884 504414324 277346632 973717809 868977330 707954992 55239969 149190679 196393817 301079780 298932760 854367137 403257337 860106679 219856386 250885777 121252192 746889395 318729940 982605175 599694087 831070738 797430625 107151990 534008583 466894805 970748817 903137950 965817865 419896187 360894762 882134978 381144964 595678008 834662555 610275830 630299874 901554807 875946170 257643378 247940808 961622615 465613568 208632699 877254911 962526117 463421500 521694191 193273202 101218859 95182251 175276815 898718035 933724093 39832695 880148352 124006088 724958975 455042216 633144980 180955944 211340018 9929404 554041363 894122 900429220 83633899 755307352 506023710 701142335 206950333 279220324 494992681 629464050 970093200 200787986 742026649 816361076 755629856 41937202 932814616 765768368 962791673 838756987 550175281 474752960 655882037 787906132 282267865 956110125 107724879 912882487 314606322 333643037 449994183 319300195 329263479 780348736 461522345 204848111 492247748 972688249 210720568 557626833 223034299 70820084 613968416 85874507 556857165 978685390 440470373 227747600 17537563 283578299 960906409 338045216 274096916 992391870 498642468 721292838 941290750 993860832 951941049 826582657 41400144 690621176 836881836 312954671 211980758 713649080 952376495 486162063 751051770 502510890 454333632 512964210 414560630 515879824 551801998 216809815 731473008 729411654 748704346 269782155 824282633 250091713 698673675 62660860 899390603 686177358 762171756 560994732 859195471 357072015 652177580 437747884 526200000 772099978 854597842 958803345 997229135 523398684 986104118 908733130 9275384 73256545 968967603 355846362 774113331 507322691 646592430 381989118 351551480 402799029 424665171 942731031 870882847 342393240 626364472 457814280 93762219 523299240 651617175 602937336 561172916 235599051 34819582 253951012 384500913 919148246 730999790 787530185 89409100 604095769 401739845 471927737 943772093 616249651 8059002 191117602 290183388 850188803 935337445 806271557 594065150 855679340 521502320 956243844 751748364 298919263 277071290 768649458 348984661 34375344 21667609 820168366 448410253 790130586 119850977 884766976 762252881 212528245 378925806 23553204 371034393 53492266 239658575 759146700 289322167 486074850 624870283 135844896 705882761 33120086 438736414 294227087 886573155 493126534 4298418 737133591 258310821 76316653 347928242 611597677 360233061 217303029 365647252 35616286 49249850 575548874 584996513 741522286 469884788 531267925 865341143 444591139 632034404 931855146 367204869 348362486 107173239 243965897 953976274 74320642 252453696 963621606 474124023 216621745 605644573 468005366 725621967 399096546 74673357 929895108 761943600 143647349 822865407 539879378 714294504 170048627 248792618 330030659 703912412 463481924 854103685 863798391 388801253 179967542 474811215 334237747 896074834 172793137 964016369 167681586 480899911 819283335 156441012 977212077 801968994 753469356 812745374 358568081 289964787 303087214 782101276 25888872 213161860 972609483 882969947 843014922 639531601 507737994 164352394 103589019 970699236 9996573 196039604 809630393 945017732 159699587 655208613 455382176 609561929 497424364 602698444 820344145 555908989 158015762 636322299 323427225 712412179 777022451 687711825 308322911 657191338 484520570 681518029 674755141 24572355 276003803 409173945 653169607 801707249 13204147 511949567 305143685 232067229 129058687 832692397 74662727 976840094 44098530 456281899 278425114 845014457 766943435 89365744 362421552 488581942 416231226 212438552 969332641 412927473 975144188 715653278 949069092 390423714 420300136 550939304 15046545 961264789 751927231 840826997 292187933 167831116 839803555 597534431 572179757 831791707 9178751 670642518 110345909 136537884 540195047 376295753 512982944 323407776 544473781 141836943 787783674 811096888 257247374 43746592 102009920 887769334 230825600 906760501 39551411 891139649 351639990 341595198 488920074 844834450 291484909 588746718 719120641 173865500 68643635 734131574 208851552 116729519 118714419 813116913 838224595 146918425 835719906 623303116 157468584 951677671 507928590 918062111 63645461 745419969 382601117 95441349 477152821 615556018 421151876 853351409 828053615 895945306 419775339 63630811 168991449 183453376 492194437 512935758 108784457 211462790 817869926 916910454 326387947 353207719 956308907 593926433 785661203 273634970 231206629 857061143 934738715 260957563 117199518 560979907 927322583 734914859 666622934 407311421 666963496 511767871 689541429 853354823 770423393 24095675 258306338 585633839 191323725 312960083 875778093 102615065 497813627 600136930 36831519 937234416 553474080 339319845 584080466 628782334 35568534 944304066 826887755 431802253 865340169 362505607 801820692 914467239 278929878 803005277 543061193 997519522 950887011 627430508 725825431 766132599 532214723 292191848 735268526 153043543 428425463 674305517 792493858 284458150 618477514 567857259 27776637 823624840 945155147 281492304 496198321 129939795 883428687 342446422 181727212 952855340 248361733 875494757 564037992 139799814 794473279 185622149 249824224 171516514 14027379 762299318 964895265 513615141 134256121 142764404 314028774 806308332 468048801 414128202 142031380 305009933 136771192 358250857 620943490 672672311 467662290 853477814 781949963 777289367 89685790 271884787 535963681 140482864 798820649 475714563 154330274 744646990 584042010 334298521 537380002 318872012 363648698 327223173 661973229 696895122 430039888 224187878 696198404 176198894 49296004 94956951 203978387 98779196 695861651 619558675 245885908 569650050 110163943 632313181 138550603 867796022 754929186 586293001 968540784 663955093 754480328 58942684 316522427 888694811 260548736 883809465 176864615 947717351 528253942 896531575 672646800 56895305 475024106 287449636 811077503 657535038 764799038 256417921 395399546 825044870 68447896 290646552 998860336 820031411 977900379 13005391 176206706 858155704 289675164 773165481 948443222 856211261 700565937 678384140 130592923 998897996 555195542 360223347 247012533 97549467 250040325 905316090 973816742 598962299 923767996 870733859 830941360 124809748 523468216 288765847 690382522 521320417 757135620 234286966 465121464 111801551 817003045 963514610 208850105 388645654 573846436 871107986 238666290 891976825 287563941 423859650 58284506 187250684 597124512 928213965 619049726 413505899 737446712 572322510 859839521 445920728 179930599 681717297 740248133 263538925 42827043 643447431 645398483 829668047 436402348 454695211 737459493 49870816 762959387 907202287 858761023 577673513 577251867 1636090 13484485 906925221 184880001 611410097 866929264 306179856 276851279 974502526 540765384 777803558 782648371 190202682 195932392 238604130 587874443 776258175 502732603 20626361 212546565 291174619 599056272 367743215 240313927 750879229 351987556 646710847 148545779 886746458 295927148 983489134 167087947 294615342 909283353 799949357 373566445 559287181 535635166 820093629 621266519 33483566 783750877 549518984 487220453 880223116 314566719 238821839 110939055 901865131 708216507 471716374 659051442 426512714 674048937 704217820 173967303 93638311 860737540 406635369 178708293 224859098 515024825 594894687 259527500 484804449 173769639 50903593 35738656 547921301 697573490 274773864 593205441 767304090 145310840 407917703 552763991 897755336 171931143 323931474 884475452 713459755 296277998 317340062 242961240 354988057 571641306 303210649 481173709 208744342 500276616 362819776 105392672 43509797 548406543 345796481 97620277 536117986 202801412 846075288 627967185 875693516 526446219 446957643 745245936 522590256 903587319 509972659 436010998 643458737 798843505 48985043 18850418 306298350 853592139 383822014 64144618 721284476 616803997 242432829 378571097 859971508 504179522 49376267 717508176 840541977 406823124 285021199 798784500 102194106 381252657 731393369 8665983 911791336 430987784 846579333 933663084 586457931 688248786 154514193 378619247 974707377 575222755 217041741 922009721 447519166 885185256 705745537 976956070 776270040 851939848 549538033 83590322 19534090 270443237 983208942 475147726 386901647 281315998 439804449 692385926 28378217 303142146 283417686 420159409 844208962 555120806 626923447 995638148 103887964 453432953 453035590 327499052 24994824 691453648 386732036 556006305 178893979 927768614 606813081 876795506 395480369 397934061 234392959 715011145 47042599 305285512 210498689 627713313 180030518 832432665 567223677 630959564 234746411 564332286 749679514 14533727 868770228 357339530 893776603 532031151 42613780 64599977 889434470 370576034 850313381 277825339 410031354 933287149 760488362 978100771 724215346 935110127 395419272 643423819 845677609 619472120 313061782 366603473 967011603 986702845 811913310 162808010 15045520 252222976 790347081 561158013 491396474 291835574 544741334 873990087 88796450 807698838 420851778 434240148 306306470 355167939 855279863 468131554 119905550 174419450 449512058 715170211 803310437 76563308 272524210 113531489 80646124 281345140 124799287 103410040 884773680 889561686 191229997 407730664 8857826 377338205 810417380 754839115 782560152 883931050 495574228 221708769 820542112 648241801 353629899 988366352 727634564 692347004 722207824 659276864 624658854 823123028 894450484 248932689 741628441 335921604 316956208 393078214 274393616 133329821 542548763 996026954 739698415 453140457 856123815 651841446 526966910 711717994 85877751 100201028 220343301 487823628 628262699 541361241 352297891 555771946 442240831 579058497 162774731 980507078 700278332 62184050 698604225 358992058 296605153 719016601 716076641 590807978 730940170 25464180 512954052 851500171 891182064 544175612 849603873 851624054 580632768 230234689 767310513 219653325 691301913 359071679 297595483 559385136 80708074 59036837 342422878 544873354 117848386 130004281 507920390 390250779 404742457 720473282 427394005 802825355 178373006 656487305 384831916 718120600 168635532 975228900 390042868 140272605 62565374 488453824 852041484 481137913 479899921 440679890 286658458 709346489 408279375 315689305 479262417 924193290 584979982 936280896 201724312 864864644 25270645 473880286 572661593 294668953 455048882 887145079 961853461 381072185 420382701 731863047 967025858 411613143 960644051 125159884 922956275 650950111 289106007 744828332 308002395 859577060 231140990 296129310 711793198 168815563 639281634 682977409 580205615 995435861 819226488 649933153 949479733 805077384 611365561 923256151 847972530 884484419 127009178 961286071 759430917 679122796 323278005 621786982 45959530 376033702 59322156 842456172 544939631 397974032 846652855 165993664 312792726 68195605 870472336 939444591 792311728 863014359 818054548 6068023 998511273 970483041 439884308 466141149 443933385 51633244 887598389 456673591 944846337 280458983 682753844 659114235 803569343 174046065 72405105 154530527 654845687 545448838 43554165 146356119 601472673 916743125 917591105 907902030 180620532 984177312 865620288 70375528 337301082 883324640 738251704 815299634 611303917 299982526 666767398 268579286 560462844 664777222 597646884 46137906 414454152 545128627 34158393 215251431 935375493 978695504 212815243 811880739 940326006 472487303 183037309 29838760 537346910 835842524 587492667 26318897 47525822 143965312 721008682 806874340 190042777 662787374 213574952 351827753 691999385 56678577 697417700 625463375 301217257 867063739 195538105 918935767 525334867 311718717 661865812 632516343 828012642 720021626 2713061 372258900 105770019 646468987 592961713 755434397 694022764 887784414 133166637 453023850 535253840 43552958 243843554 382853985 789567731 946490224 739351237 713297108 87471714 653639053 678954358 430148060 774147627 521523198 439422574 516629195 114994562 769177591 401313665 285666991 290728032 876683295 722022548 81468034 671029127 867700085 257476973 791674041 16987920 884989044 442892148 215744972 675345993 955532671 356504506 772831961 376001720 495185713 789968472 919054172 862928889 271430746 835823297 471672536 999318457 864880356 598106202 181395565 966393413 307195170 735535383 442834285 985178099 55337900 639734791 947795403 755095645 970756878 841517444 165396115 336099197 229034971 17224252 543756739 651953311 99792441 837202658 987027492 89919265 122531409 877995653 176040021 104452173 32129820 284582268 230627599 408911597 590082930 287277467 478577326 373057642 190640688 496790766 733503434 266495521 828594281 598396841 759083568 182187395 855157787 371268300 371631348 171964625 271315081 608354225 739948963 703652758 152752183 548800161 11111115 539999961 859769637 791122252 387462909 810405993 910845799 780307216 792596950 281133264 243614312 816572738 243945281 42983679 156760940 545698271 108720090 159260325 627786689 953690805 630767893 812485227 299848294 38590475 431746850 615468313 669866608 169854763 650033925 308842964 821961807 907986182 192722431 472401727 789290133 585489722 988089781 688580659 407235561 996333926 935128545 665277452 501773685 793278443 644194448 744891613 195704814 808148895 347444503 814287399 275033841 304662734 63657408 628113255 741292374 348558347 588953380 714758429 444186872 631638975 290316467 310746855 206255700 864644469 288565455 205932081 708688747 846068772 711501936 206335835 248019677 648636088 448821279 595810928 244225773 32604492 749913451 311489493 315442859 932726471 821514910 572257532 775509465 519805830 85398536 865412588 285723498 860333915 526571656 506929059 771972870 815019420 431557277 542655967 144535716 976361558 858351212 694530819 736222443 197734661 972151826 822844832 564032322 90460877 616331735 997648162 860466291 20348985 443074683 620451701 136242104 376392815 75800481 581102021 556332519 521858493 172944973 966535062 45488044 777983592 663458376 43544106 809851895 269704938 738861312 890911083 836755943 28189142 587628505 168520493 789678284 373147403 177994540 278519669 481789874 102371757 254740296 364064089 128764672 151746998 967117961 871060710 948034636 114066839 848086763 88105042 32152515 355473916 92216143 189285472 181413465 66794943 644851110 17106153 378034174 802743545 99049163 176054127 433497340 389723024 555818565 24308770 479005393 814656834 205892690 317843962 860089432 690364019 477032323 347394395 766779535 957017198 535045000 485967070 636925544 804600589 41749552 55882646 93631330 643252036 67535720 505829384 761957436 877877692 811077283 827547711 695288417 828108830 75025058 466256160 668381849 192250015 20983426 841598230 23387342 817907846 608639860 952931408 474298580 813740852 997958033 308157818 36502548 512123093 512345792 879290655 415350006 282848118 914011867 500403852 545416209 248168306 233561956 979088955 162803056 930252580 274257643 176062231 229794152 672801246 572281222 704731567 113027827 675098988 326221597 864754564 330745829 366443615 370434495 270309809 307277205 716750523 914603667 888028472 887449299 644599672 851151560 284658936 561712326 330529792 526295621 668457006 891056580 33068862 3185306 158044143 355368569 94717859 523507243 822214457 102479022 329169191 100396276 788069009 676384610 185294851 573874076 579024295 381691255 622986687 728161649 559777198 561453963 543504617 260752925 779548874 884818563 53938893 891078185 854092818 266056516 329144581 438138726 901243827 134950061 569447830 330124451 335555648 802327865 752727243 405127498 969883042 370465197 187949741 42565202 225958138 937858531 641584574 230540888 156673516 772068478 735010239 895400281 932496997 387572716 216230284 35121390 775048445 197992541 801898335 322721574 200513430 814458092 567726574 508182966 918122668 815549972 798410598 879001363 998937948 481513121 460267428 165346516 626239924 364056377 473786649 238601774 688305206 694753532 697205247 92634791 215810433 656298023 441505798 916675452 564475442 510231135 880052765 432226728 488871835 554256613 151187551 253077667 7270216 905995938 236504259 94292156 368762192 896934281 338789330 73231703 763565291 400976306 825507263 793731221 605436070 566321126 279859602 160230001 639271971 294254191 154689824 338399124 21716461 151851872 393683215 127349843 80500277 443047158 830258705 529871245 271921214 397750200 816006664 293000541 484628930 236365136 555810694 151077001 179085737 377177935 66420288 14893757 488440679 119244960 551986697 701432444 735514268 639946957 794254415 930549951 507557127 89832529 438240262 476351727 20895797 825107736 770761059 527013967 650045109 367803046 550515753 565308502 65766842 933848880 637014085 517718694 208895553 488360572 26892322 118213605 659692328 316097106 525128324 126603535 838031230 323894763 282999792 501777393 21951170 902069487 239466838 978199458 457160436 508165773 502559780 208911927 935520227 925884108 571917677 264663676 489400330 42190649 170828782 162711580 440386971 765520967 146359040 960788808 273050566 365669576 98380663 31667388 959325838 53448843 724263510 974201786 376285404 331099139 974278599 744533438 842833918 225747756 109239916 20376811 133706431 117732128 752080577 533440965 204851047 770450287 916743818 571568200 129064239 646947312 460303349 270219478 258775775 896357496 113394603 235723312 537628021 74774034 610378167 459118048 78252263 727140435 25956486 248350893 534754620 254603773 514440944 822248015 638371446 303358223 311843194 357830010 369215157 260925469 458038511 136551805 355848554 722410811 144825048 511149544 863392583 360450421 657059002 435214988 420963021 344770201 851133664 287328475 239350768 169191912 34899954 902089709 77078926 459080450 163384015 806972558 154491028 606662747 381267752 234040887 246394639 768103422 583790853 64117659 501522487 742656833 384590487 505205190 170606966 5374996 165014510 17742999 279665729 925903898 112776905 161472196 379424372 76815629 788329283 50738753 915301190 444758567 27891047 983363973 945250509 432364967 119858239 238578197 210347796 967082081 54805207 154613899 439240200 562642517 561157987 577426447 971695533 101234660 816142009 221034068 171152158 587310658 953722268 40876706 544905717 582147299 841120142 215854313 580078336 237822685 203124278 229463901 445735607 491526040 435715531 683082654 176872903 120417165 164703809 132430027 404071011 703592698 838002654 492240949 497135955 358365255 43876688 374358392 117974962 638611270 231672786 510347712 969689383 387912570 10558468 15245059 343010639 881202255 140767684 158926153 399737961 921583442 355229184 571939010 830952258 307502580 601456734 457708474 68232017 398690344 84065550 4163514 458989360 245620562 278847949 580268093 52696394 625100875 259591128 202675548 777072384 12211938 368859421 653538338 120281437 388020826 344856298 625189268 670556799 230219648 702282979 957926539 87371097 163115448 401981690 161075271 150718509 704131967 758324499 556211050 460994601 497224973 266595568 809835648 231615007 404562996 968952033 148547072 657925901 655737921 368246715 293362946 333624683 810144798 953077865 730527650 207405791 496108521 586916027 918694039 399338246 846215827 94741704 394490329 353213652 440834370 599194865 359391173 995514258 420622074 649929476 763404834 140005271 628126066 631314484 415193887 797886374 78669703 629820612 77797079 71126655 859954024 397603927 69053606 236141818 322205238 183773132 823222535 606698638 193264720 232782396 694268987 443510463 880126121 242687818 363068238 975724124 169852518 420639882 265753595 459024104 802248495 15715480 538017335 468588238 786586197 733071402 27571597 550142118 119944325 579475936 131010627 730913976 580553136 770887540 495297179 777668085 716040751 539653224 750143281 57298755 608530961 177204869 108534602 499230667 953535640 758155919 749659746 913014640 166480636 699777134 316027208 163004476 540151660 863773758 588731097 74338920 910722368 523202309 185459099 9285371 807867415 994758535 17971780 584725388 876467263 275940472 745815868 106545178 176382135 752338519 447283580 894875018 407218015 523102279 335656872 711580324 241225163 429201189 544551962 53888018 217503382 158005708 18198421 179458403 753559523 961944717 753919580 988003557 748216214 114643806 76414055 7356773 851747536 486600927 369869736 826998962 621007292 534450746 571913182 823701338 688864108 328063798 430497236 394886490 133768724 923656382 496697401 478457464 688202293 840273697 294912915 262238242 571460419 822097634 189081897 170003754 980712193 893135438 923601982 446445631 674437231 712122518 532465976 203039950 736401797 325997154 665110179 629677225 337686731 398015296 907883954 534004695 534963744 67207151 791956848 341336102 777794598 490653679 53440888 408356525 537961970 116305246 154808621 441511809 975842047 885980241 237261693 476476998 142518413 451321224 320571850 692237471 170822307 152567545 724489688 765270785 531846393 779697051 870139121 209172003 978178560 254561077 76774422 186468283 221747784 293119562 862757578 236940772 718437707 437051234 114881381 618394408 364246724 191151473 458774309 292138065 750095438 82798270 671137987 504791788 427442289 447363307 230704740 429220587 161624379 116949773 727834034 124198123 917413583 672444829 310383406 949821028 917832890 185680526 946771314 496526477 103918842 307302411 481732934 79572981 414950 680413588 105097928 834973691 9631637 832650862 264508686 574211639 717275500 362927465 849353400 838090943 285558716 161253733 942448262 769252291 284144443 434910844 844158369 219343490 491979518 770499771 871611405 146760849 691208172 368538400 270934588 974042516 360841441 770727155 857234224 646544535 498777912 238771821 596664478 954875449 407556097 593654103 418862095 333268051 436306608 417641204 935535329 894053346 821261984 468945294 114930914 573271520 535204530 518237775 196893330 601641425 865289527 764687856 607193983 672259345 236390183 547615403 150160168 784215508 192442776 873879056 322824854 152563341 280992271 452772503 78961064 774365611 829938779 3066340 822035309 823762212 771827245 854293166 457161978 718747838 221332087 234643030 130228595 572181509 160416519 700372140 248316204 214872318 742563297 826419377 321359779 797516310 168348471 575789084 326905247 578548071 401599819 47614186 236001806 607411032 486283294 257529435 726492406 809783793 498101354 768456846 586526323 464011629 538220407 671062649 359812221 913597646 502223798 919940926 806039993 178579909 362924493 957297600 306447976 113791370 237453349 619484382 648008714 827602158 349826233 48883108 264665631 644687365 344613890 737876295 257321581 745597261 253876394 153542732 557615209 2466101 352775037 268453720 606545815 822437209 899315703 806987889 791977915 370064416 902239471 97368279 608294948 527584879 176813444 766339705 268938735 259948285 762681730 341502167 31152162 235365942 852235698 228556551 705058233 684762938 913649300 824867217 65693992 686265838 522724062 343308921 563128113 809114523 178265205 972275978 209065046 748188235 164729880 200415646 576381808 446585722 20630127 391483199 95061807 282094395 716923645 165042318 489426564 626026012 386363045 424350105 650021454 31712978 880098200 822001356 170036199 842829591 830337391 317472725 39487459 111486375 5401232 364430521 266077478 39394666 869331672 14217359 847756907 8822471 791039943 766294154 485956495 375447396 355265556 172505391 597046362 250218011 196563688 61904912 48335446 828191673 326799315 95588486 991995319 42256330 116303067 657045648 493577963 641848453 644737796 896736251 633869182 268595970 799575685 579808150 223197279 567981631 227090784 731062434 601447169 611727131 165731100 315031752 109077562 312154443 751100151 85603001 992435621 827217442 108513204 263594059 905397732 353222015 435546354 458860089 741465128 433269887 31841936 114450013 218231398 274098399 474453110 197881790 789400513 876313410 928531978 554688351 669077395 252969923 530303068 96162209 381743072 619257110 902570597 545818634 9010083 610243088 575946889 849174001 209403545 54713452 853439519 89994523 797661393 570829036 831708069 51649177 836181901 787956462 995610235 482870756 380447213 777082772 346219966 270530776 982180139 151978420 332521594 227674286 858132630 108782308 409250228 193829353 145301642 373625808 419045513 64388860 189273555 932485399 481621607 907963818 201137496 509721410 174276655 930350181 674434820 109568600 764538993 442431894 387341548 121921213 882088572 226224773 229612909 964688562 923559230 543402509 616758518 654395164 868496151 959874977 596687452 677351133 692382266 126173837 143612517 212114984 553777551 484091210 603581353 989692842 86598141 947507308 395624488 179423133 932242506 211612978 150227159 621359248 660795196 288816207 487250496 401049825 789845164 69800678 35856770 298627168 376135334 716751757 75281379 867837544 192870861 156164723 214839680 993294328 866783142 318874511 595900149 208661739 159515674 387322186 799986805 860631695 27181588 161618099 920701334 661648225 790520386 787026015 269015531 316448156 927992997 873657822 791138944 540900332 398659336 501140255 871446984 351123981 749651474 81790618 935176344 840824816 261738898 974394814 131158645 717103673 886872224 189556508 698382190 177021104 222089262 449553928 344456154 412185842 47707655 458311982 766020479 594429225 185770168 450290662 963818211 647704634 668326334 729988064 557292610 369694887 574540036 748894022 318354141 240519906 397636995 932345200 6824235 620051502 982976320 752818152 929503419 536921570 852106085 32071268 72813575 808337813 29029623 667271711 714333219 733361517 282427636 966784204 167832261 787246077 446558586 87919741 710047049 194579822 203971942 85647485 48753846 355158710 704342665 455073576 691765778 194316846 935455259 117915197 79438396 696175570 546305701 670650015 617898474 220022184 730610514 208819349 146999985 995730471 832153921 415918055 537710571 766358311 824501824 330389925 763578727 928331351 857575469 587552597 75319333 522295316 292449508 739120361 744534965 529994604 740854699 606464371 338360845 509321086 124586623 634797314 286097818 801891557 4596892 186001883 708288745 749940145 217936311 662746708 842597513 555895758 81411888 980133611 794453393 850840246 191619546 222371800 379099432 182632416 412683119 353251304 745222641 952622243 547732590 630433050 783290008 510771799 941347208 653336924 49520121 303602952 853957956 109879980 963626430 335042852 611741882 381689672 305828337 137911600 399525275 373034397 409761438 211204627 541984288 104154504 670796732 286443781 210366282 171377777 403702518 925627259 246494685 15784161 946916178 934331938 930064481 412339410 182696454 408471240 280470572 357475110 801376591 874347969 377944346 484569200 478519015 567602543 901984504 389996292 291290475 276153886 279024235 928523979 403818283 838373030 589878729 422790952 268184368 17484844 727848289 692414439 641931174 975029052 868115661 438944573 923078232 966881228 467817632 12731886 326199972 806710277 547626698 403508230 563211151 934784272 318036974 56380586 11158792 219875416 244473774 562808648 739368715 236003932 779914381 826373983 901178441 933374423 860600475 460755777 931524136 785795554 970485546 843008380 3843644 572115183 915115088 502373626 386945409 604428286 636236120 250334348 894286980 310750898 368708706 791104818 575596256 208957315 170144128 387569946 994253252 650704729 717724336 213274559 473353085 776807338 929656088 167248408 410422012 299508214 761733461 885027776 481652193 652602675 566481455 87133320 73451637 804954632 432542518 668365181 813632359 649812327 565131457 283161070 37551020 914135191 767509856 411510088 855035802 85188059 987737651 412363587 326985782 615484455 993131986 401443264 485574249 980224830 505596470 295162169 22356546 764603617 39364680 426569425 981579575 222531559 581289353 397812159 495519971 468344004 761678389 306677594 788822767 236963493 412642675 640574318 120664229 563322095 946970668 894379209 116861222 978633279 431689540 96907476 182820647 855577211 361892748 798208710 161255175 832621537 118535731 271591463 555672821 350092474 355019244 730142246 445278362 58684944 225083685 709902396 946537022 631908309 747836169 402067107 473201497 110581887 281397880 578431374 203387552 596016453 688804602 455771154 650231359 186403052 980752576 761950814 256970651 583013307 83100014 451325608 669430157 966160595 162613066 143247592 144268167 699779586 231051595 364230610 653597059 659825608 417709915 791644139 780579221 507971712 238117188 784102057 972103645 326078213 151760126 321118961 886815141 535041317 762195548 371706810 270574888 176762360 233595770 171146028 601066380 668519581 49069219 864723773 108785932 778462382 986267349 946355411 219376522 974830761 555882844 262688850 419273750 343633680 642192424 793352719 333181508 851213134 378328688 157889181 881196818 408007602 400519609 235829341 473206638 98224781 854858284 758233249 652291204 345841672 624175743 667949706 588219476 936676036 293113489 2544155 413704250 326202120 359429319 61833476 664775691 22673134 780519357 735206276 575346882 124961200 636939768 738493358 358609187 704002077 697895237 913948383 261347977 48729568 326755468 901817083 21679424 403170344 602530325 404628864 710335573 289122821 14036631 405162202 803370213 455866512 483551154 372758593 561783282 465461409 154575178 621060292 753792311 184460987 308528257 536375857 90179358 292385127 332867610 388122689 339911362 438854822 638838492 396731516 48003534 105569490 382631147 128377301 353208433 377043365 803747140 20478733 587129135 877713386 336193776 739290315 32601086 969372859 695891473 474960779 860201757 437328297 655673839 386259387 853039129 925550644 599581074 516975099 432036857 626476921 801808448 287457466 683132209 11176001 378146391 269458543 837539865 737882299 442728645 52500122 445764324 624815383 482944513 807084922 139252298 685838961 872953441 172579203 793411084 915543500 411652452 866157952 151046881 167279625 659031720 966681823 957370754 705548113 593343930 153196254 222034208 32605332 798413329 421952242 514042613 133656250 410699239 631281458 89839732 610788139 225624854 159167775 786651877 484839745 728308791 487076449 431106324 280110674 209531845 122460090 340967783 330279944 17487090 294489647 154694484 134099551 677703066 465413947 536074240 597389627 137048933 387090436 3098252 11109874 448023915 293913258 101249201 638236765 163883872 24569131 637789073 49421009 237116405 760456709 808114202 832664664 107306534 117955480 849037059 712048525 408433534 638135569 360098166 54028224 428812583 243413850 304329249 957534518 290622076 57215685 396758207 759540750 43386067 43155863 997214553 513329119 978810829 647176587 35348758 196032854 269635903 358402479 538219025 864780091 882293260 804981568 731598402 42085281 905582863 560633647 837363226 854579210 797885049 665230365 878489331 433099157 247246096 319547061 510039718 25522102 282212038 231000355 741438685 284769774 852265762 302661171 61772456 978024010 850526056 365466157 779691672 474262604 23575274 156424702 356852311 618587269 784723726 54110146 970265733 14824721 181164674 934451810 610255254 522939587 664857091 114650007 160257561 859869217 941051627 985468137 639529666 625987254 641321673 207678173 195261219 155834738 316865834 961996213 12125009 366992784 91493077 747516082 57825947 792966296 780427616 132979376 266856961 299444418 414519607 526660595 845796573 2242972 457425015 812675812 271706552 549517205 142027723 236230341 261139944 381940838 427915497 584588925 603760070 957995866 242925575 215256732 361952920 787662977 829385124 274026777 356612509 559578520 84237643 153093273 309099153 329120096 662284947 27333278 794270583 156927607 146832369 325585199 152674510 850544541 890165650 750766723 761410957 646018494 482248391 731480408 441556003 151589022 813548588 230347871 833241548 404315444 905592001 604348863 1211886 41369800 70680771 525889546 510421047 195945064 640302990 462445874 598110971 421172428 996319708 371777267 681114547 311347420 523814937 782399520 969623358 274585322 885113618 149874405 965186054 106255335 494570661 10199036 800486715 30246573 991932501 656833386 322164275 980348790 986207718 912322822 592542736 216202210 760065910 94417961 425218653 478156689 850183325 745227173 702112530 967318479 591415429 109198221 647681781 484318351 711004875 130936119 124407916 520787058 457996920 734081026 867005075 598196484 330792162 480391885 29618243 442344500 673573680 653993719 542356704 631923733 356661245 714136724 922130523 169151850 667974227 245352078 999503932 823537957 718208177 814855794 717333379 119291440 577087500 36186059 615534562 171282291 885683393 808504517 930114331 70472413 641973889 581798520 576291486 342247333 374319150 807839467 415334733 302738443 907676423 785686145 233602664 741176074 838126682 958234436 236722753 782662647 472847908 889695257 545327763 286688468 363880231 991386945 455082514 643389764 310702388 899141280 307116572 497710084 678538400 210211423 622943534 315712398 518013493 161699607 771972582 96391180 584207919 505609157 7616237 942021380 52497074 876017366 732509505 871852889 294607597 694559984 691961119 156147667 897806011 357161497 920158827 367752458 612431099 441508876 202388398 312452540 823535007 163269832 878931643 54540186 977922368 52181080 774966840 303830264 177340515 266027690 559617583 460944744 689899733 147598833 690773212 107800697 806692921 279140805 400860332 390104316 576809424 785277787 790078853 76728261 567909831 987679994 464537568 238000196 905950911 574551120 954170505 587431222 962732923 665516935 224260697 512308961 807745264 451844550 952073620 854198147 882624195 957305786 525574922 80410890 513489501 490265826 627944429 264197364 747619337 245247592 375853746 599154867 154651170 481492629 231797714 693615668 393175462 776486618 174353415 518897152 68056269 126524206 303475093 441060583 134202319 772386274 414025519 937842194 645999844 748895935 633242990 813254888 573146019 850065229 258553387 934607064 652114896 461270167 277517074 352920865 690003692 332112335 892765708 882573923 583969801 657398973 36623450 940228833 707407789 705916896 368752888 299846887 712166680 534031454 485252909 206299987 42561713 792462504 6676114 284106976 987316896 142814107 493395414 486568476 108064595 647225022 392213219 764377023 933290002 669963109 415742788 423532271 326338793 493147195 246520337 35340362 955665839 739418366 103126569 163895745 811618956 573029236 160701226 922809651 701276715 504383097 588243488 718273986 17495904 487432528 892722790 116281464 29077453 681711882 194987885 421958134 891491341 738677884 33635230 660057465 874956512 861164520 224792504 653498299 242811651 92746517 843683253 736725957 298787443 884647451 68628677 790891721 775367881 497870736 376680915 281445728 410048791 698787842 981082456 872344075 722460873 805282539 977454259 148553156 966841322 333018979 816062144 308949483 14778200 359224318 743560686 386096685 662744547 362841548 517788594 957967614 802110591 299236515 428883463 444727477 546390502 966327350 96524020 927591008 677398034 808514040 433977944 389624316 869759557 869254896 611054850 32336693 290138512 412038589 358282836 922697162 424868390 103573720 855231154 170310698 917371631 315122627 956159585 388389532 359095183 716807802 913236188 651130551 688392214 515894108 556622732 159544151 114807257 290718767 896161988 567771508 667566167 717531462 706640770 69840397 618275941 669976448 922780322 917149483 633208399 526623924 521327478 911098569 703162121 87324082 44068729 588836176 533719923 500050782 551418821 748804891 24743089 461449269 55681306 9845990 978001013 328988645 187596921 714399382 615843396 885665195 216970081 504333884 876030455 855470950 346175732 430755400 456889666 442917245 617939681 299282284 420516156 564118174 336065246 767812846 362154209 474367557 458587084 490771615 784168952 354811065 339321677 668850577 292284838 499185333 298918446 854435608 900161434 993204575 864596922 318262755 811069273 245037435 240212141 634443411 873782826 544089873 576692891 756233110 581730244 359017986 638007327 522503435 38416459 322534422 969207808 863057194 553997097 772807215 543502469 500859077 564897398 103744224 482771119 6020942 964695431 517396590 484470869 127800207 771307796 802140768 494035070 313838812 449664439 887261251 512517525 109843140 915810536 280846437 583380065 14354414 761151983 314637562 963780347 327331531 150416471 294766403 410609801 882947685 913937261 600558301 990578273 298588103 390960915 570853079 602220384 997244944 501867664 906052198 439291984 936900841 800465263 829641559 514553039 245938077 884777057 629393529 599985561 437983708 767760445 276708050 456974594 701696696 859760561 420064159 897112973 347131100 23221333 527231598 606470881 981433165 1684967 152996993 771918802 641104832 755856379 693660877 138062734 764350514 786387234 441612071 901162950 238225692 923339454 269236455 776336696 171887395 588399591 7486996 517506185 117912708 650401962 737993773 372626728 317953515 179346116 80687991 642205373 971100434 933349395 815767625 817924590 340754690 278695377 413507465 652665299 635056070 510922133 840949291 421653973 251400886 220202459 558398838 925573218 955217844 311203158 655862467 362609147 822611076 42310597 153529910 187955330 539899433 503786223 216861786 504142413 741431760 285187816 294144504 446742338 131513333 326865273 974676942 882874555 523373487 949226027 596781492 651530166 373902591 365709590 721776223 684145681 823503281 238314793 410668327 276180093 196411505 844613204 816957824 945596950 70733677 294702863 433737959 69677062 92173196 366883510 140387320 824087420 425986041 718489704 961839237 843005698 233783678 587939305 844086041 200885652 16931992 467881792 345057414 889140655 296313397 61811830 182310732 9759856 697637027 281682455 786279158 191106963 354642597 300572412 144594190 988291475 386333109 839327635 952295617 625781999 385841962 681482079 59563406 220038872 802511511 952816909 542952970 136086687 493974033 582464277 227966174 473745436 208005008 579663641 608289679 654832759 641570766 396725973 40641239 749840805 793937698 611050104 432921075 906766282 696896696 37092205 712019403 994884832 143143000 597802230 533757791 267467955 736271298 656749976 537753335 599790644 10716216 157199095 76189546 846501329 289857157 757217663 326986107 407583042 939784623 867905003 55018349 537031035 233087751 555088216 848732162 396017222 75019903 59622732 952034782 636515517 820201010 370987854 880576334 465847352 953156832 151883927 637240265 76204742 62967037 950795381 43069227 228428998 510495323 83985206 629000374 214365868 151270548 166930545 428620375 131803714 403083179 946354599 387949287 617179133 745732936 624041348 906737395 707000075 32225927 107897106 631309280 904620492 816936779 196399126 94967255 979257349 597217427 466014924 695988782 371050254 219972280 34399598 743678544 457375500 258860353 834700953 281433092 923691531 275188403 22998181 645349305 945232083 982891330 104469482 834411322 39633698 112372323 153519108 603114510 791859960 42842713 607124517 606080075 69059907 276343805 930551642 599076963 509288618 766500606 446379770 902845308 955350430 805962906 902745992 972536890 883185446 454734744 182445873 611439599 275216608 898287265 895807529 655949296 207391524 559353788 549321825 763413534 149913976 835147855 355719840 179696007 455717915 490686097 321445533 283801603 110388047 511271974 604655894 925238665 414773387 154582857 302468471 653464831 107233318 417549769 224865066 203466120 593385256 604746593 418287925 832223417 48696731 647975314 650862533 177834986 544281316 590616211 871965562 728623613 897247681 663963482 562432552 28294951 655298357 416346208 56842921 497086457 364979953 346290352 465737407 198484226 588068540 590100681 775960521 487455961 438415073 969061678 89256618 830389463 955521175 590716533 723993683 170615034 205790347 782482175 958730819 575128670 762188769 547394167 567122780 665934861 789113265 393071620 947743667 917742560 889021849 220996217 809760796 567660457 891833418 451515328 394684140 814868415 813759883 985322665 602059865 54616291 996383162 153887270 38314731 825093047 749617002 904918660 549434479 305967778 578195269 732543314 75748189 461948816 646689961 226167760 805078887 626186678 576181923 784187389 306887694 808208502 887012924 415773090 191271078 999574634 35425848 664826385 241612570 60329863 652871633 12067588 474827223 4445862 865346023 584595826 767457873 970381893 940622521 464157143 24883389 974149636 439263971 191111689 630330565 516864645 115631157 322084003 791476487 48154586 299543561 628031432 194210956 10233651 812937111 786760941 468261083 845863795 727264617 432502569 740905558 235074158 480456527 895183063 72966549 771085410 585451254 290775104 191671170 40812764 717324555 501622617 330915572 394277798 266077462 165796511 71021479 217896542 777586318 518757203 428672626 911561088 701213864 191137304 544831479 332278841 444325954 718764250 483828246 102674328 257681636 820885715 978757718 989982218 244923227 420862902 582081258 307192498 72721685 600536722 914505010 798331631 159240676 617823156 42328492 827904367 471283323 342439477 167473702 772769479 293055974 866069373 886008393 627051827 82933632 750919733 130861861 263352334 26048286 790639199 793988462 602927236 369852674 464230254 907493790 664974446 209634914 712582421 227432374 516720568 9022906 614938133 124023899 890524699 802937884 113785327 792628595 803598809 469379794 470061228 122132235 27096047 165098435 327117422 540828579 474673285 678805402 567994024 908332026 277275174 331866011 716066795 152127772 603788646 217643260 1001234 645656037 73876726 439909018 177549765 966884078 702447603 16474580 351888204 978446925 471392692 870888838 101187499 489360950 843714532 69018714 287137414 88077229 219279351 131412883 143647893 563871800 244223970 116098524 556201403 320421729 311901475 921251166 617441822 819566624 340711706 546057909 798153880 405136426 208072733 296298144 380484263 24746272 613816241 857735007 491551368 944393864 690504042 487131600 13477732 265204808 502835562 876605348 116354625 237989189 699409185 686142868 116314381 668060900 739165830 560690873 878064829 369818020 481249742 636421294 416022529 745201512 997800596 469358705 983596073 385351071 247829526 923925791 382398665 991718608 817594132 263775750 81355220 168751192 422237463 231086480 492917444 346784031 265417093 475216455 164302072 485836412 661545827 239902785 327542681 904111979 13566071 122407510 334910770 735167512 353234958 734523594 79697737 825838941 823218976 593329043 428844616 791539726 566316212 68104896 169654024 490786107 705675315 615722918 140449803 94092585 641306801 913553950 747131292 976100579 308290633 575246161 630247601 477349095 527100410 876235215 981282542 72774309 554654922 534187835 971808903 45678668 729870140 422762885 293179755 365072381 700572052 155217256 700241248 948772129 893155590 211412810 435749984 966012275 343529577 276052395 268682251 999099436 508334003 419610357 6257456 260379946 913821239 496071085 85798185 491065927 338545533 792649376 436920797 279185174 300483222 146483449 42746269 377322248 968126569 998886393 754127283 902725508 570845200 270240448 454814880 327493814 299114303 164801468 620376994 404821994 959494526 981216568 839305114 402529707 63512939 649463536 909066658 322781184 190796064 230097959 6955908 812870699 778425844 381880406 491881915 724282596 369747395 739862781 725362393 795418249 293939622 570097040 999592484 827253599 613908249 550438229 208555430 554306071 580366637 672174646 879566353 958316244 789545456 556525173 85345116 867436923 822530956 946824056 967748575 489347230 711970568 729154111 567658235 917115634 121004307 848828665 787194325 472782498 694293997 877079285 119129787 950455055 244971112 658611095 657268116 328725747 10222289 469819356 452941312 242072374 328378605 456917440 285982824 245320732 486211520 60682514 458594650 905162971 360561943 331924382 101254060 104284899 65346393 942719789 699030686 675235758 807215464 292608256 30331310 352658988 540477189 430010911 831813579 757034002 751633668 638611469 610284535 446943191 451442917 386903078 974555729 121880890 780632725 199393064 720380719 581397599 232466178 180686966 346602225 357798839 520024865 38293320 606383661 284829379 159900391 287471226 786171164 1182810 278797464 711167933 159296973 897441990 346183153 471720381 116188586 702381785 758578994 73044638 391237243 159386184 856845357 347510860 8623116 212669768 870685997 702322891 733185319 833072673 653009644 153513562 455993304 546696049 614945238 345874974 553438459 622268761 93795418 224715769 508155829 936788821 452984706 221035196 807140692 828176338 35325545 661159643 375888777 907687997 260561816 929512768 843860263 896223866 523934488 73554487 794225350 379331293 14085789 944779803 890792406 531108780 250745098 886137191 158829558 560689517 995309837 685928201 858375508 413973325 205594062 363445224 488357755 4501143 53006872 30396505 369323723 334123819 934983599 6892049 941712112 779816058 409361454 65019029 870584259 989613771 675062798 683390543 1294115 81208942 854736589 304801083 552500373 813120029 154861745 862733293 90084446 184945268 382497661 359163630 917604729 831453766 67332045 753294348 232531110 246005961 365242570 986235878 114810053 186526235 604289908 642718056 605619727 949460328 555629871 277574173 314126230 490663700 551894263 609276889 96089163 411105038 742397548 990986750 447828699 846619471 72540278 34466974 386623142 734550838 729294688 908475342 1015028 636411850 272008403 379926735 560222436 269754057 297115640 123710891 67250953 740771137 753918819 850307255 984977604 821133303 771758863 794387176 899779391 280433944 559134923 415339289 32495976 394465834 666807587 489449503 287093053 604505792 26841367 298131517 656042603 823046811 213178427 9033265 266766258 117702033 905555041 271109536 642584606 333186564 631128170 417573904 188329330 801089107 960528902 227969513 629281808 743676098 176881426 202874112 746427494 976063849 515230140 198443174 520623248 583720591 181366605 648154029 26769116 140626966 426352560 858137659 710496064 408030629 231325909 49630164 765654283 955981092 324074969 21320638 117731157 587882674 574369161 770212869 293242166 446715437 923860766 794836512 705954585 566983796 28137667 625029457 513849351 462936353 109924446 387621461 791438490 594845842 71598351 646542033 237090609 974826774 451980969 347490938 830040077 561007387 216481261 531678451 863846142 186742767 85781374 70928891 301132437 300125605 363286461 675479020 260489327 726771200 802195069 218139795 687217862 288068998 289205344 163432742 235369712 150571105 576435069 638496011 742769256 583461706 143968868 961063023 984312114 777766274 194988895 152486727 442990782 742184767 742241234 444513069 87134080 712583945 584120909 452196182 407295800 548309988 828968122 343051168 376513412 482276056 551660132 189878711 7672645 180688582 898073035 32742671 1873108 146432166 489693127 511022478 289703733 105097902 921504491 417328872 735713928 44730395 139929808 510203438 936398564 808780506 441857636 720138129 566185993 795830810 752706103 47110652 818394510 339756043 125014004 602315565 133087691 53965945 840109954 210501261 17554985 925611493 747239680 651310781 777877977 701949199 315182901 687343155 140267771 252920208 545696592 352874660 51197620 633625132 694719612 140971888 964064556 934879622 363748548 234212863 402673542 967512758 297822951 974794280 326561667 293056621 998852360 765582765 805958763 600570439 311387598 604666272 223405493 325917713 529726532 353054762 700796316 125596987 569738014 30315285 758549075 226430785 675012483 29158353 89487303 271878782 308351965 108765662 62770979 281172207 321497915 993158180 567292467 605531363 583048180 681216978 86933477 194885215 916090266 616393977 627416523 205008846 274145155 446775253 982221638 328186560 154392344 623614928 709625819 855536909 257384749 77746323 105714329 273674957 66410807 398520461 309838409 181121300 657201524 538932100 276849357 678478390 232945439 752079474 877252940 991171199 461262993 288305078 242264971 938099550 627408180 29659333 416069733 991991479 772199497 451579390 548670737 57343419 565994053 108150791 748006888 838107417 749351467 257064958 739436297 60380603 941201556 443513502 333198982 819864203 453839484 933923110 719824216 651232428 794693083 43632667 789856787 964944799 878989332 880237375 520890429 868490131 573686976 940474017 905545677 331502709 239407473 511835068 309282630 460589887 437365857 903029955 328130009 16027775 887302981 619582783 607872061 767776832 310505383 189380980 818524586 486130603 655453770 735515891 840785213 273490290 271290561 320643568 121138945 37892652 558474523 327424725 110737962 65437068 505781141 43246648 222299765 488510886 210749815 968580710 125930812 342902825 881395052 682683627 827038028 814011500 327627898 394653072 75042946 175795057 969334759 602799497 313434565 907652640 510383681 249583058 7772454 79884709 745269870 101519885 806747290 244155312 634638067 397064748 185062610 346427257 348431279 280734346 976896742 667489500 258986513 601066990 600846700 968261057 248251992 346128040 628164854 245511478 98563046 946651706 206852542 696000569 420722773 225976832 601412887 899204729 427189880 558964850 822366264 406245332 680110647 362121314 577496544 883000310 898601484 247052354 913236840 2058829 64543074 674739557 517976086 525022500 971130176 702754902 311833252 400202549 259759557 210933026 967870205 921998466 836071642 185809101 921717236 608335135 347545665 97555137 998112117 507183561 31756537 560386578 931720766 165668382 235441102 871374324 428479238 874193595 390574877 800197398 422483267 501263562 334795563 143174299 362389737 363695350 69308069 612088499 550669545 422501028 867714453 239050280 497790645 228777174 713546206 962606872 277094658 897775136 317088778 730837511 853462199 914490989 746411785 331766895 983304622 178190373 128412983 797884227 511825953 80685888 291971523 514022902 87611297 508065554 964859542 487850368 726895395 772733942 714605422 164820922 964069873 525822363 913489735 151284533 858385433 17819564 732048409 308109165 854293044 660653320 125055583 267598794 475500180 759080377 586273114 590853392 149038567 357907027 802188933 32049668 286203606 374544216 997383051 171964646 966339816 52194543 260070740 464802055 265895148 88377141 254863027 322231866 460718200 610242605 490476856 496477343 239981490 533338757 400879202 119850710 46218193 458255264 850311951 994001683 717815472 954291162 259695972 169032786 742414918 214380440 279775313 635522513 167556548 109394661 714470380 100451942 610611773 812910586 15464365 725158574 323169456 257811713 249848220 900213482 707613354 893501045 608802069 938771252 46713641 521378350 215739374 207182664 509852342 504349272 190190549 878812853 252934710 543622684 397182009 56071888 687093260 367316781 693511802 997111456 310955616 996818532 541826553 838350141 985476339 572718665 99859290 208122816 658589035 366156987 556285298 931071863 4614549 663552418 775427381 661154740 199551431 960692115 15549990 783440471 832920634 405751104 379706842 329516298 446527151 177902279 107686441 879175933 445901242 308733432 245090349 8124430 192060756 984389412 788067576 745907519 280410953 809121420 651343930 669761884 978988845 163913023 810752580 102773878 222172961 28643110 308407257 262220050 259504580 969241495 508567166 511765939 664456333 801815501 386967918 184866027 641106611 481430769 29234186 774654992 744590613 710330390 676910065 95253500 353641102 79531515 92554508 597417312 159614799 428725994 71668474 227407828 423469280 833521695 185981751 761103025 193790576 429737123 11901389 700382295 14955098 429972053 354520693 488579441 847638978 913074392 411228615 742348140 996730343 715538969 454492895 207268995 244860239 451339442 907677208 43908415 253844486 496725167 494196435 948107213 128348064 584131772 709446245 701682915 401310204 640279562 477500030 266878160 628518289 251982459 729075953 568912395 909735936 266934689 122372211 206370639 273978709 167674030 959213989 445447921 688993510 533789089 183451809 677731361 456519314 90990870 891274973 316131375 661798264 34422891 404265206 350561192 583528859 677016611 973217547 478139187 355121539 825121653 257256474 161307266 592315550 592522704 799607007 808343594 715955146 561870178 658913140 781981660 585646510 605058550 534844398 628900350 609631394 18517284 502870622 753121001 812506474 865294662 340804428 455140870 342778052 126071027 438200126 959188143 529822676 527245390 402863916 130865923 163454960 73131451 685166630 851525425 416740786 231815672 856445095 416592278 278686003 468742751 78923760 443405860 895123122 606339606 406501364 420940629 920173467 985738870 511485864 678065902 256065673 439298908 649702311 814166711 242225267 123203559 509320442 753931866 964940980 721355127 921784450 596024673 686302371 787307993 662932975 368806486 759667221 938001069 984585599 666839830 826046041 235448901 431102137 366322555 149822588 527163147 960846367 560713944 103276097 300115170 600858603 512642103 679044687 452308096 814137743 102851013 194785842 602748588 659554066 10316956 508963577 299325382 953965685 251297362 935615490 196864731 305672081 398161526 107584485 882572481 424664257 274528614 285351665 906202827 378706010 399711723 21734586 77873035 732420689 49780025 851613302 377999126 532769376 889871074 958976783 173446758 338138993 985144287 556898194 546665817 841186642 487131597 605137189 240537277 222686217 454611756 350473263 220609396 833757424 367149349 702015 202578360 602530675 169049847 971631998 300110449 976195693 722955483 173584003 392978555 776653666 754316586 849918138 149866391 599336345 201341856 810777062 190590418 257879033 629264167 897049745 83492011 242317655 738396130 505425737 740832699 85693843 293243436 929351174 830981231 623630115 26846355 845546520 540499193 565529136 990439738 742161255 321587894 456267484 307457115 121126776 155419739 495725137 762724596 78098314 818038520 965938431 532773686 384121235 972985701 538610002 802213836 636974323 780990126 94910456 167223585 677098875 115284728 434301034 674824804 859150523 221678917 210324888 943699337 439827777 329957858 241846613 167398648 322564690 766349970 433536279 806490644 729358789 995373829 774544111 128967884 474072343 869542619 24226323 412003078 874709183 571061404 44820118 546341824 332562085 937211456 349085505 729048403 161410912 766788026 926040109 837870372 310113013 818626736 445759387 459349913 934728280 797170477 875969245 73863674 951795424 378358437 940309668 110285297 292518174 420837711 529629520 526686592 14477861 624053896 875576698 136283202 218057356 979075017 56252403 209346799 718081674 652256251 620134948 917561098 360926647 827488723 867244112 740138314 559897095 77560655 794913907 617307211 664690619 85008721 889516166 777275564 8265759 304700770 878519513 481723521 288588280 744053152 825695626 979296273 128175335 595832569 178730417 968212539 258495384 177484638 89657308 613778597 597325780 356483162 677670572 146893856 805667771 539447296 419318032 726602646 266270854 879424082 25786904 184603113 237171365 934874900 348847072 464125630 548519401 168450607 919478808 665985320 426485151 507854787 6671450 669836190 178391498 354254725 231259060 895129672 160325346 47674993 603357703 832871718 254812910 3331244 241722604 467810772 645696407 20868121 20276121 168169693 661982305 206760435 363992478 667464800 332952731 303852230 360628452 54397278 734871263 55581645 376825075 731410691 409457693 819419016 245838550 752731059 841349521 761460719 11619863 744986474 175966548 159537725 92639130 428366101 394390639 477426890 548157718 91651608 524630029 842403145 764455965 590561381 3925524 267937990 95787442 827887231 138510701 935358894 790199522 112061952 408903056 41051470 338619004 643827406 383959888 368826319 695763039 342794285 761024483 239703919 931125773 927270365 828418172 668011531 869389802 198724869 286008759 381824833 971926099 42881498 24781534 806835463 360538991 944398254 799789972 389947945 765245854 832718933 469216463 378877256 78644567 864124261 594214600 471180550 203696617 416832306 969522719 361387139 443737481 675958177 386779808 396514623 798082104 134741920 936600428 632299582 478185970 335097797 607470029 645774334 507990570 573009492 279527502 168350408 864780406 862365311 155538092 66524589 934173323 141794969 949192721 829054744 409232680 62076940 11700955 898618603 547035711 47809638 373717919 654621062 552669904 16923691 912300996 373780493 572379910 428395791 85085421 31726708 314997436 450587901 534848134 417751480 829551452 581569429 90487100 892929452 572832181 138311183 233484406 13150829 718400582 615844353 995163553 634242374 959031648 665832795 698152812 659703621 606898586 794627359 183497238 980859579 889107908 262398963 65533143 232378696 767953167 964746360 116328503 31444026 413545874 531219352 568630991 615897485 813999655 754610159 964950356 90662029 255496460 937523198 962970980 261597599 838298723 313681412 811897167 367249166 774075385 586157855 725672465 827294789 731547567 355032185 254426233 624350714 196438046 712883332 754376604 119799012 594457203 628961116 616397368 759853651 929076892 501780057 611104768 931915337 717245366 587703130 684109312 508795066 466737587 266373833 427412978 778534568 930871678 992808397 353642834 820492856 310384031 563213847 400748702 420363417 107465742 353297476 351156865 389234876 497624534 639952911 774290076 326512172 953587945 25885907 213992172 284287961 30231603 596565180 294403140 6265141 211714495 62151354 225517608 43083617 20800351 116177224 625628293 298869927 310401638 641114198 613359602 667650751 358130679 241286880 685280317 274067132 888939174 508005039 953557533 423925024 78369007 731596560 716731091 450155917 155876442 350258250 491745115 506826511 408825688 721314023 620278453 931852842 618761385 528251892 560273189 139383590 584536295 437826919 501289067 421822396 545673672 498004367 914130283 106285766 408286493 189665314 607500366 222805705 364715458 583071968 216277237 401548740 306106675 59970042 938907544 133430250 901778773 934732404 721454106 534772879 313086512 838759930 442938170 687992690 58527782 729283178 69786035 662458650 799961334 13670881 513243292 551065284 571672844 517591273 602965808 960720237 779892772 307886099 130688494 219703024 739563966 364738172 724137917 264192455 60427035 261840963 912738929 114587976 153551640 771241291 282621327 813587260 34235266 501743132 845608554 627213415 741784723 29028288 102196992 357237724 768517961 219843356 495946034 761513016 665665431 957894406 843717806 210468574 331543265 548362576 777174447 557610951 841225815 3341345 211183659 860365989 709122713 753254832 198660308 831084168 989096044 197504212 675878347 978861223 707084540 412702660 937217039 43336697 780268266 805349264 399983156 94729692 481282325 550101629 10826852 296726248 370343672 700913808 108396107 429092032 237171341 223908132 920076764 793732611 777851374 699279659 419772473 45432837 598743311 839623346 600983359 147917412 792784714 876885653 443994100 83522618 512526246 482871428 866953896 522816028 677503114 782281950 526647978 502298833 56896892 12889190 545140971 358868680 957281171 76375463 3933350 834179826 195970718 183429691 307349930 338716603 187806210 675623674 226857648 844232171 659575726 500364556 716575125 107835036 394692911 646703301 304876023 594342307 383295408 796013426 901613964 278207844 179600848 671914794 99493278 793645750 663845819 279561261 485261995 790392068 836367666 711217536 822609155 993483012 517260330 592164800 304836475 519632738 24734399 878142055 47972037 32227026 742677084 559241048 185540311 110585770 920251975 249095292 428276268 319114991 452749576 408417214 651462061 707431764 191886516 384404833 655579843 650875605 17009397 95393691 161240436 965382363 424486664 531977982 333005068 335273963 795096097 131280616 733993265 246581299 572141036 633964234 796423727 424393502 295629277 719014956 912646127 766219516 380955004 392649898 473845887 228361264 439056961 968414535 621746227 771403087 144328512 401333684 519643887 353165025 338090538 64288697 895600241 293824283 898804298 17690447 22504224 472972407 67769385 347371552 8250553 935164409 314769455 78746549 666577749 521479947 21358311 547803028 513478265 29547946 683497387 724062500 223117307 666773112 388401112 668693592 897255630 541177650 144542783 373789550 279098639 486936288 900273082 870557902 624791187 942869122 755685075 196139753 43123531 334481835 367697813 295157445 984127037 634014583 16386404 667655591 626388919 825591101 319862168 572972154 849361351 226077454 105660740 583540048 67761620 749629793 655956187 144806018 179670995 762746661 632103880 202450464 578056924 975828521 855247540 910783791 548576578 519030033 139360341 851592056 203724829 604386305 888975304 798795860 651930716 263711336 196713161 634546779 931337110 310494488 919148211 468981490 120054090 989293237 564745511 548419553 349936168 417696856 765563673 752173446 421775892 397389185 617573421 215980267 368554202 255809280 742575681 714340125 699864652 351115387 847814094 740781010 670470979 624629593 850710280 672464926 703811963 725899347 88375011 816506543 654278653 252626871 688342087 38422216 900987166 263846847 421859024 828241030 78638379 921675332 848553789 586870907 594488879 227534526 71841973 905159864 125156530 405233144 951209505 417749687 864996934 494574118 883425605 791960286 157732482 554526521 200155630 682080790 295583294 873591616 436146813 530501371 959328578 573624902 258228777 449473776 179501750 152175559 114245843 827489651 385638339 399174244 611060024 11934568 14168487 453019021 157594830 201840888 846592704 537087336 925117689 464379930 507997187 552669734 153667405 419092588 545998850 752075878 397105020 363796055 393864273 57901268 287103681 235612460 129508038 808084302 109645209 733797811 970748001 649030642 901433628 926003163 25023232 499543011 361181139 176308930 726927740 399945516 220944953 115938206 984007141 930231761 783551711 544516528 729184047 53952018 472418763 455625469 591300625 127416570 604605386 265212697 37617345 849359413 204357104 222533947 411830996 440940059 848354621 123613157 268110274 28473932 391617104 434375192 926428155 420453017 302918626 690305900 312514967 576048221 621158727 98808222 120560797 800711446 103840733 143545957 32639558 195335744 412032737 220556326 721434128 159459252 690790883 586987011 686251314 452864227 869812789 545651315 974119380 448282840 975378881 983031035 2011051 662374701 529495520 958738340 196449309 791375789 222804013 269168130 29828101 985835519 797935248 670533870 26421056 802191268 595012415 936424139 926264173 497410110 247983499 434024457 780002132 105860084 620849303 322902690 68016887 430431821 35045312 444896651 40420526 492298050 799218029 457014597 256366554 868285456 181462095 447665886 263804612 603619508 594039304 49193886 365467753 947256072 673137146 549795970 799909486 69509632 940648602 93175505 336550549 593208371 775488131 753903918 340758328 207137147 403424717 786717737 54635250 471482007 163214886 371461228 450561534 666803024 46032422 755908605 771116837 893530735 225973551 479236738 711397816 893279200 263619197 418622102 164482517 849503644 229330337 277515055 301109330 148601898 801214731 964544471 788697543 210530557 929599600 471576889 420232299 300527169 877923756 604080302 210739819 895232015 714872506 293993425 516517371 657679908 470141194 800957567 323264014 289213718 896361828 191802809 372983433 535160516 712649635 278928490 636731072 858813184 796237723 94514542 507879890 374516346 412282207 181525669 598995784 407945447 174157802 442673699 351820556 457032132 307660386 138463543 941352563 986636577 143431506 336533776 872800601 614776874 728324428 260900561 784860228 734791604 866370115 877437998 85445108 213862587 89273193 579691088 47270192 659614913 658654474 907535265 749098507 186782048 8350590 348802020 568731496 723677935 883087830 246562679 183960407 121456569 864591143 877258788 140876740 634370902 566268782 461330655 649370812 123390418 773964769 280054617 106224261 770486663 22951327 825825113 842445009 608121079 71459780 942011412 337275328 822874034 165375317 173923079 815263263 232216905 198170861 746874615 208170085 858298568 38372375 303405940 806102132 968697271 685865846 496960245 654249467 159033102 997142181 415491535 323917442 737256031 719186731 267188935 972094466 202571865 197906776 657934997 768258705 897009524 856213867 684563767 464788677 92401694 612339889 361837107 576073539 656288427 916614744 976602962 433217651 446289343 999885957 781395138 217442886 490770125 548441599 459601869 929609336 33098433 353331005 676717202 969769182 416975957 373542801 526242899 912675540 543216579 798043598 838177236 205387415 984429732 489401878 170260509 344794752 336881561 499765737 605435656 703409324 683511491 622361198 393536240 925417982 394150062 437510617 323415238 168972559 103075585 13837412 130935884 852113476 390369204 291001401 434906847 700222982 714595299 569868196 751909182 190839311 422301808 871775323 850903769 494790852 386954392 72926622 1287786 232168254 800079980 644096338 989513890 863817636 278736118 533278507 878076259 819492236 690268144 730478356 738232968 541639790 244114430 525645980 847167744 224264503 822631034 383684810 124301529 753124073 396594114 961939370 40303124 967125372 929325625 560823814 704848991 882215146 647220806 297104671 745765580 996049379 800386501 750553420 22892780 572397925 877558336 843718626 596603637 253936815 314412353 810883597 323920204 58692039 477595465 736663489 501037432 736315322 623321448 666559737 234481871 743637132 698000067 55121560 5653395 743178614 529765643 741087238 293081698 404061310 603701940 334206660 466341061 192542298 224728409 91978482 417147046 59594724 934935154 955792697 505152214 598949563 509209944 115170429 418824998 921243971 341164201 491857594 124892596 553281652 467608497 135829024 571596494 937034293 928682727 835295298 850385363 40204063 186196381 446623248 627676793 354202938 332247853 895289399 364369054 263085863 196426531 552966183 661115942 656462658 7395590 789074341 150758002 804565962 392247466 242016596 954598119 3628758 655050806 352061546 674804517 28333141 345353786 443193643 681394659 552752148 32861496 802385625 957738723 35763420 215373901 531184629 699977115 974881903 188063997 32146292 901069596 224894790 660001622 907909652 171585358 103532678 17205505 384954427 270816186 64619618 670204813 402056761 254375588 695762025 554176873 683627968 808198765 601074644 160943003 618959483 685441220 718052645 709828615 297179568 516903528 375271907 755742789 110502345 782497704 689743608 734945836 282668184 299470032 123037530 379337664 563124492 776735670 886875477 364313741 664936048 735553800 432459146 631450528 938963569 508352900 621133277 821086062 953023539 648395219 636609414 610136146 406281641 100300023 740392652 157150345 880814815 967349123 524050173 748807847 93161043 684138728 406539754 141150937 482171217 597343024 7857445 177354805 282000353 510446211 19841079 898345791 162441684 967856391 975616017 232449468 245151835 277352676 659895018 322905753 406515406 286021780 413639046 554867863 766338682 764985223 862483999 399258675 592043935 858278920 112487483 929289921 456069951 598112892 272549684 821753370 509499706 857023264 587278269 810931127 480822568 562932812 664668176 12031776 131336625 615493718 841042474 406342126 807111488 342709445 387755884 266249768 475423716 97653614 17988282 707081670 218325720 24926329 308037079 493627797 44160320 559476890 408589448 68185049 689174015 276540827 391051510 814021663 905352066 915063930 914710225 240213169 10929127 992050604 843132620 367150581 977082434 862888406 303186161 369786458 447312545 385971904 932432194 854377863 142098523 821939440 32725545 258609587 186536342 111329812 191458586 311261196 907875242 445481187 523956395 389175377 674765874 564703343 517651629 257524794 595839191 793758254 985079493 685689838 231805199 275634976 414304482 133328593 781628785 751175443 729821579 91038568 454022780 860208297 945252693 164001359 440212981 476178649 109263062 908540654 498591515 643588216 329665700 186081647 150785682 304249735 327373238 433752228 945260306 299146626 237168734 288223945 995619454 955999219 847125173 169631058 465261734 688399117 436712247 623216906 54659853 772745599 997837755 384839899 433517384 921616446 518092093 836912359 383283467 76214248 629883839 213177028 476264532 240146630 228089134 42394429 706060254 254160671 265026298 220524893 272552927 996275281 340124357 811628957 970624986 510842942 233220779 723001770 123501912 812512260 877186629 189990897 389705277 200432573 602089058 251076791 181998099 255441818 254429675 904394414 616655910 317770040 668371029 569231465 227392478 738189971 901409881 728930706 539353640 83681770 674899616 489493128 746863475 747949118 786975300 741401666 123335721 889211963 868457516 797478739 516128730 481038577 797184422 438754935 28900454 143563894 577348064 678857636 709488404 490509081 764726224 890705086 689696232 104626483 276432953 765395874 350760665 326754241 670205351 529421255 365530348 736015736 387265552 97215578 974825569 463490037 493150556 662113116 402799362 720972340 956887968 17913212 573434013 801866915 813309773 826034175 422267062 257726585 600349293 829743742 255749994 698262024 730352786 564441313 163352441 477863295 657309523 72419566 97767399 672111923 221877284 799051187 588844099 706729897 243954163 948013689 396059249 867172672 286140268 755797078 493194727 57317821 984728890 754561966 353456668 814968297 214806548 672551674 829710369 872803975 460296053 490383387 287775024 196569867 189415732 63022898 271252590 849491866 926305414 96577437 198640537 589336639 73812318 924985136 245624926 532866211 231799247 640305076 125477336 594003423 361767364 697841122 588735163 284886505 329573222 855166604 811023648 292114437 689776785 444735219 900181887 604057602 67949982 157979437 589376709 343084224 869341149 430684930 547440768 922068325 817679985 61028306 908600416 509946019 750684290 847657076 448557265 530627257 230361294 185592343 45101135 29678981 140489333 335617637 79432118 746445530 873409249 354172126 829898312 924241059 571013824 646736688 798745510 918282033 515710141 680633941 535559786 525506142 300486922 443883897 441962492 159516327 896168321 468387896 866868293 509876436 854126036 555913808 926041232 462462407 474675117 101455203 94010738 348971272 105164343 855318566 796194367 983351080 821125027 602198550 813937561 983141226 742853445 767522414 194742375 348036016 12165771 937299573 853745656 957435183 475290829 897710152 58159984 720430633 532916479 592981125 386005745 87768899 497278968 558386114 788276413 750855440 345698941 261178778 937885586 244866966 365882649 162424197 208835325 631707387 888764685 369782536 285104404 669683463 47779296 983552797 651143400 498933788 671791487 982407381 602207428 175374434 922851012 171420729 164333914 866465398 233380957 806770660 385808739 326786869 932474143 432135071 561016139 288055162 680709381 719427721 279874940 517328408 585397149 864218535 837973857 13464450 734561496 936932951 745987482 657824808 523289351 775679221 102367547 125348793 78131394 191480332 761901607 995894389 310112736 448763336 892434645 342292996 935720710 320155894 947419900 632109326 380721726 898723877 384650222 80836632 487899696 517800876 965942001 836957880 652716998 715131936 595620558 623792266 175613434 167094956 844685450 365177411 35273270 895917022 871544624 35692582 935124140 364043649 718884172 65306155 884627440 845316228 636031420 595916027 602964853 699974727 459594935 992090579 90158157 978952873 436007239 546597947 383279444 98002430 872800040 477676363 282576233 487753801 776036499 473162582 959418660 317340651 660411024 77007833 42713646 723670168 204688486 141668315 472086459 96446324 873540369 932896541 350625614 126965250 264385721 622615924 534655528 457054067 595592462 963585187 964228390 129119997 192051569 393142423 28173195 233943825 938954242 97440293 950282081 402199438 848380716 342881960 847223727 588723976 475909219 561127618 76362336 739789574 935951060 149312252 510562588 590510918 224262459 709138720 651697136 485313491 124719773 15215155 10759718 490849127 480907734 934643125 958063196 919625225 926179486 450093788 15354415 814081123 126858122 714463223 713024408 825945423 233277928 984718259 695663834 315985589 532165587 941486381 781035584 918810767 310975981 401228847 481481477 277699252 216155612 82864793 626194530 912922263 706630326 138002564 342253682 251481461 130410314 492642402 785810003 396463432 608743593 137911884 414043570 158253683 197562826 648656011 292918187 553628548 531402183 857539020 702753109 230348729 891226978 538856851 797182166 550799772 433445750 646075371 644033572 349511539 323117733 774891449 106425754 679869157 349842213 652146684 284954819 308952255 776316419 666040016 484402515 337914395 29954645 895206268 409795222 146156954 791069998 762571256 976714935 386241819 759465823 636252904 71588612 145614278 590582715 368499186 642301243 99790686 283469171 391159426 94339000 490650592 198074330 568563426 843855135 735146921 526935037 901955482 994638683 127694444 199554676 741033366 526667167 214465075 633955538 547293565 611668553 213960800 430018441 669009516 826267225 440527047 272594390 237672944 958167475 731537915 343501987 308814191 99764776 328925857 747740266 731535429 657013408 186919962 84751806 727068994 797766213 358484575 478576455 785491342 739226072 443571707 679412389 402055645 15079538 857076973 965632170 218099488 360158181 434994961 876556175 120226767 401485688 853536546 345682138 691102670 101158490 861428612 701498413 776953540 156613202 553434173 636059646 761723379 383089778 489444604 694024431 165730697 561146850 759953381 742488699 443490035 777075272 990508925 278299369 82920312 789334775 60617342 127097664 177801405 151357561 847337100 221022957 507976681 428349132 539391225 920208692 123843656 391047601 362495938 897286031 986401825 932522496 385797060 969093318 992028522 867197094 447712282 274295084 863815786 939828439 880400880 118030163 72684156 519851759 836495976 760317013 24074427 454936406 492705074 875669807 590767309 851516102 737569839 92929837 501671027 68123482 921650666 179421092 507257708 244558513 875085487 361445126 561745235 488843333 5737605 468269472 48896231 784720233 956189386 763567262 871834543 981621903 403279956 653363103 153837510 627895801 839589671 381586486 264249095 112876900 445196076 967702207 556635889 143389161 241380904 270324401 270249547 40751424 401610625 185902213 912786720 954904191 102218897 319604236 477311685 952111099 821534870 120895951 409593832 540806580 486926090 260089838 58997702 162666556 659667256 568828887 124588740 401001422 186414058 349988714 51422792 649266864 387499474 510955164 876899595 113379477 531924749 10258967 893565819 971224455 657041494 858455981 237500939 827708218 195605988 577622881 962092795 439944931 921507535 817620623 769603455 834049392 881491002 386716124 446702040 330987553 480298109 111032597 513488018 257569182 418230289 828578880 690990720 368860843 804482524 760036131 161571574 679194181 744017801 835352125 338552764 999066317 62809414 502168081 479951823 630595179 740408367 910211853 80725485 26530848 743236758 898106826 626333021 675151154 612717461 201384362 748293408 989187498 813509881 616572931 596691498 265300478 942653237 463139457 921256915 916954357 878101097 998009166 816147567 595370126 585749287 313351970 112615546 428056626 604055838 426742370 995207280 247306765 450801855 602731945 759266644 995958958 912046307 734958449 974762574 268938092 792907220 750660919 413090738 145414749 263550392 738435085 248701248 515480266 11440781 394463606 519362060 707525010 608299836 557794669 681749787 854735398 915773319 158216056 773690716 433531114 223225927 891788059 897560388 156984005 397140165 236401798 99283039 581460167 576578099 213103313 295252458 42073252 179799652 942740585 852330101 828258414 40991893 223048572 578015351 968299459 242286386 939831974 904117234 708040908 964181979 383810465 896546441 512400359 834375249 279723535 5164088 645099444 180692575 974251278 501899342 839926163 243525934 614944182 412796798 297774663 69654555 327607056 34603791 942161439 12786624 814001787 232032144 822326309 943758492 51294571 422404432 577461221 137163140 41871393 745544635 522594537 95864193 394087660 909468163 18150927 735287146 86681538 987604036 564612263 753325895 16375409 661212208 533642357 860071892 72807809 584141170 618469217 542617076 989734937 518001902 702350197 294600308 770258002 111622388 563855905 850087406 518090420 218923514 369063969 338772085 937127823 389918087 466954515 940640493 313734280 570061843 865434820 683922405 83129037 16150730 802508419 298777362 25681960 262222700 740870381 943978140 520564626 250624044 143361644 785289933 656727450 246295693 77629336 855421409 11460544 671614694 932569085 239027964 34976485 586291459 122784514 132074835 663602865 858634512 877998819 307225413 807385335 831770765 237708112 24991990 52500999 476884176 48038009 635999560 325436565 978520712 736777883 329744180 630168419 909781702 487912309 78734556 205414055 113299942 179228386 632916067 970795214 130359841 409945389 851623142 98195082 455334608 285219100 459578809 363027020 683002652 827016604 82320313 695068866 248661075 917710234 588778411 700901410 413758634 651988766 244877440 308071492 68112109 20179446 89550912 711913839 248400796 695884660 761612969 773368937 509666487 555515704 427357703 342362708 429552919 47650712 511388321 383535240 956685762 38900815 75210560 582924371 333450262 532407741 134001722 571290857 643621870 370305649 359521720 581288170 299410887 546251877 970434765 225645852 737783398 783951310 81997443 225355766 85744762 108705239 76178983 325409853 886697324 877519060 519444575 423862202 879889319 235275268 781929253 464633900 622900294 995568024 909063688 884723605 916897089 514646506 297851270 712723233 347473800 765287316 80585912 523157016 846204956 490356421 287498501 495354756 63875241 167444255 436858397 25099572 446838525 29116036 74936916 747159589 493351950 943322393 221399281 396372067 194581643 643635502 336483738 217107085 779297101 570162938 666235429 235766257 674816410 406604637 716401088 831746490 219882843 356835144 259865767 206256455 449120621 402302682 760048395 521397549 435374527 818996832 161286193 445025201 215996565 424645305 874726293 543648397 905931561 776060459 227035921 238199219 90322029 744909227 818701839 582455800 635570492 120044679 351456892 288682990 643784644 634954322 941545032 4384966 802356674 395029959 119183630 589019473 8354829 143664999 785432337 942299471 357978041 316704800 797459062 441177509 259479662 543422675 300336116 578153993 577474669 705574049 908752421 971133157 86227298 353035073 557674843 219727756 682845133 742244439 199588446 68091070 61493405 418275634 549242845 967325378 536981035 75807168 736215168 673739068 234360126 817164016 660606013 771938718 244620321 647333642 926100876 580617562 719539049 447541751 702315656 488545742 542805014 507415812 423299511 714754436 738493125 75672461 487887599 639578802 868841621 789975402 324938490 51538007 703574228 722988649 877962441 462940314 913136392 827358041 356815035 646029287 260797826 121721688 966178207 145898606 12804009 871032090 673196771 60289188 250364050 778475403 490583027 675327538 888289524 213922532 201288630 109552288 814259668 254706288 692032611 707029127 821892577 291693144 708430482 229120498 387976713 144511995 973379513 162280963 438859441 368539125 813139877 247747178 474493499 101633122 434821950 419795977 335153253 647650510 252956344 456723305 283347871 717633483 897061991 622524269 395616137 473821652 5547701 814249046 49068470 908798542 579532496 810483296 636128734 224261705 5008050 710686227 985106955 554971902 135056447 771966714 373286152 161455654 192497405 673575675 780498929 37771896 421041416 993597500 69014812 270889508 513660088 289943235 878827491 664685997 436528439 887072095 616107076 332040473 341811642 604997618 325318468 754410142 877779348 886039516 405400831 745168732 920649358 913399462 711220310 441137232 955311033 469916859 260177219 745086669 937177772 181412501 886360249 355528439 732968994 875719131 247213579 175566196 876454331 64221075 376185800 660626511 561864703 141997296 827194892 470472373 661663162 770748266 70939591 575075371 524227135 424041219 709983405 814495440 175811335 753559305 935558626 425305622 170551248 492926748 179968830 849021610 604661427 163284856 699561650 495231815 435690887 795175569 26562966 304106343 408180881 261692863 179433727 953397659 714718545 489361184 687800035 264353029 222500034 296701155 894834915 952675004 947937970 269150026 6226699 872130612 446421788 435566112 495274714 473108720 710731295 805245620 392262451 388821275 683233653 213133887 481177876 210293547 925594888 877859548 787784309 420489376 497544184 870658367 98481620 853899382 234701851 36103247 963734488 238892462 690538493 215553317 984305965 254141466 336890061 26337355 699987311 537322083 940187626 649497747 330462155 265807120 816740917 669178832 90355260 280813531 826811487 95073732 666607859 966074302 380195258 538264164 323849402 694557825 161174405 476425304 368301015 386036688 321096803 488957166 797899449 787672059 291148094 79063831 384802176 159269092 712785845 90107519 918904141 25058793 723304172 963167687 847543209 994942624 364729582 848451254 534008732 445946706 812308070 544663067 362584266 770843288 558304649 743167614 663420571 716438004 581224981 599704951 138558901 781380563 12027154 960668974 248983075 735574220 153835865 124405840 887898679 333714001 761803819 842289371 36986389 412203823 258841548 393341439 237371962 742831154 666415544 859776609 547936185 983335836 654362523 866302758 909396578 477928032 382153309 341039842 99691951 46682671 784673435 353712885 554254558 589551739 866179206 508559713 512024415 488375635 729542067 466128828 431158751 689794952 786756196 246218123 62878031 889570756 874345795 825713716 819659192 212387894 715423232 506684459 385054203 626182741 736971445 261692877 911654277 680650307 56125966 317256804 86815789 232352371 131682962 794444306 968322585 792259869 539140 139239262 18627306 344095368 116275801 145000 512581677 754634737 946845053 903341214 88680369 307924970 423205493 719096962 348682347 571300307 234715069 100602839 161295201 655518966 840040048 868413584 913907320 358930312 295113796 461113459 245949310 767106758 610647544 104608319 638436427 357039075 190513850 183511256 714608166 527963319 433459423 578425135 144780528 903980986 75764764 876148936 926027620 951146453 473801200 365969618 609698704 240571380 761562303 157533639 640980555 274627358 931394011 303491617 575363180 863698637 600961772 637701389 321500900 582260526 859644257 552189781 30620046 939646661 124318367 385934965 937470618 919372803 434221034 752363161 525571285 187023656 21424908 18651030 544404775 834333775 347195753 216306451 414132762 898912331 322648575 816966058 14293277 778009180 46493806 458651187 621660504 30026037 908978830 45054657 204865972 67000291 335422643 162440308 249208614 600358642 162088503 432960250 652929188 249573357 87186236 482012466 250004332 234390120 193225397 905703945 131686025 860468828 774762956 730911725 571354916 86832633 652225985 960470040 615509139 509281044 264304749 433920327 148473698 817069335 551061360 771952291 429906469 57838877 329534115 875910519 108308872 899702624 264050240 505331047 8696774 998918852 981084734 394801781 289169778 485510872 477344907 407915153 231407126 179500929 428023545 515183757 526526538 18131331 319334596 507651832 36069636 452041230 185588414 707303213 296030308 611150482 804229487 479550229 182237416 668857387 828659259 221837899 795346619 360510693 891780169 303883893 931468536 256900274 945783030 933296656 16333413 166909078 348135649 771013470 46479083 703738320 325379943 138077862 987512728 364089238 913854900 75304007 843804944 731539757 290917664 406968169 874961680 964330497 648608683 773215790 62675544 27976264 524500943 949013109 982587495 450586621 883768934 318199032 712558467 996943638 777947394 78981148 259045447 636436187 624416687 828896177 127906994 762631242 377181051 390759259 471486841 930806599 268280172 607442069 183327260 386546789 989445936 123736867 394626273 523243617 765088194 265168638 105467222 671374224 899426090 727654914 987755219 131268278 882760065 703025392 126761992 55342575 595173332 800284585 524922323 402758530 960654932 395742298 187231683 412397105 55747012 231518398 632000913 627531754 9643999 569754877 433250257 867250964 513249749 552358364 545773999 424628767 526535269 724139181 740459421 773131378 372088558 62962745 850365284 424190707 213413724 856461639 319213453 934521731 193098022 21921380 266565751 36445686 920903837 918298850 864845557 180798068 254790576 431768950 133807113 518530012 409188941 143842175 53606673 91631494 988064963 267904868 114407265 507903513 476948772 774365468 597100274 610240435 218939157 931178655 685624304 481166981 76161378 703957567 175128629 394324073 742212568 544639268 679499048 375381609 774558557 547125874 366551985 226851332 287588883 566359987 426082928 290406140 357868847 435395774 144776016 82907517 138068291 41562132 949772477 7582457 113811895 787487531 83227264 558911872 418609998 974975690 37857429 24674705 248318578 743689365 70176407 604943643 366624460 352924330 648691938 647703361 612269675 753650889 580445965 412297536 608901921 354435860 342399360 822804407 759060422 110905583 55461930 50818359 432986944 204630457 483277781 456405916 910160000 64349113 104043602 797204735 769826155 834272801 735969580 755905194 564831811 753812767 263733926 81577741 146129266 780070506 444675470 775577925 315825733 454725682 712447407 617173963 746109630 718707028 435662213 542351141 993248562 607211072 976811997 922192770 996887989 551920933 374998667 86919680 305301384 117626167 705118045 985788123 399452491 130015646 690298441 705258924 536990726 596900827 315320923 949804483 314457531 397906171 439803772 23306164 899769580 670010229 560226924 70479218 461668652 636784892 279350469 885529870 444158680 542400679 208574752 832138904 141552914 725093535 95584800 708300886 489890753 772377183 251488425 434884907 153917733 420587326 417959271 286741290 184545118 13703692 538903421 91750805 458337739 629230211 273239096 985033426 523404357 358984777 106586910 841278808 251233611 489161139 41748915 236797717 52854806 762669649 301315310 829221926 111495433 662675095 744677057 451836378 531298823 538311707 706628458 798927487 942643607 566200150 555159188 220516289 779711400 759938629 885904696 559225740 83049605 657722078 789275037 451068891 530652345 616725895 365872497 555894423 607009622 373378319 114877657 780069037 130262682 547962795 72649381 223597180 425379990 210616832 820076548 628973432 890660709 675250811 312266328 63576724 281757342 431548472 142831400 597637161 746706263 465533960 476268917 730528852 795071518 49095449 80984315 473403534 808750595 903656366 716777078 250251122 861392924 192230208 868658099 579154688 612796735 468940038 243820527 463497047 70296144 411240180 669686980 328154601 372014931 940173900 811815067 361242738 138924398 231073818 817834093 323313890 575369891 926649011 779060071 666148177 416395293 457221625 75578988 944395971 570902756 969040247 14351449 257729538 414685658 986527151 765614382 355350356 819598470 319084114 495885982 678804164 852259256 988272119 768008490 378056698 748269013 167167992 580175922 825958126 448047913 710168631 608419970 727020592 672690275 175491805 326616257 126778699 998372106 456004575 634930327 777018427 841433986 504234488 116579965 495513147 198135891 614584015 804658842 210161373 323977022 985056995 474804494 630049766 687500109 581087077 211248880 752325645 417599846 674986574 180264380 264350954 292881914 729078694 789095228 702227163 507342122 556864067 777230771 290585814 414130743 756086004 784221037 964907208 992137383 498312071 1455084 50103639 246734427 759373505 305511038 653658573 548348469 228312705 906213065 394516214 764226858 597797419 237273366 538428790 201613633 462118560 776960595 311443344 776354682 85594264 286634464 81118089 711907653 279443673 103735346 69947354 575775614 75058500 475903799 440440119 286429360 570722525 793248186 795806611 296069993 819705924 365291792 54413700 224384642 313711830 781636561 575653629 148770807 157317285 224753078 795903284 335887654 752287799 453093399 804334397 771827599 352650448 45367399 385559906 952691841 128725614 85478080 697034529 858844815 458821996 36481115 218666946 590138265 430432760 136511184 385537624 647467738 40354392 344162743 298157876 218504400 450006023 389633255 609726737 238439836 114970590 421218530 704056923 322908164 703109167 297363939 198014460 326282025 472724922 280083181 57347898 83661893 497293374 814600135 655600878 809506233 393054314 244345699 832402883 620393420 235077741 786417668 132708355 392995562 603920214 423042113 322798554 64241379 906992625 554450246 421388635 830632203 649057648 607567780 636142551 622093606 124964583 455532716 943746669 39055352 948529291 823812928 681560348 704183895 864724847 461789512 358601691 726766969 381742493 510021622 383601381 569204068 657091837 934655012 955808811 809083312 894837733 380755080 349609335 450501408 568556629 852659626 431833199 352667490 367204274 621826200 888100044 868843478 386760355 892639907 829283160 729372730 7570524 176131059 688629903 803131531 754830134 169316747 38475876 116476850 379999025 554322943 702633339 200993103 535245596 982262995 775778589 305729457 944792412 865661792 498289106 34734007 527650416 310873785 96554654 659854502 961877712 633262444 798779535 246707122 201155999 357136224 339384364 795994977 444408210 194153335 142742834 707537931 982366471 413437779 936928957 864008240 488852210 296864296 283120429 350583855 282061502 915960124 722437824 576928598 523484681 475787103 607747402 874360535 510577953 585716601 846475734 933564623 620515797 676636015 316904711 480706721 801346418 989161364 738444331 958074678 931173849 604128914 318683283 700375432 339243190 547604178 571337212 649019180 203919948 920560948 539322353 254594270 354994695 169992599 587428125 949452115 68936313 78920161 843606790 343316179 108365276 454035144 58284239 322561465 220742268 307141893 531944818 652840150 19924201 541091182 604614467 31169488 257043595 683309538 31742376 770264049 350639925 308740925 420147637 279838905 53713778 830192665 145062120 194664652 396165553 632311915 477023007 39438040 368956384 526498681 391043533 940952406 677584834 681597020 967717614 230009585 436953904 940677354 145029897 554229351 906585682 285054778 108521590 505670571 624295028 535713638 591261244 46993509 646553990 667501302 110793173 794850091 600480286 169243128 951814387 626258086 706532494 491791092 616267082 756875192 58983421 974876755 372576638 120610277 9316728 473266010 243148897 371935046 792022261 355696924 953806530 705908354 872940218 821533374 207640098 59269235 535424719 251821964 823703383 179076802 292474731 552733267 330624752 881436144 849034044 244852152 625813510 12495361 861623465 281268164 836802071 241287622 707731573 618786340 792779500 93572846 382208585 785500806 907417342 618529500 666625071 930622918 527278326 790478378 139916412 955657738 688172953 840888716 66255338 780081166 457810962 552724062 896135752 524029969 765595499 969689601 40882789 960539297 94855473 650641994 831356389 390486938 786431455 134969856 70736665 284640706 294775063 328167789 400323039 621295126 912541148 731045630 145123142 297219684 620440220 280758374 813036996 422735142 674006206 436848898 160109666 403197919 664690666 201970159 78122278 68060353 725818359 943284440 728912534 74543069 19509559 826519594 161362290 475208437 409210347 236788666 40096143 698211452 207907932 837717633 9741640 772340567 395087590 688619149 467411527 394580968 108486678 997493345 288016300 926330571 358534904 155110176 57273261 855746624 566746164 645816573 520259376 488959156 123521043 912210387 7324117 64587219 173000122 488709591 32028293 12216757 852370947 403757025 377654269 546061821 350647999 800645837 643525685 693502290 903254650 515144326 838562136 67911849 534578388 486483517 718280021 947976583 275082899 840511178 249873238 820529500 874411200 123113589 479300824 626069744 180871578 126305309 745105571 161145069 121889019 585507446 408604478 838610075 829966661 742020902 356095495 638175109 873758141 294485943 898307866 286557487 451070898 134751135 636582972 19612848 547554744 392821229 588909845 786815718 816756589 847312558 534406506 735841468 998232941 950885467 639610574 336509488 325805390 672094175 383924606 503391056 346339940 552608705 274657663 556788504 454883701 921021767 965673798 704442241 500157266 363916531 769045127 428298644 571944019 574316376 553211689 79038187 77260064 80628211 388947069 318503942 176466621 381477344 314012036 145168811 464381650 203798200 412151752 954677727 22368819 383167890 482353208 714180332 151327260 578736207 845900735 395451149 41966199 768030639 563683007 295660073 822800041 270660194 232714648 990726101 930842368 478135879 603051482 13012697 949252815 595789326 63761252 169691799 619846741 122930655 598333317 951559858 828422280 847099168 464875650 909230832 431475877 450859852 250259539 685328369 522253056 52353267 412299306 538106675 603936231 254169008 331399798 830753228 460656396 890332695 607010453 689752150 684032208 328664370 115754714 751997376 866006022 161562768 367024041 500873243 97310644 819750177 254132463 391090289 948620678 541625230 763444455 336066416 258282389 348236841 543663950 933169120 536477277 659010428 110376245 68601232 213991643 685081431 837481078 229734079 256082129 548026679 182147727 238379567 996608818 312804149 98935341 912183784 34330094 271041856 600551257 491743852 100758724 928420597 102680293 436670829 727548278 461844157 559311370 317293915 845856242 698700412 357741803 445012579 457965786 497863659 318742705 894260894 766062220 851524418 572338335 874930649 185144750 341542776 567018131 896094301 46512839 695663506 765644053 701768145 823624625 947282287 594500441 644530562 888564277 902112625 42271657 25876239 945720515 316185790 230978422 655315845 356075126 931593159 949190883 73961519 617410190 126478351 691813058 672939089 840746378 419800642 333772630 599347766 287555040 395986177 274363477 949346147 240683332 861088553 647335121 630486851 514947483 808134632 195610692 293160745 144566225 914297694 788566302 692805050 463506777 505883741 778623091 478760886 906849198 349265159 952937855 548081894 466402773 316403980 245473455 882313779 779885272 980044937 337426085 782758998 633638102 275535825 33307713 978396151 583163681 501648070 442348938 921684965 314856090 645197931 983003216 673038649 147392269 76701064 217214296 361862396 518074506 413501449 727752604 993599716 467905884 931416923 500089707 986841162 584495522 326713527 601972701 479724920 534204069 802694040 918165796 672084917 226124859 81154367 166814518 153215410 748305875 220652391 804336793 341926960 474747981 691544137 444323090 998126849 739160012 453078708 680755493 340592640 313875647 412208 471646065 725364316 844011642 989366809 176051670 35366911 839047615 433145646 389801255 60917330 452928458 130182688 796574296 904569857 934202739 481048524 622692683 626488017 421548746 817089115 825540862 401446674 416323612 490515059 193881007 367438953 866201187 263267032 283635317 387286739 492704996 134849131 632145706 202005944 487921217 259653426 868149321 78483100 362827488 129277898 104814851 348996534 773202837 800332399 701574711 216804482 148745253 192259281 342126205 422398245 875403288 994512469 199290606 52309758 764044257 674332664 443207891 246940960 385863037 616169860 173304744 298162229 409245903 663369735 693840341 873640784 139780153 245747238 122419009 186067695 871822285 54252328 169231559 744231172 936946720 107193420 447665625 6693717 810784782 203049288 188820013 986952060 671249901 4617634 955217159 382864978 500706180 101449307 880677554 682682488 574473618 436323683 787070763 728294564 656695455 848828460 435262453 339796915 978160025 845764331 535622441 930808763 887972463 359172241 864101385 975675089 680314360 703659996 322558822 900467942 830000559 653245912 63027755 849997321 365110926 218579210 621506091 881434347 741345477 619272503 858651199 408639067 563432550 368262238 858818261 240332391 664898755 747036363 350948645 705967609 352743736 298719672 851524357 803724093 462497538 139302792 368452697 926620159 111592624 691317138 287916795 675062418 143146751 591197123 179370283 757372782 706608255 739080858 473820972 734657881 469855692 796378036 381538785 903146304 453496767 262188386 116888226 419754266 367429007 747704488 462962401 476005720 50666450 407535744 289604941 617934600 247214153 420427802 135836359 941271909 7738171 82046235 55380895 759305910 233647314 97210849 195786270 118533560 738856276 84380564 42742763 213159579 532540596 795975368 742330717 129856363 762996728 545333932 171384778 731591963 740597461 335232280 51164783 904949988 613315346 632154759 912248215 563238201 600864003 141339772 510157331 885528006 862957640 625594972 22253528 436067242 522418057 991217365 676821359 768145110 362541788 56301840 183552032 254146075 428687729 998172664 328780148 992258776 985522672 25406475 308138364 958628662 715085759 597768661 873985789 69222831 105435060 810726573 323043172 310337528 944163689 441527411 698862854 203538185 47158068 232331300 756798480 689168061 900431797 608722039 38837957 342336562 445805747 849179541 65922994 694986744 805022653 155262001 298018337 88024943 436521856 299485246 698463130 948246147 644136089 654847726 246780451 105918612 792012123 486109730 165797771 380995686 350350691 604107569 201980215 378608563 352758317 49152902 385719890 350282707 270503803 908885147 853501116 448809199 16318930 554384798 208470522 65863725 385581201 12974846 726937457 415883412 781422911 442237170 681477889 482906677 393191549 511488808 891432583 436518726 233248658 866166139 435301630 765557246 978003031 852052963 235935956 81642315 834569610 984669775 466942905 170421475 796900782 114305172 626796311 645079042 664850031 218985747 330731134 803813454 126724250 741016288 433907484 999827758 103068577 827186370 743141491 30805894 238587398 604177831 17582008 65815630 194940475 469101812 974713077 791333611 577254598 115375220 289604329 835555030 509254772 951287430 182101770 938739796 983552521 552333837 254735063 183331327 31746683 604861313 292963927 139016283 267720017 441981104 803108473 125648065 88312779 36826591 168510780 73175535 137829503 237464787 808144716 248368796 689811408 774678591 935919349 288736576 906929968 900955789 512128013 304671900 205606878 508850299 861773343 587931985 378224056 582292720 107101139 455107534 125981930 219096900 94955889 163799434 664163806 470929789 183422383 371664330 147871253 61364728 155892980 400807555 287708416 710980845 539870396 554345284 755782648 509655597 424056158 969989184 643370742 3424053 447157837 284230498 303751889 421978954 933005156 201186682 619407489 982101866 852119153 368499050 384115517 346255956 602848451 16072766 245416480 383985614 659612559 444411969 693524249 627764028 380761645 285850906 655858819 873522996 910987312 500659440 193335298 66784259 399223927 948310961 416917041 787119358 814203127 911458316 383674418 283236561 779341388 950336822 504865988 154500592 320412217 892771121 821825793 770640207 227731986 583070969 542082483 628274823 971075117 323613609 935798534 716850506 742382212 970459770 146602999 827105205 736837409 626147438 602999443 14947719 334213780 434786654 400353909 871041609 614652364 53503402 264067489 836250067 960163490 592590939 423634381 783279239 915849701 156472559 408938886 819735360 273476839 498787037 70444017 821855391 915555610 496164677 819032599 368930592 674404205 852722699 332971752 867448137 300942141 572094008 281981422 35226317 8663711 856766117 250348299 316813273 856370991 486143715 455797473 26247926 164884317 651762847 280137780 102278291 878099567 12733121 290173431 242369247 778794488 984808484 474097112 689659322 52462327 45382945 387132594 990849995 949763493 65227318 761005784 415374177 76183850 773748123 890238587 312598148 859228743 115884087 938111506 430379497 220566661 308046594 621356825 498158799 686320548 920558317 434644994 291335576 628355518 405515325 668019742 168782631 429282975 625691464 441972040 371294730 859801643 517115903 987272528 837519429 170241400 357992711 248136018 706788547 91226072 343001327 188030947 264535251 925892760 919186949 520412482 931184323 820599287 632669039 178958167 278739017 90278734 974313348 668295882 529720646 990440926 695090591 992598455 937966139 609545521 936220705 305552868 770263891 458203233 107051917 2093272 193005938 850923071 188002259 599133536 332659244 365537451 451063347 618890221 386502836 759208347 936378956 890401247 87615546 183393154 33309540 968299200 436060356 437552639 655193426 279203082 756269665 114107031 765284962 972429750 330547156 707807824 881835582 761270670 411461606 841115609 79118524 74805271 72343821 286829041 481933083 7727646 906375009 241002429 825165156 839391404 125348079 167713303 873719859 717667608 619572806 465232193 779723724 478571897 334850646 571222473 193667911 105194192 750368661 443969666 224402236 69825661 705763886 201154479 73084272 515901372 406200997 707560997 399364833 240379650 510189145 920423763 454330196 16905848 908978496 392894398 423064299 192831451 612483492 429788090 757263135 780655216 286312663 404540768 479122369 483240916 235665507 878639632 438244493 699498577 554249028 177987768 124924603 728519755 161324767 665986473 27738739 679088752 312795329 302753052 734659996 43865846 877737476 352744219 127781926 426526591 441479792 813760677 245424238 715860499 722148428 324146853 506017604 872050933 360792941 715499599 525235157 7012346 424237164 203338311 336947388 17754435 756743822 842483956 264532086 177995138 868181167 949410912 147789903 569162133 241990184 898106057 884723731 531829984 332028478 990391142 341508473 541337242 369861816 589198123 178724393 947206541 698938199 622340891 154366213 739793949 914753219 20020169 932556052 166953055 693657072 944437201 449968381 642369834 885348743 195159367 745306126 870211361 300647246 287797049 306604598 127569574 948546311 540682172 539393607 50762529 103759267 867679767 241945953 115036956 555007943 457461851 922821454 604611583 668129615 960565426 761707299 743810456 604078830 427494617 491443478 626886599 723794255 585961791 11023067 948564458 587872895 92334994 600460261 811658249 889998082 955045343 632912729 319713214 800178997 772118337 502235208 692441170 397133730 439758845 880881478 288862287 190481747 305420386 136443972 200761825 20695092 597695492 555935736 556212688 22690273 520481067 343355998 396317122 891345800 369271687 381532874 57900412 408315389 516834538 14961378 176460178 385387290 419915138 705436020 84689401 504680333 769984113 498825065 423287045 982152465 769718682 826289165 422363564 778589221 215726740 521821204 944102456 469491332 618827285 417284283 159587302 399849209 175456103 211841742 875137676 803976777 390409670 160105508 895311503 488971758 633549659 653848620 259378521 719621606 776436414 284535517 51818640 828267857 496320931 78318137 592094702 861510119 568259526 663414668 760923245 654768593 466171745 379206863 140218594 374002597 972587577 510806013 913982225 468627767 416250983 410994247 85186272 496882265 471850674 747433683 301191771 6747512 27077232 612058343 106958948 46450198 571461945 853632601 950925716 463151249 319849674 497721963 17214249 867751605 127376562 673820615 112486783 503427716 240129997 579597705 933668439 151012324 478326800 173581786 603280431 404627769 25659476 770739275 404082709 696973433 910983636 143877630 917032844 897165115 923153803 254909814 292974707 934370180 111946216 740178174 550135335 518863167 794121211 597747038 982401427 80050916 269113091 872960369 370456563 329927174 461213329 409774578 373018937 513810712 476832727 65317518 347454902 472774859 348321866 512725262 145217340 323448222 486626976 828772694 740991371 577347816 447958225 924773860 748547497 728939911 188661905 248442417 299129710 970462399 991050002 895618366 540308610 852793362 648616773 621681618 964616914 379016696 300176881 174531065 473306456 223813358 804668336 802740086 192360715 398297908 688426645 507553224 682563898 945963330 229714230 412641853 765906025 889992174 98675771 831029478 71008385 844315484 692153218 63155992 469921211 954984896 820221775 770804963 453809532 202641964 691987210 334514219 735662368 499723827 937672110 984187666 598346354 771109985 358957727 392332012 137505159 997170042 872422075 636994433 185394410 935930628 687446107 765117405 812177450 565074342 10167349 633464210 690383702 823695440 572631656 457459048 426860399 760472880 919047967 220070105 678771943 528744578 20416519 64673793 158351401 52193988 38950082 149658342 866928051 982663294 289786743 506243554 460374867 891826549 573580651 474888359 336043789 249422557 618786557 386676889 789773215 633792489 512782943 203079093 540708918 547088550 428620896 945306172 677987447 727228397 886597069 146995239 510173731 96968228 177407350 601513536 633629703 293840935 6363310 885245573 277273717 961424949 749431730 394598187 396082829 698403111 146365945 598221059 884704784 689964426 680714736 850921439 885191014 64589579 594853044 776609147 665995122 363983883 80768634 735390410 725892123 259661962 631431382 108478257 359902328 822787778 475023213 487571797 99082721 801817222 219957688 192283451 378272621 196567856 610462892 587882305 117826333 437861593 838950136 549989840 597699025 795507384 418252830 495838752 875865951 624356633 356727865 267521504 87376725 376304834 755356943 808390976 833200135 406546143 590945205 509515777 778191100 975075097 251996802 655220096 441902172 361423925 473349979 138976682 672058410 826619139 424070329 768820469 829875879 170968607 615532322 663339802 349609936 942116477 235932781 56221856 724199039 210198807 610361781 34011236 144169008 206651782 574671116 327977773 86574341 188943911 162795033 560445248 847505316 879519742 492801708 345970806 561635619 632860473 755514990 151006549 981097890 381886698 943736663 822102427 263602889 42225604 170211308 184829637 971734412 814088477 369181006 567891468 291008988 105335129 957084103 904781206 215395804 243831395 25585495 902034476 410579658 812580903 555790823 693599581 171851483 816212319 13340067 87963050 56209342 210057916 428937828 931596733 674172931 515260962 498391032 26034300 347037986 334679952 369271836 41029858 641700255 790513544 718036467 433965766 828306065 333269104 134177602 440833442 226618479 722579202 33871747 705628815 815436858 16497537 691924425 347658750 704349464 881327824 768009393 367304462 393930770 972704082 617815386 289775309 644111417 735219027 418606800 801591978 36509630 114420832 78450238 24115501 143643843 646393819 783532010 551767229 905872688 111223365 948217665 45512922 22279701 263779565 363524489 916941959 348315 115435507 973508789 808136519 135912062 336956015 485929152 220359060 301983731 660938478 363935365 16076367 920559892 995720197 60408633 465067742 912518542 627781623 924132985 225358024 736597091 511629298 755556806 114120020 881064171 270812551 391795947 988373295 642059286 961958877 453988251 66510160 441690607 172635134 185480097 801001976 112838711 874056813 715565257 2915209 126075389 867757362 891208005 440546332 979549342 492503705 94473068 715961130 526499715 773900954 549188834 19984152 321687154 414743281 304893511 162993282 464601456 204595844 371258848 625050152 79895086 836712739 807928700 938001928 95531312 721063099 178210564 957085577 293830456 821718901 878134662 908849137 489034847 633765477 774501938 900376234 311638059 722626192 200229193 524984477 588637979 947538921 723904823 785517536 59792672 855036221 68254342 264889191 937097633 438266086 828913631 579509919 333122879 104254229 999460104 99463594 737521907 602957625 247825888 970321834 486424403 839254474 363822900 902992654 316807990 189290102 62211621 434960394 478202328 574577661 918963465 377644764 231584064 161774273 783456393 945408988 706491058 76429682 501100741 269550293 953778831 340219687 34651413 909667836 220258528 707161880 451924773 873820977 525734418 325135802 448060872 865426878 247273265 664160789 941405022 793184204 631901640 728660884 291590801 743885629 517769071 946247301 351314272 519422456 745685619 741000895 895489285 612321593 228408352 289435692 789338923 285626107 656430972 209153667 334000559 504314699 985620894 781884194 996695145 243462497 917914660 842149347 7083370 572816184 206554998 543603388 634103134 468982338 204733831 608465324 147140851 140196382 625593069 511599491 314652287 395334758 609797773 970642984 249082035 389844558 989674418 22518399 772119631 394316324 309403108 876095246 855709495 375740523 479404579 116132015 217843005 11584486 697834655 957537932 966125481 595889958 789694441 546113166 231486840 610786833 64690539 485819941 370861423 86911322 408051347 764177685 429357942 473417982 82015011 153119623 815775802 693562422 692650046 430480182 555983081 857017517 834912252 764934969 308771871 209715726 551120656 330569525 854735334 601904107 780367174 837679842 245814980 729109259 920731833 59015493 341924310 202358641 961680207 281276255 243852401 445969936 647177234 772587071 145899774 633066055 515803709 485332469 394492770 977319980 575509512 962088633 122676694 791228949 21221812 909121196 980809 860164340 325346603 378301942 396167046 584323216 671811128 898955935 897144256 389073572 258362190 873904384 589724294 893901018 565843740 986215985 671097075 493927837 779606484 17280154 364246895 569098102 600595008 723499084 200547159 876701152 959177275 945121864 161859381 88027893 558739218 498054441 344031059 302677840 841573379 832944657 951623249 820621983 8603207 579775554 748146719 514574146 481542156 455101006 652215382 265868072 124176628 847383146 870745702 607175755 311259445 575630767 971102212 910286162 134767430 549580216 213256836 516424921 33632212 611438411 995607008 956705378 184013640 91518762 588674317 708791302 60758498 970808804 70979987 752572458 765408796 745028683 211308372 781542246 144541668 346365565 43177138 806517805 977593231 833962654 511273564 37401886 171458883 999579685 156476565 315239681 170855064 823070392 694267351 25941923 940606637 356345828 333929663 613291792 1854609 983940828 879986949 568215882 374220683 611370603 230394577 259227988 931129796 984119301 61846148 181399867 100572764 551788405 80973961 301421646 720899293 617558906 12157882 850601170 508965458 535627148 125893243 549768631 417257479 854260396 344813920 595300526 224952941 869400300 528024152 770805719 906647541 629672027 386665995 340845648 897917414 662749342 212501708 282730704 45291162 757918109 647082889 426497480 424410160 186446115 231060907 173934540 217073255 612456064 719280665 538158982 774192580 958128483 902025682 9606807 659723152 844692114 883277357 35573629 449765369 599910351 199508096 828322943 505760814 92992159 142400424 342583256 177869443 924826224 731028046 864049491 198349203 799840051 955127287 421843796 810383846 941734366 446016081 811804736 801048653 293464846 408427206 967538152 908523399 317111838 527380608 106194918 445414815 507222145 743634637 847743009 508947821 661285677 81725717 196447946 523337469 588522925 177746058 585839938 855930762 378221849 921388716 86395978 474549642 154984409 574757509 584342486 244416408 679650922 472012226 513044274 37787510 839756677 500809330 364686404 456164554 888750414 99067803 438129832 552276637 496003944 810978690 666714958 795374676 209742994 611120925 403930327 588440869 428458798 893122756 164222053 535755540 600902704 317012331 721648999 745335620 190803407 578837923 519437274 354772581 807363696 336499021 418432017 395913889 520747806 394530950 338297155 561383923 550104928 523710896 455910994 595688755 181497845 66873595 703365514 949753438 846151979 118680948 990922998 544642601 846163779 230366081 329491472 664071729 170007533 664182108 315466767 329333417 188946999 762156018 784813682 393385037 812384047 389802371 764840370 192125001 290878490 402477319 240302034 787101805 851200874 328286147 285886926 791959607 429607646 994058612 847023211 644996459 490321094 799460753 733472319 27598308 824274068 178889104 340418826 640394334 636545817 470025017 90401259 593088937 988351287 33803185 896286042 45959588 553164273 982604218 907417614 868100511 613927149 46308557 812964188 650338660 45800115 720579610 329770562 654917375 498813773 266478546 974587885 746444786 41564134 661965347 75136865 456307554 143884184 192003761 621892055 973261431 852074672 712194416 894451200 603987797 708718211 921773105 392740110 881412579 126476321 923231687 308456824 177760466 787189300 497946569 117392068 162571786 847955762 192612020 863072839 189270577 823870409 594952612 844338574 306850878 923320306 993955607 998017771 877176838 969989893 845447212 429299006 692094350 786353677 578872287 709582993 548542741 155633741 719489843 264249038 211205625 694314603 888862903 165106908 343187325 577986112 520588180 299222288 939778019 243046767 226672140 912648166 314852965 66562800 180727085 462542708 889510500 191479734 680931669 800737519 917684806 387222029 620202855 197988748 638916501 661301 371554107 874140023 859909404 67380781 50611014 470677831 834011248 992667190 592800710 624079584 134431615 889506705 92225987 174096184 20130036 82267458 949499214 529350636 81822262 51936996 380747986 261934604 517344629 151793618 978581262 623725665 731794118 601089830 787652687 611976145 290601821 114307299 556756411 933516330 484220333 489925644 726236303 941634366 785412299 31951042 489257171 987218094 295697860 515146186 852673854 838110253 360052226 886331040 684623445 716201032 860253049 793946954 228568340 687923394 471531624 351928839 941348565 68511036 88918014 810027355 833173581 766069163 852447521 448221370 388458220 533625922 525458284 750301763 27580979 226909456 546723740 722541804 145821831 422479960 636800593 769560889 833447758 18035397 538150329 472729710 619759863 80314212 642744515 4603543 547579538 733111810 263095681 107586579 414684977 226394208 142075719 303959583 679729064 373222032 39832203 317730888 301350966 765370230 849682588 899322324 469885011 316776505 576275170 220365919 400254985 536570877 200151152 673329470 198864113 214161851 6825693 877231389 767810794 560879910 349138210 997935076 310507912 796217049 893987582 87630297 982645063 762688621 861743687 803084957 350549278 151734094 698204495 490633711 172890690 73566218 410754795 905185490 686046947 165636302 311328481 263568159 763539096 976352659 486767714 463723214 157483964 487648275 34566265 671348550 966978005 62952023 749085500 560768167 122020728 356723753 241763169 26626750 718220437 734429894 114835854 426087729 690096277 757754395 768781784 811342142 365957277 561143884 629511744 295507538 983695742 921790911 867722194 136448960 999498827 380440551 984196005 619166014 30092412 68354951 218988361 420015123 728571734 435927152 130654549 44048948 984505599 670049396 514924735 833475191 970102964 892460350 337348297 858401285 65330939 299958951 470245558 318075372 465380412 621149033 923390667 206321980 680016546 586611066 395019779 31379575 31313678 962556487 885231300 273931 17254948 282417474 611979171 173815676 625709609 563199617 780493675 576691080 475060595 156716455 178366747 585068493 860276298 495221770 436475397 389980032 345641769 732932137 109609557 5871278 985361546 980337944 110290341 286696140 228598558 251402111 735518490 784182965 245382543 397106604 122686298 305286448 304827153 653735119 304718216 88437656 823164871 955124682 265142616 188027838 66069184 170049294 196611153 200419906 200330367 534684568 277878895 246611769 270143949 203043495 583673381 243493615 800168527 656927480 755135070 236714303 714409669 608431832 858819176 187727417 218296021 337412923 704030666 894494309 151759398 155132434 64928435 167786932 225209242 631971577 840780296 125062378 94726897 134257520 454064871 463822684 924716220 379866047 925418169 586276428 338868688 620932086 281588141 150382370 2960653 74510624 201174922 409272206 952376423 619893480 888705741 584601782 675377486 59622797 39226905 507543577 59362621 218780792 944694541 423720778 494151815 827546606 547442910 905668696 181706243 943436877 803029051 649372032 20931567 816406333 718330546 80410101 541125814 405707003 724898045 549692002 534703448 484420802 394486879 509966764 645854326 835934228 589591863 951876614 79401527 368462300 982000352 965547391 524993455 787251000 557072552 928129163 20975334 88835942 318674672 379286856 394372519 781672267 914192318 900008471 877633740 246653004 429033972 118434137 926014424 506825569 657124514 550978234 886413052 984508845 733520920 326750608 452663278 238576182 140485344 489070375 485269486 499398361 76332388 676577311 86270282 411594849 851128519 210641571 808306097 156617650 285029156 99099719 647130431 246648782 424432652 605752716 892265383 769230345 612972661 936122432 585260811 401760451 415947581 679113097 163570039 61165224 632215562 37744236 876637342 519798102 516510984 829571803 72153667 981432854 381917335 354496609 394052503 909401180 878557629 422685017 825345969 454310101 948818408 507393673 495039716 417134389 667268313 570306599 636970928 459904250 298867886 687312200 759118616 136255632 803289361 944824179 519993264 445640630 248330001 38972148 284455773 288241986 614583030 560371520 877081566 698146112 379524806 372586457 818346825 885284198 888090408 923802552 283641353 226458782 865857233 53630977 146013689 211198834 756505375 654711003 69336240 382537595 124189465 111244541 980858476 548163712 276423937 46969762 787413904 133471275 454130634 67552945 982661146 698275391 239881989 330149828 793477125 972715233 52387836 516398978 346377753 730044901 208541465 157910208 60496168 479407576 245721539 112244768 794314658 207525558 588990869 502347026 609303605 112041843 479627549 302622927 174373793 60399083 659836835 993203931 309064328 873947468 910374295 588325507 417122386 529463008 88695744 785684055 676872433 755133218 581128625 184253329 222753891 895965785 941374901 912053437 258986428 718775697 600702366 9554569 939298230 176392075 429448547 307265884 220308964 460968723 256775886 843197598 686187308 989260954 882264301 664479245 995111113 554742750 703940603 886714968 441634070 719612505 77306925 335670409 896185488 36883642 127525641 80012632 326567504 982032023 530899375 484926856 134985472 299698781 573267806 750234613 7047895 254357695 478749738 16603571 947328459 45797971 409096061 744588612 570027246 199346770 774689819 870749752 814111627 837095518 933658530 317471616 513928836 371144516 487534060 417882057 645807916 76802075 158070128 878599556 904089918 572709638 102903656 81081418 805288604 957740688 660966792 582500916 803580435 921008749 899287300 896272241 585896311 425144859 342262252 941222083 884822317 362888387 630208659 505548361 331063463 785433072 889416950 923533912 542411963 826460054 78915877 464638033 74925640 484632416 558343448 550021974 459330399 998456594 822367482 1687843 764679173 536325316 926726813 195905357 377376207 667543755 771193077 155669978 727422151 926998505 306737189 208245489 954880335 889106713 326642870 990180110 325664920 57426829 281322061 516012373 264928702 651869751 578704245 415032465 603325734 105246420 926712941 871526467 323833907 870659769 841504299 839134284 85408302 594142052 274926788 782204040 770661974 697027528 126801996 692950545 193397667 514904351 471601357 271033173 67387622 834565045 203517295 643328793 317437724 148157670 477045931 747294479 828064889 355266457 414088095 597234662 911900240 89242222 90814879 167539876 700462895 673685536 624097102 762196212 527674171 856148153 537934514 66870392 12128243 571197134 371865948 952486988 180736550 710403641 252177757 295549390 276251468 444974710 450323123 996399872 526948290 878561244 608037029 425653702 418172273 889339083 831556329 184193474 376875351 815430990 42138859 350355481 960777957 728827739 968061418 175083407 663137377 445479373 724592923 53328432 626404193 959482184 995810973 916278118 366722161 133786743 961443730 957779732 831970880 92440648 382170872 500935106 132134779 243858006 825663479 929116257 268938742 69454563 994546252 193568215 718557199 336370202 33071904 885784972 155538728 200814554 503369519 594944255 612182776 749317177 138089940 248838359 52720623 307401748 255200377 920885854 873872317 209051742 955864289 954307233 317038766 97651487 823489182 385064200 210372811 561220472 941382479 641179650 354212199 62284861 110427490 878316230 279662040 621063611 205660520 862999271 959226291 175945882 514975279 25834588 712522844 696611675 21767138 65350488 70885331 893098188 623757070 982610947 297698496 684371188 611834131 333169051 695170241 146448926 249944471 585280548 963302756 125332941 228627031 781820040 916233265 597068410 617125973 483849244 702269479 419812415 709117032 554983634 309740971 667914232 746208886 200998829 163694812 809099145 33244548 328163393 523266122 920898069 636591129 417416003 680786376 664435075 124071164 993866330 807462690 414931853 88208237 220854382 954560666 357154482 805464830 117891849 463538627 211735317 813474072 990950377 811198775 387524614 172208043 284487301 167961395 558849502 525298905 57711674 562557601 863301554 120712208 150857660 108704420 952126011 936742692 400491346 269281004 982736357 517707596 885804251 258554224 691471620 263347884 988553679 480624659 418522469 502617120 890351801 365865379 474073285 538929102 331194692 19244747 561199772 233583798 928045590 325744173 702966289 194341173 56189566 602481969 245962199 87228338 571859859 235335428 575583805 145241708 844676917 838977493 256309101 905010243 801964666 584967035 741455387 361582231 393480103 376643623 365794374 782029028 309150338 459872577 102070420 625928451 180438716 550203412 208807440 18937721 773000622 865505736 896179758 538947977 224733263 319830332 342854789 688226855 396415856 917821429 986983605 25338570 425125159 257176560 825450318 255071715 432323132 530395899 804887216 832375186 772168678 386064359 650507333 988847797 686500452 436641022 800168901 965237536 196801518 172687319 994099891 107484410 52566463 391423028 248399355 983879301 582656660 490628463 94444664 798759076 88349750 201262173 66876458 303229306 947249598 842855107 986283806 878526695 811180465 575410876 324734925 544714060 643924813 732926912 990894491 378091237 691501090 35000509 3768787 564579988 230927377 582270926 186726791 254221443 707686463 180083630 339061493 886377763 285783809 648228077 51979773 95028554 510213794 926029598 615617012 90369343 840199045 215624862 856798619 518558485 4645807 105303 208864097 350488897 409574591 996438970 261844486 707468108 410100771 148788274 147650100 206563906 509523902 795334571 562767965 631374331 753054054 554453025 772506512 477244189 215458692 106515548 25380767 368843779 237906426 328533439 421983800 867492248 922765596 37228188 656390577 711890178 504837626 650078019 277322738 664095494 561769076 53700621 937712857 825608499 531416786 921261055 363071096 67246057 777779642 643713497 842796355 464998058 147860930 659696629 48346169 857414030 296805046 913797124 493567840 366547288 837269223 176350472 660458698 27513904 451780450 327717922 676366724 411302095 670646848 720211582 863248314 825252485 766273138 21631504 145424810 948717689 355727504 964206905 984576717 127381274 407531969 75651167 801014702 396912943 778038147 780485100 103528372 169377111 948875462 11799455 650160617 85556512 873514404 835535745 556807380 225453237 140140186 248845363 619577770 602530344 645821661 288350567 224116144 108638271 184584983 988669677 95418455 459932849 5727030 249454653 285727214 798694752 434832467 540612069 638151979 121663500 264756599 793571358 54340379 228429676 210276060 950210712 77921528 345074995 296695907 525072312 664996992 289723985 255340470 716967390 56708680 148881245 737566038 764501768 738274840 414911802 871950596 979215717 695153835 384012615 874369318 313273442 940428040 730457400 667656673 367394058 321055693 226518083 704234253 236844102 935164795 790869742 962480144 586205275 67040210 549975198 583295010 850052085 919034438 346809367 182551020 549291715 414758806 690454934 441660373 503696603 755895518 584626434 388610676 442027862 581234332 588644861 527425183 123768932 776521017 848198812 693893697 230880508 822445122 660509045 13924583 686509958 407226619 174500569 631590118 94325527 849257553 336651442 93500705 504071100 705467343 780568541 631227915 370597479 244229320 848586802 964418596 545709046 427287147 284545544 519424783 439063334 977506907 412126922 973186866 918469003 608406180 738739756 178082602 51840730 18752759 48863961 395215614 58701087 263820967 227937144 536835234 472348723 33816263 918052609 237818838 226840598 673522581 833955967 881379927 520669277 74050685 217736390 761749665 646055134 202333814 637463411 603656748 756618389 363313792 94869690 697089507 415825324 374335195 539976709 326569820 336585294 439067574 12317037 189612058 780438048 426484163 177065120 463394149 344789861 753782106 294205288 780583900 723664450 217410375 465705218 850881590 53068262 404529730 781520790 222313887 283027494 915130388 505415429 200680402 653665819 384035187 98011682 466241618 151342913 243056674 959203900 582248080 292535606 426872974 72090090 82137335 766417212 684115149 750339036 292595396 547655150 331615684 645996449 566295580 585173756 344578951 616499042 340278591 242124715 197580867 241898741 509086274 793750715 347553917 962365999 170371760 144430334 813235993 183045439 347227762 266570006 477481565 235574507 917680936 99732289 37518342 908177224 977035959 221815119 606584810 946829709 862462719 881866359 362297843 350229822 469222833 747272718 815044132 513955862 450655626 872881414 369335228 780777256 800809803 556242749 612078838 286929736 524211340 287184081 563264965 583078295 533385271 358661548 549704832 963134207 400017286 207246706 441011292 79424304 174759217 715390257 25171168 42097921 693110703 732000937 611170126 243243407 153477920 747084882 677796485 30256923 645247242 108925799 647984989 806899636 909213620 403984536 389018795 285881002 960260879 267661004 241428573 529965352 745254412 840482632 841403211 989435385 604952650 262533499 930666069 632719928 580861351 228162828 858129669 350951447 218944292 984295016 973619760 453646921 883652940 329640219 388023116 512186433 624214333 158295959 148393546 10640239 57285795 630271255 395576160 24235417 542997823 408471767 444962329 959434810 876359060 433273969 498162045 788470720 815949095 919395067 476079634 773959117 270353388 244323652 526164368 250232642 910979751 710863658 792034127 367890181 243445350 267512165 810035708 957513550 539281202 856795489 419513346 930118394 9899930 677584699 90375817 692798590 416774026 599746288 97086520 472812381 218849285 720645090 794045487 302901899 718288682 764156762 268897858 100702385 125172233 706067404 875307281 723205914 252837496 4085129 276945384 991458736 327154766 199154535 764638495 604931407 919202657 206694565 577838971 789089346 383929197 505454469 583381917 977699890 313160208 740925931 967736653 170454706 445366900 377677415 342051477 854531331 71133515 830085523 707077292 482448038 596945820 604985269 747378412 514144283 214497344 918202102 727944030 346713477 523879180 138095544 741009326 660469517 500997870 452141563 388438990 261974017 551880750 906153125 852346035 308536550 676015236 611266858 86549265 902126286 324016628 473404793 432982510 558379863 721701813 658026157 219954177 16759464 750582484 944237088 633805795 200647919 398061640 833552185 805790612 943994028 327664704 371319552 848431239 137659912 510581471 971783823 720576580 202535869 216306866 498977303 417748910 44035726 290346444 629220423 955435313 267015612 564513512 278719096 134815241 918152964 861633759 322113135 97067897 311087373 196842731 270460119 536469326 729047149 481864660 463735166 613378891 349862566 437988424 471700627 795591411 723240175 902242975 640326621 709783373 732191727 926519305 942074914 94345416 323256849 205822375 431964044 732331331 749737533 918316189 724615295 649516427 623217535 385179524 136920577 265174075 272741888 496835189 254489891 682308333 818890527 608334169 109981676 988318204 490265988 515290611 873719418 298743667 214220635 558948414 225109252 937738978 633989967 211045491 43565543 734841522 798158919 426309955 777582195 494717756 412463161 987125575 440814617 354843738 192107843 693173444 155488056 600513401 546509421 87147208 797400604 565012927 391337275 568680602 303964174 192759614 32543408 366138821 222928883 839611232 576460854 333031671 509384828 117814559 436808191 579636378 620917498 815596552 984740538 606354589 605223971 608620297 642169702 731443708 834218395 618520524 283479054 638278681 781672717 195647384 287120781 146594092 114261514 589838085 325855318 454746997 905489160 168711345 480524050 911640467 801262938 444647286 73906965 213542530 492203953 383817304 64828889 636029778 554104362 420542090 408738310 113550622 790175545 714012886 546096798 310332806 169159713 841483566 746588373 951513081 590289373 886262291 539142099 321794977 338453040 161360506 610406616 177397682 324073117 663075781 912435554 337310814 812859938 457795622 133899178 198569048 474734839 227818577 666342402 212394 774564079 542092309 593988692 923915408 628984293 206548581 930897214 68559795 694630071 58260680 190700442 619091178 119036189 206895492 961690553 925963735 627429126 513273295 438145770 33234751 430241334 718489615 511714755 604299786 883198870 67437324 863719482 212058014 737778585 455090031 838241153 749216410 170096301 2298895 431150548 565900510 113314333 249107491 277895544 228623305 13890512 73645808 242080917 772604737 339308861 42723082 287215173 460884329 92757083 30563693 397905957 858850628 677256670 502460369 104333501 344116564 626318000 542445423 730453029 781151791 114190865 880760345 236495017 423790951 886865371 738300948 986209503 47706253 79241190 164567524 862339319 195069436 948759769 902391568 204455591 970196049 555156587 332424342 635251893 821598156 700269152 747338326 950478159 786216622 760161949 825905893 641941470 74251085 742046320 342569248 829149974 795173728 170280748 607181082 50588392 370098267 997907209 6513388 932373820 824591578 596753404 553847325 919771183 681088968 190666292 813390013 520231914 773264667 963038242 155830962 57189873 501265977 479147653 180261160 18599913 147376950 795988708 247963960 246155153 252011675 183459638 1966979 573740267 518453870 238955614 979454596 394168278 361156101 467932234 96356892 982793687 486108142 532369952 767128106 457800602 895700611 941392146 876288804 240859855 114952551 128289453 518867930 440003573 385601215 799944307 900221371 590939118 58740547 8280876 396299774 802272065 625928784 719777206 529560636 269984329 516229831 604196845 748444052 90897140 619996861 396474126 630685800 87801281 56799693 449798658 874104907 232005562 92475239 932445266 877944572 116720866 246083957 987073299 850851765 263290435 168563970 683011558 966028683 37366330 210628679 900675502 497109231 114916997 227318668 240811707 30152381 174003688 292782399 387624054 451984786 242975037 859852859 891305269 214146456 486212662 976642616 362059278 284213949 626573130 376956284 749085158 447185868 72608982 591113486 360100372 761003635 220713210 925639421 723788761 731265604 102661107 240735694 279530204 434745346 954429193 486283006 676371416 803962603 214643793 165753824 776954330 668688806 963975954 56624285 886939199 31377944 102520963 789854994 751879901 226858500 96169794 457112735 609023949 728241524 804321094 895477601 572285189 761352327 506583704 263180461 750293368 373065804 970137916 722948236 167133421 885877085 781320198 875869248 249352147 607963257 264213709 397678771 634425408 312177571 28297374 339900217 753337825 431188231 813408868 155401174 431554733 421826538 415062225 312294795 484872891 377757054 150203911 483709644 243693808 414519833 33896283 717245359 978806316 30090408 647511498 551772878 716422453 409603653 204514443 253449363 106674394 324463757 18549337 472472653 909442531 879560684 327043420 997135050 504929842 121563269 163191953 141420180 358588164 407189331 854245009 528104263 384637478 647328295 161587157 257810026 582817063 113531688 706583739 426899592 484734962 220873800 83020155 374249612 398949489 965886040 903816036 598364066 260489354 508264400 790108002 742559054 452599988 320126211 716132874 443288169 373807851 393455873 759613260 916355998 66133780 461719881 495086562 292567499 614856296 978276349 683701160 801204925 86828534 545577622 645690037 687837252 358950571 448100164 944981181 932811926 587016317 31019625 928063480 733016643 236161055 468169209 461681628 295258091 681042287 933754311 949639874 874400187 176406041 839814906 544212821 690108217 790617845 255681965 763539781 748392522 733875746 352381432 54564427 380776011 92207884 402527837 458549721 930665610 964409005 752834745 464255229 481065535 22808706 754005593 150829281 491901777 582728746 448919306 492563365 481884143 380513652 834560823 940908154 746951887 643592609 205588417 958425074 258025452 422534670 770718402 449651271 686400523 847542970 199964184 16120315 955573376 378203324 238166950 139337996 660878108 656391859 459281807 605203327 300983332 111020117 556002767 689803680 503442360 334867605 572213608 970419832 363852648 56154141 364141993 863212104 629981204 373895781 978735425 760749780 302582431 596220499 423381523 382289169 911515179 434656654 273361870 42632406 958819716 370891363 457610431 59076702 676740636 912186310 647809956 512967114 822457235 545467663 239427184 357186819 235653935 985188743 557929250 490357456 862815535 551745703 942412657 232133241 691073623 112691500 742057614 90899521 579356610 49158499 89789542 937996396 785922564 737914342 614340946 27399812 797757460 409483720 528263522 929914819 938158459 973564150 798760464 196013736 453271132 28179982 547010661 510490971 344159638 731129956 509206700 341305219 870058112 12839988 747536582 954464973 6620356 570988881 732915427 912119994 720581703 898436804 196171870 826329584 21735011 902632346 296744617 643326095 205711582 158633568 972392298 295408380 864690373 449246540 228188777 911706334 781921926 279388627 361715490 631073826 403991245 693217077 613027644 818640453 653859463 461441407 552403716 590723573 783000359 922662298 307847124 262566742 210534067 400085328 952403038 632198052 81979415 973804996 325504604 549069308 959684464 696546158 665699433 666513877 131776426 439656509 809557632 977222923 565854849 963784917 171477707 257745652 983884926 865368312 951774802 178868635 413241883 620446880 355387451 539995547 888135639 622867189 415054299 172444035 336360952 135076529 761213508 475091845 408450486 772164622 451745922 86792253 248959570 782694039 567359229 927872756 299909434 71563631 233617739 566672308 169306165 500384998 683180082 370552049 718058337 256406923 633130648 458592504 869414761 82515993 766603839 837603770 589760484 141783833 625172759 828323095 571849931 499031687 337665484 120282777 894702737 307132588 174115120 223691780 709665312 730467987 497380032 448177693 119670206 824370576 887922694 929333277 480037026 765725574 829108095 994653505 24448906 112073287 868132283 454414648 578316439 296338633 17553886 859298206 82414024 23066868 812354240 908903343 774252937 493626836 406494826 731724300 597364173 836251969 21736586 822527045 22861704 322917260 385088565 996185535 602823710 452917974 2679790 553942580 664190351 453762486 395005676 287333128 813236612 389729678 982513575 773764788 34611976 544213681 173044235 634393651 877225724 366815877 461446257 36829480 52528105 467529545 872385481 510109971 150442051 592171619 88599944 576575605 388086965 270320316 888888219 210775191 742276112 870557972 777550503 795592392 363555225 332938201 95080295 50875715 219088231 626656868 256577598 844969737 76546068 618816158 430720942 653750118 166040469 343667983 499388324 388963282 368332629 270433047 526036164 28286105 421562124 322487164 758182191 764152730 739008692 417946307 846115099 749567564 457984189 144051664 881059664 189342219 877647857 313036351 406479039 717768723 631493709 984161171 325914603 528036732 789517348 466021544 450374893 357899801 415510741 68743656 149030677 160284173 321882431 639319987 732775523 365248171 687401474 684362099 547493432 101828761 712434519 963603818 444781495 584174752 262890641 448986466 612466414 403272561 879435447 664693630 850663781 441050973 25900665 413924487 481260731 290954604 80458957 824768284 354053441 156395730 553378568 137465407 638986746 445661678 875190864 127396115 98755661 555135447 345055153 139585378 111222794 544352035 750679035 393558257 453968731 873422697 227931334 250424854 169814273 477114337 763881157 671193570 498194889 309432438 267708603 50550301 436295569 545836283 620707956 861237937 458519307 988170262 265217927 661170013 336013605 14271261 720544671 384510878 252161595 579919069 744327636 499919703 87789362 641172178 256330492 428630208 185802737 333465965 409066076 435920486 830183008 461006232 817333035 481042306 635443853 364111824 445912072 579255651 913025155 338560932 766577951 498138955 170579081 565312908 311411526 566635605 177606053 487611748 795159707 839242847 998592129 667783906 652341684 703306341 749999497 848669503 221110052 658883466 277134132 971648956 779702883 500284110 259421687 681747595 923318038 30408162 791694944 898853631 926183455 506031564 283203823 951149056 384661308 34845001 749913296 974478664 235948317 141335656 231177727 889115712 608997476 125312634 368803999 580448102 665651741 636265719 306562923 415676234 576994394 387143594 409945118 979765853 278950693 841411767 524575655 739788160 549762741 421064701 423462810 292202481 420023278 395866510 661755764 874932723 867860483 29049601 650558904 362882617 681237626 470060913 540028898 898046901 782219048 776622368 933446710 377617979 398015881 233488579 797939037 562835530 488793285 896050342 660774807 163507132 649282975 358775556 117196366 555711854 16137118 197354397 429322628 208552403 875445250 177777133 478075311 290125527 132612521 863634337 103789849 677557381 136445990 755728548 352110220 933430847 306603916 75121559 563581317 736713090 81712402 375858938 70444367 849640780 811941111 650586107 707826985 167937868 620274879 398534318 504169133 856506947 757724324 745951221 31918796 923423715 843796984 631579088 738377180 11588621 967826114 141765834 918136041 976866000 795851944 560581163 344927257 907620640 428251863 974802600 495852803 887217787 689820739 584710866 610799421 682338284 119080246 969778881 530247819 76341793 909966680 152260348 785875262 833392028 307495875 509542178 453970855 440605659 226368813 53319627 676951747 338269632 839174168 28456322 586605287 983705998 934565170 599216296 481212999 382117559 24909810 717807800 291658275 120746355 425594268 927748528 638804545 973839060 225380707 96825820 201445555 113244633 778245113 31936432 151255270 617523505 756789959 209923216 537493790 984262108 391317487 138687296 194305411 730703487 679997059 815668312 528424127 482767575 949317437 327374386 479313000 158550336 421837422 123235615 18203878 642967118 6253233 613316620 331179926 336808484 201130942 921303444 740418495 233110113 389114876 147510605 472490503 341834798 364333698 537564505 965720802 332158867 609000710 723207423 875827459 873333046 312196269 453686321 397541516 867580850 462647594 632673099 460691435 251485517 693765415 857571122 881423680 209414759 785968057 819467315 217835210 704836275 670338814 502965362 685957867 294135533 505630245 945203289 111027000 746097090 844318525 416519541 57316462 937125990 778721663 47147341 359969698 731143373 86264916 399181633 935836151 268381768 394669619 5169632 824651509 360755871 746205303 328081338 43493652 275805908 176769206 106672573 898158413 553424203 339244658 824337395 711301554 188592302 767816650 765285634 691070499 370476937 419440984 605319228 532648081 718192938 131846652 876648604 840587449 407862615 720543165 70513193 292237842 981080012 17804174 616842124 915526736 262562171 375575103 518623398 936237140 898266394 238010603 342943935 629083531 406220070 298249305 398738411 618270417 30671052 140291284 265861297 829724370 469535669 295304803 765091699 594090753 409405179 435522000 550287353 178751583 672162760 272455757 609648153 834435492 297055552 158458998 43497914 211585224 813074776 545266077 920194117 247402284 257873976 262165303 134621098 742040698 146108025 680093575 256761039 953745803 242539215 681096406 969869864 298922177 198783302 314859302 129513693 775701384 205659047 596668178 152869620 149646700 571535458 204237988 92004376 76106478 861162730 531302354 905909381 193246764 565073021 26332769 556777096 867402618 801736661 725496857 475350053 92655419 346268913 876124575 976166799 235301188 657543857 944631628 645274893 817048293 577724870 733867120 318376619 177655491 693878987 922496265 53782548 239078169 746674541 399783249 53852413 715565332 272624031 853427627 742806301 893371741 478001256 776157354 104420886 962471817 199019116 284905086 401751031 344832427 227061885 542454576 298616021 848804422 985380571 110221340 791391413 74496547 426334335 411594329 483512708 609906835 5656185 65424060 557784206 511536328 421915328 694007647 785055457 775178046 775960598 74557171 446710584 793148699 101020885 49429578 765247490 504525087 701189913 319337852 564708502 517448789 649466861 188425494 421553360 912656200 183072695 372049375 36935198 674754515 472030619 84424516 849466973 208565858 876540443 606129415 709230920 320442613 26890686 640925466 948537519 70513733 549606183 801039443 447846046 168719353 723544640 703291750 862598635 618047032 707462323 418843167 503186726 416074745 147430369 99508129 53284871 476948654 663802395 774511087 268681548 112742158 282653189 60857821 674592688 480543376 285924986 34066090 875369813 752290395 917110364 270086102 730093854 820112241 37723501 143988521 843455156 510501588 328602350 147794220 926242764 97576530 508524106 420901475 852014198 666568810 974281200 259751987 203508655 934971187 6519635 184841011 721069023 720791278 206293453 28453531 420234092 310834401 329359766 239506435 689158297 685987569 403150226 725952370 657108995 20219011 512825368 801731434 488352822 937253004 446373404 711880908 538685109 988567803 240468394 941669572 540240511 495344063 302371139 709108816 135065537 707266063 792788527 212093207 80591516 527666278 307965557 430694953 537260423 807833546 897448244 567788393 991240393 783982280 393836151 161161007 653904700 382734476 651433640 88154419 781659167 557140531 646153762 250518809 801337195 890401033 764221334 454886361 145542619 141651043 143185540 921477791 419260616 823811009 7450114 459374988 825548582 711250879 832645330 834977852 986043333 790057192 948156904 997711872 868369204 939360202 225591606 424754723 760768049 635993384 975229424 392986665 996995776 49940235 827238742 568715304 911768165 533303358 384929678 279398942 291028826 620650244 969013331 541979713 239785067 62660490 918285706 655582106 394800513 134467373 30042948 264328640 806497616 534883641 237724796 926815191 711736612 881856187 647830029 324237446 926176813 743109503 581098700 94682891 419446736 579545439 886510240 699455735 933244007 715381231 606701553 947625079 242712080 781251280 365284910 766856932 437068524 204463880 932977549 510056011 82333779 251264601 165919873 103798730 577776820 464596149 71015796 345350875 810230159 576108183 612692423 681235668 549498897 706719787 831375124 317126768 966983300 781163817 607774200 228477459 336318631 699633913 951513377 288161768 932861888 436280917 185106418 27578233 983266590 550710113 618115411 237002520 405150459 20102234 20144572 896161095 943361436 448376710 855489520 254474585 359517873 22042042 313525644 237176295 727587525 488360753 15834338 294167723 850349051 272836763 50138187 250470129 305908655 956134308 780703767 64273875 344568289 170813460 904114378 169783509 146263029 627613618 19212997 566142554 609292140 166606092 835218407 345304906 560567860 282042857 631423474 315903336 863846335 981869744 968381694 629357089 857496324 828455706 385432818 297655328 263064686 186820458 741557581 868877964 524528377 331576980 669396112 81613214 734504412 514366609 148183105 346462584 478693852 65158278 925174950 496838140 178081580 164189967 418459212 789485008 566740581 891200029 166495796 612143034 160606348 902892795 474794211 275712382 386220856 682137574 489198855 290053500 485189059 436610579 630558926 160163138 431199696 999905715 411965223 465301919 2108752 519244032 959611801 27737136 76669394 949302437 869719270 290762830 141490873 14888025 194017219 881369539 649020659 418223800 285956997 591425679 911399492 845713880 896675063 953142884 683050169 837237190 790902010 510305752 611218361 962624991 910475261 534603390 823739802 994098726 651692264 73667527 776717963 107789363 747056355 659485851 301348148 409166235 581394024 102125258 831923956 63439266 135248575 938680240 274799019 755167104 775035697 370377712 766554261 579874580 958774657 785006245 365439402 305534177 285332760 664826939 234598659 414285319 690618355 579483438 77313951 62635973 598284074 703094788 513714937 690115848 216116481 106803115 395466536 914618799 442348281 83921806 848144330 212753728 335209334 665332218 710929268 401017386 370825957 599235916 750380524 301767931 722866637 136337203 264948415 460992547 467448539 993763072 513721988 851161078 698751591 981349823 966599725 86875744 410249649 909998026 812335724 696421272 746136302 344742467 416329763 555990429 441118466 597558000 683330413 657528718 866140230 747706743 236117272 18644230 467325597 181308764 544884846 46245343 907379585 434111841 749531259 725979243 111548740 28517959 152308014 42886328 84632294 880499865 35657491 697411280 896615444 826275 957650404 228431690 62367955 532241238 407970234 743685395 548250374 459488593 915440944 979598009 452995362 350462916 444514820 550955557 898311086 456212465 445128651 653690184 146985237 650200561 197519301 143305980 500738769 522444882 748328516 273829894 832014820 223499297 126758254 167419899 770493160 474093147 777378247 796349012 353158176 418372919 107235364 363503017 827238834 766419534 969664437 848728955 245779821 274589527 188421484 568548848 33276141 445456885 166271347 5904309 149035635 642188008 542540672 752099966 436539518 966916141 956762022 926490780 24633731 559562278 115778153 415201501 759224993 957815734 804068155 515672527 36293514 91155821 520600410 841240245 256814548 835582415 492987581 381725787 722741823 804071364 751272602 788172369 850774087 844406246 442469839 332340128 330423967 68577188 86221401 206194608 358965575 392258288 381217676 456841083 217262333 329512390 168018730 588580448 23959259 468745167 128066188 650516157 651106361 901628029 314970051 288356717 100072035 846736877 143191909 918309625 387753714 283435183 308493052 172981278 117082031 240001153 955348399 573931011 162826297 858135535 290135303 80188905 885078144 871665437 451717282 550526185 40247578 888671319 356514366 266197411 979259245 282101060 518097912 442182738 467665726 147837534 877925878 931200051 950901859 583272055 102806762 554120078 528886410 834822429 800616366 212035298 261058632 347432043 631132748 297757416 287652826 741316119 12105283 738356800 615120600 262433343 774404516 249458514 428266979 548930414 187979346 723963294 884926194 137448563 687874086 922744253 555553643 245581046 282461484 815513157 787198733 628444820 684263737 219305548 970795510 129903719 754329512 20962714 176357385 836486656 404851244 748398175 330207426 610503430 168936861 348380921 571703027 612110399 508477020 688683520 993297037 572036396 942271795 192134858 788158696 200952488 454348874 252630870 244702374 704554558 859082846 770010751 28406462 223798101 576057204 309857317 759429697 389296167 872416024 692292058 442548335 264201023 282126593 957098810 14719405 846916601 868176549 449254734 457308276 206241395 490992402 241899154 229851039 10365033 708785753 489761131 652450961 42651543 166297454 509253044 992259017 789946830 405849830 366009467 880061280 253142537 748163397 748002111 484695170 408023682 609135567 776474500 811816550 988717424 552160744 87991193 554021230 657269251 336474098 185116722 614831601 415152059 244803729 369591795 16916005 956857060 457669738 836173676 428073027 881269435 113092822 435363629 510991329 530774531 207739645 115147360 567755990 366865261 147183401 41524159 55693535 302911885 858443570 115840441 431249503 991398145 662682095 870288238 991187654 163764976 461144652 964413301 628777713 279694104 99231498 429794996 841910799 929987821 330189358 757311894 520738022 205593181 492626924 126543774 701066108 593869641 92448249 272997101 805088640 675085304 132159498 315822351 811497310 515262763 464805732 969488586 809803875 754032698 896367485 88076938 295509704 494545201 224747269 886251852 677408901 906921433 132438198 439661103 30952959 707459827 319063904 831987814 752824266 733064471 554515651 536220047 384323720 20930891 670197421 682548 620864718 959370958 386194973 794492015 87212018 629693593 315755940 607570446 671934688 272330743 468321931 235598094 726458833 829943337 290715613 73242565 441842969 464625527 637705383 884217334 537661256 355077828 566428587 155517724 111429059 708172839 19523079 355832496 739789978 759088946 893468601 429490422 715037864 762932016 757192779 888673925 633436548 40210963 486047406 243053216 138123129 650076027 533407538 921678044 990013704 661910125 23582825 923711753 347703109 253978453 398490027 34040876 840303760 933749746 302145204 143056658 583117602 437526558 464522882 175721731 222891184 782646479 626167308 868272824 111630921 236607315 263842584 43607637 331469278 624619712 683049470 882480645 977035060 49825144 79623111 75166402 233103782 368718696 750225809 50615949 644662282 636837805 120604153 692104426 986199940 605870037 744523391 641262809 335756788 213653134 608456627 663982413 287102290 204150495 120578346 676082238 950783904 863579342 516753953 762153226 372759546 595804220 984855411 19791171 995952632 165043495 157700609 593970668 676744487 40195468 636878608 842874347 497628346 838044499 443408487 553366970 199951733 935783633 756522862 446257028 465862884 178012071 552661138 716134695 902841173 418950769 995670052 119002479 202337174 617102333 625666269 46449672 485925081 38830153 730076704 541723899 482541027 323797147 887535495 945577795 803204118 837178370 363716689 916051876 607118574 110403799 816302112 924372498 930808006 712970613 643180660 643943620 698703095 376844065 354572414 735616528 32223929 569747103 918849100 472517232 720726072 951202532 202919974 587491502 684716282 488954627 749209000 675431027 576659761 713563342 269015638 528095536 168725723 374087065 169704018 463605809 456219210 686940562 23274836 670090693 51146328 732068997 432085857 334239401 270065413 907760199 905203672 166336692 840557358 856452978 798486183 138278673 851650987 513355982 263986558 94420692 787922978 839101144 59934805 392015227 812508169 29834 518023507 631837391 363303834 471903269 433894224 828363739 311412598 307514271 631065578 58983367 756853219 900902084 521275542 840104813 646071001 946392285 940927284 182480335 134085550 593122156 616660855 862492809 574908946 332889074 78691150 135186647 604517668 820496699 738415890 202382448 98204986 350709816 745786775 644253498 219101642 683327943 931172506 436038788 303351265 934168704 59960136 124886043 838820482 65549409 798761744 22246049 453832808 146426332 963769598 100033199 666390247 767568788 881686869 170506984 706833634 995998469 707848339 560684038 387601030 326256953 611195587 741349738 504317906 446760910 375072988 846370275 998750460 377199442 583289711 354119777 952247831 306700404 883654320 549779096 3409596 442961312 852120671 421245955 480569396 72670544 852429414 577827153 643036507 365474430 629941446 855934664 476853151 582567964 24351727 162592249 560444438 785017164 30330303 631955246 519775563 20905610 102816785 416821492 945432565 814522803 152197657 317151258 595674226 101915409 297274018 538985901 901897620 422983598 221280681 182274336 905891141 714702375 214734066 113440240 585325049 670635281 493638536 416617164 368363759 204892857 400768128 463554810 742756155 870259423 93565212 898164046 919848359 630097727 795448563 947614982 974971603 624161335 213327376 966433989 732784776 994305255 345115543 475540565 457788367 450936152 262837280 26285287 77655243 642193526 863784392 766184697 257895882 620345324 323256270 969036893 331698605 713344977 677016591 633048354 77313949 934058626 848741483 375772969 877751833 585311052 713733419 396508970 803684082 642146739 571785344 761642384 85501767 815314176 724021797 802268822 424378564 121084754 432322277 922997686 418789635 60220214 577329938 510405263 260376866 1392191 812043630 503915431 329882537 895191805 748363563 725860348 133561057 234253249 221154710 878182591 989971026 602975952 46041544 873385803 326082942 889937053 825568603 242899180 443485336 891733089 899918566 143943412 919380917 466055633 493267126 683077930 47749031 486932536 812412045 982056788 615833058 16822332 982988643 519801430 59278550 157127274 120769517 144100640 10320899 537172651 937806750 595845911 435143023 964394174 615841395 569191882 896941097 426343618 260132105 297640470 503493509 749843 699397372 655440976 849799929 473646283 585087341 804278909 473646999 502970737 459830820 719411139 174761882 396379364 993155345 732437310 860204213 433788480 238034708 96644314 960420207 685447112 204656885 206914580 693758831 78086650 246443682 155828493 704350235 480546644 275776305 76071838 984075822 758863982 266814268 494153576 436050502 24142268 712932221 498655706 284590660 283855956 323917765 955669035 695629185 151507339 141203234 766608832 750938116 152617262 328634290 710694639 393043843 428736707 211714758 927143741 830809315 239691081 168744407 92424961 392090842 588524024 183741033 291308773 818591440 753316711 639966430 974282690 524168061 349989780 12296550 64916730 945539930 722780967 524442204 825548231 461493108 596168500 822999276 950787266 293749257 50265814 199101453 786393914 888005340 273661457 276571264 776905415 775365766 841608916 989608207 211890341 704038337 355445881 526102362 150555034 380032800 846801117 805722650 816094283 382791779 35049580 55634649 376429408 299146346 335383815 46512109 279856927 339602129 703965439 580010640 776988247 226975333 167611639 869759770 81328 232626935 347594604 187549856 135173006 715127921 806954464 161088762 540504142 215116441 224697130 676612048 640924577 648381050 156607538 39565573 941947960 263268815 702142720 414525352 793579286 940091931 973943228 992282809 500576506 127863309 481280246 300064797 779269346 299570688 764485453 434364900 245445503 650349259 539425347 531119847 916749524 351294319 706402356 933962933 308833620 387229462 192029983 642317386 743120250 567252575 861466084 195781546 406225264 333134298 645171315 699184557 179030040 726484604 900008506 629982084 936100944 943691640 668001990 555873121 772053211 895357648 149769897 353333124 293958208 70099786 934051812 312415280 608018630 662723408 856043320 214491631 946012954 76507245 323263477 980256228 509161122 432550441 596198698 304969218 511975111 386594509 962566820 109076652 139362795 917650090 800410901 804311514 180377653 439305329 924930263 527217941 442021314 535611749 777263063 110806383 103186408 55325378 864612852 817958593 9218197 614043594 518795535 328939772 91472028 200608963 649535351 91472904 666826007 415458344 40289336 312621458 436948743 819222893 306759434 49176762 188326983 606026938 162514689 296369033 514163214 251026461 719668689 579075595 295725950 313535139 747407031 759370927 281228345 521131586 574377391 692985258 479684463 677580012 377691400 763148282 442156554 36693929 688958447 530660604 966570591 177178613 301547584 192464790 148074961 671397529 612767969 753476073 63284908 221698820 771376679 701888451 559870113 805377190 358519940 859228522 191897279 850870730 417802137 849473085 420833494 623980447 483339748 454992982 256549067 739850238 645981056 703599963 199962080 525872218 414314224 370696032 271305257 740637725 906215837 448982799 696651402 718642917 321995993 472957271 52778783 84379928 843793781 939568394 745192338 89950063 137963593 769869920 640094982 739615134 933717710 662771688 367273178 191595910 635432590 907787830 859172447 327974670 906893533 688742373 687058539 37472562 410019405 695429439 762607229 862618593 324636016 853670638 906562271 65204202 392381054 209920536 695009318 654617820 236617883 475085 519011558 561924149 144918373 292134169 953801566 644638824 711625065 806999602 637679789 262236357 652457943 70935919 538812981 397150962 804417966 979476975 641034543 807034178 524801400 703944900 13683632 373961155 7018294 175922941 552548549 866506866 376711241 98744019 85509729 604901238 896219369 947952032 266989736 850895003 463972860 760908195 728508662 377459967 760941931 532372727 99423411 727238301 337770038 874363200 163239844 360906356 420821266 270390255 366902419 206199083 836208390 735502302 921134213 104991031 714642432 881192876 353892332 65511278 359247196 349753690 590610790 669800436 130687925 145154466 525753118 618713976 978874352 706123165 827469655 21037284 916275482 327532744 143126817 447172558 445378870 816737420 759885229 451340227 864041292 9316443 387231124 800772960 632138833 561666076 208450813 609172552 884599127 963422655 442745537 618355292 270806788 778342079 693696488 958042094 694844707 887529004 269621921 747370266 33836991 194174662 675882122 596928443 914386825 577505649 701615485 877039779 993465304 699002912 660125414 221225372 241499116 978685956 287935807 566278569 694838604 627660527 7200844 285646863 878378205 846460854 84972249 677142453 476504604 909391751 477859990 141183825 999108103 989227526 578610553 992773488 977083721 983662484 456081283 928095582 637869162 373477587 341063928 805228355 398870144 98633803 687663963 147911003 139354786 461436624 654073269 719945151 899993982 614386850 420002277 17338353 592898506 558663033 39533056 482489617 64008128 226843343 89870599 107534028 434547626 97301900 974874500 6598604 978795233 851479220 733711032 920023548 132765754 884025504 304596160 2904758 422814343 282649337 280027711 754366438 630401803 573777682 52174529 827769987 867297941 33477988 759894319 871679555 263234774 436334913 974140308 498842909 540582453 949873563 604801855 362943725 237442564 566509689 22391821 19064159 290085463 420656925 770892396 36183918 870642875 214694461 394208445 505611499 164439001 123791554 345324993 53682533 681113201 100993093 853200539 19588056 706558173 373366398 227523231 29581023 749951614 439414029 322324273 604318419 474262023 379576290 221665287 279642285 584656339 246651679 488768393 806509772 9740522 931145734 683673658 897470400 617750337 585020785 914724797 614796381 30344634 864566125 734041661 255993370 137776351 390457526 465383542 703271240 673795116 94350912 790086242 718191297 83772755 335688085 796482122 530569789 719417326 16554390 830015826 816944116 418582285 302866563 215382031 716996920 621305756 617485444 159497223 433469070 137008027 791839321 178981051 438614034 618027399 922134725 695464799 976705211 637922376 60364347 252659809 776339082 225371378 65036385 41151864 897927262 711777245 334522614 912825126 305003162 104979416 237296986 486817814 626323928 360138605 268030244 798482264 301574741 472323819 759181131 303495053 755019856 822105243 636109364 662164241 930209166 680900027 383592675 704016620 706008916 517491805 251288408 805365796 907513397 821882958 195178198 642048357 852029483 744801300 620455471 516837495 439272976 396017801 364418755 696789404 939360264 851389295 146800927 729988817 294661407 438123169 575118500 550637247 845630289 429014766 345212651 996948056 165616770 742153242 117421430 63415425 874236665 761395584 555338692 943022545 666251030 463681517 690142290 20521687 893900071 725276815 4485497 59077767 842056310 411843701 900507469 619642895 600766690 861631546 790473923 295780002 870011788 727575084 332954466 45523545 50141549 385295695 745521787 314349314 119812410 664574415 755786987 22693914 995505582 109273293 786987506 230739110 702199552 428517974 619227928 855877646 842991184 837131543 452212595 53424010 116692465 604473385 666617652 252485334 521246898 776025079 357230850 639182420 711413557 450604156 471934059 803227617 961194061 132717982 206077227 980790106 225834922 480833384 692907950 442332129 875000828 472653551 937350558 31270554 680298191 101620960 507293564 650510675 905283619 933218116 387085287 56881107 96981061 828108013 654696266 602884942 219329670 302104353 109868017 57901701 799424079 692788014 38195326 834929769 687918623 611033454 311356864 870312411 847328778 581447138 195610086 943382613 562546713 707441690 259154150 142993378 826277825 701616128 324844813 786632051 359021956 386255879 498437346 185118255 274526171 759547568 351992215 867955277 81148230 338634778 889397169 30120019 570668406 226056341 218169281 15884141 70337839 526741243 939092146 400249597 103358011 350192145 67549335 822930389 355013742 946718382 904951711 120772515 863466930 336914668 549528203 731258869 58711730 284019690 744879617 276856180 794607506 161377443 590337539 869763088 259153454 318405904 121206122 292218887 256516845 811973275 880484734 473809437 967103544 850341379 32573796 724325748 41833527 509032195 499259957 697767088 645652557 820705382 971997303 45614071 228023188 361508441 501634129 337215524 791473866 413368415 217364306 994695341 85725608 121503480 616313356 999835653 616768813 874404646 925357960 967296869 131464360 382029795 264424219 568332818 528472074 513902471 424149605 224412990 513584645 785014299 283225435 82437985 704849522 937866924 21515108 195707702 15532428 983474846 983386944 411954005 801497134 675594913 477024470 838116048 947156630 882537812 744502488 54513115 467674605 502184241 38840149 484576601 697549423 374587268 892804413 348757244 414286219 928957088 345619669 659318999 905399978 174623563 262964029 931508717 433141503 455397124 990918304 159168246 301007547 411567781 921721423 616336024 172083964 371293752 665360541 224862166 239317664 122834829 33286374 492609379 6545317 194298645 958554993 893339017 743796358 938378813 857167993 120607109 134991643 269786514 962188566 237863562 333948138 62293725 255180057 410316890 62178684 541776350 198247259 367764036 102471547 473070611 19046815 887916290 902168512 64294864 318434237 141556073 659803893 374914296 596527116 461763178 484420730 731998586 746500709 699492307 866421156 925061017 633006610 592940179 244426467 67605914 700805650 919914027 187205771 75295085 843449101 448570177 801335914 678847877 696279091 945001916 448376342 355189927 91752201 766659569 183389980 467539706 41531428 990100661 822116361 809740795 586482936 853116638 64059545 363765121 658655475 370247441 708348634 86724274 640742795 348420977 127407288 523844748 741782562 684015797 460696277 525072877 92120199 356275327 95309200 284169980 35683039 843449151 333406924 918842240 336816176 988462941 4031403 783047831 782064941 803829815 951459241 686034641 107452867 310738868 132467577 289562707 523546565 698699533 708246416 22721217 603594089 42857881 683288672 188100187 804189907 13063103 629943278 660044002 437397426 384130525 964892044 231801810 468073885 751856751 362516853 982029529 341539966 194450968 35444452 336960931 631349060 993186626 850751448 901616605 731930442 625182156 857969366 162894037 215439450 866410313 547428585 458344932 370907644 566754857 864975974 783357434 369595270 387509019 773817081 309792902 110782005 674813180 913163713 638021918 505222165 631823248 758290747 950477122 40110969 166735403 207717163 295656467 783298519 220128891 701243954 567294163 987649338 755990664 243803789 748115560 501948905 268691459 637142375 638297034 806500567 146406884 556888194 778220702 80340509 792701214 506254769 95311047 968297540 512344484 884948024 408817533 150895874 965986265 34320256 409869435 438496066 152656578 364202675 345894132 167373229 311617566 163658680 761850813 432636397 376843960 163012609 985263756 506935695 197479857 546216197 554549948 640784892 484338442 708949061 860777558 439280918 21709282 99787560 690200361 241491253 319422961 38043989 187181684 808544406 257332738 362186832 633199876 149235453 635408129 307182942 671350064 216814784 42922177 25698786 62161601 156503368 237200596 472783080 548320982 481018230 849423205 557306852 633383534 627434010 734527681 905529992 978175532 176813628 448213659 119177966 227308773 760710745 742757656 267758360 700691221 925225179 315284475 597606599 329045032 522720584 223838539 585481091 893410247 468068959 799470436 201645356 738044607 187376935 901289879 181489712 648844386 281709284 720476318 876893369 364917852 162194154 265054387 9595570 421490218 750843831 988204390 464572650 276436223 762315000 601300871 61091050 243795364 904463469 538096105 879605767 703437342 690118684 858371201 936685620 49459291 612076307 459916660 863656107 963691135 976296279 83429574 551377999 90651753 726043046 90588199 126252993 44852965 4706023 248710337 594658793 413307576 764752342 885365941 378083641 923759871 245868121 82339322 691462254 600594493 804272528 956128599 537280853 677890223 913808607 177557707 437453614 627498890 603207920 626503488 402629113 765323426 463291566 553442514 958682655 975415604 255985684 489380502 437956110 582103695 58452948 995882636 187741562 707079151 824479613 299276280 179119005 689233638 88756761 231384388 992025603 942632023 237931078 683370911 462031353 570462091 865405356 816817809 369636113 960569974 424488229 447073499 326066537 339052859 699766513 71485787 799067137 675944131 876986328 685160847 65210611 374823991 645970637 70677417 811444396 905212511 774229441 453027342 135499277 549300110 819401790 735369687 979702650 555129206 990934759 101078688 672536916 406649542 656248711 479217202 536601407 485838978 844837630 752225918 591628341 810902847 893152665 552617665 321481716 665419442 660892774 526645055 994064378 313004856 280154377 709774168 213687888 392012567 853063879 512038997 272521245 360820091 285638825 111986902 343627927 286528395 568081008 739509991 903815216 265456613 23341317 955396481 879761273 522146393 136594293 546461334 727349889 262799938 709056991 886586834 123027407 446857315 81107170 910403483 596926590 313322253 846808692 47241899 218253378 156443662 404993124 70619044 34021745 181765741 107485022 212927860 857156322 868583247 776744052 765235059 913177607 119152961 457712647 752859967 487511144 917454933 125197373 796314023 857345388 933366353 248596895 526188891 140811825 330722569 959328146 854700685 869738494 722999102 372599484 287044126 882907031 104037924 538843181 318707205 909073641 82274787 404212927 740935216 836100175 181337758 729937966 228710785 239031887 116126438 603931459 235067540 411917124 200785106 975507530 628294280 391461522 589576488 306603031 259428239 133205123 806710304 273500484 739456349 470561826 42233772 278805482 450083056 925957498 309851323 504101179 195493148 501489953 351593814 345030085 818706576 419483686 668835755 523003202 815713251 70187578 435442205 218828572 336826914 315655492 472180131 873927487 604830215 223524300 163133040 871108126 269597919 915445256 174478072 447443833 187362762 607232393 893419229 802865191 992413753 651095220 526715788 22894725 642665560 850485243 120885412 473554537 46622802 126998047 967186454 284745649 532199767 604854762 889289309 262825156 876482764 256268472 154458685 966316141 9643283 575552856 960046785 425483196 415977693 669699356 72924206 869390199 833376562 491377196 864073765 835173018 968239493 904484685 844305102 742130566 396267943 666134574 569486257 710699528 892147177 326886795 267832990 412644161 323028315 366457740 433005719 181875209 199842386 829490144 975518244 247559393 607580695 202672751 130677164 374843824 104143549 375542910 156476891 55834713 769734867 324855640 860153559 245715344 605172781 150609084 450631628 917689882 493180034 308172006 711500784 721564923 594037701 119429183 902583351 895839853 67397484 773929976 2001663 416912691 186177096 918333492 612627595 149503482 576964129 390926727 998558765 936109037 502086600 285412639 854832381 199753710 136131268 293811429 909284257 616359022 752640877 570777523 829501838 471789968 461766663 293100552 828519668 241915919 825709868 776082887 71460481 848344535 972598475 756407287 255976042 119771552 311820157 162784166 651813924 648486347 24359452 846256558 870610352 931048654 923077037 829959780 99953495 724728302 921434335 208371500 349027355 334421401 224613855 900662951 844090100 876903948 921113491 957302343 411966898 811559948 165188972 814510555 34797432 824996561 691633614 709420957 169863810 358645577 984960530 821396880 963699331 890348693 970045882 176111010 780132497 494895951 470823095 985310859 752585775 291624290 901484526 59936945 389033607 549266517 697624873 357066939 92083692 147272710 793574951 161774902 815749637 617950171 399322933 628967628 579328783 358497950 422850497 83025042 278176409 889214855 544808675 888463786 638667011 451385767 520141545 963761384 706465086 262749515 326332979 749836273 221713231 556712575 741246773 796310121 168914258 450097769 212160072 797649468 772591299 510312365 802771610 905600930 565665404 310571082 955114116 257136787 661601912 17840366 580586746 461804971 330218126 860586845 380007298 50383268 558693834 185358475 525758465 598943462 537870470 566131208 488710688 302930014 408228571 917420298 611211277 44344653 11522906 679923191 568501387 137433851 323915875 634430094 64887655 654136282 314270927 616844740 839687577 168839865 363404096 56404827 929396897 550256626 649105369 494883580 919292534 685878406 738852664 55693570 545025192 885521242 958958112 109011322 159377613 789815698 140744407 83606744 952873590 803977187 883434682 405316058 649819420 888731243 116455658 185990838 43204718 967094949 700932403 422382586 338309602 799118127 759475652 3129694 128499029 83077067 792477233 626074709 645580492 993279852 954304370 91559418 766923858 550069368 411381464 294721194 749562102 524080305 432205505 353866662 195772409 758644078 841567864 351984442 838011669 862239104 667714335 498606565 540066179 8764463 361290979 148310504 75322585 290335978 869573725 416001635 85924035 258967883 577784993 539273476 580240703 76632772 661213522 110637901 706599498 981729927 285301815 331585134 759135222 5337633 281632672 129865451 266489162 182445001 418947312 975280157 688954518 901176992 485921386 795750475 566403979 474708559 536265105 288272737 915024909 454045602 789600229 842981446 644230352 947788266 250830452 219882058 309905251 754817570 695263847 774325527 778586153 471986490 790052279 520370130 554343652 884050256 802466800 416789391 562567906 540532494 217620533 16264634 613747976 180865021 73507799 203342201 76188442 93924348 580275573 865735099 496528233 490070411 139431886 723135320 168720712 16404203 760089074 309700800 277620390 960033341 757946220 413716219 452759463 531253768 725069752 153087477 927540541 719325660 229625513 450767639 643201705 179552754 349109368 199003021 32700291 286174784 114632452 736555996 948315883 231955302 259267988 31668709 692559135 26613173 579707883 240239605 315740281 985855257 696226517 691810363 785771749 613099832 444742119 761419114 891475330 209061199 65395913 765843683 315272320 610182275 27833120 3136034 66607770 669778426 698229781 41375711 803168558 828155212 830584426 468146227 734462503 369496987 952673993 872022178 651683420 304579510 658678826 242951371 928685282 635358395 737498699 706661878 332990895 434515552 309846687 430388730 686430560 279936836 184384825 521828433 713225794 575310208 629023115 42426949 862746177 369785233 995923478 300671634 670039241 662198057 266516980 649380936 922355986 440128153 47251015 215786853 357982631 526166006 464584630 347194284 11462254 404770754 629407123 646181121 305651363 611861916 919208455 833320654 509176915 153864621 724790136 386416437 858265013 244181493 678092608 46037907 288741928 736444647 538438504 823264411 845347433 367004825 822934517 258045487 902192118 137330333 379792279 315632923 922592905 738200332 781639914 218348169 998645009 661993073 121891558 883560523 301202523 400264551 269505023 193873268 732996923 40843057 227884491 74527444 417382573 156819668 983526468 716914140 937410470 996040542 125483191 329716116 341030079 784650932 118499562 810944907 99156400 508126059 867257669 266503156 498120674 635218092 782583078 181469013 390496715 546688640 540438992 756836794 919303384 658592228 324278900 838098713 625644623 653174928 75048842 70873685 960022131 486108627 742922549 1660723 105920110 719592589 970480811 230089842 648860020 698065424 99882751 67641561 46780755 513907796 679239875 174645331 961030267 217447679 155704651 478312030 775244498 940352922 383750056 13443688 819118755 996941429 562515890 297132521 891635301 944917840 446397567 111085888 490364897 124927718 777701570 316317076 914042866 503553667 732043908 434333950 839555467 560757639 219322978 426279183 491534927 930987481 610333393 629201210 283265216 173927728 839409055 191700307 209770169 563818094 97772925 165295986 56557019 25992282 593548541 281097228 703368049 161017737 984044299 421191184 831349960 679440416 149635126 202856053 474538254 813386378 150164549 687259482 690132872 403372831 354227489 385871245 67370974 413909608 886115502 470285487 108291860 251549226 819271300 256742372 78907203 610272014 565544921 982318787 490572032 892093162 378149612 879558891 734811801 122878028 205766546 314908482 544040417 595465235 901967507 877796216 335923659 377716093 396438174 845937064 29698175 692638785 904800869 223585964 436394936 136404355 240046464 29783868 504515968 245288871 280656643 608842647 263190211 275167074 730312253 914165885 842747409 655393285 682270168 89177181 30514001 475123106 559694111 960234339 821142821 902288339 773528522 674552847 612332186 603877329 202334396 321177295 225749168 708462625 321136214 15723293 20492854 827888181 189037502 861464502 666505388 876037891 738258294 531941109 861105887 50677754 238096230 556920800 557461612 843180685 723688082 160270769 739875571 628325435 533045787 958263917 613802085 939283317 369421848 437330031 725217985 823337228 310588287 597830268 923877546 605324357 790603885 134201148 127218916 102407529 610119384 294983425 308623879 998708284 783132264 408325614 60495273 499372733 190367845 756311481 851381481 941260429 472860619 47553707 733330945 494392728 325962492 20420261 733455355 473549231 550674118 906345377 386191997 205669865 16403047 271304500 60180371 932320303 743959707 762964200 903601458 949840638 822582557 873509335 187088959 553563209 616423899 931209327 363992511 977692029 631224070 726091808 699228223 473460858 651938536 629687455 113111282 480089617 104015788 225071199 890378621 896890439 393373812 654300859 411886454 657402129 639614459 160151122 17711229 622528748 401568379 211372874 528623642 710383977 425242009 719391292 871353415 374667707 311963927 948358177 3790712 359018705 263223534 614167943 518663003 997468325 302969255 345519302 969856971 721403942 712920766 732162448 655665694 625226780 309192585 542556469 736468880 839582444 253181729 811343241 278796377 923061450 344325740 541333413 422927565 687421155 331250466 919517921 389125604 489227345 56927498 414732395 712313934 632167375 245297051 381383065 636566962 321518337 494997053 508054013 725530142 202981938 406244208 689395399 962477938 701922854 559193911 235598234 503046740 514575981 935915911 958567422 616643258 700689563 277484435 150856513 819627896 125091586 104031130 841956381 743330367 496573296 52529726 304398461 252016516 829777471 449586052 398851774 918899012 402000492 198472024 566664937 733820987 988144527 793761102 839942545 54538838 75121478 787226554 894744072 181530440 970995860 710226425 890716533 52635353 568360782 773218217 563532044 252406195 334046727 234054285 127408630 404099670 952610351 325786891 969088236 168083303 216968713 302605259 363854688 478324987 474481175 42544556 799513968 548426825 316400270 409894656 338814475 359881118 367813748 164534185 227119630 89338080 457391015 326778136 226049669 95077625 967998568 833727980 993727236 206068875 903296898 345418165 24941953 330306187 316413521 60228310 683571323 459310942 679625248 653902842 708344713 716459203 225965414 519674264 291751124 308380284 978030765 369301943 511249508 703447627 978656200 336178259 407711671 395948132 827515158 683725617 392190496 876034175 643310154 788607196 206457590 453466409 893005099 993310705 288445198 497260738 740193034 925790919 248886394 947923964 699508301 285468293 523133684 681655258 177920577 423068857 596121668 253023832 200280082 223386140 730359271 168005507 330881395 230112715 515692422 242224430 126110488 551813534 845573687 459968252 920132100 734904791 915020787 682920752 941986588 985924247 67081165 441278917 985557125 775215058 149299845 123709827 62020199 493596818 238351435 189338719 790218259 540763049 353582890 461679225 196190239 144335305 415206602 44106089 647521176 92262702 995115959 871678329 764625862 693861271 99067463 251808160 386441261 368197890 848784013 26469943 800404249 853073417 917614077 161315797 889784530 537579556 467097341 577174356 645427918 417411042 330968480 39582423 876572298 573310307 83826660 710015258 74290204 346914052 807046573 268776684 259160562 589936792 418994931 58027089 239717216 55027736 17188 933022547 56184521 829389576 906896934 265245958 815856428 452826676 188541974 833775265 891551116 27817441 45742175 20769330 9886197 854482807 639729731 882114081 494219331 629611223 370448762 972778722 690360899 246522336 617215389 542822524 576656693 159730477 763136980 690383168 513881566 823769793 138280369 526650282 980322374 226821967 107309170 574388602 772572806 50349716 188738323 849069521 165617538 799289963 324113137 777645481 898784902 415525570 658518430 163983026 298698880 388752099 764236829 40972837 660672057 548610652 977456364 262132189 734448238 206454405 417466453 432113901 431526448 693226795 674683015 799904826 429352010 674663925 256355379 596709020 612859543 930094025 366566948 773992688 573137865 135297526 945695192 432619197 387787593 131598487 872250021 509282525 186437636 860244681 868790004 614233244 839469247 411818340 351368225 707606879 532083527 350903244 259878601 370775883 669150802 876636915 150515889 713195913 73093709 436523777 317969486 654323215 424897831 21815831 289192806 281777327 247403200 452815798 555453782 431521661 470445788 562563747 91746266 559473898 998923962 114610784 775852053 198740130 950641220 836304592 139617452 365077429 893504043 258541968 973718715 256464524 397272676 331860751 644546590 561140225 640991996 103153984 163999722 515268131 923583813 120564081 432053770 11203648 572094188 485384727 980018766 828617071 666973563 716133390 495595179 900159815 108332892 70004353 672320608 856221076 270722308 894117672 798620804 293620455 247441809 44335128 717029405 481899350 449118227 513508248 46426236 102463353 393369401 286171232 562148257 384079852 300723653 320053467 527705168 823005395 174285204 125529232 302779607 828044946 794232514 611213296 440367347 184557364 2142574 838132370 950819177 351796774 903774286 438188333 645994918 639797996 266964340 225629085 444410044 909275958 302718754 32262170 841831198 411246793 196351835 84240767 119636641 717549002 16178531 986693266 772748027 567842718 159369630 72551447 728615614 651214769 926155940 912964174 276166113 238017339 257058733 373598900 77653346 954577390 161404504 90465277 143930203 840427166 419067632 715352426 109606853 612886512 432673348 337995936 62067154 805666707 29664462 551682520 645038626 423059132 666665767 649182997 7821138 730807296 940659865 466647469 489041148 137532027 42497161 644626873 231742825 202140792 165908625 167125288 312764762 130937847 616702647 36480803 281959861 591393153 680989807 272054717 606323594 590309737 725627905 571080112 85110517 551769279 584854247 498091124 489662627 877643921 515601713 331497236 544704514 989622447 659125780 216554668 63587206 23938123 660662019 221106018 121974202 831425759 780955290 214900143 352229177 114674119 606017410 866579732 864883564 103117206 929442793 6985876 359365396 707236363 33753888 170221707 512390235 133982905 187074710 600718480 795778785 954168221 960696093 459220612 737682323 785130987 579087413 859870101 365059614 568784231 583207649 317944317 384999614 557482776 438234750 725099006 578038427 959279859 514358755 560529300 36963168 619865922 655382516 438154055 68795909 19633244 913709248 793530478 281438431 884888613 902423081 477456709 943302857 312618289 262995684 194834396 666341150 840880498 190240011 843983647 803936437 597752347 850023336 854755841 517915193 913019596 261514716 88167529 618436900 964957706 885861770 339268491 464936564 46643407 583929532 700446804 249930535 901204526 144240898 109226505 817502803 271519830 760137494 949458392 841495116 464002854 519205287 79910358 659534913 661848211 562922494 979913455 535129766 437002966 927633964 698284440 101981984 429685883 971813951 387996115 980789905 839529532 5726566 612782088 791330166 843198163 993481744 731172771 699782721 113115405 134457614 398477354 885566416 899745493 229697618 313767129 471874357 331870008 248848387 509599282 976842119 917611315 879396936 201166518 236300221 520778348 528791460 701636568 694969000 279326077 416474741 806731314 670816581 988858145 550320239 879681149 216943473 931589716 546115239 752643036 306269875 133359642 902575434 103986617 128172831 544167768 750626420 145334470 96606791 381009821 656520708 106418439 535438573 317463353 279214821 574788707 972452267 863800457 693231147 569920012 435016440 924190008 453351412 912061736 708386946 979269502 7125481 418251304 638289112 606007946 514806100 81233693 689506764 420102997 384165867 366177283 471587599 623982817 194466119 110776827 728251425 245988105 705740480 194497807 973124887 615301229 561150220 874224901 962711707 370118738 485446129 217357651 60882290 192464106 886784866 483926543 505160483 75078680 811425599 564003823 580559126 764973296 640351117 892771558 626406354 265970249 848975779 537820637 903365131 740318208 239137524 411271020 659313284 613289067 331392127 71090648 773117016 296778478 522185380 129833733 937990332 732168475 863210075 218590803 865188581 266059435 628672551 113458692 901798267 274771006 735128286 325962941 458718389 857494298 879888503 566364690 61542010 610805984 403396924 763013152 267910993 951225727 200565021 810505104 444911993 998556771 789072807 864868315 587840214 68399709 75448719 575964521 781111636 413515977 249929954 808037031 742799941 873717498 762995358 107902733 230654043 600798389 385994261 490128766 96538896 284440719 72293231 307516286 913124174 562423917 397288616 517948018 617337406 644789822 782182199 908929829 441915910 793826432 209486089 186854805 408448434 659217155 701751317 17006282 657488673 998075086 494137120 38328606 826402485 966612872 826883450 413451874 90334803 440028837 84314088 290333244 394390979 397539145 57039595 902898340 312970161 447316512 696703431 865539171 258023135 443493031 517226352 891720268 465113638 450567445 704126868 378423084 315000809 682863088 940269739 396827389 572202969 258919387 196913497 221767403 993456125 648412993 222536515 162788815 219707284 838117520 626797807 100859715 974837350 966149998 497603420 873690314 540208877 572273142 445081992 141054384 316897292 73813447 861913201 616383509 633992293 268355005 973650191 458922695 710933545 353694170 399052766 868316636 11188427 204012064 165483387 7634436 976872964 624602945 521751823 926242195 455938906 542745078 719266634 123486600 762312299 833668217 260935585 553858579 64205529 878756831 470317777 548240798 773723799 177380752 78373588 527415341 98562556 690519813 941558961 779463530 641140515 377590810 35950685 804162561 819817797 846424989 776939272 764935603 777044011 370798623 233848781 443066829 37389074 676944438 164759966 233854049 178023042 564066889 262925973 805348892 869016730 920116205 19298503 374216832 360312626 470606172 372009679 258047951 158099852 717024716 20569548 284193493 810601123 527181265 578627126 834871528 365077640 683889743 698667781 855762163 244396852 615188735 416429841 682711763 231807519 597658311 461801841 140001742 632216856 115184187 744258163 885744903 671726984 123978668 394951153 865081405 263346101 888384210 296840491 570973306 706579128 261797790 495575528 596929412 996851488 109930028 992309696 9172791 65091690 7123878 502720764 664825811 630665353 959878902 896733264 611832633 566231110 58244045 605907930 335114048 277226353 993699643 857672326 468979799 722961673 585416578 794675628 753416644 829552604 592476269 520621700 518099216 643460103 130963116 4442083 370679317 779436856 580012190 444244046 73059334 617334108 76823372 439087036 872685957 96665983 394384684 743992088 687543460 195105766 198445786 85619926 338677123 79297822 200323259 793009328 482064128 691253969 3831888 379645193 793429792 44441759 694035855 517987098 160477699 809780647 238091274 565960719 735054311 744305515 224826910 866099198 425713459 612185156 960047 438155701 996358152 654446461 314929886 139504803 219043641 430794117 513554755 880776446 893845879 467283513 591306258 214390466 920453247 984781989 293908636 596885992 810316694 292231376 358778798 612960160 694374539 909783063 46270449 325568881 979949938 911120783 761731515 215234678 531949872 787867464 445711719 209927393 486052964 489838718 782084855 259903517 978202419 444172588 390894534 153780293 669244091 737757408 322969888 870301459 540618281 507094380 659343920 309148810 141324403 260127972 710355145 84916320 692600912 17962305 972312040 460066980 513068837 565897803 727750092 811662583 76598085 940114682 519884406 526348844 607410535 30250861 560468048 498055640 591836161 78100472 264394258 977834472 736572966 794814558 567931202 912246094 373586991 899155484 227871306 635878565 195954967 811490258 588824971 939096992 28139710 312982027 430812016 229828471 929927483 193828012 222666343 267168124 728307929 356922850 174461527 971197865 1531219 200903203 843601675 657519305 809707429 473992002 42433688 507765862 446042938 440414538 105788862 966862196 169883509 71133994 308746613 877641115 565478852 869349410 275910173 806119389 35207615 662254990 516003873 21096049 500291768 823614687 436634248 545527917 902071496 480392487 114776516 902864487 737850830 697192203 390281506 721637155 912540136 987696636 416350468 457370896 134396929 59322513 488365917 52011695 710559885 264388012 71462569 554692399 660927521 215557330 549167060 410401219 414351154 733207166 859096291 251145981 657360802 741404671 517882140 178705746 223256018 863586540 94236128 110606809 212516161 519404753 75905054 953684962 901001418 105961743 83756716 765753088 348931172 829804194 713308879 404971192 353423576 116712339 626332557 626220317 702622742 198594948 251608585 508284180 254828490 498660809 91557605 194741406 747284123 569644936 112138503 311072226 745847081 333715434 645509884 581210244 341065279 919328088 778917861 422309992 454636076 122310339 683382457 399907970 404989514 647523527 919940936 821809576 412576084 90010044 509594578 381712474 782132534 49172695 262149110 165493551 905368745 388299196 809033335 881492947 574491746 668725740 322043164 55204307 162965264 777499311 686000223 723063577 691860074 860418650 125295476 611676705 358666461 946716470 859255331 685748758 755508479 363379484 585548491 254410548 568710954 213691516 153925875 539203309 966500166 214330351 429941105 496127083 915634463 229929066 759950309 727601067 989309084 378220555 707140038 526038822 105436995 121684890 389555316 971814884 752881508 537834428 186862045 282890073 609412656 106514717 878015935 979506050 610332562 894445079 490943970 675339343 137321599 752370810 735978923 604816549 794586810 925747916 673578846 780464557 116947396 955293421 597792176 678083121 219369119 964063090 234380396 915425031 489443820 575029913 776458838 843351950 539355153 397428563 259438008 681731577 34657158 482538183 363303037 614156656 167023146 255255286 471088012 254510349 699209779 397986547 485420451 404226617 67094137 84169622 283744211 112753 469333163 37242565 202592063 825224213 283529077 95947486 804158828 412708129 852650659 740898184 346052218 870940540 334319762 274283652 296199090 21348935 528219570 105808142 624988270 917417578 320632207 509857121 634678925 167567978 18496194 35969206 286527701 971872274 122548922 995690206 735944002 122275450 857800165 964035681 581478907 85489231 988558068 322278842 375995362 913259519 984103514 551426074 18080680 150569414 258351692 651147624 832351653 536075964 657656975 137231323 834096571 119546760 66264515 201624296 887505852 425404214 271055857 529594424 757381387 475362945 60682032 215082438 905414360 568115376 322037118 251158314 781094895 333721646 394386560 742393603 171882961 972344730 51780188 84768605 615986269 854975994 393785482 783172824 508457412 780375016 988360298 366008992 718078211 759798104 367526419 415601306 266679492 181682057 747435334 220768215 963043299 438268894 742069593 768906723 409460068 337254324 994989402 423685918 72360200 271739869 780653523 835230123 473062430 877462969 167412470 412905866 572364215 847291466 694473814 787650815 955416235 237028877 892367736 515522453 583619708 977071436 975623596 347684427 877981315 998386121 354889197 19154647 601978970 138347653 941059747 109351587 477589302 198636187 800933692 342668791 791488032 717793738 606016352 452866245 339973421 373841391 188105236 654688095 392633951 931656290 618391888 744189226 685461369 953843427 609183428 506045691 547256932 845042020 649397538 263573186 781990893 915998891 736956060 342318499 12995892 785218199 88413934 779817830 796400075 517542929 973460165 367376130 43022255 872979878 157534546 745369293 500187211 851661433 838959885 202930637 21663806 425496240 770387115 232414673 66019416 603448672 766198379 535616102 788078625 916176385 314617315 819539020 977949717 334280453 826792406 833361344 514827218 672481094 986791854 922685555 369964806 727749368 594818958 143870743 521100825 367128966 191273042 502189658 994904144 24805897 274400798 616321140 453235143 146501670 924075929 203541347 686284481 365058895 506228462 608802628 152539000 684349401 416400458 639267595 918004317 927685503 426926466 263142436 764973555 680223805 243479407 692027251 139855985 205266102 681091658 127938052 861508421 770260786 520491006 49768018 728331653 454830253 965542775 112370496 936305235 178460724 914262259 868881852 400553057 631374100 121670370 478257366 924866323 215426551 454777176 133864953 920556713 879595816 32985405 215821428 830528126 297271956 998567510 130092355 452917244 472695986 633870769 733533499 331255449 564752250 83232646 207982214 956589781 579499921 297255958 271812827 291055880 887184304 988869387 545717577 153542556 436493541 686835114 913656370 757100003 334975129 281701268 587854089 993993699 291162821 213551597 439069904 473918033 14793904 939892476 734475284 357905477 331955394 131869469 410997049 78730944 837771924 982221966 888871161 700631972 570659985 653185046 991715765 442928641 65636342 763322657 253644720 207019601 392839993 29824099 527528217 861365284 166180083 375731271 523416688 822856022 45891597 836038417 522833257 74277779 103948277 514518582 274347102 720690406 649364866 674093219 882034043 109052836 647930199 228441712 281622623 717948059 187172357 203039661 66276076 92756526 312352411 398224820 767415712 330380983 546555256 21580949 689721219 168938805 211801430 505768617 52606694 307829293 869506385 343763295 780301349 974438549 233381773 488132519 436541902 724000847 41966875 914036794 862854943 131192764 205092721 914749732 543177654 969689204 14567841 505143489 640128018 186973921 662566635 271588824 834878773 111652482 642114828 8168617 445628985 948128651 582218586 673526715 972199097 314748395 30685354 494118457 981800846 772079409 81524347 54572037 127580451 587166964 454725336 834795977 80614597 897341977 526845190 572593236 986778919 291834912 63805148 286242627 948048204 603470492 725904875 127903870 53763094 871698435 688290065 781658825 296038547 237377313 496731096 136314435 497371673 619754581 292149247 911121497 864627849 802131733 603120848 70787612 564365534 517979405 843302838 951784091 389743723 15608982 202831795 624917938 611489387 777265966 15245835 743263679 463797814 664874653 223424676 626715838 447346752 649904556 457826724 743043338 640678624 275444213 169111538 327776684 797306347 258882540 949576348 555992358 458178890 57380531 192329188 607650389 721915137 742791971 108377928 722147982 824947593 491287988 639419321 355150608 255439028 142402536 342724176 796967222 23614814 103007048 627735124 172712741 988221724 577163852 447199633 322046322 248865119 856555088 480140311 334565845 702169871 857202252 757464863 65061992 548341353 844332762 603960423 697797332 487098462 494413001 345780962 232301527 814448797 201110781 895078371 581946590 547801024 561405920 925062815 574055659 482354030 36121625 359249481 685699045 657281154 195562066 846872723 721734153 148414748 721136394 281672138 600593669 416003126 590289469 899776015 335853038 261553611 217139734 293094824 228579237 431790380 590181903 298025473 535187284 205128739 369741126 642087258 57821412 970225485 339979976 270548963 793800907 391369440 623517456 63963056 754547183 260891418 210541163 979820562 911507535 412926746 600849436 734262640 220139488 111963865 600423822 185278220 390481851 1272905 614981816 777571545 270899660 991502688 906989832 941949258 858647911 65979132 933033322 744615278 509116225 68566209 398417867 370184257 918430291 554739308 540388228 918219771 906494495 962176984 599069075 743895214 392340493 103212283 406750547 626667273 581277319 492892855 549544131 946634746 759154701 56571530 90277598 825299165 50708300 659537758 73104114 26375955 101113579 275161682 536892056 989580781 448663547 565208669 372742891 145046860 502539241 696673767 341103619 303312060 318299452 193351157 115784932 424212812 513501249 778186589 352396024 485174352 126184085 438693143 589989160 43497671 786299749 180244128 577480812 816121595 643673623 804852432 899319725 595426986 570820419 249804792 84261007 320262424 583319017 270357563 946017122 704157007 402264839 194654947 764052558 926550077 898748328 619459648 429227728 819670135 621523547 926908218 142423558 169715732 964374777 966568800 133575478 345262080 852801139 711842889 351981603 78934801 565286897 69086618 571101254 723089145 689660231 484391738 908039782 416429262 13895119 903269487 832244586 844117109 112529735 737129755 497984997 478302148 669850003 305596564 468029517 846162955 232202627 155150498 338449337 580697582 273121781 277213002 336857301 246865668 800091146 575078458 90367415 424744654 186909833 957352350 636695272 751546214 774014412 172414992 388843305 923291526 668835708 951333849 9978308 687534929 439177979 981061426 861336087 434303466 481417029 938622158 557936823 532996301 272116373 220199087 546834291 222813427 392660766 599064319 827625210 155355706 916104610 694723241 542787835 884963723 768104449 336555614 827089794 850263775 831821266 16478120 446350781 829353731 338427737 781591023 174752926 793381050 25354317 152394092 939020783 580008742 613444680 548074723 423894878 596735239 131920240 698721184 828912223 2432541 784758592 357804176 83912708 592648681 973034612 851227004 180037467 718912804 223832061 264462658 477767884 773203790 217773276 184736357 87970110 770941862 182777003 914441951 71669080 538080207 682589203 443881933 745637274 173434250 404807394 157034671 651959828 824877256 932492027 398684557 1577358 697552863 997450344 123437210 320855292 817002981 516044030 667954290 27259629 416036138 973467871 127540957 964086082 319085474 536869345 457409209 750668488 550682609 53119242 724409058 474518579 623923509 894280376 251552504 409544438 558759009 413893847 782857327 419856950 198962588 338312774 950150784 213728071 31296100 872656947 589296393 690019095 462243812 860075851 987645870 93591202 139706442 279480371 244968759 502213432 463592239 280641320 100607086 689672356 62271973 799945146 165864642 448460158 405075743 579513391 238718371 269460323 806247357 949812008 627650427 780307504 757098114 468086342 846256892 794143857 986575078 747483929 320866150 74100965 827989606 627139758 233154406 779289854 810685346 103380749 969902574 898947563 918087288 30615914 936564418 954313477 704174090 159801037 543395627 480122089 841846375 343304014 927009192 348675141 977160717 788396205 378614150 541343983 113152670 65501315 626728243 455154739 350416053 936700507 980845105 383627511 143697880 886058732 34942594 350089652 647142970 270147061 555706515 20194730 308318417 289847881 627002593 327570841 451245479 187208740 434803419 548744906 36603925 271848042 450688349 628784932 553081657 693494063 147265042 401209591 767855239 233270031 103454124 167572043 499928063 929770107 6133249 543084148 214328342 365066214 769293234 440629046 278049979 520217289 723364325 328211005 390981626 776148279 547024711 942284155 732508009 72590062 7669032 600443824 250145500 421572798 465943721 916160995 795304932 469057100 964918939 376171390 842773196 516892832 418568785 825319666 134797024 698075031 414662908 989176533 615381529 117204582 41331093 895617456 426058928 75640619 490111174 926918290 160825464 266299083 600476471 419521842 585863789 898696493 575649334 92284307 134618686 575042361 644446450 429090009 619300971 628430318 187213831 772544883 525314342 257408561 566769020 548666229 60520488 779111241 254028830 883346401 973618238 110300935 800715856 286302093 305919908 296896615 565308274 35954125 240669564 912801496 673433438 381356882 214941020 119856444 652351064 280727739 197883256 309503319 62627782 859160978 851465948 130893981 363066702 981622228 753486269 983897050 482783323 418640651 991760545 367996627 186816564 902956039 253604825 568636463 831641980 667641788 591666886 715264283 484606515 163566674 913689978 194482769 717213674 208342659 290318633 577892774 759888740 154824278 821154107 555927975 50403 517078270 398058258 943724926 822493293 26465443 596206227 148186594 199048980 223703473 85741327 478776222 150900498 476259384 99899733 294707872 824515919 226164057 722781936 494778914 903455525 755682246 382908736 48168382 781354798 757288433 973846623 491584994 773151139 148140953 816822229 132192552 201611842 30758738 365049875 790625009 689348957 200797058 302068902 26775134 750974395 635765586 28887101 282840523 268924446 416865188 640477916 484763112 844425219 168835874 324245928 609788384 937064296 406814606 418888821 693746946 331688034 34583794 934704263 929653507 585248432 334913769 767465344 916881 114162050 332033387 63539632 695112919 573550757 598026075 175580183 959095547 93908080 998904061 509991187 202670038 447031658 323690067 9255500 427455951 807011367 952139929 316415382 151838187 262448604 802472813 693017327 172650379 586313509 94996648 137546656 587658697 658919539 496111604 121251692 481282139 15334048 139460828 266474168 193910833 53798756 887357454 264377501 804662350 195354891 618105152 899042851 271714618 258121593 225941946 736913768 25699789 860475919 239854033 762855781 466305431 561466542 410402527 750085096 361196000 739392545 228261076 914193042 479650312 738130223 2286559 238402161 992761175 404449351 807462337 34339853 826238313 710841595 711373722 681262501 765771598 490600592 468802424 957409323 333253800 956108031 274671536 910097139 652053094 942959752 645112994 117635203 195722211 62840425 978310284 570976520 609810933 491443434 619114003 778306075 15534792 233984831 114632772 814371043 606534457 816467040 583423455 482387118 47383528 480943016 606179907 954874816 444367386 724535577 466160705 45929011 406752884 367330194 744086313 987783968 748037847 304724162 416341977 610579130 701828646 745484838 548058393 538081978 260744524 909953908 119015107 486297841 677594917 267480399 974706698 111431333 220401842 783680409 268937708 702216547 664009691 914486388 390733124 261913833 613203931 981292093 179508703 630326971 988310254 668058861 372215327 99177770 513175240 265891721 858385891 216190252 48887646 920260891 791171684 538583376 934248104 877045671 214353987 253710269 376452583 529173400 633550420 317800176 821496050 57930954 723977460 379276337 90940926 546112976 57460059 96191727 537045773 788120989 363402463 112417714 177447047 345108135 235239127 973481829 30835932 35542885 538580849 544535589 808007310 834833323 519271767 160084929 129024758 80264709 543322029 299629943 363840289 336298927 955008230 545870766 783122820 672246669 988350834 876467834 351522747 746130810 534254371 805474869 454556166 977424653 374292825 721138128 345447555 817082078 263477855 553731289 426294084 891579503 836491978 246230354 229930727 889128126 564102659 39157884 448174003 237343130 825107831 400162794 975261047 786477729 652055136 885047502 792926789 530119783 205492919 236448331 652146585 323425545 651186335 871101819 785747279 757664781 653814520 509160081 597693051 805376578 497842315 733576634 134485630 151749772 342118032 656334032 270117625 669839074 570154535 828146867 613649843 222490352 581531773 316083320 464840237 354352414 256572690 34543613 16360663 819898038 121909249 683276764 97487450 675114678 915891778 39339340 680059542 539020920 719203970 259843518 352728209 636239798 533226313 326879 80174907 388920173 162030635 626340795 171314148 262027641 386506989 290298415 4528244 6484138 940571989 299430020 455536597 830721281 878490578 176200277 587182214 409383518 200744700 897388343 671043257 715737112 786869068 263832998 687175838 703598471 864434070 779306316 730586214 896692349 968132102 248585757 917407112 232133954 496920010 332447297 932624792 323962825 931875202 671161904 5083457 197031879 113865196 864335560 98247124 31392294 12510001 538576279 190956038 310364325 108596416 755471196 272151483 870382831 120816511 843528662 624945883 695738709 414754304 968736787 770068617 728969120 222356244 485930607 550586869 325715103 288672096 989165788 168822598 311912650 256200716 915919681 694630787 972130626 363184393 934046398 144577132 373806937 657356382 260887760 184893549 608633522 802453344 793668457 301993995 579119289 263789455 619997585 749485823 632264282 595119814 757065528 559023388 599052403 39576370 744621955 378184903 626657618 883563821 420115446 544261781 892947855 141927300 168086399 53437290 213350168 689950941 26269322 392055887 423466797 421776234 563846963 495006368 346711322 618059025 214118128 812114131 259752024 241003058 144135219 95057089 971335498 59995146 812800880 472243101 967404552 769313694 955989384 86791037 102371058 126348751 36186752 82081127 34355988 920059321 90536691 75478751 210745045 862862957 608852350 210943271 762951381 744191943 261599758 542415747 234674195 120659526 888803937 918541186 854872368 831853646 529498005 66079951 59646470 109620303 512410307 906317447 845257183 542505782 683861910 802993857 622913670 551598601 588557148 978120533 370549056 634048986 558352001 554595684 295793706 680968890 387310526 800075077 230320131 42166106 880059969 655414542 130542919 490448192 940198248 690455835 917260868 360661691 120711128 390642546 773954805 267012387 895817954 739394608 568059893 233965101 168897682 914620956 443397633 405575413 115181437 117286272 282876757 671748364 572209969 798386053 6520754 704217490 406490605 430158378 700831730 673391647 633421688 157230916 750836699 284754060 564766788 421801900 936487638 338481899 47655888 381754465 823855430 167653545 602554639 61830050 129608674 621859719 344514346 280355542 927535498 289544676 829414625 210820615 701801395 788547067 296301127 659805367 721217650 384949194 866207249 529679845 668173951 137486185 510239100 867303759 346916023 795847021 614185594 48984317 576168793 246191290 307194554 161332345 814071392 49220913 395442050 116262006 974751138 322899682 398562555 761351676 435425599 536020631 217729414 796805037 765867704 940809775 695942431 270464051 829411363 514769504 258162000 26683916 880049687 723938216 472099011 372735238 91988770 865913704 531928069 358197952 516779625 904163859 831859866 35467377 113650308 680610420 973167030 772832811 40564434 800506902 718237081 152307988 50402735 571737208 543906357 691495891 489825210 699869473 455912920 808797604 883276569 551716946 351284112 522344987 126598023 976007108 371190067 285081215 414167418 998691658 870626917 186228412 429011551 583939923 778503991 570961367 217635146 573629872 694212746 956213149 68085849 897441232 535638950 371364047 706948337 886660778 229008947 116329682 602705148 697775642 106406444 326225225 838125949 158220012 352476304 130172088 455004541 208701953 301901593 583713802 717792581 192050876 788023308 64483411 973047812 455881192 233947276 370363181 717526848 551107065 274332104 21101675 253033342 939056059 425291990 783368265 803990741 605627648 545915990 939806482 967520075 671455881 734768222 840892755 283160219 343386999 834231976 323105643 603436474 577276567 460645509 560524719 567343740 761812785 412002419 198173945 413207655 986584242 130680330 340242688 175427237 614602359 520056060 156141935 851919006 107032761 334577856 150107351 269201632 206224806 92646875 623863956 945660810 325200817 493397848 148732834 842924818 714483119 383147896 649071281 132850417 902145106 448301719 427767704 198710041 972428152 236490183 681767899 453864670 63438515 936306034 651570150 777702268 306279333 684203415 121114486 924590234 622176018 326990288 7779457 463816497 267692627 576850941 789995384 422546682 425712492 977503326 145370593 29305724 491503580 727167357 476156409 413424582 983276664 21932035 906054601 70957119 322563188 549642210 713845501 870637395 963984209 513544837 455786038 290782586 996301228 737604691 621081323 508229482 941335188 624393523 85684941 725071341 766528537 247729021 83532880 303975051 745497922 118878866 50437934 684381278 641182645 653087386 965420060 593341870 132809872 944882564 478371408 34628893 813147309 709440887 163438679 206848890 605285785 15049242 626892805 728488713 530068879 678067739 535956739 959862083 179333243 428378521 334312097 263843590 464798809 729178899 897944997 123541267 998529386 2419731 354969800 759378984 227424533 911932453 456022437 655543683 495863278 845654172 619793247 650358993 417555302 789825281 450653890 156716921 925085100 523086221 825035092 852543032 571247039 337677042 815342023 707279970 360838807 964030052 327509669 977183892 3294381 686329767 893224066 413655339 834713756 78061433 381301839 121893434 143642316 11456652 92838519 209807821 979003081 897933755 917300880 813246238 708853439 384810198 311028622 193368926 394572349 401388343 510924089 176252965 198775741 261993901 177824739 880446423 97514486 416793797 306064440 912385133 89454246 589389822 734065188 500389917 626959233 847311648 319997480 802621016 716916681 720547155 523384222 545525706 69800355 506882909 914607844 125641638 966383812 73588851 857079148 388087275 982638157 730775143 792780942 85228079 402810175 442334179 64555353 548368227 838118183 776286780 181065314 128606076 860768436 196551961 128116954 970775352 722724395 154575191 852537112 93452113 207793429 341921154 29188100 734432951 705224463 776533515 276655090 529137729 327887856 585044659 860996226 936165740 934921561 831364103 255196972 898390738 195967708 222471175 602639475 564325602 193845809 772165136 270673675 62084295 343922998 102741502 394501497 829650589 114191059 184467619 494696040 132438101 840145197 747393956 403354900 398651494 739644998 587179008 185610126 367466385 196841807 289434971 217474929 662009897 902245958 856940225 625786395 531360897 42861064 766330878 272675269 283735168 59281803 611788149 921740711 432060846 965448719 230789470 652868766 158012864 289055686 27639687 86278571 407154558 144266672 445494139 732319007 954958044 408976325 601096563 593930477 990684372 664100006 338166638 975518210 30454282 967301815 819394066 469858617 654039842 85255778 128992458 200872235 411918500 949638531 603198197 622202402 640343917 747126537 925935276 475120801 835606481 27376764 640381930 251474945 865301949 25300531 968157587 81887261 72990395 100080077 526200402 863397240 496354425 696326531 810289791 30432429 271494838 41535503 139720151 736992267 180167350 939851556 599614399 445406081 791883192 502777285 352681070 654925065 154813585 343647067 125723761 330762750 323726933 316445345 472497143 182838910 465588915 541373243 354992504 557414483 691239259 143548665 147489208 150586678 482424143 284544566 730633487 687363785 273166436 449286033 762289776 20926653 255970445 201924417 205734831 302820912 781815707 382156143 556753070 899529357 75566367 314849102 374780182 348124823 904442163 765495413 896135525 179543709 113008515 16407507 988853018 854116853 448640924 825477001 782970218 900012894 64012423 385575341 497605033 740713333 671578687 974049498 655800286 341338077 803945451 702746132 177864522 141165819 635632231 131798785 807189287 936114248 588622131 195386337 661015075 355183220 883023843 849857346 182898008 972885179 8524946 839948291 488644475 901990034 355954448 756872687 576948806 907149733 565660918 453332758 209486026 956373978 203376399 297044227 530508662 310732020 852106105 706383653 676571684 945287852 490183423 318011458 733731247 233043218 140120506 510935976 696131039 413909014 215719812 573564685 797185994 389361366 240515819 102264597 454627600 672443188 696944080 647257857 745605516 446622613 290708083 191090481 1935353 983075229 154508639 510762113 316532559 36954110 415579931 616690041 834160835 622306366 606667064 875916867 927288810 752328785 268983833 949615539 266541502 326763914 551360357 326216095 189668445 804340104 90266798 222386631 436092509 171347212 263677526 372783503 619276196 167107321 471218993 531485972 745202658 309791344 515763349 521967477 145756655 513768644 241773123 978717206 285338112 271727060 27823401 828772349 25385845 210400461 130629338 828494507 941080728 5807242 515790977 341384929 376608891 694633909 104011007 495409248 831275707 461548805 170974948 10719274 766115496 720625703 598367442 908448670 380085980 166096587 44464773 304485252 487468921 801088404 212316552 218722414 203184910 925814054 633166160 959614287 13193353 44919887 891345908 551408423 803055638 503565834 450580929 257749254 86302470 978798240 807304682 931608918 596540974 40214237 523726829 477150452 178179013 136401643 899912089 251274162 412536877 625800127 381081890 167700019 984090955 214130372 788683640 323514291 812727898 819715354 345929949 98854402 150937825 292882897 182268589 760605588 301621076 49484474 168453179 907434704 484366915 320079446 740600315 601045308 141935730 260636327 254727302 370270606 459242428 705153818 509293968 62746252 976847424 915608914 977929209 549868835 889050026 456192275 456089832 981005293 707053772 422423210 227170205 57038636 714337433 732259276 345836303 165546245 453620645 189257114 401192018 413973426 708442828 502868714 522365107 904543385 906247382 352448549 292579480 665104578 307507246 226553747 679934081 799318256 185294108 672236708 238624572 738356074 87692317 64682405 58460946 904081904 533221521 614060433 586158229 639053410 805089500 518517595 425490829 536482252 750710268 147034918 85373021 209355930 638877536 984286131 798471294 954967635 492641704 976572398 478127930 271835968 372825726 920043434 654002023 515740603 892482328 71870334 34525346 946062268 106630779 827388649 599475036 151148768 522777807 738609254 856091118 93338239 769399975 779413786 667145031 135162920 182841975 328060448 270950096 967929202 405142141 903206957 316121511 735366812 264180535 749722993 245568727 626334360 93071019 24849937 222162462 529733927 387422401 499211540 648859744 861934922 516610819 328276763 767074765 852282001 412848484 752577141 180014833 607766689 311449842 418066306 919711327 932508977 649745700 558455263 27065934 401950321 309975508 152702650 482948330 257096734 317773170 405491628 445872219 44060278 903464817 235574989 768894977 965923060 622672664 912439832 167278366 198768455 473676241 454843887 708115382 796041903 480285980 158582946 903860930 316023246 538686066 770337304 163900316 986895976 516306100 131720810 101855233 898111831 439252909 87966230 111889286 400226369 159960912 433755084 409756604 380536452 135402950 854760549 653233035 881712923 570801909 621597733 275680164 663806261 950646915 542391711 37957564 791083145 163183447 782583516 346028254 975118423 71298451 673430927 46976889 283052598 293162989 734921476 449961701 553494982 152277267 432612195 507741667 311334289 422285071 267824533 740253803 717791318 677300373 451251140 651372986 211413743 539932653 760254819 228606437 553782024 332162483 487247330 518447352 23405183 243030194 994401900 342100574 610929645 759355340 603635153 520387916 346986197 358182390 953482820 631552793 367323224 850455926 560191536 125081213 200358525 544995360 735854463 224563810 818147017 907199518 493712450 689544466 701284803 372892692 781193276 602875864 11965805 71957116 171272759 797248050 169306963 258837499 548618437 241036249 597444584 905248173 718077381 310786283 307575787 91492748 656895062 106966311 455342290 548299086 164084541 53456561 927478266 599943419 660125819 837837028 161588182 260239073 128511352 68373632 208230160 657864062 911546860 400046883 387869587 150559617 561876407 706957331 167450812 547551852 354508061 792143583 43091962 192610269 965994521 453268805 27548497 72880283 712247266 9629475 361378649 456444634 636923279 442109573 120032894 342323706 759986589 373883248 69101363 358158401 798615929 57820658 533068009 537329291 788747642 88710873 748218408 285633756 446684493 313125228 157765589 681140838 123145151 105342882 172067814 521173690 53597304 782421106 299211192 27429870 818279641 568937959 227627508 493703731 38686540 773425680 584455260 263453614 847133821 706457368 341053068 389544860 722919458 563393486 710174166 192230053 487836372 38637025 864193697 587542200 604773 663686057 391736251 373220145 851180033 146961351 46602064 165839957 866805757 922741307 721460374 640989028 62633393 289526964 406343804 728486125 462398355 665529371 569065719 483041480 746070824 9354709 665388684 721307362 900654082 340614027 954242241 23137078 6668436 21885791 205399498 528339604 297710514 372027519 463732878 753886968 743532845 521096359 258323585 373245406 692842714 59049442 373055198 367901154 894073472 164444373 694483230 621398673 706418622 978519614 397015843 546800190 642457274 192100614 396032370 591687307 690652968 435435490 760829332 989004281 712882739 275055441 572619043 820027109 573951510 814024932 949518389 355641399 219051828 845947291 109419541 400449223 208594370 644866187 700950818 31572142 328977674 425294265 122906279 234021484 400136619 93458039 426913319 570959256 705289513 26279167 843065737 663715732 209148411 325977683 836303459 47512933 909917846 84327140 312565577 137078740 722187638 537483743 519200739 455954737 516092785 542320957 480140778 257754323 691142052 399007826 54357590 308219626 276998441 221078369 950321339 990491027 71645673 765285585 194394506 799715244 655329881 754051672 934755563 822217035 219075941 408639113 987580704 561658747 20288083 778782471 646057911 650542247 846394450 549678405 911866652 415483353 970451718 82054962 182549582 938532815 46973539 297716403 524618123 717620833 577021463 338717550 369920158 736344239 110169629 789252075 513620668 341373540 134341794 708502495 346094634 838572617 177662927 198792305 93733287 939532202 413127878 164859703 206424259 770615737 552759431 600465504 647305282 836518149 340073484 810807699 883209891 809221265 695831562 899280645 53619225 362650341 641161977 924134212 270265607 846913664 398325565 226097764 563900482 344981595 214879053 587837461 589335494 769896513 955855998 636857405 831591734 703297480 308710894 130886252 393733675 363130416 615265717 552824365 587065045 576463203 348327640 701566051 697295869 26781694 325162054 382675594 952142794 593411927 770692865 493760766 855577947 129541033 878042898 569639466 660231574 166819782 518915386 856148620 181268650 917930324 808193818 711950816 385111672 534638931 214592910 112927730 865150191 589499451 417136217 460211294 383095735 37845626 491230571 379187599 472081228 96636436 89331914 756291430 19176678 969035874 244816973 304770841 418142750 11846066 16157894 707505714 4108390 870346603 496173465 372719968 532845422 964700604 711198736 712325715 729748949 186409219 751963041 16157458 232947025 297397599 238381510 706644173 493527834 199394848 759441512 644206146 189541413 638307472 22736743 908517854 588377198 710871476 432220890 252061383 166113528 524394715 425870306 313170410 938431055 931364499 434104379 275648162 42731436 601814297 215929183 649553215 112726570 865978740 479322267 878119741 598417380 467000802 218064213 838167600 615082174 365931827 536023177 26146345 733323231 593082745 291832127 199274672 197394554 290435511 103892932 773482613 544002318 317645347 976314792 785814972 370538157 752190677 19022389 409396352 853913978 219153833 428730644 925107179 124166056 117920299 965606908 499454754 336459799 997692690 11630989 95101207 623975906 576475924 408679695 429263141 899993647 234943598 197723207 323756476 57230706 782516639 550241132 732451997 243280226 344846340 61460430 672720450 79019076 68853453 701599837 825088911 444743412 721152135 593355026 965568008 293371765 570205978 566511347 181367444 893334913 83876157 962051623 10268915 209187920 37016048 991765084 271593877 137131237 822906460 42601638 431110696 69898027 515126722 198731251 968404303 948310586 197682936 506114233 719909773 884779614 377974066 415797888 388149633 106218625 160082051 889197643 454970836 520870293 16213617 970520816 416960767 261482738 322378935 382389149 39895717 68584688 203583259 415925480 569023709 850345684 184878183 977485931 712813421 967066189 37460631 481324456 828467257 687974964 34444143 687138996 100768287 723957598 995433746 694903931 911314971 896471867 78344047 896503023 907066094 544129578 166947728 466457977 624967239 224128056 456385877 798928404 38829084 810234572 243705978 979349140 751162619 824566263 48445546 95242070 144780027 947025802 658664005 952269533 151079500 947396439 983715690 28166541 994684916 906523630 140213991 890652853 739568403 381946213 10589756 882131045 334068616 906884362 499893709 739187603 813862436 153203045 612084011 706662888 249989325 836019 35959538 94741851 396896674 714986104 342539463 858514874 835627501 84551464 725100729 996933684 663333547 907327820 632925435 441288924 325370692 838316524 797404062 671653744 397546256 594953825 540383128 626285008 344443703 848814058 362910159 215808987 928720664 479995576 963329427 216492491 460048791 198171038 461178946 123290029 789561049 767320203 343614369 582938249 928588316 839819500 819232991 796756403 19472327 254545898 550249795 819081517 465646818 384969282 495706783 253676567 808815513 670281448 253766576 116444439 220859912 839191370 596855355 875841855 261905281 463995805 401642352 548493799 758174024 422640749 647893119 112490798 258168806 866034591 14028165 989390434 505744099 926385582 675769543 122061637 756083241 434476950 975251146 991033711 554273447 814277579 578545217 601034796 139957790 684297485 716578814 841345123 206645831 670858905 927054037 222532013 914014436 291339021 818264386 295221973 238643546 859754089 624048828 106231484 996236154 475386179 2242941 583237299 967499059 713458740 461326657 977960737 341970706 962498719 149061961 161472373 655586984 417804089 71224165 624605958 187008370 557220794 849581765 777434544 534133911 205662602 709467048 454336151 401259415 379553088 622754811 104683230 260257883 355621006 290704525 527624571 788082802 214794711 886284395 269251002 658069420 7910145 388228748 680946525 791570934 374492630 933763310 536935824 951667009 128591220 448425088 841616689 21880305 433259929 459820000 176587022 755110725 766060774 18479370 973735797 306924162 458766656 484627147 738870956 237741156 304389130 901045940 549446352 150009080 915945632 775817735 589995407 521355947 760677063 845451344 851252883 98341957 71337512 273622940 202027644 163797285 593058668 603188466 761794579 434150126 671427062 138298659 867158585 435392586 573022276 148877967 211022404 449992599 404841174 780747851 711611132 577983419 457239312 948722455 189869688 500524696 256226989 355768873 89812476 890225718 403826310 582364382 783052474 727033585 565265788 670156551 3251721 620339123 520530917 617872551 295602983 575430134 66118879 397510601 536536255 748939927 65240808 224324642 942702266 288729313 916488595 960276743 746389171 502511147 222866790 831428789 249390796 983206532 252578078 588888722 868674952 90676464 112815501 21424387 249376781 630264160 819933362 937289467 254894455 660522996 341170089 991104642 759973825 468619515 482990865 803529529 141316107 921759349 644193025 138489076 434547254 305400769 479221316 491707459 669156026 622702452 619478104 105951844 576678528 311689397 878438077 29022439 226053590 452375547 213448493 633076706 767663289 87855121 840866986 654813987 617912145 532156447 663310541 211399713 517396055 569588872 788881604 851456740 118079915 63969085 248038517 629554080 72577044 537321242 835055515 900552477 261195957 699152555 300874453 157725568 375335116 533661969 949355461 648762970 604690474 242156372 462423460 127128337 378973742 78177639 359558676 776553710 447960074 294438336 694654849 401114250 828890557 965293316 268280258 494225611 607549557 137199862 540415908 708248868 532616868 763707556 341286327 389843851 600353855 154566808 693538935 255160399 651055813 453706617 733397649 456386326 690624429 968330592 78957017 491056680 111324661 895854497 704320736 153227705 296004100 970383427 731171291 449763955 798279051 354897558 504864970 833085286 251011163 913440591 316949281 333569746 754655490 474396381 246952186 32250512 726479708 405176140 484826741 610002448 142752586 435970792 162533121 107824941 31438438 683960555 466218102 995978833 9676368 81890547 327498022 530796309 445195514 731334106 748111111 336616053 705583236 592572086 587052201 790957487 200910367 610923148 282599136 599264323 274530187 37658160 387444083 147054256 497507445 711567023 980322311 729862704 190842924 574397773 332930729 433699906 633810610 282511428 229861475 649549563 707268039 717598917 658420321 12570795 712012839 958571593 112427038 302208221 553371402 763724761 578661429 909907712 450510345 901167572 362424704 242338024 357633852 279577362 933516686 256752455 294883438 953086944 901201585 656254604 228881607 26307421 335929880 462347112 609505358 782440093 997909919 277805627 492394076 407730178 114153171 726730737 328800401 521520105 654474744 962485020 945223645 585828109 775890848 422155743 935532174 828962609 53771403 564341138 920484190 882437608 396975767 988059942 690421648 62308998 355245991 785391512 626454575 701079995 288420508 578094221 930807497 791864287 279164222 521092029 808112800 7540940 974830787 719926461 371496367 127996655 713898183 264780931 487966015 406047795 415026760 852486774 517524064 462004347 595819986 707795224 787149432 609404396 943044949 417852430 321415236 101401544 9962337 740174170 184798097 508429866 501253752 150974038 547629598 777704657 553047251 724049970 780522962 443037323 156476521 728330493 596502773 147156240 11464305 410376331 726590046 419291135 541199443 189455287 484134791 555134808 961512539 680653872 63386242 608916170 505266896 122620586 649522385 220277913 859496289 290812933 920484050 915121699 779287825 887845013 524130873 997614376 844223448 829912586 813960211 49667376 766746088 805233583 870112477 864853920 273831403 51890801 184356271 695272593 894437380 314953462 602628144 810324042 598082402 367293544 835945700 337887479 973599948 725000015 233431557 962567311 781886152 234131467 451715860 965305399 840563776 276255204 622212146 59432488 272172871 749735419 84296383 275561571 261029065 283686894 572746862 883731231 343606970 452122786 226248701 136265007 848607063 996909149 845998911 966546886 260942227 924443159 462193502 353976378 701821172 553577399 122917257 726363678 540336680 916497348 153954448 447119599 519756283 865851025 537093444 511804533 630814776 53601022 105309672 32634917 967727006 272708315 469038045 653971715 501717721 595474778 19241868 846181241 669538130 900619328 733597833 974076281 85574241 887336040 635973505 6484719 617886862 885104805 188891555 432443225 42819013 906153895 661696031 398485030 976796454 99335054 517144127 545895578 337600071 728962551 936745907 340018364 941574262 520487983 446297750 746986288 134436616 124879607 718531424 919660903 31123237 720061077 536426891 730023062 717928084 987455887 838076240 873601078 250057015 681128381 39233424 782167780 236805676 228663063 841557156 457432758 937134889 147810303 730401271 813745203 392653494 582397586 94915858 537123625 162080580 130962099 974048350 958030582 254399995 912754653 243932 624474708 474449983 100081695 554401449 492825328 451128176 34869679 241623797 51231101 90592025 388703476 782883066 784037099 563066901 534227988 215952651 788233673 501677295 326846974 944213828 404095573 874735763 648431792 567488763 492466053 137587428 822997071 377674792 259258258 92228104 887209157 6947466 281373305 498069121 607074616 568111657 150559879 542757503 604665666 399868901 235188057 911655663 845519756 176868581 729213213 216998125 235642727 687111895 809835734 5433010 133661661 326221051 33458557 735006803 601563202 469336791 976954982 365336853 64032459 232644762 970229819 898209429 736470625 122124333 9349856 513349814 758302426 804078890 545876510 844686128 687336622 786754238 658353067 737573365 170483248 898922423 316419209 682350882 649750048 419812756 839262862 596654003 36957655 251302394 568684382 669254023 570877642 400452828 753035779 434426070 985055779 237093018 131082422 471498674 395511721 267008487 778971656 151386563 708959978 339799037 587906783 719255849 991375437 519495012 879252852 940580583 747192503 991834827 249578738 59835983 902976502 668770391 451670219 314656958 40596952 89549747 22728651 576716442 749901915 776669645 625516006 935981835 919430304 263594466 770166929 313547822 17109394 899060391 19706112 483801185 583784818 721280 776275486 332799807 985736821 681715794 144049986 569431440 891402030 638101047 226010184 434770477 964781003 125175559 452362350 971503981 371066535 883183156 110753304 423245101 88464033 789164102 597790286 904896423 773216757 363503305 238958620 367965664 158787551 74299817 402618704 528071184 354001527 622984299 387340501 482257017 972317098 993297658 530985030 128149063 181741713 782433499 652768044 328408170 605711463 33544426 700750484 853561514 708572045 587601942 68982044 573906084 743216148 765674017 772338817 711246915 384593936 393430290 995084774 845375355 146707202 994525893 487883815 804314799 530259274 701631159 139897069 294190978 203254785 882037136 595309084 387530705 916181136 582097905 90798486 382485703 359583151 595044094 44707310 303744466 906657271 575817429 122133780 138737380 538539239 630665577 311849010 435042526 984005974 310095728 344449867 111095117 663798455 88434347 321330295 531427198 689067956 517136779 760452391 684856019 119810742 425090397 136662222 754331303 99616914 341773257 877574562 468056271 139753450 366398896 941478565 5064925 570111586 357333357 917171120 529571776 115053364 682205556 351394487 770309042 152513221 546688723 643783867 871446148 259925928 557946710 72133230 663116897 707427864 545560167 689554950 155531393 524262290 188760862 532317711 543101502 678573041 305020987 559521402 42421645 605184196 599647733 951917697 960573701 653345072 454604161 448540886 886702225 784544708 486519744 34404624 755502840 832320520 216458767 252082704 232833025 434271138 398882874 817553724 281181992 323613832 301185152 297839783 556566702 613812802 446891204 807056752 409030747 664929345 729057997 642815948 405095809 242760564 98057599 675322416 984486623 219225612 221365848 336567379 501076204 609744394 646858208 903022897 7177657 51599738 724459783 580854397 16834909 456132978 979889896 638007118 615929722 720028220 354043327 699899134 748407677 56109530 675073736 361736873 6158953 371566737 908475408 152800502 482199241 747860047 591139056 122054618 916147287 247725828 916916301 931919168 422728158 71475376 297650082 863162975 811489719 370382156 638539264 597152724 826616389 672664565 985153464 185660570 54891540 448835086 136957030 884580705 904471810 181455846 672634224 491638996 573199432 869141011 865272811 278776388 63516503 19939242 495776561 222497701 332627101 713435668 776929959 220936880 57249062 223823388 345787123 958884578 926137258 845814082 584354976 826780884 424527990 542423280 126257969 40791784 277259363 575973916 209123339 332813344 189971551 160584516 934070863 649019803 935401223 540098338 387517080 803753503 973935411 31750153 149903523 829172977 164297792 697643806 266198157 443476941 541015513 639319718 371424368 971344898 501829776 325302131 252342214 187043022 746846479 456632436 838558275 634670514 487378091 543169284 754458253 145152700 172804630 742148384 438733339 845865611 523778811 718158814 42930940 430293934 317590727 175473464 704892540 25963407 519290544 859982586 155114911 833358675 756156266 226711166 225099127 300033131 570746169 750340292 462014863 667994040 664641942 398114431 335560365 530571051 278653842 360056761 565546768 541532394 752907539 399286412 389684133 852083250 404212339 201082632 611011330 785322930 713293774 995732651 174602162 156326962 471997976 258395737 36598095 765501198 205224493 6075250 235861831 858797197 21311686 228386470 350676193 228127108 614760389 447387902 203235641 251461903 813524943 282495586 742762824 315599307 997483125 743075300 848090054 43105420 244277231 701676782 542673765 636717338 19047669 848506847 665398612 456190247 640046924 632990133 16134227 330682596 219974198 321632622 190331538 356264300 677221506 76918748 980939263 724371522 484758169 59726507 971272799 166689283 90561116 74851719 230020268 92664088 482191068 122741607 682487865 132453115 224795724 116573731 866625547 812802635 89405233 958400092 216845688 404358520 421284228 413329102 449795731 609554656 391514746 688356523 368311080 597006178 233190267 582830772 14496437 410701900 865436059 154783453 287689486 5770505 840745383 353189364 831189225 84938245 761892940 213869845 172535060 452228447 685296218 864729333 59741821 558517041 312583124 997131199 500989404 995691626 304904905 364562455 440786953 373266182 438752899 99784368 550847812 873960278 763380125 228021717 52317523 989464358 687740083 612020114 188334508 987214072 790921889 81079504 173836831 453949265 382208670 264181347 607168014 510693603 911203096 851519035 10520606 872895316 271920061 546047241 893035917 599308581 643061206 256575521 415738377 192463820 736544641 148732146 32370242 197084796 655933472 465825729 592785101 267261367 817888998 785617664 569834210 943171395 592975220 311536908 345563092 279639755 763620403 203150743 337321189 852128106 826037767 993388573 32304918 877016714 436101111 31669439 749919917 640402536 840143044 100445145 425457105 442216296 75798790 799723491 862318682 231301165 556904456 75971793 392459610 823910454 449880674 303325497 1187411 939402627 994372799 353581391 969387094 102892294 902735369 311598171 322368485 738693432 870269904 389621233 797891681 478714884 419357500 851680234 360454337 658861109 575519460 232476936 567231154 996465480 248042130 721651877 124005311 450543900 95289508 191803401 940040075 939949820 690803599 317804086 165205180 158963846 719773524 311853485 856175233 318042892 939329296 646297067 225649094 618441985 433891838 57682431 480422428 70248359 241669257 708094883 808924236 478744672 294448698 155567818 970084853 986879926 990551397 695978463 5656662 111245565 408258564 64539734 984372245 87589982 152789193 651171008 326596680 75749295 221145860 241532791 704048563 646917077 573586708 535897333 190977444 543645163 595221689 60436333 929266894 425011907 144363080 534668356 396094954 531246514 490218075 155135884 111110014 167931940 226471114 557314192 784538994 284690176 158521619 984148129 733160628 475661959 303231642 910327312 810732059 545884501 466098078 559997044 25880610 218707578 610660028 334014032 269601888 70033659 604125487 956385360 204816056 513411988 272679023 56840084 425379385 98061090 573184445 515716407 716081226 971896485 673226342 396357937 920990995 623330791 749284022 931373664 492138490 379466485 448725670 992211001 759032112 808622755 282666979 861097832 921377158 940208196 645327414 796681146 121914602 4969974 537986218 737624175 817692175 781200707 266881858 796702589 370814314 633864183 580248704 542842697 780201919 32658597 314412677 108903647 613443825 389377472 509339285 952746878 151891535 911989411 970005423 145131239 37948 232640395 133597957 504156838 478110934 260193948 237911954 608438371 959961343 710758754 300527043 489839870 616704522 523023871 567715221 279145840 456993083 190894707 709870966 375359979 750547591 776154571 677099180 949081768 50613701 175374172 272128702 528425309 984426451 159018874 557205481 221035561 81465361 325140003 381063847 884241742 980850915 828522544 60817188 386377950 848107118 443393813 244196167 645961322 622887698 514753196 33587404 995430720 757185989 761664102 368052854 668310265 596785901 762373986 65591841 782219761 248118981 1174963 861277685 798584975 554218385 475159255 335468210 438809182 737353838 844573824 651238442 553378633 979995908 307225289 17264791 173406114 92147883 628617423 757390170 854498312 33690037 466753693 981354271 177399902 981242181 496011746 245944153 260288771 722736773 215035994 711952591 364667390 355496467 527336761 876064635 271778142 508976716 46820589 651263764 458628278 882205912 982390911 712533972 252062997 18886292 257102578 827385951 359946741 305735750 497869369 832090189 943038266 353275636 718602236 460310677 940614974 937712300 573805937 926265796 421266844 735577769 85088589 859633787 357787103 390065511 353642073 451726857 314099335 852674785 309578654 690782378 597070571 380643760 294769586 393480993 995006133 681347612 75900225 474870171 155464482 891013093 805591456 76773344 439863414 704970587 369130068 884162220 64076643 528548511 942109164 262021614 55626509 325554011 474168682 754982017 483666001 21283288 990722592 678366662 367808200 651128393 602255436 349367036 736117848 493012006 706525178 46075696 502081330 34604951 212191366 553381596 633658763 862030245 169044179 367564667 353952172 527758489 886287896 921125328 586546829 613333227 723281991 267502199 660354530 699630684 410968458 673048686 165205149 718184436 353543044 271912048 270719196 776729460 891895845 63423986 391281810 86167427 848579524 600845338 111746211 806256832 85450673 325460871 640392517 170837405 764146034 960193648 407533954 213253284 968606196 547745970 587537195 747110702 399838812 384259776 770156988 110358046 101581840 811052388 739218733 742684392 325153333 478731670 81525654 856380696 108721517 255969920 178059065 46812975 411291582 664400002 984477092 292827320 952493858 777503395 762056080 678947765 665070094 486711430 48401347 587745853 608388409 977990501 939157495 747207462 985284322 426245633 723407193 975124110 455061553 356689324 258086932 677097980 256640869 418159996 12471485 684432062 752838924 693378672 268750205 582325600 553573662 97934142 42154097 394206399 10510934 850990609 226091398 807285014 986768557 252655065 348330919 60751575 235578976 745012431 444147195 514636391 394543198 24406150 932080628 555786334 505281124 428084671 687329691 424680590 114783775 245228345 862090854 945975950 911658170 811856077 208381154 712478851 69492159 682396568 222583454 496690541 75786279 206242387 656738371 576135638 841089508 68404612 968991618 975307849 871188240 649245643 887010112 218905436 282197404 515585610 99581838 541926246 99662913 200058232 37116510 76020706 973157393 958476326 478797484 462945929 889653162 464289767 376500420 85560480 105048002 540795101 269599313 134258405 891563601 563784842 555570553 139188515 753718915 150145390 560068022 481626639 655913675 20530823 801784292 737768709 182258126 686402567 870327576 405980344 998151542 120110369 603552897 935634078 803784224 421653184 537565278 248931980 340217609 273939460 319790640 981934534 79524864 120105715 910748928 740287822 60455730 111272319 728339659 676480603 742961676 605184751 733808769 425977069 853549548 87308616 689531199 679437227 625087562 8284549 357427714 981832111 391423564 585008850 311235321 942374300 634263523 405204933 706903054 168909780 688723922 712041815 10626994 585239549 658340976 582992055 298816599 634661495 613164931 102345247 677729856 300039267 591148214 503843984 617156795 542307712 774795048 601199363 752415514 471985667 475103269 435416846 435309488 519584707 619559191 761778842 300606042 234775930 162535140 10746750 718466253 248167221 242392194 526445833 658221938 365524553 233308687 798698380 615358675 158682674 192951947 754621866 341633696 477477015 262493816 238672640 904197057 830237916 210907289 153401201 564313244 89711810 23264949 251683125 760650166 784504222 220510400 536649258 581761024 25321978 925515899 539955202 701082462 260221148 304100785 327513190 973907112 354097181 798143155 996469903 839145759 683670457 256897514 537319570 603526925 996692728 145210659 477222131 179816093 663218644 603211464 346917939 15621408 416125886 164733215 211925615 713285227 499649928 431944336 315404536 243495697 645025873 876226029 578378845 349718093 796231584 17786741 854369117 202084900 724362004 279464914 991904998 581937687 971321882 834554823 984709766 721050724 578572025 53435118 447108639 59499624 683178971 368833582 185567692 367463237 858426751 483171733 154338135 463425928 709938413 547628163 675234275 939595425 198948595 719069108 556985148 830865819 608612985 709857966 638144226 974896240 855328862 910111107 21388232 932721585 488177135 45812531 65891078 290683644 960139962 539971528 309959742 270327451 839327914 373036894 708066297 490987734 522507160 499066289 728997157 413161211 595718523 986342469 536285012 870603624 925391550 619777747 598512576 356567266 168036245 357140512 563424382 456449458 635170962 770239185 70868008 712994705 981864619 687202201 125459892 144865806 356158676 243868216 695525829 441497431 159109227 230392318 309909879 486338037 785424349 381960369 148112795 652816347 113808472 301910250 54014430 983517514 635584374 68768170 67296046 945325342 424132264 501508561 532970491 966295711 658877954 235774482 315857152 579015181 574016891 230662924 970205073 410848445 595235215 880264964 753131417 688911201 321599776 27647783 548287836 79568388 250970848 665734038 956271345 777461790 946905090 588939669 395163685 563040099 5512369 590370917 441348521 100895637 336163223 58319804 946665636 912836776 772225045 889571389 615404819 415960583 855987147 821641772 545434853 950033728 22995962 792676115 371951988 290517682 426467587 218885530 548520581 488043981 909944037 493665923 377236362 315590443 44972315 930209155 651316387 934741966 509344939 617959603 813588043 961288451 59584459 924720378 244889617 366537979 620286571 671637478 54555461 794838480 738807603 385126559 83751854 222937552 309778678 976172493 878750014 149928183 949435001 181663606 24535307 217572436 364627192 37183578 33918784 198080377 310613771 69986164 790327931 677270945 373519286 577624669 315783903 521855498 439413858 108072707 366315188 209892417 129242613 275619494 928197248 841977284 273789387 877163159 269878575 955617885 974082141 937113348 814588477 162887123 12530631 285996393 844841302 174293875 290309784 464838268 690865408 263047531 208224207 722480312 748304439 831587197 67955830 489444746 330027144 653473028 701112210 679819251 222415966 313849498 678656265 342474130 468478173 74410351 531318418 777503723 117467408 990116079 423612145 450766424 439987275 745294081 776951189 781819112 194613832 649866428 317379035 854468813 108838071 465863020 287310125 592123204 872819052 75720070 43175186 678996492 576708947 259245363 709814420 897243560 813376365 191748327 908311422 293770332 413010261 285683536 280897914 931226978 917042625 508423333 965207097 274373166 660924461 421563256 271409375 817026784 818747940 22096785 322038958 858205473 563637407 817259850 237379819 95744554 454723304 262076360 924998423 872520339 563308321 427920229 344863990 572460781 351910413 11817558 996118146 636565466 222537299 244157180 573427737 423675639 651745406 363500482 302567924 945422607 998921813 836504746 480286081 6695439 150123555 242816377 969783641 238721308 302664524 101185488 393855939 937914245 687635357 579441793 640216091 631706744 764079066 865406599 160150385 124800476 736139389 874406109 625603354 375471667 658390970 873979192 354204803 242563293 80140821 600029159 825413165 839237994 571201283 644127446 105234494 205081468 462023302 884232458 161224683 415755573 669973331 472089748 315856881 115236637 54738470 998250974 514206701 517994955 397491409 548446662 133117600 927400807 135334091 436697313 960440081 516438492 324046205 471432064 344735391 870855063 10463057 196027846 847152183 756490849 74383114 323481944 281928048 585180165 549193030 416026846 981791867 298902918 511391293 125155456 410171072 155867824 38938915 276405720 844084214 606789140 894532125 247280721 876730593 605572982 146491827 785189248 525338099 383436022 144366558 677985104 225601016 939043482 153280739 826333312 70321339 935953259 931944942 633628904 712602224 617464043 97187664 240451422 914986950 550824422 280614944 936071082 534587202 112164952 767595971 489795848 781725558 484035884 881774424 943267992 439523559 217740866 338788625 437093131 621576523 381677864 828862269 876191592 493195375 956348429 641722000 732815171 288628320 809444594 643888138 850064093 906696444 114583924 899931625 999182263 548586037 137499290 517957939 994654230 885419525 82845333 435507533 43489637 457105816 504064922 233058246 213338618 991845555 665611378 990866434 633158181 334938983 751839622 466171913 59995996 433827339 690531003 703014855 939133201 927102163 678001672 661849315 394820398 525008364 314054414 839976972 468301507 261350825 495742474 292597076 933799211 860725146 503536247 731890252 593311906 237490932 11397897 286415326 153311692 574076147 414897448 875269227 817278837 140365598 698655469 90982291 608980490 575906215 103943542 63844356 81893133 357676172 352123809 473528523 100009658 650369094 297836667 155602359 7178862 365284076 921176539 304033921 25945902 566801069 951574724 858833230 272274306 125788728 259558494 244734851 951767401 220410864 360948608 239807760 364500051 377662429 385663867 838305644 971821302 906404326 956675382 891247778 573638437 305225966 988149799 383962605 794087791 471843051 806559063 537272160 619451797 534538063 653886924 449172258 192965784 863902898 52870380 802629076 837024518 67524019 152491696 821228750 834550955 962664991 141950876 818025145 313523224 756791964 707526895 216173113 349275636 22417566 511073925 277328737 752573017 849580705 70101775 702099142 544046345 636393459 595345423 30279435 88751690 953004174 172369286 432009570 287566829 960408908 838565539 653778182 744408221 391995360 508579132 393739071 761845035 514331899 584177304 171634505 318833855 484030244 27411175 34617968 275784320 542691847 736657506 158268615 285763748 78893603 264621808 904715269 48170324 709046924 610540554 348239825 837440983 694876941 825818103 452794144 13907870 666679286 117437072 806460044 925776135 31979425 700718527 165897513 137029671 219083722 987434885 185984362 459831434 343585275 451570430 299260663 33512691 926357618 640257833 122212515 359383382 625083159 814411575 962654639 453627025 508860584 883033454 795604431 912482132 899225011 759196792 592860423 513891868 546404318 747866653 650889262 719571004 747717895 48693703 663366168 279105207 776222860 247291470 75462869 172639891 556630526 789598505 469461727 654167501 877960344 110725013 584094528 477519430 300006968 398471565 659146925 463909885 79831531 152127933 337072972 755380964 596988412 556842824 599397104 315847013 780867581 706452911 622859182 576465199 568569070 426321060 542517429 803648945 237019470 628821786 855908328 901613359 939096158 373069353 808440202 616000359 856255512 684790390 440326476 13830569 706212119 600952795 293453692 531834359 247211034 736094099 646819352 989249469 660824976 572467255 528010872 501108278 661419609 376462349 827617835 276101900 513105252 736533533 722626109 794796002 562319994 694183926 472860137 305588524 758760521 964163108 556715070 333106405 614454285 302464894 287727681 367927172 978462291 297319837 461900117 471860895 230102015 825745856 802497273 782239705 986116332 924069613 430573139 384556225 179687202 752875109 459495403 838073250 743812594 857271082 120511936 755000131 768847198 186303513 810150294 411390656 807240019 433186373 301197488 632722207 319775580 631088425 55733616 898415067 23112064 919259430 89038906 633981085 369227122 148902416 36604343 57348285 154882504 847549749 871867892 297009933 824860039 343581940 597703074 119255127 221490943 308399763 367170590 691477306 852593312 547733738 79312320 321925670 98091451 370760041 538226821 41301615 704080401 125554968 515033732 157225860 259567191 906471372 884274784 513862597 346938985 873009899 153590507 10985448 559358693 749049648 313016351 988686944 324983902 579774632 912241837 952290562 249636375 983215558 444448642 487123507 162323878 650944093 998793095 519006340 659226527 185414714 67996126 700548278 790940549 695860216 311061071 558842305 761389336 797359608 202937549 8858371 262294126 502276317 61366132 200280303 318113927 169176173 20859235 913043040 767155654 961425179 61053326 825543377 362209932 358180246 881284087 528790787 14165957 733152113 658267046 664405159 581054143 936766600 17266289 794015806 70922376 360749219 749261239 461281695 195613667 114994218 172910315 655035427 19252493 502766100 535779938 741925489 114804246 476115209 931230116 943744017 556935454 973325889 565990138 73129260 147503974 918019803 548720779 115559953 41570645 921819533 896918736 371866694 587079827 229685765 247912885 425335577 205825631 799976304 769649966 567452709 839732934 76455010 72736461 426631248 769437211 783436963 597115603 939520764 909964917 383222700 123108027 409512315 688226248 214777444 466653177 405642272 291390548 325114341 334129376 745118097 410751330 882697816 227639833 267308339 887239065 355327373 283146745 305232309 502665209 437388891 807600330 83963486 8122395 226726603 816407498 737727501 874455248 242555824 506561128 116361813 950626902 187054952 649914420 221378813 124311687 236345437 571303649 605429177 394136603 656880418 474267702 590996598 991595159 735046957 546856522 908363249 547638066 993828975 337869682 312053002 807241906 680152769 298720470 59431641 175147010 779656504 657209090 966153452 615567166 919951641 534634428 807600716 406706238 556669799 882025837 528605138 915878396 522597732 803470743 46156058 440955421 504016658 433635735 517267614 918751095 390346905 626908270 628699604 384181452 34564350 127699991 940415365 242207313 438188500 953534824 883203583 220193429 774452866 101887292 710350218 816505978 586872589 720959489 883278677 135047094 210909583 63276493 121064107 651294501 343770359 79012039 892318434 351481348 922763376 966756767 741452120 877105912 334420890 646576806 927289956 718408256 383552043 712712124 828173284 523586860 124814383 27992671 172929526 903521574 871891 962259577 851099041 288058898 101581404 395352099 329193759 810960602 582112501 3791723 534583637 971580224 614348744 31661907 754674538 630240961 459483478 635325303 632380224 277052006 213390360 574965547 539641199 124333501 623534892 521865700 619881818 360227314 736139660 953564057 495217622 22174623 896330757 980701927 308125220 783938574 762891642 286785341 4019890 468114813 448128266 340059995 393537439 975493313 610007447 507752126 285460230 580972776 262410554 285488208 198139760 901594027 470425062 409931528 528500146 907284613 608354310 481992140 257221913 147857129 474916394 756762043 995232396 266773149 624733766 698771421 637735476 276109937 328152303 662333941 548554477 545079422 978956081 447985662 852418448 467914763 595210775 277735225 185824816 22910021 429719203 797258120 28714865 186225040 245783435 769880988 183002198 28923576 516457425 363537145 165418151 779688627 444481429 410687752 769311523 214044100 500915243 59311194 584739077 279468191 251216896 732734315 726315695 673348822 804075010 165052210 483232614 574823454 835177954 932329172 511564888 488032749 224333387 870703528 180671763 92306983 646333352 588751835 755164371 351727353 31443754 63131364 985084266 733285435 836038692 294648391 964396866 286599962 682193982 332508342 793552056 790083370 363474906 467240166 192783637 301742352 482954548 906688904 62971000 165226277 349930292 402941921 362481219 33420409 234984184 379711702 646540613 129439157 425252183 72558728 85132760 220550877 180621275 201649224 258723376 794482695 436527003 357997955 183708745 811612010 980726528 749090158 721871824 169610604 5446622 69800475 779702137 506563649 890695547 337646922 746381697 520562470 624213763 873535675 206617241 465059090 217999991 578906775 945972188 729364075 796564262 334398985 806768265 596002806 175702983 36003243 707427357 945254149 935925518 871477828 558152153 123588028 622983115 410252672 591648961 774451680 578597128 637799289 19168904 933939579 969088565 19858792 539799263 6875443 487459682 368439838 728167979 571946778 625162336 445336551 449207974 837852341 736626395 747037527 900584424 727629635 892645707 249510312 834164488 160498616 273114768 918082986 353019748 826704333 547372694 201721301 788349093 48523069 178478847 405417035 786939784 342938155 64933754 541527613 545045997 891964776 717150306 672892438 601343528 373301853 741592926 429376530 364538016 378867712 792593363 311966123 36017282 976261527 649611185 635286035 246348803 111333952 316002837 652779659 164332888 892389831 445103262 128407613 718014970 975468268 385813355 144640565 604554004 95010700 105961793 656134707 572225783 248164999 703474302 67866515 792837833 348261355 246478415 296798446 633853203 976002066 899542184 474004750 49845048 636137561 95634974 388182583 942273336 371232590 29323750 213556867 855084286 324831764 336671966 866459540 192899693 829675920 269756684 310641020 982022060 21020957 263846799 287021044 280773478 383198291 201009061 339981835 824184297 902806250 909742249 32752252 362968193 954808869 108839397 970867509 753293165 12249145 962360804 2517737 615422717 447972923 774229801 611596583 654351666 604560817 349062217 210012775 634301543 842992332 1454045 833976965 683406201 113223744 735072618 785331436 738851580 383045235 326037935 296558272 770929558 240304736 95812955 812026403 617419476 226688182 685941107 447708889 9415749 469010919 484054026 271478289 46794203 560950620 917189778 795280649 98322097 247537510 676705987 746989560 159546230 468279259 646911487 17947811 473585326 216281468 17711397 163696095 814635751 448583054 820691566 357932291 650827194 82026358 235550080 439689914 758072139 994855865 526678033 384995838 807985437 763526206 513466828 722154369 874214230 248413519 295816017 369895713 301014227 158285332 649171782 778061951 410693518 116548057 78910420 331838831 1977822 666717451 518851862 400438412 184525064 469398958 260643426 947923587 102632638 600569812 412466273 512233092 147805471 540116843 747544023 191580191 802313267 789558410 286455242 400173132 497575942 111549790 475934569 925928176 887636184 242577769 2187653 580603561 119209163 920489148 161620910 233236105 217919249 931489547 961018697 333166316 945571377 30342255 716357662 590301422 122160277 324073462 402978501 141193467 514611299 65746592 892362085 406085545 486171550 538426176 486011982 820435739 295661374 277841110 340853117 653565190 280015417 829092182 616730210 971466238 521506888 776928710 175601685 232832698 83500174 684475687 851577414 512547411 671232117 481833036 279929538 67047377 964753927 46985967 667639508 727171267 256903605 192767663 713857558 873498922 47324174 934596184 46676094 634479673 859827497 82428936 618556145 455328919 878287280 60345476 366242715 831091314 578857313 15242955 982690560 435505574 919055100 264031672 893646414 682417274 353439279 936629646 780999097 365268084 921349550 898582527 951577928 955020179 348604771 618165569 548371624 175687018 296255818 354585105 194678648 64141326 30913784 111943288 582573603 651010565 841851234 789015970 383333424 462648521 209685536 423440762 163114879 969483451 646882325 599492619 78825391 818171982 153856358 173236803 832939987 212116916 496093041 58522574 368772651 305089942 64161484 394040481 248473506 385320605 771610983 384527857 973100739 708467114 9906505 943547310 195842350 6986551 120925773 109562773 305436949 5059192 852364763 397121999 375132641 700963443 247363493 487816982 760706963 254826634 400369056 190348149 781033355 784039541 475163731 446731100 651956398 417715096 338541890 213047529 575069420 924719066 135300267 863661669 795024153 260450546 952727056 811103378 323180244 400651830 957889954 181891075 600899874 655993868 243169125 296284031 147866069 398338368 566535348 695510511 510488226 249117762 491716800 637170943 614130919 96030777 411761491 9648276 44117937 664540647 350686571 401294380 910895278 299166990 429763757 152659004 98238173 441899078 202690729 536352685 110403089 181091179 704247341 424380796 53346450 231594143 530530757 414591300 636845545 226021240 915825860 748091531 564961104 532521378 721774809 60723977 773874922 958718284 705175414 451252159 61062583 105487821 717632483 653981290 267281074 611756577 523396132 627024580 922018224 829482837 694876595 113158077 75927737 476919840 665219287 562828902 683492380 97985745 190065739 229939874 207572254 970572150 632922445 30118235 289015029 847993551 365401168 346175992 921412248 788905195 930851140 475976431 914601035 607445021 575220564 163051395 719001689 259796951 773682426 393650821 256546239 928584573 815252194 412297343 889470265 765438139 430591388 428781263 213493597 182310549 163941364 527344340 718595714 431416684 4890196 484347630 153318608 308451155 506934720 532899537 408169517 603523708 943841238 246502035 85965919 173688541 415885669 962920510 337889524 894579352 817099158 209186778 732376718 42933801 783493565 125480297 541223003 386419203 729229270 94930349 291730659 812110229 707704478 685626196 498277025 270376595 37462261 323717265 857545053 342310374 444089567 398318791 605637518 783446476 586826828 945633154 540392595 380799494 292812288 412407317 380455287 427728061 638596150 787043296 483300037 855876277 166390766 995575277 880801156 492781721 975876889 729737204 614830442 29815131 903552806 297063166 455913074 140284680 274528414 947487045 996423934 994503531 685103122 237360671 960300078 72186532 219180421 917548694 327473619 488589768 563879526 51975283 325000122 420718453 885985684 395468094 758355790 622559693 735495051 880102228 520015251 415844139 432112496 354614939 555279262 339801103 790101078 581702834 274057768 66383833 643528004 297444317 562104435 278874426 416098597 672006099 977313610 608194225 151071909 322590940 691393370 302799798 364521151 16383262 434247730 147413032 719525687 228420378 712855927 779770203 443403132 142963803 468451599 303570083 672574335 170805078 538839542 167629139 474161574 609796281 576484717 95373067 271761659 48516808 63563378 488302680 48482203 508977174 816798809 288898974 176713987 591823964 477536041 106023251 191288104 177985173 854077206 109804504 318341950 838398838 360497936 29618346 142239486 814856713 662491843 3728111 899323795 266046893 668157994 277718464 26390987 772694319 721345340 583180986 936202433 144297395 645290603 706842795 10692471 540677892 107516375 766003500 961996593 66878798 287777623 76879964 273058602 374254023 19748783 956092301 150679241 131046410 963786959 663432566 793692021 502091555 284861446 588523817 230876483 816927401 414898007 695114935 498543055 110091308 717880714 570713440 539921275 954239432 664197659 321648860 545987848 288154047 680687599 115344196 741111805 578950243 185589579 996080318 339815065 827004914 835678717 811738527 432576193 738369360 904951836 65140383 551304981 111388508 918623307 667286881 745543502 978271268 261623476 235277546 513636201 10217855 678148066 561197549 923363612 760815488 160580476 240014441 249060780 815544076 631068853 209175166 401886311 295951569 548278197 364779665 884054181 810544530 71471061 29367460 107465228 347194465 332690024 131104648 803677175 190330985 709558132 625983439 378595868 282486070 844683206 525106549 899807910 85960545 821907027 855023466 31793537 346963887 78277489 310135234 883731450 48823186 303427533 198991786 168512729 377869721 227029487 533908691 354533144 815605748 556134161 74332634 751484324 654690637 796670634 419145133 78886857 954327371 256956443 761434444 521241581 714227697 566668856 234812890 424196643 828764172 509486174 854620678 614269230 228320103 11130515 705639693 567631728 984932563 817851774 19870919 478368898 928814143 186391566 790378709 981257228 953299371 847709023 66014676 935379915 754585109 659283572 399755545 169170094 408470024 603590820 601675296 568119557 514961874 734984350 169808589 220388847 916871229 514683650 802146490 679449512 994073825 84710139 196798274 719202660 407759549 306024448 607319729 221856566 298995390 377017619 662146989 112479152 154015861 514924305 162725054 228906670 464789196 628489515 808243537 797793136 395142532 997230657 298656412 370032732 344822357 966483911 535657867 467025 526424871 852127046 170683906 229646515 456569499 633964675 21640907 972361920 251140356 277337348 574129902 643375911 407103212 377528093 561523312 631742528 465150439 238358018 962984659 601843009 521547193 45896011 713838519 342554530 290436212 838307437 301833188 822580412 808605915 954636522 916104272 318206731 130987132 953867088 372155928 53638666 598337875 816575960 345458788 211724132 630382270 690996287 749069311 763704342 596788520 833939559 475262765 933060664 45989492 11582769 156608108 902565762 911151014 405629197 604491877 583587293 253381429 393791214 484000630 29168908 310435227 895400891 195065065 708883858 931014824 117161057 241288896 746318685 770838778 690384510 803472649 428886459 737282097 152889022 74877075 407851989 352363741 859960285 19594858 466972975 469394896 670629866 922180895 99420349 258459452 13450168 775844319 801112455 555488601 912174090 206217635 55098591 202643789 144677191 890602646 792588196 378327030 70178588 190483365 541706132 219919283 58814956 515925152 66930934 375857378 754204869 113243313 66776678 510745287 897764617 232419305 906390270 337579491 734109490 117356966 613561275 691413028 805980082 730813889 346070496 889867589 94184875 289326934 473709585 426180534 624182691 777306729 815454353 929017815 185681649 305012898 120886823 811364564 939438924 891499838 682863708 509249567 100875316 435310067 974529596 409908994 788994094 418299252 345473286 684289820 905842520 737858720 507690591 356452212 518741507 180030964 533728327 788369973 727732520 843844779 820993136 687107848 105029376 370087416 274947070 277272967 695882902 662204433 298992896 228720676 92810507 553133506 864833776 53702583 508833859 283922320 993921695 176300678 847309254 193602836 950410587 645594536 620740143 318586784 826598859 964640101 365047534 520160483 858666362 678378960 813882827 99588344 599947871 723808561 266607554 435428237 744685437 37291309 511576636 298722297 916005567 312969990 401740733 504187489 592427593 989370347 398033181 418585287 736108018 29145614 265359309 181548393 128634829 897455082 281301396 934411248 534046086 632864614 149487464 555725002 110922263 635094678 786279319 897360083 34738519 180173198 78699849 232129816 71440320 584801303 426326436 616501396 446523033 741283775 59587592 520955513 743780739 605610786 314218775 778993952 21276472 272187306 563657020 33554255 2086464 851048255 630439554 189154531 870598349 82976908 760667729 301533206 382565803 276822523 920197819 446505262 222998582 794779511 149532484 366436696 685394172 323683957 334357420 581177547 569531712 928809998 977681574 471241713 489429365 998444093 200168498 916662561 819622963 107020279 172132911 6051203 916426937 974595349 884827404 78221499 587695860 96356265 426267776 996034583 626361074 827235878 729781109 619505983 703920131 434126596 56418398 148601119 30114980 523332513 300604381 632395946 262461720 806607241 218892180 42804109 449292226 704977139 871773090 123842789 63185566 958864439 155632917 799187050 840373131 199627664 998657893 732546387 69289390 501562287 565579838 85915819 552782100 442544701 634022209 893309906 393123166 261730594 211775329 497103365 400229042 134685398 663803630 582031772 59729109 682273341 643672540 944632169 280421440 753421768 974852964 923926818 345886201 857871719 854781868 905906523 716578494 695875974 130981822 258148219 408568729 209376397 116114249 666655989 548209707 699455316 769143034 102700870 835775011 116844546 676175958 151645297 162454314 511713275 334327247 432478237 114817309 281786055