52199
638767849 505584305 241023138 522867141 882223199 731043813 947279692 887936210 487252127 785685488 249336239 515667681 816222258 338801541 56103261 167939730 463061598 741871506 943062655 531077045 498727374 258044428 168696792 543280238 359968629 207955886 718934949 597339149 592548069 388439020 832687599 699762292 64723222 732826725 173204726 433906697 334247254 716070994 653594916 892557246 81095663 938543122 884562807 548951569 8613421 162765371 105198281 850517129 994113516 72468342 428714412 526182995 417542058 512671011 114490376 266408022 543280238 227119210 401697917 515032275 571558303 758500703 526571766 880265015 786685122 839830132 203373170 112798913 981297114 926759164 915801617 588496314 780251698 904051833 883301410 682895445 787619449 731402868 260784630 385346897 269312604 685157777 610169722 940663788 162845042 99144276 38925484 82832334 240197516 273117142 394799008 643758304 192243675 995399950 492247247 622400429 833294807 188799448 271926452 130560454 389814443 888950181 524800771 741805743 447105298 386668522 983479107 100430245 806920331 547763240 26936778 113365204 369616511 365563541 244239980 948389751 417878317 479190564 560715363 255746101 616208593 518583385 644655441 296907623 10585463 310111008 117916570 415399005 369262782 580676132 501602670 644457283 326435001 299408629 767891036 179174542 793946870 466126124 635717032 239162507 133631226 259210433 31370513 727773067 812962531 7825237 56629975 376643535 112435422 388439020 699817175 303753583 745490300 588204447 960075280 398673966 733258326 95503451 327384116 128575115 763387595 373357752 219240554 57431564 400598057 449301490 484056718 73402876 605779568 375724357 171208483 481453149 738747750 639632597 535945852 784287959 994399456 895632224 725133423 872010932 585862918 428015236 929102257 753171956 609514592 512698301 796148540 888950181 977977171 28831669 387828469 112798913 740659339 812398643 58485452 621822034 967589305 928104524 683049695 995207613 323374619 715975322 991248064 630876037 911536901 785028910 908352284 814161904 484428076 101024530 301431139 513719945 692467279 85619126 828040799 951419697 934619036 458720877 55789802 477224484 76605712 414812061 445445915 517629412 974016874 753562574 470894279 885165254 277981675 435893449 840535103 225437652 48671523 434423234 78894525 567656575 101410003 402171857 481477563 787785760 782350213 140709606 330581999 86733416 169048486 638767849 851966681 101533387 382027862 186215451 77512148 704965966 961552936 353347633 541213307 101397168 981307420 59053852 570131772 844125511 538701178 537111846 834776242 301966468 669258237 650661528 512567532 239300098 345251277 736982534 989575449 693735982 973062277 267716550 306594022 728371212 473933050 940728771 151644485 259848496 65001193 628942213 165147259 364364987 569177102 771366659 814059348 79653308 53139843 995082130 643988894 962416543 263277201 962075597 841930470 855719098 988722625 480319995 278899337 305282600 63428356 59053852 434423234 243996765 529204436 945727872 46214083 322221775 477224484 467158904 61332591 18832837 314087366 575968095 809217981 430333603 639683180 281102007 107032755 386648749 936316033 751979361 201591689 387050663 198791005 838372130 628942213 120248634 544148756 666073577 868372476 17568796 809284964 563952147 892121734 599975425 174125656 959194049 261655449 163018950 603084254 997508282 373271018 850249845 205377948 469150488 998925542 373197769 533704296 127406784 410729829 425697145 11677405 178449086 477897425 267689047 653025446 334586837 532862262 787785760 815128114 622356349 265806676 982879511 112475447 681164093 151653995 646562408 863346610 23164280 678284060 385316675 359652773 866917533 603692840 146420196 810818974 441259523 504512314 331900744 371966706 351906572 765700497 433609376 513994832 155501701 381509145 592342611 513719945 704965966 238243352 293273114 650134945 925270919 818715944 307767072 120478095 157334018 527299770 173854990 233332213 296372695 73839861 357728969 877193699 164184974 133631226 540250629 475236645 759612529 223924806 159265904 794896369 793946870 445058957 602360905 768138772 693108488 863779255 527299770 462795099 72071157 246231996 812157405 646468218 159905318 590067407 512258861 711212792 893436549 334163442 858833076 243784306 491943049 202964646 254882776 420160307 774510532 61332591 488463526 170546132 991651050 955187862 654499905 917598758 920158824 372192841 86455817 597983691 497164702 241704301 369262782 539526798 605416417 705568615 141046927 113581183 449943051 882223199 850512708 919397251 353347633 499280784 778963886 616178629 496219658 248393161 184235590 569177102 330696951 812101129 908601580 395240605 715964855 451560800 459821912 824333006 354003269 723432720 999646466 451064437 812982582 5621264 538899541 119449622 666073577 212977880 797272297 684429686 840012155 854610463 743657917 487394853 297984721 471807089 173790654 217188292 527354323 525850139 960075280 866819194 947283533 433609376 361800661 694193964 14484343 388223330 150252840 681987281 183601209 962223044 418216138 250414601 288686589 265603418 52412927 395606749 97196444 943256684 688138477 753269448 594177251 551944045 575702800 169507050 507524590 172358499 972747953 544110822 408287424 139918534 813414888 196748209 307198743 191768190 696309275 885165254 540192457 618344226 344148846 607903236 159917509 712824576 702897492 597983691 230589333 818715944 611035633 297687452 870706542 809838531 639207425 350489177 83774350 85593294 331976226 40879806 394069130 621126494 293048515 499280784 36891258 567961640 700592307 182521575 376356240 477564988 904987269 209022875 174250648 964248231 721172947 85153464 140709606 924243081 104144854 406518219 8908392 904961277 960769770 434173970 425176277 865890475 83596261 808966775 710399184 990332043 50353247 645536456 653057090 340899503 659921020 62192791 591508970 100552030 264029053 773863925 391573832 322549573 222393322 609238007 344673051 853725888 800558469 85678530 662207358 847695905 430319529 462119098 404285864 792566738 303939627 189641658 753284194 542507362 495747597 752519899 332073190 109501962 61977295 808556393 295786083 521940732 198854353 614741012 908502081 439540949 58346344 564289167 53313305 540034165 791760627 661410658 938739245 904987269 382835379 882456106 893949709 284829030 290775947 972485967 322221775 812419126 206551521 878804420 45131602 316478034 122957139 687796451 382583630 154264367 771009579 328217752 659554958 524110453 926614363 27564176 378123863 867617393 246538611 134803167 925216722 228466535 215642803 129343380 258007443 498412445 649260409 712091233 987493119 467194946 513446596 421573887 128075156 738097040 515126925 355485938 471712214 560513268 228094086 707324332 956692225 676193995 585844063 438717961 46214083 346948324 299851704 634529022 360980625 864382338 290066634 296853909 812735700 497283938 222655435 421294986 390228435 536909087 428108416 44539235 451020778 420113847 981297114 676214328 188648062 315366278 759460712 786897254 325254218 445880547 208290005 538636029 892049425 205945197 415399005 250414601 324644196 963535716 269312604 716717720 966873422 454660890 264161013 44157032 452856504 375722358 624854784 603084254 668835332 941946673 565233456 401700185 580885708 267162584 849966254 590146562 857708497 668424404 488761774 519509431 580039514 8613421 713217558 259320003 930861676 688878785 580039514 51115272 952574225 134130650 553451374 124236362 233574357 9763352 572935160 195126498 405529721 917994196 940132747 627166441 728834069 481673072 460158004 988648474 656555262 973780364 468385477 937253552 917987694 867095048 158410014 473102970 689857400 172376046 171262197 632418290 68151071 474434198 194716952 125994586 476046422 347731733 246546922 878562164 950925875 684123398 240836262 502607863 574420367 614741012 361034134 536947790 243210728 963655621 44406641 724351353 712347955 269435006 465432120 361870133 278144763 673162053 45742076 233574357 290066634 244645017 161680003 980631873 89013065 306845244 929102257 522104887 328072844 321347669 898373863 940728771 466126124 707324332 295057902 163617987 731246096 135881823 691089214 353680420 333502397 941294164 881031080 567258784 372596949 877193699 269312604 295315244 237380565 579772323 144666313 133847439 391340789 82582804 701992506 638767849 668622929 774526406 489034016 942701806 943062655 513719945 401644558 344237643 414812061 612257511 921401407 812609000 674542227 473848396 666092329 145030953 161885158 771455790 425482678 273108764 257836777 923173997 585290460 615903288 897695623 560083947 239888423 444884023 477959774 414209327 104893837 105767345 560473028 441956221 924243081 750108844 643177231 792234558 132708274 905662794 422657201 105198281 184167493 973374306 344289427 684758551 627229892 857902834 66222960 948713783 484733488 674895693 463910045 350549710 873323777 358429939 662348623 875316502 956692225 309665803 892447640 107808978 195126498 990018651 906323892 95450589 744074096 172706857 732478364 120088775 335297970 350489177 609034384 783381233 162845042 178418999 439812150 469831496 369025046 143410362 920065193 812101129 339261681 322221775 464157258 469833761 217188292 894823343 832331795 70423 367552763 796425218 486482457 427218881 486348885 887269762 219526527 534060351 566050763 649260409 639683180 129485936 929757110 945141219 274044470 403682682 436951908 182805540 941946673 11074899 962762175 251589259 585844063 267217986 822099193 517078323 767985786 209169370 464093382 7221291 539172105 893027217 740424690 651131997 174675267 373197769 888360095 223905430 240203660 319927546 847695905 488463526 222006918 647535281 425872107 873201881 356019667 328746326 161548506 625340233 577377636 31370513 265904576 5385098 778007084 718418654 76834175 978209200 267037411 950030898 352726596 29601372 588360021 325114746 704965966 34979133 321816777 685121504 472448047 247762164 736625033 618344226 541060785 740191941 120088775 106732221 144282970 604597847 212442487 678291966 299851704 968008469 590091443 168696792 203683816 473693206 652912997 722323960 982098718 377780361 717116426 134130650 630566829 307767072 775775365 716654012 560446957 851221731 738984442 625013868 87554919 791536667 766123053 704095095 127582838 240197516 21350632 122957139 755171863 447020979 11942428 854618481 943099642 474679443 532259019 134845343 280728194 998279315 624208996 240608845 267162584 617066065 772430279 92337478 746207343 165606056 441956221 947133065 676980845 75960094 503216758 776847680 37435186 809596958 7799608 1478365 582543416 567638487 529354668 952610192 857445998 216671674 906084346 168696792 35815094 582543416 927855694 99144276 904731519 271545507 203683816 278866541 869259062 995082130 377862640 687669529 280819281 904292494 923173997 383008147 209279596 311287060 717876219 428689888 264972600 664497996 208182956 155518284 140709606 648412457 565361226 872010932 297925677 497164702 746975324 880863412 16238172 428874628 376356240 844075180 238946565 716625245 164084139 468128566 33223562 797501542 379828427 60601077 190518462 172628880 281924586 122467677 230982949 473204173 241121740 532809158 700660892 405529721 525024402 310420366 898373863 317642770 576780065 564184811 616839055 516441293 741376229 59938206 486042949 914782996 676997288 483502744 287698662 524273512 338801541 176144086 864562613 708398407 484185343 258697597 199352976 565539542 841449414 99144276 470155825 972747953 315242797 958177427 278939304 527354323 444402973 56629975 979218772 168257314 698648173 512671011 66100936 55520299 246231996 6074683 384983061 560147466 69124371 460158004 964329661 567820467 7285676 692467279 879711490 847986690 540134373 57840426 728084781 90205660 920642846 512258861 952555750 419013338 883594877 531598465 230589333 375081856 851783830 172158761 954275797 755550290 908213969 82832334 750344920 925920080 588204447 144521246 716625245 390852403 39290274 796204767 926298551 265244843 694314660 758500703 446329057 393581281 89607992 991181377 748555020 174250648 52412927 448940594 283937364 88750705 512267793 268929374 636729064 301059508 569177102 304014711 196660535 368515802 808556393 805600576 680228220 80414768 557229086 159365639 382583630 212632182 219243177 203377670 68151071 411461329 527299770 392885733 214081108 125694366 131180650 699762292 126856560 474098471 221580236 134803167 990750133 599195882 362954591 194738988 387448768 436356228 888363323 316244820 608278165 134752355 72816262 741082988 5621264 880863412 238792356 424093157 801781610 731640472 832331795 223843229 499069181 273957410 564184811 524800771 8908392 512965180 809838531 161196713 178304644 667589325 333187018 730264987 52706961 835817953 385786013 727421839 536056500 645726081 704965966 699817175 953887421 823531809 306594022 10462431 362338554 232946291 592352601 592342611 52012162 421661591 134313497 347731733 175579721 924266382 420160307 419378945 178304644 141607140 143781808 480661007 314087366 296378401 333317752 914782996 240357237 83774350 410935643 921738016 568838815 86001070 662237534 181807069 751787685 939464133 23418996 333850293 530529589 215117545 582824875 539895653 89013065 521940732 495888567 119199751 572100510 387828469 710264116 999646466 174120506 167856660 191019940 926759164 514327756 456313393 539080862 209935069 838406143 142309877 113204630 628849748 470583686 291177192 163417158 344673051 727129556 104144854 465864903 861000474 580703002 250414601 550812065 590388898 609515650 1624107 142309877 15085853 927270662 118806460 893524401 218455304 405861846 229172857 791681394 467158904 74686834 798748639 657957198 516904060 727954761 201723093 172232166 429558578 501614322 532397682 624766555 664716307 481055729 780251698 272450454 120478095 768024129 286954042 881407016 331900744 804612667 597339149 124634215 354912267 174125656 321117599 884449180 401279887 443031883 510853284 515032275 474434198 197730871 424985165 308306592 261546154 264090651 866728678 559645002 13153247 614446526 921769824 667897873 435738767 617034160 526582844 958396706 804914076 120315558 822015890 966134039 540134373 151908558 241704301 240836262 165606056 284182474 145030953 492031763 112396307 568838815 994113516 430025923 409082342 153683887 52461327 372596949 380825508 927504629 856205911 423750519 168630740 950925875 195126498 766702899 741622790 444402973 937451019 324644196 231133498 411461329 391945035 234399744 984782495 406436608 652226584 387146197 559221201 872764546 201517485 715111646 953887421 142759878 391340789 599195882 240608845 917598758 956265400 735351390 11074899 19221093 773863925 675088442 941673575 358007727 892121734 486304498 445968885 14055174 961028661 638767849 256434426 512286536 239642863 961129959 339657591 606731442 227739391 247168120 257729949 396195715 423646799 100289791 75029818 761176899 663382808 939094194 428689888 511486436 804914076 331691451 548221608 564314986 594259329 198961108 727361894 975350874 491012904 978209200 29062331 246114867 478239526 358586540 739796743 391513191 921783703 738996404 859716163 81095663 117686882 880765678 481029245 959451854 668768280 652384198 934174158 617576471 37435186 551944045 239729082 56250174 512595478 294920345 397187090 230589333 220659968 47750363 124595694 982530458 309210732 46974505 735125224 373436147 414936307 638798934 810619438 733371371 574037992 931401172 491761037 773863925 779435019 327694172 11677405 224424597 876136418 370718372 646292761 130748149 124634215 598768149 33223562 823182841 663382808 760479837 127901248 559645002 195279072 344200460 172771364 640019153 810174413 95503451 727954761 920642846 693256137 190617654 805992004 745490300 211564327 638251606 819177331 998306686 401456345 70978668 33223562 644075462 250505381 181807069 292078138 541691813 227119210 377362748 174122074 854618481 150479416 903001492 831148533 178449086 134130650 458759602 866819194 290630815 230126727 917254879 641373720 46253964 343123997 418216138 16498498 75960094 172652081 765444503 65001193 960037658 424093157 482245586 444502458 387146197 867682504 8603590 908352284 553292341 887219104 131171351 332701006 539128062 745351886 722466239 444579502 476952902 548221608 246896386 880765678 295107210 693108488 444341395 614479002 171197583 947436585 481982083 381470778 569115124 143723968 57840426 302541073 150252840 926626683 12291204 791760627 459107524 165329111 792301752 880006485 358586540 856698185 518583385 32768680 119415080 306959892 387811756 245876840 626092991 458794891 113975767 968008469 349160300 699882130 977729124 15813216 419013338 359107939 628323873 315366278 810784684 209935069 349761303 627166441 290489282 705952653 577054359 385346897 855675634 507921281 798748639 189220848 30301133 237102213 388223330 814813297 213189513 865890475 120126730 736625033 767173538 378326734 431228734 16642774 49621688 669840131 194407888 509093918 322486380 846047095 724677933 328373153 87544649 812157405 654499905 881430555 61949058 624382076 244838002 201049913 683941034 561212596 34152531 201591689 565056543 969667877 731402868 843034984 391513191 309024963 315757140 379828427 76776241 9763352 424548681 832687599 743722055 69124371 906014518 906014518 727361894 24199369 216583641 329142385 905962223 622098344 394799008 880563832 157441769 596362664 907271911 146420196 498727374 476952902 409150698 583611040 173287646 643218581 878460774 85678530 338801541 940663788 216671674 634683136 192089296 642913738 553300223 948389751 728371212 846144830 790033906 889680918 309117493 515811834 423382810 841449414 508684375 272412032 640799332 85628837 990774808 609515650 472676815 977354192 670604866 377757217 202930840 939094194 906691365 388349158 361703492 445880547 329676417 868561209 284121265 462795099 20955790 812993119 530409704 414936307 807905098 167908308 81166415 695688258 757627768 633416532 967760227 929908858 458102694 132569079 509858141 10281377 582570674 470155825 764443046 577128712 148790688 248071792 591202266 881298649 668437990 463373988 412043121 966364960 874765059 634124971 359707817 48671523 768362806 426942267 251468784 223589059 975006428 88520790 766107437 607190513 443756384 289351929 736999941 226947127 220213682 964288958 677899284 34708050 49453801 903716250 983582719 130681495 265794323 270796526 90244340 505312617 585290460 119565485 624515974 261914539 331900744 396379256 920153792 592352601 492040275 254219287 895192336 266067899 242508751 229526741 45004726 893027217 14484343 853865390 261365913 575691133 329835419 888977087 719416172 832089041 146183600 532397682 873608238 818530169 676494709 398673966 711166608 314721346 387828469 33717760 880029083 751787685 994160995 884058123 538701178 252753650 612257511 200792570 790117046 577418797 15767643 310517189 904068334 785291611 527319796 11074899 351183796 837931720 778007084 990774808 48671523 77839985 353032689 78894525 920185762 268200568 760550747 25287674 891290260 309788087 396846225 810548036 940728771 473102970 746633262 704317244 187913741 309792018 219178563 29112804 436629293 271545507 634683136 515032275 322221775 113570806 404900912 158522358 781452275 984403037 644457283 119199751 501614322 670924186 484428076 271545507 486482457 532614649 575068340 638798934 603340710 60114511 239811478 33034747 772914912 295786083 9686570 187913741 470583686 962075597 912076521 197177183 612934169 940159380 46282639 426089883 750349249 904961277 330879530 551307280 966873422 861849773 353149270 284322000 950856649 678494167 186215451 194296543 127384076 842024288 550852259 788203830 238534474 314175717 459107524 211212202 998447005 742989014 395606749 649260409 851280384 249974462 356019667 766107437 730490543 287698662 234902148 694210633 459966514 676193995 819131667 357655314 929102257 964668536 459966514 953077348 383008147 317099649 787270808 271545507 624382076 672193907 321816777 292320003 771518289 539895653 874765059 31370513 622098344 752341854 492677033 239300098 567656575 576910474 560180239 48855726 232042494 334586837 580703002 786193194 390301576 883835529 429558578 786193194 954552713 407143332 101518263 223942560 389814443 680439837 307399876 902705377 332992473 28876123 727361894 549647088 560715363 278144763 820162099 697257806 406566817 876483283 467373016 153683887 225193305 71870116 951622853 784069212 422657201 536374362 677759074 298754411 411373914 484428076 732449157 525769343 441548278 892903095 369244711 824380058 127406784 246231996 987178383 521652866 826583519 14594262 594157733 89250476 358007727 647049644 768393379 64723222 590091443 465432120 936316033 133471702 21350632 129372826 56103261 828969147 12934785 779208512 193029455 511486436 205312683 831605243 880006485 123629213 367389172 110053791 519850114 827760201 259644489 452095870 86836015 518636287 406708061 33717760 539526798 662588599 311966060 579122139 460216849 88750705 107820156 352019725 215642803 701819021 207955886 286742283 190297459 221580236 261772286 644450459 401322138 353347633 610360329 396195715 505312617 719088036 45742076 251305009 427020948 404791307 832089041 737218109 434211465 287557514 825721530 256434426 73156407 563956416 263427333 782350213 744493275 588733811 101518263 351077143 172376046 959682189 229059270 163051376 55411364 817135933 276663092 726529070 605066463 962075597 610360329 159879307 110347090 717244409 358586540 745825721 233772566 641788754 744567092 593388830 914625906 458287339 215068446 302885739 678439153 539526798 219240554 273120705 225193305 222052670 1831389 377904018 77857419 703204399 653594916 989328772 33525687 631639650 648222328 327320447 625990358 172358499 376971937 272450454 230982949 292432616 947436585 935844360 678926130 234399744 224698552 772621903 664716307 757817319 167856660 29329225 685121504 321347669 956831682 825563694 119482989 952330793 800561183 793088439 598506402 318413499 808000077 488224433 524800771 987178383 731391308 216236887 991683935 865369249 374325071 815257954 492380149 236217595 738003643 596675559 186101025 170330891 682384318 250401556 294920345 664563794 636517289 31370513 472125077 657172442 247187670 46370264 223893210 835800812 724140261 159082161 955823986 81095663 719416172 985318505 488700138 416385457 659554958 951805853 702285871 169147074 304687086 155533258 452481824 978955126 874765059 899734853 805836018 467240339 401527487 239851044 787782146 383865111 557229086 43658180 160735073 325252426 87172430 207805575 645114761 499947108 621380200 638767849 425176277 381509145 262610054 760723429 470583686 445527809 680092482 990750133 23816368 960419646 779410543 149624114 568891626 530560377 135496158 638933192 570904525 670008603 966364960 148790688 129092330 855193777 989513413 178894177 183423602 934619036 607006145 359968629 324811550 950856649 471833346 338117032 756654121 694210633 990615559 474990991 598715906 427811175 537054158 706088955 528508131 143781808 18440543 167535364 618872936 29642358 598801584 940663788 112396307 624039253 867682504 626092991 164084139 223096756 744725796 861849773 963655621 320431919 212973675 319927546 31642902 224954976 122957139 471348221 57840426 267759731 273117142 283940189 863674900 369262782 93137007 1849529 768149844 914412174 83552542 911357165 477897425 297533239 51593992 661154467 172784096 82582804 687796451 903738060 628897356 346153013 693989040 540192457 310111008 326355741 616839055 532259019 400560809 358551013 689846841 587355315 238248119 952609698 102597635 998306686 708594369 151652734 87368065 437203448 549240123 472711305 380645221 669851967 286435119 327765793 212973675 446469999 943408355 930025010 121461568 794896369 952610192 481797000 391340789 742223817 962645507 348003998 199911373 595004375 10883138 9789829 575351641 939464133 308306592 163018950 85619126 728371212 596871223 492333146 231883715 941001692 193365645 758500703 758068661 153103136 596871223 584678561 822571602 347632676 521652866 858593940 626092991 650661528 451560800 899164744 968105119 404380730 209962150 415399005 767505642 160735073 317161341 513185757 817196111 144595910 923422414 606731442 740873947 416385457 95503451 685045316 310920947 498642163 526582844 732449157 225595088 148790688 713356772 88244339 503376723 29863733 813378121 936095444 380471354 273576373 200792570 797501542 656555262 625399808 669851967 56371774 592352601 171208483 369262782 448940594 325694854 318244739 536206732 125994586 41649602 987178383 460449520 187913741 429438899 265794323 758660435 437230490 547763240 627813749 738984442 427420019 790698682 297984721 173790654 168024415 822099193 7799608 168630740 577820900 557707295 175731651 321117599 574420367 453067953 905962223 849966254 540681705 683830163 593388830 166873308 967760227 396195715 448940594 338801541 525024402 958396706 140601393 876054182 332073190 375662115 547292880 246907900 359107939 315096082 242601592 331852141 716717720 922308369 530840437 441484207 836419600 105396994 555546429 955823986 33834715 637121734 645726081 28872460 634683136 952061178 369043456 664030093 273108764 146215244 59007994 244850388 33717760 610999655 630165875 387050663 783564947 202832456 231883715 629934507 790490513 158410014 359287451 481055729 888977087 12100035 980747824 224954976 543483688 538701178 662423538 533730104 10571430 655939631 476046422 949430015 650661528 982039530 144521246 12291204 30265864 843709330 354583476 839523551 180053178 995082130 43658180 799308680 704619854 311120460 716649254 918316207 353680420 150449374 822571602 28876123 632418290 7963024 656555262 600220820 920185762 122467677 101397168 10883138 170001592 509638976 503472746 222006918 708594369 647535281 275949763 74158082 934461948 89833033 326440611 874765059 114490376 32892959 569479799 881407016 353966960 541213307 294312274 751979361 172771364 836633166 13306544 161885158 87544649 855193777 33576867 288349510 432780069 904292494 369025046 553451374 587216291 458287339 537277074 735055857 358586540 975577553 414209327 811003316 47448021 813378121 60807748 785972176 230982949 792566738 165087591 392045588 323970236 199199314 45763732 223905430 133847439 208052045 792234558 411373914 7455531 35634966 228466535 246231996 767173538 742784179 562164691 744503077 246519318 724140261 683353440 1624107 259749110 688926432 775477924 305282600 756727543 170634303 655231498 768720862 179342443 921783703 297753111 960329120 703204399 444341395 784653387 670726380 780692187 263405878 391232721 907427002 206915668 125818812 248453729 119880723 466146046 772294787 618789317 474926333 46214083 997195252 286435119 641770480 969266424 644457283 376899224 764738058 620846892 585862918 592352601 99730457 832315743 164184179 159365639 978024218 613765439 926298551 252006196 233772566 958645852 429165033 492677033 831087620 628885668 991228185 556940415 571912526 433609376 656555262 48563029 539895653 428108416 926298551 192360522 365853060 799084059 259785955 309117493 148302427 959510438 415678099 126151481 594485249 725628791 353255844 382835379 434941381 353032689 287476371 762999129 174125656 382785220 444165973 738769993 852751929 113718969 540250629 808903382 296971426 865647751 558273017 916983262 679137362 82188265 110623025 82389432 87554919 742446846 642894296 183908166 675088442 126585099 511486436 981297114 569177102 813378121 640284035 63336398 719389926 439414044 758068661 716649254 517533699 338554905 904475980 180123600 445674227 165087591 250414601 71787310 423352270 269244170 904450747 28169756 34979133 495379034 635859399 990018651 824914724 845979811 801009499 468331058 35017556 739203331 168541496 592855228 404380730 997783713 910095312 806827582 178554650 885454799 683049695 838943535 914641322 927719562 908986967 777293937 546606411 868090827 367939638 836633166 356182816 838782843 494226701 626510734 61332591 578236244 859743875 584657673 928104524 559063964 597299091 599712989 883442699 902705377 37375125 657750288 190317405 589158295 73156407 446286531 939776047 46723813 937451019 208182956 321816777 767346766 784471339 396379256 431343619 271926452 794896369 613765439 105767345 125694366 91896373 975577553 743033500 72021839 719863057 837601924 208311955 428689888 836210608 510165312 512997134 158522358 645417617 259848496 237800584 271383175 742989014 578159710 208052045 449380185 953887421 700909507 766702899 665505639 793658616 829027881 30351439 30001504 77512148 55789802 685635040 42819703 433175193 983052792 215202668 935563785 55878403 612185008 186664369 36891258 278800524 33119528 76612005 824955170 608726602 143591736 67797956 77839985 716084460 124634215 727169356 338572695 498678305 228000369 360288518 240197516 434173970 531598465 676130202 296907623 638281987 941640695 385346897 704746261 840535103 649260409 984781783 273108764 572935160 723154856 109501962 811162412 586769582 85294613 766123053 836913248 695206734 406577006 147793220 127384076 423961901 368496531 164621197 926727247 693950087 963535716 797324971 786480040 942923177 451341954 226290424 757817319 765444503 536585486 949430015 147078208 968585418 371966706 580676132 827026208 332073190 165329111 83310806 787270808 862533520 199352976 762360581 104179654 761024521 331900744 433447483 55050615 126750777 624208996 676317740 796683456 768362806 442962978 832345379 582824875 831148533 472339999 448290624 375662115 999941065 31146677 645114761 419681408 444989359 357728969 862533520 498678305 968585418 648087097 760057778 920004721 866677112 740683000 934663808 761370820 216236887 468604850 261881274 949038386 348003998 707324332 18440543 75229102 677759074 503173055 670604866 237380565 217546110 347742356 332404935 52327804 295925870 344237643 886312393 694236047 639632597 199433873 296244299 167525206 444989359 675088442 652074960 595945449 920642846 528745266 392539225 315560044 333317752 591112742 705568615 238243352 168696792 98960525 260132578 263427333 783584290 703863830 616081352 922986354 85678530 804772596 101024530 764384285 52012162 511242984 565718020 786469692 885828739 406746718 168630740 55520299 924120547 488224433 658030547 776456668 315096082 161168364 635333616 361800661 300466853 831148533 473102970 316478034 782034696 434000813 621149170 761370820 183363850 796204767 712713070 787747737 268813415 495747597 466634133 198854353 794553967 467373016 928104524 546584393 71709694 76605712 986790528 786469692 179342443 960587367 535945852 730289727 818524185 722323960 512262240 21541253 359968629 918316207 524526177 400598057 206551521 378326734 577820900 508338116 492247247 865647751 816749833 756654121 103617064 615334562 528745266 385786013 592398796 389814443 867108593 316219640 668239990 344915872 178894177 79913246 674542227 880039838 384372482 701819021 831000470 593248117 24199369 386336927 546842413 333469096 161680003 31115544 769083052 949038386 265174728 787619449 943400668 201517485 544148756 676997288 158410014 735351390 338806367 982879511 193679555 586230535 376405395 436629293 898104564 288338862 423988644 516724434 625399808 139732631 824469097 395240605 149617161 277961622 632832527 644541370 753171956 735302815 533989534 857708497 422657201 599447517 848182671 215503619 292078138 664716307 442588758 135881823 743183256 159879307 129036075 473383951 606535464 863891495 128575115 832879077 265174728 414936307 523105096 768393379 193292683 278866541 516348298 95450589 381374810 977151155 967477133 932687889 88750705 575691133 568838815 161885158 364586909 102597635 400907941 839247150 242560852 739053117 190945250 787467774 123966205 352726596 176069986 752986855 558131956 364092130 40733471 117686882 638281987 287557514 218455304 585629217 597339149 228263883 774715366 205945197 101518263 694517015 792797962 179342443 318878994 164269532 124686517 517698790 646468218 329142385 50143954 877193699 774403825 578345192 854211870 922707036 784471339 615677308 532614649 184345684 787747737 757627768 551307280 131806351 936095444 991683935 982039530 26764655 886835981 559823835 408287424 641142221 838943535 514516638 926727247 424985165 278897687 874754055 634624298 192666025 314318032 100369079 3116996 839890633 435738767 693256137 588152520 427591573 711938915 683262174 549647088 560513268 510165312 772238817 543483688 990615559 832089041 138653471 708589565 858593940 426562717 20248805 191951090 76605712 681987281 422995827 881938727 657573778 674933816 806827582 207477311 21511798 579505148 127384076 526327478 473047610 951602307 252805292 326435001 322377909 136280040 373991621 198791005 68262523 387828469 995521533 499069181 516050388 716654012 355485938 47560661 417570046 784537889 29062331 470225889 182796995 902926944 823606328 16887740 775049527 427116544 602529257 943858896 683941034 702897492 977089088 855675634 450435362 776827817 243817675 950020455 279068596 833924014 7799608 52012162 12788600 740942695 377816991 965543990 634319834 425176277 923422414 43269492 191393088 670157273 35794541 520956931 409082342 364586909 893165284 744416892 779131891 997185480 595697081 646934377 940887852 351705841 216583641 249974462 257729949 467194946 943842831 26764655 961160715 990507207 1478365 272716401 383114741 841288779 83441525 577820900 144061225 89833033 966134039 3116996 517473421 297984721 763615961 254471401 231975533 772294787 934663808 769291405 822318800 311120460 167908078 977354192 456171329 756883403 301431139 851966681 268929374 575082915 955491104 466991961 74105318 412155251 170372253 174975441 800558469 313709737 765738398 544243634 471308146 237451076 868090827 639207425 549240123 196748209 237451076 74158082 314808067 858841379 996326182 26417366 858833076 569177102 675525723 292872923 15944964 259644489 93349154 696416203 394799008 541228954 73839861 705409578 507474445 440463965 731640472 154844116 216663601 427322025 293048515 297984721 319576043 426069641 804914076 259715114 570574208 523086816 830691802 612989706 340348364 929757110 564373630 332389556 272801478 740718996 527354323 508338116 55020392 265227230 364092130 189220848 895192336 206165929 455436685 174675267 922564893 807905098 172652081 349160300 856600804 953887421 812085067 441164379 480319995 137954794 758660435 835817953 519850114 436951908 567961640 619161855 107813311 953791872 390386098 620445892 368515802 815128114 486482457 994399456 444402973 373197769 908987452 822022239 618789317 650478751 620846892 596362664 266272826 359843759 887219104 170330891 942557803 463968340 424548681 57431564 844125511 491758875 634726762 865369249 148302427 642448466 535389634 374325071 805401221 653025446 322250128 614477974 191768190 470332840 141480927 196748209 849789595 163089910 617276580 410241368 455989267 55271786 698648173 83596261 652188104 176144086 244140515 224099360 650542665 836629676 910041119 693917925 330962701 448290624 521940732 413338415 45720878 777446840 489386104 953573082 9579364 899164744 437230490 930219713 378216275 555859738 979075090 998447005 546862328 101303048 123918127 457764991 891290260 885312429 403810589 952609698 908987452 92579297 492247247 338117032 713315905 687796451 478777032 23913970 189608705 990507207 929950543 987511774 564130455 889361891 520946914 265806676 960454554 146442845 600936263 735470095 319576043 806641776 908894608 302303778 134130650 57997134 768149844 279627355 385300022 277057306 237800584 192089296 403328214 333469096 624382076 376899224 472162344 518622032 585045406 958807111 704619854 363282054 480302776 390033319 353002204 699762292 999948052 452856504 84352528 612975435 117686882 766123053 279844643 67977428 845872351 431432359 562737885 625116926 385316675 455566195 595036279 460158004 486042949 7962006 999948052 639632597 35794541 593388830 265227120 113975767 164621197 962416543 247379936 691598812 369271239 798704204 923950163 374829013 293048515 810784684 587355315 517078323 904068334 765444503 605598679 372801202 191844071 7802130 154470635 325254218 92762280 305793717 228343722 680439837 768138772 15234053 227687232 702256154 679273097 265244843 662588599 470894279 333502397 315560044 788560689 209820542 670357614 151475928 153238467 546606411 128274101 906323892 95503451 884449180 651708170 137290621 752034833 170460062 501396072 191844071 594105616 638131947 9579364 343833471 836629676 273455423 451381707 192742040 385818791 144666313 170372253 612730315 790409862 230623541 302484474 463968340 847406541 678074796 600162938 116783336 15944964 429558578 691663480 790490513 964329661 680855333 137954794 73402876 417570046 517868766 295315244 378123863 31105427 74686834 563927216 697646981 526829132 327694172 283937364 775551192 178894177 180461516 533730104 881474405 990839687 332577239 610999655 999653626 890998006 762360581 428618086 219493043 715642129 459966514 92337478 120126730 966134039 147078208 47105108 694193964 737218109 781987609 151475928 705409578 488463526 223924806 423309284 766702899 498323717 615495811 75017068 112396307 317834206 355485938 916560701 479190564 985702981 534742374 412124180 961160715 524800771 826583519 114039611 246726784 882880092 315852411 479190564 609515650 305652535 348003998 167525206 763969673 246907900 163417158 671589626 155364325 53676003 716654012 382835379 708776335 686027125 787467774 86733416 433144115 907271911 724831227 302541073 779118994 371931041 623193147 296907623 318364342 402946232 790584023 349761303 446104712 100571552 157337709 714954919 777496901 191844071 708260818 556218614 291177192 46112686 373271018 744725796 988648474 864382338 819177331 98614370 139918534 34708050 930861676 618254763 667589325 107032755 893436549 271480510 650973466 51214252 56740474 995521533 413123472 365323948 78988322 647275202 188079893 464157258 738968678 764347476 56103261 403012748 649328326 59859789 401842604 467158904 866819194 561212596 775775365 507509574 775775365 126942402 101094736 768393379 101995837 705759680 786231842 162845042 325252426 377257960 541691813 228832083 641788754 648087097 916080289 374325071 436966726 916983262 609514592 967780145 144061225 52461327 888886584 470225889 769990974 294312274 513275688 682384318 844433235 459532919 479374646 6156588 309788087 71953532 892049425 585862918 191393088 619409505 873954329 433144115 126960792 186215451 371966706 272502984 371966706 381509145 216009673 148210270 819977585 587216291 989694200 753146142 952555750 419681408 881835831 671203646 464184273 404670881 416193131 963954978 805227781 332577239 613863099 565179997 684915037 347742356 638664525 433447483 955491104 645417617 856303039 693631266 275525456 767505642 143723968 799308680 469478780 539721253 715465382 891149152 575082915 564942054 66659514 576910474 614890665 633657793 603943017 16498498 753711643 419427438 779410543 134313497 634529022 478239526 872103597 832879077 497672919 591202266 492247247 207477311 783564947 151908558 700813324 565056543 320692286 454567843 934663808 463373988 812419126 735125224 28169756 997185480 251587819 751787685 10883138 490031170 195238415 544243634 148473955 384131815 849466253 29419909 350489177 124595694 130233752 694288134 709418144 57622495 769990974 689101452 598801584 287076745 112798913 599477657 608025670 485606266 581379821 224424597 598912002 215844451 790191959 674933816 26764655 520546481 254219287 515150137 293666106 935065995 990774808 793088439 12501596 871334946 785028910 96057294 371931041 216708316 652474174 490544456 635246842 165329111 158496583 56107503 161810784 75166092 550812065 810780546 543732312 994399456 242601592 758331348 189285677 518583385 21350632 672193907 741871506 267689047 773813511 817135933 267689047 318244739 88244339 11511514 492031763 370718372 215503619 899600039 559320957 479190564 947696425 500069058 553480825 406566817 140601393 713660675 939357958 762013651 410468968 877911025 574268755 474679443 260098960 447235483 585899961 541228954 978955126 101397168 904768837 470431583 904961277 212632182 558471522 723880853 768393379 581258803 667786601 841435251 757631259 929494216 473693206 344237643 871334946 167856660 219802791 295057902 112782806 734077184 833129815 156968424 143549423 627166441 168541496 58361869 259644489 344200460 779131891 265794323 99870520 354355527 658030547 284177728 572851317 672722727 248071792 627813749 171735454 761062502 203373170 998856933 134433213 707214403 455629229 769951693 806827582 768362806 927270662 847563421 639060490 375968612 128075156 779118994 566415144 123629213 651598949 523147876 126151481 242560852 764384285 550199215 969266424 258007443 797272297 344949528 244838002 539721253 611310352 670046853 812740198 625463030 79913246 201517485 763810664 593248117 768017079 472791954 907656645 333469096 280084908 833891546 163089910 464093382 359707817 862533520 702256154 365572937 128943964 264156847 832879077 904475980 254219287 771009579 473848396 661584625 851966681 558131956 816749833 622717017 87172430 93857831 878919697 208534941 75902075 525024402 525094124 397263883 149526166 376899224 156718040 51739918 471722035 905623941 661383057 468385477 404670881 53139843 14594262 114039611 972485967 21520904 841570440 627166441 61949058 789197602 85153464 53676003 694314660 661584625 934174158 523323726 621290468 805615465 723636806 398024723 652912997 455629229 774715366 362954591 407046193 26158477 849111782 920158824 585045406 723434610 983582719 838175812 243784306 15204737 123966205 750349249 812398643 934461948 200488786 149181759 261220091 985805134 473204173 753711643 517473421 132524740 336111822 581618221 430333603 356779688 216704599 730344309 686421587 198381740 256566808 930134374 802989717 434173970 906412493 261551580 403264959 942923177 212973675 102348063 990063134 627813749 809459138 197177183 445557757 467480691 790584023 536206732 992761434 153063088 638664525 197325365 641770480 155097744 532686342 782350213 691672490 522162975 350549710 158901683 47081900 56399673 484196394 620797239 750349249 723259457 885828739 734077184 269834060 455132454 132956382 564942054 143321119 410287113 699460113 466126124 106129738 438630753 114490376 124324948 810228122 954346318 459107524 273455423 281683102 961524215 365901998 951805853 387246481 598516412 845872351 377257960 171385328 524273512 471833346 476891549 965295649 78894525 996455605 575068340 373357752 510985571 726713969 575968095 904768837 873033123 188982938 712091233 520946914 81482031 84574869 334247254 858833076 452850158 531728564 938841867 224954976 67797956 144093335 548951569 584276590 8908392 280728194 89965595 100430245 189220848 80414768 437038421 15194331 495349404 462438883 705363518 76605712 60807748 250150288 12788600 110053791 129092330 231133498 721248367 424985165 87172430 994939812 20661388 708589565 15538095 144282970 159265904 930134374 955405927 746633262 33119528 77512148 636991704 759856178 674507154 847563421 960454554 540134373 812676261 414221178 339657591 545751460 434173970 578236244 229151777 750825149 38852986 812085067 271545507 802743247 556218614 774715366 150252840 405526415 399366010 954346318 547059037 224954976 276723131 832468899 959510438 390584988 610169722 166873308 956831682 323594425 111953929 379218704 412155251 536909087 810548036 705759680 408287424 510985571 248979596 543732312 470200470 516050388 286185675 637329054 424858956 181476437 940752030 349938974 205718954 867617393 610063072 914762971 223893210 960587367 441956221 350779152 52706961 512267793 444402973 698311949 44406641 657957198 991181377 899600039 691598812 564314986 925216722 660988632 678284060 196516403 61466476 733258326 841449414 628533056 430389614 740310257 709584816 294071211 563542199 476046422 993091261 678494167 891357783 6114314 567519004 15767643 991181377 332324779 495261210 423168797 756670266 550852259 779131891 744074096 422995827 408547112 951805853 253672164 443379097 219243177 348492981 83441525 468385477 790584023 279443460 518583385 813319210 187043789 34708050 906084346 585045406 707841194 364092130 797571073 513185757 244838002 771518289 906572633 724371560 811162412 366138558 602353565 171104644 520946914 507071245 155364325 477224484 315560044 87368065 110421212 550812065 640094532 480319995 862939936 673162053 50143954 76612005 358007727 146794653 445880547 65138516 399514194 600162938 232260080 365323948 6074683 504257493 625034563 565718020 788565231 259749110 784207499 447990825 788203830 540571239 910095312 423646799 916560701 223905430 229061145 670008603 398024723 756978770 229231430 174675267 547292880 56407269 657750288 92792218 239162507 738003643 559192103 158496583 882592911 978582159 140607648 197700342 914842146 999948052 881430555 65402346 154264367 367348812 855719098 779435019 303992096 515032275 174120506 155533258 576870939 943154593 830829720 794674617 199352976 705363518 988722625 857445998 428874628 378197945 21511798 622098344 209752506 376860783 800717123 920638017 840012155 538380286 969667877 463978538 248453729 585045406 106121392 630092600 708751 835582793 428689888 383008147 242589325 23626317 401644558 321059026 3111695 917598758 599975425 685157777 10585463 953965032 941861375 652074960 690081846 920365121 514516638 108098871 672351048 834156389 7203477 997195252 855675634 510853284 462795099 798856912 892013995 126174714 634685337 245449194 636729064 919975022 819977585 351077143 423961901 102597635 838540674 265244843 705952653 581618221 641176604 651598949 419681408 246896386 738003643 599501228 960419646 850504155 671012655 194407888 758068661 467194946 444502458 472448047 356067238 941673575 310813775 797973013 727361894 862756440 298386406 857445998 730344309 111462522 587713617 577402271 476884423 3357464 105852443 376643535 385888930 309117493 975392425 532409687 215068446 793199056 302580911 264972600 464405816 149624114 259264628 132808689 283599405 398673966 424846915 353032689 441484207 612989706 739529056 537277074 234542759 649185253 514124813 115865535 155097744 333541948 594631604 46370264 78747617 822022239 639889322 929908858 801391310 386668522 752341854 539128062 453455633 502779916 661958556 599363173 289926970 31105427 418470891 355485938 171571485 302288197 466146046 660988632 988068787 914662667 941640695 561899030 961524215 613108787 598912002 980278514 676494709 498323717 592548069 861260738 742919885 174125656 57212848 107813311 492677033 409973224 859743875 385300022 556816624 822571602 484032682 37375125 462795099 171262197 984105793 771484950 723434610 769429163 238248119 171571485 473933050 172890601 112475447 21511798 772954160 83013527 880039838 918428238 865369249 184049420 374326498 646913780 702256154 202687577 525024402 804594890 712824576 147078208 265794323 424829099 441713920 700660892 149526166 52461327 473047610 38852986 267162584 702897492 178418999 694236116 75017068 33034747 176144086 124324948 812419126 446329057 573012264 841570440 425482678 507071245 137290621 381089290 803167446 146837720 857445998 365901998 705537029 590388898 947279692 191393088 849466253 987493119 568106942 997889755 661154467 505355078 951805853 639207425 849966254 819592797 667786601 146334028 767229675 310920947 353685083 642448466 721155256 950900487 474990991 625269263 952238771 744493275 196660535 754782410 501614322 740908785 925078060 291952526 439414044 387448768 718578207 3116996 819033092 626709003 520956931 128139542 907938238 523147876 267716550 165329111 961327971 587713617 259705784 196911651 872344572 71870116 908894608 667589325 119260572 970069180 224954976 388439020 323009767 365563541 66100936 553480825 290630815 838540674 755459531 844565139 866728678 526646811 926626683 441209724 515811834 106129738 73774554 835896179 305793717 986584560 855342522 607708723 838175812 340569510 305092307 650542665 168630740 453784055 814015482 849559289 302274405 416857815 857902834 401279887 171262197 652124899 872871517 905662794 773863925 964714139 181309296 878460774 25675319 227341587 643177231 367552763 403682682 611751787 132569079 512965180 43739419 893024942 58346344 67977428 1478365 73355194 724711319 981297114 514985740 332324779 12501596 862756440 334586837 172232166 168541496 62268228 950790491 781470828 918093616 768017079 476056555 568224063 123918127 240608845 863779255 776456668 796274678 567888993 55022264 711621501 415102606 496238050 964714139 914782996 124595557 720307744 224206891 554014196 167535364 998279315 361034134 874754055 159265904 533730104 18440543 479190564 711515066 961552936 15194331 180461516 731850604 212758138 963655621 552949859 533092466 704965966 663322883 34152531 153063088 215523700 778007084 308311291 523105096 283599405 982879511 944162334 947279692 635283672 854771089 907938238 552949859 206947382 615674959 309292580 75017068 257997193 578158360 596213445 375662115 76605712 619188238 132708274 69942571 165087591 338117032 827760201 197449106 608726602 662622370 887961342 540262136 327428172 106121392 499629455 388223330 675088442 960037658 158410014 261322372 455219701 731850604 309117493 893027217 57210434 201591689 91723294 959991697 512997134 367552763 78027090 328319663 812982582 134803167 490934541 782321975 280819281 548449903 170330891 318413499 99144276 271926452 582423808 924266382 585045406 810548036 767891036 663382808 251283209 739993618 568891626 214081108 44400258 197338244 512199828 176689484 635246842 508703445 986790528 910290047 763495111 173145620 453455633 168024415 401279887 265227230 990507207 287698662 228343722 9339689 653025446 55520299 552949859 306216861 738003643 907679875 324644196 831148533 527299770 578236244 867123733 888950181 97203248 740718996 693950087 331601423 28876123 408547112 441548278 704364808 323009767 900042969 161739855 505312617 694236116 279627355 616839055 586729040 533730104 425776323 995215522 724866791 374024229 985805134 762999129 880765678 93601884 948929554 181309296 455132454 107808978 495261210 431343619 224099360 588152520 328845920 547426458 119688172 382835379 294071211 368496531 977729124 784888241 730490543 894968871 468331058 755706187 718418654 982530458 200492809 39970385 925414817 438717961 33119528 830573452 100289791 170460062 592342611 759460712 790409862 829964647 631999248 515032275 703947004 536947790 971516982 332007686 943114099 187913741 547059037 615495811 680938701 33525687 646913780 87338502 336111822 810730357 907679875 203377670 903716250 973780364 548433146 793088439 653872353 970220100 245828544 621822034 249766964 480302776 187913741 790404380 750349249 808804150 557229086 309024963 783584290 180053178 508703445 171197583 135904170 465390544 404226502 542288401 302792363 314285605 192645058 467373016 920065193 854211870 132120437 143081607 199911373 93601884 299241352 801391310 798176202 256475429 627166441 131171351 735643098 306216861 486304498 64472751 634726762 459226503 273120705 985236099 433158646 17834316 684758551 701474370 195126498 79349789 257406078 750495961 899600039 768149844 577377636 259715114 842233411 906323892 683353440 73402876 124412129 269005893 727773067 652474174 753146142 742989014 246557862 699882130 424829099 761062502 845979811 368496531 721172947 635819214 775775365 409150698 573012264 873323777 599447517 161842598 784911924 393125415 854618481 203834002 29112804 878461654 273455423 358007727 26758536 618789317 190518462 800303456 172890601 379215607 265174728 426942267 411988656 181262713 633148289 436966726 137972836 135000374 355604580 443379097 577203870 781470828 62268228 183601209 701119742 703073204 460216849 470155825 361019624 60084375 637121734 937451019 822015890 835454267 113581183 393702122 699817175 410468968 694210633 929650001 491761037 738819955 208890459 640019153 712091233 65499478 908965387 796148540 480661007 768024129 650542665 942557803 617924265 238981092 321644210 58809756 614741012 129372826 189708257 894823343 672502362 259705784 306455665 663975329 85505551 203377670 814740861 138043079 473204173 458720877 330879530 139770734 16410874 943062655 821327954 110680382 638798934 876469630 668424404 753146142 765738398 553444143 484505198 649328326 214190727 987162538 747585224 134313497 40761625 562164691 430209478 513574714 990774808 738461607 487778963 789991995 553451374 471722035 98687602 934317667 35905145 62555839 541228954 809629583 317099649 622717017 393116598 93857831 167932819 250505381 615192284 956446474 622356349 108098871 957115124 979218772 468331058 495349404 255995014 392539225 871852280 423998435 624854784 47750363 481684319 425776323 248367091 288266060 284182474 936046129 507474445 772621903 55022264 624515974 804612667 836210608 483492691 705568615 413338415 772294787 146380544 449301490 811003316 555546429 488463526 748093653 708505943 241704301 466918176 773652562 568106942 211564327 226521418 997185480 344915872 512870618 339064079 636502705 723308589 529994673 286050564 101024530 492001619 266067899 737176087 332389556 809403255 389210030 546862328 822571602 119415080 865647751 699476986 844172942 130233752 344256437 62555839 893524401 744503077 498727374 311966060 687669529 78989626 847563421 126960792 943154593 618872936 559377198 645417617 29329225 868176165 791178147 602052060 356019667 357553023 938349663 163018950 383008147 247220722 209022875 89154951 835800812 853479900 835153635 603529951 935563785 972118206 209962150 683664676 479374646 51214252 694236047 972471770 942427380 131145969 82820786 698311949 292320003 791536667 445674227 241350186 273455423 46282639 402513855 875316502 15767643 956403889 447990825 167908078 99693668 305469242 740942695 914018852 597041049 472448047 841089783 968556641 603229253 899164744 132569079 415074383 682275349 341867020 974607726 297687452 231975533 446469999 116783336 693631266 758500703 738613051 940728771 59053852 978582159 425482678 143723968 772621903 784537889 859566552 670357614 492031763 96159325 227471178 370899819 259785955 143005619 599447517 419013338 463910045 567638487 385346897 967477133 51132506 689846841 416193131 934663808 513446596 935065995 962075597 859042582 187921426 709759009 849789595 188597773 193365645 622327053 268200568 454567843 93601884 619188238 95226514 559631090 455132454 528670985 959510438 347823879 857090815 449943051 321223832 279443460 707214403 997889755 252232429 554347301 8991600 835817953 469831496 145198789 377362748 397187090 375081856 9579364 755329756 350489177 690406163 281924586 107813311 780177659 892557246 590388898 382785220 922845593 251589259 741871506 440326361 304962070 661958556 378341386 997783713 759279615 984782495 301431139 331601423 107813311 440326361 618254763 332404935 17769661 746351207 144595910 536594851 288338862 514985740 146183600 825767247 634726762 972747953 904475980 37361502 984105793 249976799 396449836 199911373 959510438 125818812 260098960 998097657 88244339 301724228 412124180 577723693 627166441 575068340 523147876 92792218 550813348 261546154 495888567 431432359 468331058 416204454 806833744 441548278 470431583 623090135 417994703 873818921 680092482 192089296 550438304 719863057 93137007 530560377 787270808 95450589 124324948 170460062 639060490 192089296 163617987 832331795 942144547 617276580 334247254 265806676 569820917 808804150 617105125 635246842 977977171 626510734 747226842 308306592 717116426 498471688 644457283 344289427 572100510 983051729 20460124 565233456 662237534 760685220 676317740 834728873 119565485 246114867 622400429 26764655 354355527 271545507 627451717 553444143 290425737 493981688 475471242 591202266 450435362 790490513 930691132 168541496 960075280 327384116 396449836 275949763 514124813 252006196 98614370 75166092 492640640 516724434 657750288 576910474 629934507 664156199 338230014 284322000 475702831 582423808 224622492 339940039 259264628 20661388 657957198 208290005 91723294 243784306 550182649 123751823 33921743 86870980 771009579 234902148 809217981 378326734 447820310 696309275 741805743 87368065 76776241 648412457 382785220 815257954 266408022 756654121 786193194 629934507 957181171 890668835 277497567 768362806 970079337 553300223 487256848 590790064 443031883 763969673 763495111 322549573 607903236 844931236 560343402 490006029 166757013 409643450 278144763 380211567 522162975 951419697 326440611 51668993 516980462 685324370 514327756 153063088 978924176 7285676 852751929 700147339 146380544 451020778 503376723 446104712 354641735 62304730 401644558 380825508 182805540 101643149 529994673 391340789 445445915 90938530 953887421 303992096 61977295 13153247 739053117 275549790 523762289 914842146 266382246 777828070 77857419 228263864 343123997 342274439 736226703 536056500 881042377 497164702 282891236 306167935 653894491 856303039 367939638 587355315 420576735 685121504 566900631 883334008 120644927 630566829 468128566 833924014 893524401 328217752 277565457 834156389 669036250 445261790 523306362 48855726 272412032 396195715 58485452 445820895 57859273 563542199 299851704 797571073 833891546 466146046 996829154 293666106 811162412 276063075 173142251 119415080 101410003 814209757 650371604 873818921 439812150 735003286 143005619 120511434 384379890 82188736 892049425 678291966 681164093 904292494 787747737 466918176 119449622 131293000 171346666 367939638 56740474 52461327 908213969 203948742 284829030 71438949 711932887 859600514 927719562 411244769 148872843 321816777 798532102 982879511 730344309 356779688 387828469 936316033 42819703 108098871 425176277 913881336 940752030 916560701 768024129 231975533 655737064 228897489 268740215 801391310 790698682 256541533 950030898 265244843 821327954 710399184 15085853 703073204 527319796 678758803 797501542 281683102 56450978 829491104 806898287 153661994 145823899 190531398 492414722 835709956 613526821 389220049 429165033 243996765 69942571 850512708 427218881 394069130 517078323 343833471 155097744 705409578 680938701 823403707 784471339 209847334 736999941 990507207 768902238 456171329 111341182 125818812 156796129 118321585 982592507 772954160 920004721 45608788 220211320 608025670 876597054 215503619 306845244 498642163 231472878 742446846 888886584 777599463 432780069 526327478 206209771 817283361 674115130 471833346 134313497 379886443 319791841 306959892 300107053 109254508 332532417 186840994 78747617 581618221 131806351 338801541 779412471 952330793 598801584 138699183 670924186 590067407 590146562 426908399 183908166 219243177 400598057 675395168 765738398 594657232 758068661 779131891 926777932 543732312 509638976 137580107 654499905 110680382 245097735 171262197 23835068 302303778 371008172 471308146 683353440 462795099 196516403 467240339 832331795 462438883 403810589 881430555 188802296 665661938 268200568 338230014 880265015 892722963 518575425 889680918 57602439 240836262 716625245 788890047 410287113 803796397 752718488 426908399 977367481 823182841 960769770 892121734 727773067 93137007 107820156 669124399 793567237 882223199 416802463 538380286 448940594 809596958 113643196 738947833 173790654 645114761 616734528 782625863 474872546 264735222 89154951 355619583 982324277 987493119 212977880 89965595 826593764 217651693 319123202 652074960 527299770 551944045 208336950 202832456 354355527 501602670 689101452 465390544 726101523 227218401 690406163 565134851 333796773 365563541 757817319 859432248 730264987 212186584 647287845 862307089 275228450 250644493 899600039 710264116 959991697 405861846 493523186 740873947 77562567 812740198 223589059 766723396 492333146 979264750 597299091 514985740 230623541 779410543 612975435 714954919 762013651 671753094 101303048 407046193 888950181 885165254 463217611 660988632 655072369 321059026 542507362 637121734 950925875 19212436 673212605 804772596 94543457 86870980 570271244 721248367 740448148 820162099 870184406 926383726 110162048 580676132 55022264 64060549 585629217 868119397 29601372 53139843 704364808 865660393 732621225 359309478 794896369 985236099 996358274 810780546 855400000 296244299 999941065 685635040 949430015 469831496 821870786 949038386 16887740 619958259 458720877 181061043 695577168 351685336 646913780 868372476 833294807 837373149 674192648 139178632 193679555 64060549 232151291 191019940 904417649 126151481 415074383 284629587 295191333 380471354 105070639 308949550 157428808 229151777 137954794 190945250 190265561 391232721 540681705 880863412 769648575 110407783 786469692 777599463 150449374 664497996 939464133 814854596 849868763 748093653 671753094 74762379 559236516 729094066 668797597 194407888 981297114 822571602 336927622 218268412 509862145 375662115 695577168 305469242 526236648 284177728 387828469 792566738 615903288 61203290 872010224 88381932 12100035 36446880 956921703 552562539 743508816 662237534 473102970 329373932 727129556 873173721 551944045 411003982 642561124 976163852 619188238 556940415 540250629 963226961 466481471 739203331 209752506 598801584 319927546 682872291 756670266 309199529 627977236 10571430 788203830 678284060 778894873 299851704 30351439 958868541 384983061 487658713 763787861 320692286 588204447 810780546 628897356 512997134 443379097 514327756 420576735 309788087 627166441 15085853 712110955 59477311 973062277 822318800 307198743 149624114 667786601 903078684 889361891 640521890 157441769 694193964 926383726 735055857 743007075 885165254 208706801 717402262 505355078 624039253 302129544 650371604 801888810 206834789 553291542 684426675 770699812 364364987 247762164 978582159 515811834 393493552 473598912 947696425 597983691 4710819 739796743 849229551 926298551 365901998 310408596 818131605 181340391 676130202 513275688 302801866 892447640 578646572 950900487 967886202 663975329 742784179 305469242 91039408 538899541 532397682 395606749 609034384 14055174 17769661 721965838 642894296 332389556 810567026 375081856 543280238 659769915 929494216 74388346 805836018 447633093 889704474 800561183 222052670 175964182 157441769 85153464 99730457 176214541 540192457 153683887 428015236 567638487 643061746 334163442 962097171 162320815 627166441 201517485 174120506 227698284 744567092 597619873 685100407 275549790 881938727 157734675 15944964 343123997 536374362 456171329 978024218 984338318 863779255 638184924 409973224 342660488 805600576 741622790 244645017 526917770 767173538 87625640 708594369 308311291 908601580 521652866 301832448 73402876 205312683 215503619 883124357 423129885 44539235 299568802 838403366 412155251 847563421 994939812 890583877 657750288 621290468 74105318 516441293 997783713 595802491 711515066 365853060 126942402 952330793 963535716 934461948 824914724 30001504 834374904 338801541 962762175 881407016 418943600 507439477 665924450 786231842 663707664 921038201 343123997 481797000 332404935 685552189 393125415 623090135 60807748 212758138 505355078 761176899 753711643 433175193 836505273 788565231 734077184 656546640 1521687 873173721 318413499 575068340 822356288 445880547 630876037 267171391 261914539 233034793 826719690 615903288 145823899 789053029 538636029 829027881 307198743 410287113 369616511 497283938 447633093 603084254 217034447 700813324 267130391 200306575 195126498 456313393 412155251 899164744 831324232 902705377 278800524 532050035 854610463 30301133 295107210 547059037 352019725 7962006 266502803 101397168 821039696 590146562 728142005 252772791 410287113 175722742 110347090 219243177 670924186 201517485 58361869 553291542 48671523 622444979 625340233 533704296 777293937 599311467 173476277 526571766 707841194 400099846 514642995 712110955 504031705 520946914 686027125 453067953 784591585 228263864 328329111 214772661 501396072 264724754 996070039 941640695 467240339 220645026 624766555 920153792 330696951 914625906 180461516 100252771 692644806 661584625 774444512 574420367 567961640 576780065 705605781 481453149 411003982 617195341 298300071 376860783 515667681 155802718 676997288 995162615 132248484 978485528 672722727 228897489 95450589 256541533 143723968 434173970 700757275 378326734 548740123 91670966 835709956 515667681 688926432 655737064 936104862 412124180 612730315 315225511 920185762 568891626 823403707 911597038 799308680 542979336 354583476 106121392 835709956 276663092 216671674 202930840 129244340 817196111 161842598 965831491 799002890 67977428 466259378 391513191 779118994 744605802 914842146 267534952 320093398 154888998 89965595 809524612 111953929 573931392 33717760 268611338 716625245 851221731 790343863 906643987 171206101 394069130 796204767 650134945 355619583 275228450 514618541 358551013 669443488 183963712 232434763 146183600 920153792 383865111 510779554 189716201 161168364 143674052 110452443 636502705 85628837 290136374 308311291 360697393 719576691 779555399 906412493 118321585 856303039 238981092 416802463 712824576 913438138 752718488 725628791 593706973 188982938 167525206 15204737 342983554 773171286 698311949 630369541 548433146 564289167 930861676 996466367 407976225 627229892 549240123 337995998 331691451 306167935 12405576 375722358 230771669 167908078 377862640 321223832 711938915 602353565 339910347 23418996 989328772 698311949 233168958 996415305 951550858 756782347 849466253 905266125 683963524 720307744 562164691 184049420 205353146 161548506 476952902 290425737 698931608 573360727 876136418 322788715 414679578 100252771 32375922 232151291 164621197 279782267 516150775 990412668 832089041 826390147 157428808 178554650 635717032 153661994 349160300 93857831 269244170 851783830 781470828 272502984 653057090 904768837 415074383 128139542 701119742 809596958 180648180 219243177 288686589 308311291 710358949 524273512 560959656 765465955 635717032 513206735 579772323 822022239 146334028 482658484 777976325 667997366 125694366 752128946 217651693 562164691 316117612 853479900 857090815 625340233 186664369 841498462 12686120 599447517 139918534 7203477 544148756 339060930 925959068 840535103 523323726 53676003 172158761 425482678 745232220 504140152 353149270 70423 699872724 133471702 451560800 687213754 28831669 243257350 287557514 591202266 181262713 246538611 798532102 24302057 555859738 170850983 663322883 809459138 351439552 28872460 3097549 387146197 678758803 994399456 244318318 323009767 509862145 339676584 411244769 596213445 787467774 680092482 524273512 39947427 40180901 263735956 929102257 178540205 717244409 302885739 930025010 467480691 569820917 390228435 182576283 704095095 841089783 516980462 669851967 379218704 592855228 386336927 166833618 985236099 332577239 264735222 385346897 765408618 150252840 697870062 799084059 978548841 662296076 170001592 597983691 464157258 688138477 735125224 785248732 514584876 190317405 266793745 483976487 158410014 635819214 510330601 380645221 552562539 145015410 50353247 543840507 227574043 290489282 584744819 581456290 404433384 829027881 806898287 773813511 670924186 792657048 411553572 509858141 517698790 841449414 547426458 757627768 379218704 838372130 362471681 216671674 179809518 855515073 48420421 477897425 427218881 481673072 202620857 33448384 705568615 824469097 5385098 175722742 874754055 492753997 386915292 742989014 595166705 828969147 80414768 691827396 931649320 171116601 373436147 132524740 296378401 509969649 847695905 833891546 843321342 231975533 448290624 65414838 256434426 722323960 599447517 794553967 83774350 14594262 497417342 426357987 670726380 409973224 66659514 83408971 988066118 638773181 274044470 374024229 129343380 653073910 415102606 306594022 537394553 564942054 166873308 942427380 412155251 695868455 901072025 959815330 536206732 528475809 912586557 221580236 445445915 597299091 31146677 237129719 539963350 826390147 837397880 60511848 121338368 569115124 189287450 244645017 209935069 426089883 23164280 514642995 565179997 759279615 111763676 73355194 522997998 719500333 163089910 726912627 808987555 832315743 257729949 809734786 143781808 910886192 441484207 929757110 798386400 650256466 532038123 104132483 423646799 735055857 193029455 217545462 591813282 487394853 534606800 569177102 505642602 76834175 657048440 132708274 376643535 700813324 817196111 464405816 484196394 426727201 245167695 78027090 433158646 463373988 326973370 594105616 670008603 904159957 235183835 436356228 518583385 588592243 917656269 182576283 441956221 872969966 407976225 792301752 814848138 218588507 963954978 33485421 259715114 681033318 236321237 434354689 622098344 499280784 727129556 255746101 119260572 136458315 713217558 718987921 820754635 119415080 696309275 383512998 444402973 444341395 850919156 480680496 924243081 356779688 84352528 671753094 40987007 33223562 387811756 664760210 202964646 681164093 114783109 193292683 92703987 20593514 794896369 720461925 165255667 701992506 599363173 969667877 216744565 60538458 57622495 192747501 36498161 36498161 279844643 525638956 209752506 568224063 15363892 784543578 956692225 814854596 372192841 534742374 131145969 120825765 3116996 462194028 14091222 351678106 436966726 338806367 125098132 634683136 553291542 830573452 608278165 504031705 996942435 216671674 668239990 823078558 87060770 809217981 800303456 777293937 846250560 530529589 619093824 178338226 59578663 888802180 334586837 508684375 351906572 332389556 367090357 787369234 743749041 178612250 136280040 8613421 662207358 83310806 445880547 532409687 787125867 753436469 823531809 574037992 996518547 259848496 627977236 667786601 640094532 990507207 974196966 533730104 253672164 572100510 866275712 238792356 723880853 130748149 35634966 732449157 714122176 708260818 595697081 413192247 368095127 648915259 490544456 927270662 174554145 653721939 792566738 135867710 42819703 559377198 622717017 958868541 938442301 434354689 149181759 57698839 540034165 914842146 627166441 466918176 873033123 876136418 728984484 268813415 369856924 459549785 470332840 237129719 507509574 441209724 44013248 230792741 766064131 33223562 577203870 273120705 821274633 175573396 793658616 911682579 339940039 572153244 528475809 982592507 539721253 519568459 424985165 633223684 345251277 443926841 455436685 222655435 425776323 454660890 124324948 819177331 470894279 491125478 624382076 126856560 964714139 721965838 596871223 101600824 123920110 933767247 581258803 118200676 561871206 878919697 603692840 774403825 57212848 501184459 712347955 993091261 511962449 455856823 373271018 775477924 64594873 405211363 985318505 965295649 823606328 405183113 37375125 908894608 825718553 378862694 350779152 738819955 578236244 112435422 683664676 386648749 114490376 423067490 560083947 757371686 350615343 772566237 951622853 719576691 224424597 912076521 343786069 322788715 918093616 29112804 382835379 837931720 585862918 68574662 621166876 962097171 769875361 287733226 559221201 19212436 919966051 753146142 757817319 257836777 169048486 414310733 91088807 571751125 64060549 694236047 105670287 892013995 944162334 911597038 721574742 777135847 389212788 12686120 257681001 315560044 813706999 169252431 238792356 405526415 8514809 59477311 17834316 707227138 716512526 468557993 805600576 453067953 996455605 856449122 213629398 387949612 709584816 184894800 387050663 3831463 215117545 200349926 287381943 791574966 194922297 814813297 816756547 788560689 45818101 416193131 540888359 491758875 351439552 414936307 357897365 636991704 571912526 685552189 632832527 131180650 556816624 244645017 508338116 944958052 362471681 775775365 265904576 199199314 97196444 141607140 64594873 33834715 35763677 682275349 250268130 962644983 940887852 38925484 443044213 838372130 783584290 125694366 499947108 867788675 252115701 565539542 895402126 781548066 494468203 426357987 475702831 409643450 459226503 27564176 524735400 273455423 266502803 630876037 987511774 672193907 821407538 644450459 786897254 842024288 329394702 944162334 595945449 233332213 12934785 479556373 181476437 779208512 715642129 355515721 914641322 167794990 498678305 832345379 440937448 241704301 495888567 406746718 786294584 736999941 769083052 728309739 833129815 829491104 324644196 968556641 307767072 335297970 311120460 441956221 783381233 712038020 473383951 408547112 224099360 268611338 155518284 161739855 256566808 327055342 149424016 391513191 495888567 593562347 378216275 616839055 705363518 218639536 43296814 614446526 453195888 772752998 137809602 689846841 977977171 875732615 655072369 183548314 728142005 640521890 780476 287381943 288686589 812419126 99693668 680938701 269365459 812735700 98960525 686176210 628533056 605728723 589678839 614421240 669851967 46370264 486348885 268611338 891044227 323841451 798704204 62769875 793658616 309024963 724351353 946629040 444884023 317453486 612730315 431003796 771484950 338369013 577820900 641142221 550852259 132248484 606808899 350297176 648412457 16410874 144093335 545135013 453067953 961129959 698537005 622557779 844931236 842233411 656596081 379193252 814740861 123629213 300852389 278899337 224206891 424829099 515199300 817797466 506062832 975350874 599501228 369741281 86733416 467447872 2267895 52412927 598715906 207549397 861013948 517533699 848391143 340569510 560959656 774444512 838403366 978838782 538899541 99101069 313709737 375722358 880006485 7203477 477564988 892557246 674961326 165606056 450023501 41169649 172706857 878394639 466634133 183423602 755171863 843709330 963399229 777135847 130748149 821824301 492640640 621166876 922308369 716084460 6074683 596362664 487778963 450970107 287229458 276723131 914842146 822956905 5385098 222228927 791543521 707214403 48671523 298386406 221197630 639333943 492414722 602052060 444502458 11677405 282891236 79865398 126291003 296378401 33485421 39087309 553300223 831148533 169252431 139918534 834728873 85330293 643177231 5226926 835184856 380825508 628323873 599712989 740310257 794674617 338230014 756670266 101094736 349160300 414812061 196582719 424548681 159167956 327320447 251468784 703204399 100086616 426727201 277547289 626116382 931913674 955405927 745232220 288349510 497417342 473047610 636991704 238534474 462119098 909040760 3097549 615192284 646562408 650134945 296244299 416857815 50050773 359652773 796148540 473574639 808966775 279663853 812962531 292432616 307890239 276723131 858841379 125994586 533491545 309665803 300466853 387246481 33721253 453911019 930219713 658262868 994113516 164874754 148872843 578646572 955491104 554347301 172771364 110680382 370904584 514642995 177265867 191393088 961327971 827375668 240197516 740191941 598801584 310420366 824388656 881430555 34979133 909328510 215642803 805401221 787369234 957181171 230771669 475702831 391909991 146794653 526582844 104575860 887530457 130233752 913985244 959682189 114504608 184167493 575320847 208336950 682872291 362954591 419013338 931913674 251305009 554014196 94204569 572935160 676980845 890425414 838406143 706772155 694071695 470431583 388851546 358429939 437038421 316117612 378197945 400997928 189716201 818530169 281924586 113702197 282891236 333850293 353032689 981307420 711932887 455989267 936904534 788239486 799131552 822022239 10585463 191844071 155802718 83013527 593706973 806386122 300852389 674961326 575351641 58485452 149424016 625463030 207549397 164084139 332701006 65001193 405211363 668291165 243257350 612989706 602360905 743496710 388439020 603943017 193029455 630165875 814015482 623090135 575698643 815974732 120825765 960419646 192107578 60084375 938543122 365323948 566360189 910041119 925959068 57212848 509858141 16079129 33721253 206947382 531728564 879251547 802743247 657048440 425482678 619188238 844051855 111953929 132271955 169507050 526646811 806325457 796425218 87544649 890668835 116783336 281890528 921038201 197338244 875899015 298754411 399366010 998279315 738003643 411569380 105220781 229059270 101303048 761024521 355362277 357881948 60114511 322788715 423646799 670157273 618789317 659554958 206551521 213359710 444402973 212442487 991481489 671012655 559631090 418603889 130233752 914345187 277750457 931587040 369043456 734077184 893165284 616839055 572223703 593248117 137580107 113204630 960329120 154844116 764443046 661958556 631999248 182576283 330696951 180648180 469478780 814085226 981307420 587355315 228897489 247220722 849233704 18530476 608973577 406566817 557641316 9763352 997226910 764259519 468933072 173695769 190518462 578345192 918428238 750072751 996518547 633657793 846482054 574803352 156630558 778765033 228000369 440326361 670591275 195126498 980631873 48671523 20661388 402697337 490006029 705952653 222052670 251587819 750072751 930099114 298300071 726529070 197266655 889880270 339910347 241704301 653594916 142572005 942923177 638798934 993729565 541228954 21583078 309307017 87544649 311376870 781634857 581256406 821190574 301724228 832671251 314193344 785462257 996070039 716717720 672193907 299933132 206915668 29419909 209935069 128139542 611310352 237993313 669124399 588592243 445968885 940663788 707227138 466259378 892502461 451560800 878460774 810228122 331601423 178881338 121914939 697285056 60538458 586189648 447820310 130232149 198961108 588496314 100086616 550852259 365997603 960502060 377362748 820162099 686027125 740601476 575702800 464184273 255741301 311120460 97937401 283921209 401527487 768149844 192747501 677049963 971630537 198241370 930649075 261220091 411244769 373436147 912586557 731391308 343554958 612934169 202964646 867682504 918316207 249611755 698869912 700089141 502700414 473598912 577525572 401842604 83310806 990332043 410241368 369271239 35905145 904068334 936316033 29601372 56740474 513446596 248005248 359813935 904464640 603896430 363181748 71870116 622163185 699294880 812982582 961160715 867409519 257266617 56178297 670046853 374024229 691469695 526236648 132549744 459226503 553444143 566050763 241350186 240357237 505312617 744074096 433175193 209752506 317934143 486813735 401456345 57212848 731043813 777948978 151644485 37361502 835896179 441106841 347731733 388223330 546584393 528508131 306455665 744567092 733371371 809403255 85294613 188597773 859716163 445261790 564373630 104575860 340777409 128274101 810174413 589678839 126151481 983930175 939020973 232434763 768902238 844433235 786769037 484428076 448290624 751732179 327428172 343833471 792797962 768213695 481294839 174125656 336081011 946629040 356182816 283940189 506353082 148872843 939776047 764738058 99620295 468410558 20460124 926298551 26936778 987741376 320093398 4710819 808831448 953843508 916835044 294071211 141480927 846327809 828969147 776847680 362954591 430333603 408722873 260809328 327765793 164874754 959510438 855675634 549577976 172784096 154470635 461139901 43269492 543280238 651131997 998070740 309788087 653894491 777135847 942923177 918258347 433144115 98732577 559826379 277961622 532584882 558999876 189768557 672722727 488463526 918939619 543732312 943366285 78988322 980278514 418943600 622557779 773863925 528475809 399366010 738097040 567888993 595004375 223096756 33448384 765700497 593706973 192089296 468557993 607903236 252232429 150915480 544368552 471722035 290425737 575702800 246406611 187488138 682810852 611751787 157051224 194818695 385300022 608893757 532686342 171262197 351855708 808242329 648412457 11511514 332532417 52012162 991683935 321644210 726713969 379736617 904159957 851966681 255746101 824388656 174250648 842233411 872764546 328072844 490544456 33781772 179174542 857902834 216009673 811119785 733392225 642894296 391573832 720838049 624382076 380743723 468933072 441548278 240197516 806325457 23626317 387050663 650542665 111462522 976163852 486304498 92140605 486348885 796204767 227527670 790584023 808000077 533733346 198241370 646460514 695889101 223921663 929950543 390228435 961160715 669036250 259210433 567519004 298754411 856772079 9339689 912569692 788674724 681033318 477959774 425628417 844018425 30667705 176926759 577054359 76881051 113570806 810780546 950917629 970416993 208534941 107820156 608893757 647275202 657451368 340899503 562164691 832687599 985236099 445261790 374326498 277497567 983051729 12934785 329265704 91088807 344673051 815757031 278363762 609238007 590067407 944162334 198605082 140601393 426813070 896719815 953843508 769875361 378326734 870184406 917122297 377757217 533073923 918093616 465390544 998925542 694210633 917987694 33608138 577377636 318244739 543654114 505075478 807569392 911536901 213379090 476428742 138936113 249336239 57210434 578158360 542288401 536558946 977350885 412969130 392769797 133682923 419683861 987493119 681323757 520546481 856303039 967886202 689203021 376860783 183781502 55410018 908987452 936904534 259749110 488463526 732504771 326440611 173786510 297687452 554014196 157477269 610999655 654499905 790490513 190317405 112782806 467480691 107820156 996358274 368636485 930649075 220645026 85330293 110477100 825767247 348161731 425313399 614890665 9898828 502700414 409643450 701992506 845872351 694236047 413338415 5385098 367552763 216744565 149624114 991651050 413192247 215942252 891701789 310420366 260050756 479190564 534606800 666752585 666525767 583468887 252753650 952555750 156718040 983582719 855086018 156367029 649805268 584078261 27008557 600220820 245711526 315225511 990063134 921401407 326355741 716717720 203377670 484733488 531648183 323970236 248624936 681323757 663322883 982248912 59938206 294984204 610063072 524687756 234483510 594657232 380286765 10571430 578584180 693108488 600220820 557045538 523105096 411461329 683353440 326440611 35634966 711621501 265562253 498678305 634609107 883301410 818012022 413764162 132569079 226290424 926298551 389716921 77562567 242508751 81166415 852816996 213379090 1849529 812982582 640019153 89154951 687213754 302274405 107820156 653057090 227527670 733189543 55271786 189285677 925078060 814234080 699460113 652124899 519509431 169372924 226521418 784543578 733258326 763787861 167939730 887566724 740448148 158483920 563956416 141793945 904028434 264156847 948713783 679004072 193673584 838372130 680439837 325694288 823182841 736982534 87606923 48132247 176986775 575932082 758660435 420394446 121461568 245711526 101995837 961524215 291952526 680439837 232870833 643061746 883124357 649421860 647287845 738984442 9686570 263735956 993729565 57698839 190849742 423382810 197177183 635859399 132708274 376899224 210371454 536558946 49808970 765444503 812609000 513574714 881010154 157334018 427591573 191951090 650478751 804210053 85294613 418603889 690635716 282891236 244656207 467480691 443031883 704619854 685629680 291952526 396846225 517698790 173786510 361800661 725628791 370084353 434941381 598516412 942844094 734658014 658565136 765408618 799308680 419378945 100552030 865647751 979264750 174122074 192243675 244244963 163764912 104132483 197730871 459821912 662666818 495261210 226947127 994399456 32892959 938841867 436356228 62304730 619035643 979075090 85772685 224622492 141046927 879854980 758500703 386336927 299851704 708398407 987971909 935563785 962644983 359817537 570574208 638798934 135881823 645726081 563956416 480319995 838403366 197700342 277981675 271545507 964288958 525769343 357655314 634683136 880765678 593248117 84035638 423988644 984382642 194724146 624738554 200488786 7203477 711622133 811003316 450970107 802987185 108098871 988066118 991122761 685998329 526327478 642561124 334714346 550812065 1974501 595945449 930691132 465432120 431244224 923225818 339770353 592855228 782060892 586729040 400375635 203948742 118200676 334247254 393125415 835896179 386668522 99101069 426089883 906412493 784287959 23418996 275525456 613926124 761271450 738769993 385888930 360697393 396846225 744503077 624039253 638251606 338840277 875899015 327428172 813378121 450267893 51593992 85294613 208336950 468933072 618789317 21520904 265227230 90447245 323009767 693108488 728665221 120088775 671012655 942557803 616859046 510853284 104575860 905623941 728142005 908661511 211539823 769648575 183781502 219243177 239851044 395240605 511242984 496445800 898017556 812609000 36469771 442250041 961524215 745825721 669840131 482658484 306959892 164467868 218455304 838540674 856449122 858616539 615903288 571680536 96273404 517473421 826390147 261911099 694288134 772752998 131293000 675395168 298754411 698311949 672193907 825721530 496219658 293666106 255741301 245167695 787785760 926727247 30351439 777828070 520946914 847695905 564253156 841570440 957086375 866819194 599712989 742989014 359652773 704619854 805401221 541933893 804772596 187043789 849868763 267200358 545223103 547763240 535220604 239851044 855400000 278939304 680228220 154470635 22837246 553135375 803715180 197325365 842804647 906691365 417868015 225595088 33119528 522162975 492753997 812735700 126291003 237451076 250414601 449943051 652226584 602529257 332501814 369866400 427193603 422680817 510330601 838406143 20955790 628849748 17647641 625954245 513574714 354599755 146215244 743258777 912586557 625990358 153875560 781987609 90938530 145769017 962645507 846144830 576910474 240203660 969667877 990507207 427420019 468557993 557641316 27564176 575068340 723259457 971516982 199911373 870706542 4353081 627166441 767346766 690081846 497672919 520786714 514985740 246231996 101156301 548740123 295786083 270796526 56734569 489130738 410914713 163051376 361800661 707282470 548433146 215523700 175519425 657362420 7221291 526582844 342274439 736982534 7221291 302973806 768213695 742223817 738996404 117377908 567442879 991228185 877911025 386668522 488769441 261365560 62304730 9083207 437712411 821327954 381470778 270796526 77512148 639632597 238275687 80168442 321223832 514618541 551749464 277800599 603943017 477003046 202930840 90938530 646460514 703351130 59053852 43739419 918258347 735470095 942057798 800717123 576780065 745232220 403328214 268200568 738613051 231282340 64399065 425872107 417542058 598715906 33717760 672224576 114037956 991122761 216671674 91088807 829964647 570904525 625013868 878804420 490006029 579772323 848182671 85505551 612730315 925414817 441164379 577402271 922845593 480680496 548740123 738769993 474375349 373720203 370586573 520546481 304962070 256434426 362763648 130233752 506185191 682810852 680855333 311959125 330581999 55411364 529354668 168630740 915758682 930134374 390301576 657573778 752649806 437712411 846047095 44406641 815757031 460216849 787619449 638555422 119565485 686027125 112435422 216708316 641652815 357728969 600162938 320692286 353002204 617626369 259320003 643437154 445557757 133682923 295925870 761709224 145015410 483502744 962645507 119482989 390584988 23913970 367953979 763969673 339261681 410241368 107032755 376643535 657305305 569115124 519113787 642448466 135496158 536594851 995399950 671012655 428071291 607903236 7825237 251907555 209820542 943114099 872160203 461916368 244850388 469150488 613926124 652124899 513206735 788859798 872010224 23864275 713356772 914762971 532584882 417994703 378862694 498412445 756782347 252753650 239729082 911156828 532397682 827859456 85294613 239851044 470200470 779410543 922845593 597299091 426813070 714954919 281102007 113975767 947133065 501184459 148872843 165329111 212186584 510938204 500069058 564942054 595848759 812735700 225392285 881938727 482658484 767018711 78357075 218124339 172358499 192666025 71709694 870184406 269435006 920327801 192837190 479395809 171208483 379511196 651598949 239811478 630566829 55022264 626510734 215068446 194407888 31146677 260126757 83552542 9083207 420160307 825188590 790855774 19595964 916512858 714122176 198605082 940159380 748555020 480319995 449380185 17834316 193292683 777135847 760498130 92762280 910390300 661142441 974809923 157428808 323973667 650973466 920293966 892447640 112798913 663140441 644655441 306959892 316758170 674933816 566697641 148473955 216273045 786469692 675087462 502959907 318364342 609515650 650371604 536056500 290066634 800558469 539963350 85619126 976477474 769990974 819977585 972603452 272412032 724866791 332404935 806641776 722087694 790117046 433144115 857367584 906572633 357472945 396233741 330879530 878460774 736226703 401697917 588152520 510938204 630445335 969266424 540134373 183963712 529994673 887665329 332050044 578584180 373991621 110762787 226673439 597041049 881835831 757117805 507474445 638251606 898373863 279663853 696416203 268812720 428714412 730344309 590067407 678291966 993729565 353966960 709584816 720021333 388195489 468331058 873954329 345251277 560370514 636674687 369043456 164621197 904159957 707227138 213435668 635246842 956921703 644655441 143591736 389844160 296971426 761709224 161548506 369025046 891044227 33608138 112280473 81863854 357655314 357553023 417994703 727169356 793567237 953791872 253672164 827760201 10883138 29419909 400099846 167794990 368636485 293814950 106820454 342983554 631168658 701613818 385346897 238248119 357553023 205312683 549647088 998447005 454567843 436356228 322221775 167856660 671236453 492713422 293666106 536977963 182053097 666083089 521652866 824220285 281102007 770699812 777828070 9763352 178338226 941946673 613108787 71787310 943126348 382543663 350517000 147490697 329676417 448940594 647049644 592855228 480319995 526582844 800558469 826390147 443044213 821274633 391945035 719088036 438688912 669124399 706772155 797782093 233332213 832687599 139770734 202832456 594105616 336927622 689846841 567129445 516418665 614548007 982530458 804152458 707227138 187042622 786193194 809403255 288349510 635115246 115865535 786769037 881938727 787453728 423961901 689957974 540134373 628920656 426908399 77857419 240836262 229044161 952271860 195279072 964998948 573360727 280819281 638933192 216583641 560147466 240197516 294312274 458794891 894823343 428714412 205945197 23864275 201188076 911156828 812982582 630445335 503216758 444161878 987178383 543840507 251468784 588733811 694288134 248979596 492677033 504031705 883835529 219178563 401279887 332701006 71787310 977445562 295107210 968452703 590091443 184235590 740191941 790404380 640521890 683664676 37805790 271569486 35017556 994939812 84352528 176069986 250505381 625990358 788890047 364586909 575068340 264972600 272801478 335132197 51214252 633416532 566853751 643218581 782960007 826593764 155802718 727954761 921769824 23913970 719673639 466126124 962223044 237102213 711166608 135597483 201591689 251468784 723434610 840535103 925078060 216273045 8856821 686027125 663322883 128943964 162320815 908986967 752519899 943366285 744567092 472711305 546606411 783564947 290136374 246546922 27008557 548221608 289625377 439414044 608973577 752986855 266272826 255052856 378017842 295057902 308452836 680228220 258044428 512698301 763387595 429438899 979295191 135496158 225437652 671012655 55878403 699591651 909228475 700089141 87338502 603692840 486813735 358551013 652124899 304014711 224622492 640284035 739983909 259848496 489603668 699872724 598912002 633416532 125994586 773171286 278528196 93137007 300466853 831148533 378421533 370586573 371931041 123751823 819131667 178338226 376405395 759279615 37435186 933767247 633416532 328217752 470155825 155533258 559813875 522104887 970069180 476891549 607190513 306959892 967058640 30142268 627977236 689101452 553300223 360980625 81401211 239210373 233168958 565056543 616415173 459532919 946988071 154888998 595572629 140607648 223942560 690645347 357881948 444402973 775551192 996455605 329265704 917994196 415678099 538636029 159917509 895864350 540888359 617576471 826719690 316117612 718934949 818131605 132708274 635819214 64747596 508440691 196582719 613765439 905623941 591112742 309199529 933781242 716717720 173145620 404900912 276546782 534518575 847695905 426089883 835454267 642561124 901307906 881073120 817283361 698265453 740718996 908661511 442962978 697870062 724371560 380211567 945193914 167525206 176703713 810780546 791178147 421294986 27564176 943366285 904961277 829027881 680938701 930606103 509969649 238187118 44514660 558471522 644076688 984177899 577525572 778937914 112435422 484185343 426357987 339106290 198961108 910290047 818524185 445058957 657750288 255052856 626709003 410287113 216583641 467423925 399021441 941640695 483492691 636674687 250653360 511586087 952609698 423646799 215942252 249611755 679273097 384372482 16887740 300852389 393702122 171346666 578958391 685100407 599413440 702938584 635717032 219027286 635418526 142572005 813414888 491458438 772430279 655939631 868925862 679004072 917987694 362954591 386336927 440937448 594657232 644680721 996415305 737165173 588592243 333281305 306959892 504031705 572223703 562164691 923950163 653025446 265964992 616734528 661142441 372801202 794674617 906643987 408722873 858841379 224049912 56407269 277497567 523306362 428689888 953887421 356248329 818012022 426908399 484032682 622356349 476731953 653894491 661903475 409973224 96673896 311287060 620445892 880561179 594105616 71896465 762702304 144595910 63336398 606731442 114490376 217545462 296378401 242560852 999510217 17737192 377816991 913985244 580039514 590616349 761978826 949680991 186215451 233313131 938543122 138653471 698537005 982039530 810730357 774444512 354641735 550438304 29036266 819131667 640284035 4525458 735643098 256504077 649260409 184235590 779412471 938130917 799308680 212758138 903001492 716625245 619035643 991248064 528476639 154470635 157441769 542507362 46974505 195279072 382387647 359107939 144093335 180461516 252115701 825767247 772621903 849111782 135867710 359817537 254730737 132708274 351439552 568021770 715465382 405526415 356019667 371966706 261881274 630369541 594002418 999510217 470431583 507071245 903078684 678461570 92762280 752649806 461358659 87554919 873201881 3116996 659245693 250150288 248453729 699817175 577525572 912586557 159365639 414929390 188597773 888977087 627568743 71896465 761176899 390228435 372596949 693950087 223942560 565233456 887961342 990719695 435455359 169507050 190297459 513275688 311287060 718418654 810174413 192431461 441548278 289638495 624766555 509093918 909005038 52250386 305092307 861260738 134433213 135597483 940752030 60807748 571680536 520786714 714954919 681323757 532614649 476891549 466634133 343827028 441713920 761062502 275826341 892447640 107813311 212758138 581256406 241023138 484056718 340348364 549481338 328142874 242508751 749952793 842804647 275174780 828969147 841435251 171104644 161168364 445674227 843034984 782960007 787619449 180648180 95503451 699476986 164269532 972471770 396094557 788859798 517930826 197628046 232260080 731850604 642561124 924266382 678461570 101024530 481029245 489252977 865369249 443379097 87060770 70423 803796397 66100936 400907941 127582838 665505639 58299343 176703713 144521246 904731519 614890665 316244820 683262174 203948742 808966775 61332591 233251378 486348885 129372826 31105427 517533699 724916300 906014518 640521890 256575995 891044227 473933050 181061043 558273017 259320003 712038020 728904305 704619854 924266382 28237928 72816262 35114805 850512708 328329111 424548681 198605082 541228954 796274678 53383989 878394639 310920947 895192336 696416203 567888993 196980000 975006428 278897687 163051376 900042969 298300071 914292700 77857419 486042949 759056116 439540949 220211320 232042494 444402973 29642358 597339149 473574639 618391659 289625377 731640472 426069641 796425218 309210732 559823835 676494709 232870833 438717961 311959125 998925542 582824875 913881336 51132506 84035638 228434038 971608771 687915958 643758304 994113516 161810784 948929554 782350213 217188292 951140674 972118206 931649320 376860783 835817953 383008147 909964203 635115246 821274633 444884023 156427640 108481641 855515073 20460124 711938915 970416993 9789829 40879806 978955950 55050615 124236362 483502744 669036250 893524401 448290624 610063072 481029245 980771035 750159069 633101992 667055916 205945197 16498498 985318505 14594262 261914539 434154654 56734569 321644210 775551192 786480040 752128946 146837720 599413440 261911099 999646466 727421839 642894296 898373863 810262034 315242797 57698839 995399950 300705774 659769915 495349404 705605781 101600824 796204767 809629583 176214541 618344226 216453509 796148540 909328510 538701178 677833662 63336398 541228954 936316033 918428238 401700185 390584988 716070994 645726081 376356240 728834069 701119742 641770480 344148846 715111646 190531398 825563694 849111782 322486380 826390147 232260080 84352528 581256406 868176165 741622790 926383726 165087591 245449194 481982083 9358321 25287674 819177331 744416892 169048486 812419126 178017282 296244299 239210373 158496583 321691613 423750519 359875347 280084908 984382642 498561388 766123053 219639793 581618221 739983909 276724991 806827582 573931392 427116544 430544846 376971937 653057090 480680496 930134374 540571239 443756384 925751148 142309877 550813348 203377670 346600682 453051126 7135427 834374904 678284060 791574966 683049695 428846680 360327736 344915872 198791005 77857419 695611692 671753094 920365121 487658713 295107210 421130402 989328772 987511774 415399005 867108593 277565457 953077348 436629293 146334028 26158477 403040141 534518575 681987281 967886202 969266424 875316502 286185675 426813070 963655621 622717017 288349510 288676380 714122176 58299343 291758658 881938727 420147398 637329054 49106893 446104712 741111552 233251378 512199828 856698185 702256154 999646466 431706440 419378945 5226926 767018711 61466476 90244340 793658616 390852403 832687599 423646799 452522913 296853909 798409191 459107524 682561229 208311955 261546154 86685872 561249205 144521246 850512708 704364808 940132747 859716163 468933072 731850604 804594890 663846540 283599405 29419909 486042949 640284035 230126727 427218881 743496710 100552030 936095444 399562598 442593493 402171857 199433873 14055174 444579502 347742356 414221178 460216849 560370514 362338554 966873422 584678561 984177899 441578897 832687599 989513413 190560426 421556683 878394639 245828544 252383767 261365913 433144115 594727596 51691462 757266445 443756384 547292880 764443046 806761895 244022656 560083947 958326576 427420019 194716952 430319529 225392285 219243177 283564720 424548681 673212605 357881948 850353094 662207358 689846841 907656645 27564176 424093157 788674724 409721637 550199215 122957139 652226584 309210732 560370514 880006485 385786013 772621903 174120506 73355194 825718553 117916570 266408022 719673639 935844360 672219217 60084375 887936210 777948978 568106942 429438899 580703002 714954919 309788087 941001692 287507022 413338415 29863733 427420019 180511810 964714139 56103261 763495111 776456668 505584305 867108593 984028906 188597773 62769875 484056718 381839501 515199300 997195252 137580107 302541073 914412174 536466451 299273988 161190943 242560852 161168364 856600804 255995014 58485452 398910985 480661007 870706542 861849773 401697917 744567092 353255844 893556423 263405878 93137007 131293000 684257398 607903236 382835379 446469999 591112742 57870077 156968424 243817675 571399623 335297970 559823835 490031170 530607562 338806367 860227244 210552683 35017556 433158646 78894525 246538611 672351048 614446526 68153518 263405878 29329225 651131997 498471688 594230441 690406163 818530169 305282600 71870116 137580107 220213682 652074960 254219287 684581945 648412457 14640871 188412017 585899961 725628791 475702831 159082161 954502138 96273404 637039423 181340391 660738714 762702304 666084378 627166441 279627355 156718040 956831682 370084353 922308369 247187670 38852986 158726966 427116544 156796129 760128862 948929554 821870786 995807019 680938701 326435001 89154951 735470095 239888423 509638976 772844319 40761625 30301133 333589597 911156828 298754411 265227230 680855333 363167554 424846915 694314660 730832538 329142385 184049420 60601077 788890047 473933050 470332840 719863057 697668680 85593294 452117571 150801484 168630740 145030953 414221178 241704301 838540674 137563558 338117032 975350874 997226910 272801478 636674687 947133065 493523186 208182956 497283938 301832448 999948052 958396706 512671011 363078902 55271786 510985571 759056116 428618086 668797597 195126498 347632676 374785248 614421240 758919685 763615961 507921281 364302306 614890665 943400668 246726784 29419909 260132578 908987452 431853315 172328397 439414044 857545955 599195882 329676417 599477657 114037956 92703987 821274633 567961640 584678561 815128114 931401172 644680721 590067407 929102257 181340391 728371212 767891036 405529721 441106841 603084254 765444503 126151481 681323757 595697081 808242329 957115124 417030305 441578897 677408635 960502060 324811550 856303039 986584560 779131891 578584180 318413499 360980625 626510734 621380200 866677112 671157698 372801202 701119742 882880092 444341395 611035633 786480040 590388898 692744409 882456106 92703987 994128464 495349404 847406541 908352284 635283672 785028910 596213445 196980000 305469242 947696425 495130488 982530458 183963712 487394853 281683102 477003046 617576471 43789182 56734569 77857419 249336239 719088036 107808978 168630740 774526406 550182649 12100035 402946232 627813749 159167956 427020948 619093824 28872460 47706221 993091261 814234080 59477311 100422564 847563421 123918127 151653995 933781242 49453801 657573778 956446474 458287339 919645859 436356228 355362277 482245586 599477657 941946673 201188076 938327567 517078323 502607863 907938238 918894283 571912526 120478095 355930996 257681001 670157273 401842604 209510394 123629213 297091631 854211870 558131956 407773941 238243352 612989706 447020979 524526177 12501596 11526537 378123863 474098471 43269492 904292494 413192247 685998329 766702899 204988477 223921663 421661591 865660393 594259329 755171863 974607726 126942402 384379890 808817137 441276023 968556641 777293937 284121265 575351641 95503451 85410017 626092991 7733931 294071211 967757318 198241370 710358949 741376229 393702122 261365913 30351439 390519786 206551521 643061746 600731848 316244820 551944045 614479002 868561209 223905430 404285864 300852389 11677405 510938204 555546429 692644806 135867710 806386122 822015890 860227244 231672601 357472945 643758304 616875078 189641658 129244340 656555262 920293966 917122297 972433370 634685337 286969296 261322372 57859273 731246096 339657591 558471522 832315743 89635272 227574043 295925870 263373410 812157405 301059508 781987609 817287828 326992960 873608238 720021333 193679555 215117545 76612005 496445800 584078261 806386122 172232166 595004375 774374924 721788932 66100936 169252431 666092329 701992506 198325455 154142244 925751148 763495111 988813198 661154467 114037956 393493552 663707664 949038386 731850604 565233456 228897489 182053097 2267895 396846225 730490543 372801202 55456604 75017068 36001480 163051376 114037956 376356240 161885158 425482678 599975425 976918313 879854980 528065873 127406784 21583078 456313393 303753583 459153226 751979361 645417617 909454987 208311955 74105318 756978770 447820310 184049420 153238467 522997998 485644097 66901023 407877244 652226584 463217611 358007727 996518547 756978770 676214328 526829132 615677308 298386406 89154951 561550658 175519425 835896179 653449055 985702981 45720878 690406163 311120460 369866400 536947790 392463439 208336950 694193964 829027881 881073120 832908727 862307089 758446505 936904534 637039423 917615175 325254218 627451717 191844071 44539235 373197769 962644983 997421277 776847680 846250560 446329057 440683510 331900744 419681408 345251277 691672490 814854596 681323757 309292580 190617654 974196966 81166415 831877484 282011979 464937674 361800661 716717720 906412493 242088182 909964203 384084885 726659156 9579364 499629455 785028910 370976321 721248367 23816368 434211465 319576043 613108787 866299792 528075150 724866791 509969649 600336212 595697081 339261681 112280473 289926970 39684598 279443460 332701006 561871206 523762289 599195882 206915668 343554958 825188590 265227120 950925875 908213969 574268755 250653360 248453729 839830132 445820895 269005893 910390300 124595557 260809328 141046927 251275201 382400728 393702122 462194028 756883403 850504155 738669950 808000077 442250041 245711526 25675319 566900631 166833618 402513855 989694200 380743723 279627355 746351207 417868015 15204737 665661938 55520299 444341395 77839985 50143954 210010009 737594595 832468899 136280040 94778825 62268228 638933192 535945852 13306544 915801617 691598812 949430015 725790888 930291598 367348812 193679555 230623541 778963886 297533239 401527487 684123398 149526166 915758682 526646811 801781610 14183373 663322883 138936113 528699284 47750363 557229086 434745449 338572695 120478095 939464133 865647751 622141992 828040799 497227763 299408629 778894873 493981688 162414246 873173721 952330793 795752098 488769441 574974403 847558320 413123472 666944928 15944964 711932887 255746101 533092466 120126730 598801584 396846225 315757140 86870980 343833471 458102694 861697640 574974403 332073190 238792356 77562567 319576043 491125478 730832538 672224576 730264987 53139843 429558578 392539225 466146046 845872351 534606800 999948052 126942402 32300385 578159710 297984721 925216722 903716250 773652562 927504629 226673439 13306544 214081108 7825237 555859738 886312393 539895653 532409687 281102007 400560809 233772566 120478095 979295191 179809518 745351886 984382642 730046553 376860783 17647641 513574714 121868805 597619873 711212792 96273404 719088036 717876219 369856924 349491094 671753094 647287845 171385328 903296622 559826379 508188423 537394553 832671251 332701006 986790528 693735982 698634449 195238415 163089910 470431583 715642129 367939638 465432120 475702831 124595557 624039253 929547659 402697337 808966775 4710819 411553572 222116249 214081108 29036266 157428808 61466476 729323067 812573937 94778825 642448466 362763648 612730315 273576373 469478780 113702197 449301490 878460774 828040799 615677308 924298408 228263864 762392720 956403889 848182671 572100510 85410017 33739873 851783830 276151404 8856821 838943535 396166564 443379097 176144086 781452275 937354909 452095870 888977087 278144763 501018051 705363518 189588225 174250648 44400258 29642358 642448466 446286531 46974505 814161904 132271955 478239526 105244512 315852411 159905318 652124899 657305305 756727543 728904305 967385727 246557862 856205911 544110822 95503451 194716952 988722625 133847439 344949528 703204399 132589201 781452275 256566808 870554145 897695623 420113847 436966726 899734853 4710819 236321237 308949550 364586909 219243177 619188238 421661591 298363841 143723968 441956221 248005248 787467774 99620295 34708050 807905098 192666025 849229551 114037956 339060930 816749833 78621776 359817537 817196111 670095672 60511848 183601209 961129959 559236516 130232149 42819703 386648749 474679443 481673072 187042622 292078138 110477100 45742076 191768190 637583085 164184179 651345135 427322025 332577239 831000470 529204436 238275687 674895693 124324948 566050763 781470828 128075156 489034016 9358321 143410362 192089296 960502060 258007443 760057778 156630558 990063134 853725888 998119538 533730104 636674687 194166465 271545507 319576043 669036250 728084781 523139540 368636485 728371212 326992960 81095663 839523551 230423084 569479799 15204737 930219713 931913674 661584625 443984746 504031705 134130650 139721772 413764162 324811550 446081101 379511196 817509779 590146562 572994337 731796874 531648183 596056881 844018425 516980462 14055174 160735073 162320815 233251378 803684878 227687232 27019841 151652734 203834002 158496583 895864350 746351207 224698552 467158904 249336239 608703491 871242616 923950163 353255844 200306575 446132814 561550658 888360095 953791872 70792490 361703492 544110822 849466253 628947259 311287060 380211567 249213512 101581750 843709330 346153013 805836018 338840277 7766128 423961901 296907623 214081108 641652815 66100936 857708497 812157405 750072751 181262713 155802718 445058957 541060785 835217804 387146197 447820310 349648521 480319995 411466487 261622006 93857831 875732615 578158360 781987609 215503619 199911373 723434610 206558172 166873308 219802791 456068336 767229675 463373988 385300022 662207358 75960094 707870680 106732221 823515747 652384198 997508282 22837246 123751823 683941034 133199691 467447872 942844094 821327954 883301410 480680496 597983691 455629229 548433146 777446840 694765181 512199828 226290424 518583385 118945983 194922297 424093157 678461570 125694366 908352284 377862640 196582719 984382642 28872460 354003269 153683887 199286806 216663601 186101025 102884708 315750738 930025010 385888930 37375125 995734937 189608705 320928601 634685337 825767247 511586087 996415305 609237951 866677112 651131997 753734179 761709224 323594425 611310352 683262174 575691133 352779367 699642713 246546922 824892303 925216722 929650001 963226961 943256684 201591689 913795464 33034747 333187018 586230535 222006918 62769875 527299770 680938701 878460774 402946232 624766555 316478034 573454213 604822790 600401017 707227138 443756384 353149270 305084410 813414888 843321342 143723968 880265015 571399623 349491094 391729428 385786013 387448768 529994673 541228954 950925875 663785507 626970185 531121674 725628791 631145734 580885708 858833076 276960060 326973370 33717760 875067271 64707539 923129979 502700414 419683861 559631090 935324021 914762971 218268412 202620857 541228954 395054257 911614409 814085226 436962649 805600576 598768149 893165284 244848560 344200460 925751148 58346344 411244769 302396735 280124843 836210608 380211376 31115544 229061145 109254508 429558578 872103597 466146046 371931041 983930175 437130414 636502705 647049644 12100035 821190574 39012073 300705774 58593532 891357783 155501701 593248117 339064079 310813775 189287450 481055729 574974403 130767407 343833471 378017842 653594916 474872546 129485936 385818791 453195888 763969673 920004721 682079052 56569092 768138772 693989040 872010932 667055916 466481471 29036266 989848830 11677405 767173538 250401556 994113516 325114746 812419126 183781502 248453729 426908399 506062832 872969966 267171391 338572695 703234343 464937674 517533699 171735454 738947833 309024963 866275712 930291598 668835332 541060785 943114099 911126285 461916368 309788087 74686834 327384116 143005619 217034447 539080862 633926277 372192841 553451374 44514660 294984204 359843759 148473955 532050035 566050763 749434505 173287646 484185343 80168442 832687599 286185675 241023138 637583085 861849773 713660675 7963024 261622006 635418526 55456604 255052856 990839687 470505843 622400429 461916368 230982949 444579502 225392285 379193252 215916910 297533239 188597773 246557862 788239486 804594890 570904525 635717032 62555839 207549397 506185191 391340789 501614322 720881513 575907461 247099447 59859789 47081900 9898828 745351886 505312617 75017068 745825721 375722358 883594877 311287060 321059026 433906697 381470778 464675217 355515721 166873308 642448466 82558513 617066065 426813070 567888993 709304768 638664525 250401556 314721346 842233411 484733488 509862145 914460279 776456668 824469097 613863099 577402271 230982949 708260818 770699812 772954160 425176277 517868766 33525687 567539530 626970185 926614363 855675634 101410003 245828544 444341395 685045316 752718488 156630558 35114805 610169722 546584393 1478365 538789025 244022656 537277074 353680420 522817710 172358499 569943814 969534869 454567843 603229253 232434763 60084375 432780069 524110453 816753453 216583641 894560405 526646811 742223817 332909590 199286806 890668835 864666896 565361226 380645221 377904018 413228688 68153518 643177231 250150288 637555883 332992473 290066634 470547145 932687889 256920977 167525206 420113847 577820900 694236116 267759731 678401292 615495811 574803352 784287959 990719695 788560689 963954978 610169722 362338554 142759878 353685083 251418463 930291598 170634303 784207499 872344572 471712214 732504771 870706542 295238338 668797597 469150488 723636806 432659386 479190564 807911174 651661531 69124371 649185253 738996404 545135013 822356288 275826341 30301133 502607863 982530458 444579502 608893757 922986354 305469242 309762615 542507362 445880547 964998948 985805134 437203448 110477100 551307280 594230441 187913741 36498161 993729565 421120875 963399229 19221093 441484207 190126168 544110822 481055729 208290005 567638487 958326576 982592507 954275797 318095306 86001070 715563614 453784055 506447694 790584023 591202266 811003316 668768280 876469630 209510394 806386122 34228815 431343619 694517015 635283672 705952653 5385098 909328510 118806460 278897687 569177102 882456106 546862328 910095312 14848528 504031705 451064437 64707539 350517000 891149152 459821912 658565136 740424690 373991621 43739419 847563421 197628046 867123733 479955528 504140152 297950311 553292341 442593493 762013651 189220848 283921209 299933132 92762280 297984721 964998948 708505943 723089378 735055857 905962223 594177251 831148533 588204447 100369079 942701806 435455359 532259019 539721253 964248231 65499478 428846680 892294144 191393088 320431919 398910985 149412973 93562877 231133498 374325071 704746261 702938584 177813141 405211363 298386406 728084781 228000369 778894873 13306544 726101523 105852443 373197769 8856821 561871206 703073204 683664676 768024129 427116544 215117545 315852411 709418144 641770480 672193907 571470383 617034160 702968824 520786714 260132578 542507362 23913970 92762280 916983262 377757217 384171104 286185675 507509574 524273512 538701178 642893639 744790892 819592797 678758803 959815330 401590936 863346610 155097744 386915292 370586573 814854596 892049425 525638956 872969966 483592324 628849748 887269762 467480691 172328397 370410811 990507207 186840994 4475760 9789829 379736617 659921020 240659669 586793567 596213445 882880092 57431564 215523700 428879748 627707810 531648183 894187951 532584882 774510532 356067238 558891868 892121734 967477133 592538952 443031883 843321342 775477924 377780361 562737885 934461948 459226503 591813282 361034134 543280238 78988322 8613421 565072428 662666818 101024530 786193194 584078261 14848528 351906572 241023138 791574966 388572059 733258326 381089290 830223686 417030305 640094532 441484207 760723429 332701006 41169649 118806460 470200470 572153244 227119210 244952813 827375668 97203248 990412668 43658180 882456106 205353146 467480691 625269263 234902148 237102213 92762280 881430555 819585740 282843467 705363518 565718020 617296169 572210787 360083893 360327736 851446668 245828544 438688912 164874754 334586837 863692312 216663601 906643987 904028434 882871743 489272749 305652535 286969296 565539542 421661591 993729565 635115246 376899224 945516549 265603418 717876219 649302289 749952793 114504608 606231690 982592507 179174542 479556373 174554145 876136418 224698552 985805134 363422913 567442879 365572937 757627768 222393322 975350874 577920361 618254763 792234558 193091527 546422509 519652098 223747962 760450565 833129815 894536045 251275201 649980444 709584816 633926277 806827582 564253156 283564720 906084346 534791603 783919366 594002418 422995827 638131947 357472945 270796526 473598912 318413499 189641658 422834468 851545043 733392225 485606266 983930175 581379821 647910718 825188590 924120547 976163852 33223562 445968885 637039423 810262034 757117805 700757275 480387440 128139542 300705774 605045503 447633093 746633262 873049082 856698185 504140152 917122297 703204399 455219701 980747824 762740250 925216722 716717720 868561209 812735700 174120506 463968340 842804647 174120506 880039838 531648183 733884644 646562408 194716952 331601423 495747597 519011939 858172014 515941727 653594916 716084460 117686882 528065873 110053791 264029053 252753650 847563421 472676815 831087620 320928601 158496583 977354192 791760627 942701806 797571073 603340710 871852280 982324277 515257919 222680637 830829720 800717123 390228435 209279596 626258394 303992096 831877484 978582159 181340391 336823941 900042969 265794323 710840227 174120506 985235970 925216722 246471661 874765059 831324232 577611981 498412445 978532258 492414722 479395011 329265704 237129719 662588599 167939730 194922297 106559529 559823835 378421533 960075280 498561388 725790888 417030305 844565139 256541533 962097171 584078261 78834134 649421860 168024415 193292683 466634133 612498838 808987555 651644790 659769915 28872460 960347173 275549790 484185343 573454213 892049425 268200568 941640695 194724146 892358571 646460514 9358321 925959068 699872724 657305305 743749041 742691498 414936307 120825765 624766555 85294613 32086948 184049420 66901023 178881338 7825237 295786083 282891236 716084460 161548506 636517289 532584882 146794653 352726596 45004726 353685083 666073577 943526257 668437990 186215451 777496901 404433384 216744565 75229102 121914939 396094557 779410543 774510532 917122297 817509779 881298649 341867020 219243177 758660435 505495188 429438899 952271860 294984204 503472746 87060770 856772079 357472945 133578092 402946232 447980318 309199529 275228450 297091631 305282600 358551013 273253453 219526527 635115246 287513610 239300098 832315743 959682189 705759680 224424597 940132747 752718488 738984442 920065193 984105793 159082161 816749833 682810852 186101025 992761434 728834069 694210633 201591689 522104887 453067953 37361502 787369234 15767643 405526415 353685083 21520904 818131605 847406541 819177331 990412668 560775764 911682579 517821133 370410811 569820917 907679875 901781673 87625640 620797239 574974403 492001619 138932130 784470358 354912267 842024288 83310806 202038019 480302776 600936263 862307089 251589259 459549785 946629040 699294880 310813775 92941166 261622006 208182956 273957410 751732179 986790528 741650673 205353146 423382810 132708274 802743247 403328214 82820786 832671251 775775365 190297459 878461654 101156301 552949859 707324332 887566724 630092600 707282470 370899819 835217804 572210787 280124843 741376229 771484950 577418797 987493119 885089884 724866791 691469695 327994956 280124843 120126730 51739918 674961326 925920080 708776335 286050564 261551580 431706440 904068334 208311955 746395196 454125325 385300022 782008059 23864275 208052045 999348536 161885158 210682032 905962223 45763732 21511798 868572831 501614322 956692225 260809328 279280125 70792490 652912997 633750615 246231996 730344309 117250953 770699812 911126285 251283209 660988632 210010009 759763473 800561183 607708723 92579297 624039253 239186411 138653471 193930014 150449374 560959656 955405927 219243177 429181026 776847680 282843467 539526798 407773941 796683456 53383989 301724228 902926944 448098326 953077348 327994956 117916570 754782410 941861375 652384198 5729841 920065193 44514660 259125823 112578508 422657201 763495111 141480927 162361916 626709003 612185008 678461570 739796743 383512998 279844643 219243177 546862328 329265704 402513855 438630753 519373057 186988284 128139542 551307280 35634966 269312604 167525206 92762280 369262782 381089290 328845920 707841194 740942695 154142244 344673051 934461948 926614363 111341182 984338318 476895683 130232149 280124843 812740198 687669529 577611981 663140441 999653626 756727543 893024942 231133498 970707395 633743883 991481489 311959125 819585740 207955886 330581999 920638017 401279887 27008557 571399623 842669363 753146142 231472878 120478095 356019667 821190574 194922297 885949574 202832456 904051833 635859399 740873947 436629293 188597773 600936263 467194946 308306592 841449414 458102694 311374736 918258347 526630418 411553572 970220100 832345379 840345665 588348200 37028736 668622929 377757217 880561179 630369541 120315558 603943017 649260409 962075597 156718040 523323726 20460124 268611338 959426924 890998006 411777768 421982303 417030305 135904170 531400665 350297176 625990358 163018950 320928601 162359207 925920080 164621197 382835379 394993865 324215460 205312683 522817710 550355914 616415173 121914939 669036250 920153792 426089883 724838718 89965595 609238007 170546132 959682189 254730737 322221775 725628791 61203290 786685122 901072025 82389432 227218401 595572629 740908785 641176604 350517000 89177410 763810664 727169356 411461329 284121265 763495111 539172105 526917770 619035643 899600039 515941727 52012162 707324332 392885733 439414044 165255667 739053117 257836777 830829720 351439552 310517189 445261790 291952526 532038123 110407783 19212436 7799608 890583877 366138558 832315743 114037956 469536891 188982938 878267752 74158082 753562574 887936210 773813511 427420019 44539235 529354668 442962978 838856955 107813311 812101129 85330293 763085108 853725888 87368065 593562347 55520299 705409578 741805743 23913970 920642846 625954245 284121265 939020973 934461948 682561229 315366278 798386400 467194946 371966706 226290424 64399065 527354323 142572005 272502984 11074899 615192284 822571602 359309478 460216849 178304644 507071245 838722526 396094557 137208685 206165929 405529721 321117599 927719562 433158646 807864156 626671882 216708316 401456345 904417649 149412973 942271992 333317752 70711782 219240554 463074263 238981092 359802288 816753453 913795464 218588507 628947259 413192247 256434426 908986967 812551497 826593764 933767247 609514592 597339149 652384198 675395168 809459138 3588375 787238639 986584560 677899284 503216758 770885599 540235952 723089378 901307906 849233704 182796995 787467774 611751787 239642863 644680721 621822034 332992473 145769017 425482678 865660393 787238639 797501542 197266655 137809602 904450747 894187951 333541948 857902834 958326576 157477269 752341854 231584079 424858956 161548506 101024530 14640871 853867634 746395196 481453149 373991621 930606103 403264959 763810664 498285405 731531344 67977428 56636843 380286765 440032801 507439477 15813216 877911025 238534474 440463965 272502984 793420897 882456106 121461568 890668835 323970236 183083443 806827582 231472878 542592405 420576735 552997171 954275797 560513268 466086329 788859798 714954919 95450589 7220472 299273988 808000077 520546481 908502081 583468887 772566237 340777409 868610137 453067953 165087591 846482054 687213754 408722873 739983909 93349154 464771447 91039408 848182671 264724754 428874628 905662794 614741012 428689888 9083207 810262034 48563029 923950163 23626317 952610192 556603686 755706187 551421629 727954761 193679555 943114099 527319796 26158477 646913780 541083595 400099846 930649075 898373863 326973370 641788754 951419697 681164093 787857820 746707200 230589333 843321342 474434198 112578508 939357958 949038386 672193907 163409082 787467774 325252426 650371604 792657048 288266060 245449194 775049527 866728678 979075090 448940594 590091443 434745449 938349663 425776323 404285864 447990825 227698284 722832406 785462257 72071157 711649395 873033123 194407888 302484474 375662115 670157273 678926130 543280238 331900744 770699812 927855694 387828469 393116598 875316502 1849529 963535716 654499905 226290424 867123733 663846540 881938727 613765439 755550290 932687889 171385328 702256154 896719815 943408355 514985740 253717222 914018852 459892061 721574742 225193305 626092991 215502867 239300098 459966514 769951693 459855235 489130738 430025923 384983061 922845593 809838531 938442301 302973806 354912267 112396307 101156301 787595718 599311467 267162584 155364325 739529056 181340391 526917770 293048515 450023501 819030496 102348063 369741281 731640472 227205383 613926124 325694854 807569392 676317740 580703002 1478365 960075280 944140720 666716017 322250128 959682189 201188076 888950181 392353254 990412668 411244769 702968824 904475980 406746718 524110453 168779710 162765371 287507022 483761023 260809328 200349926 930025010 167932819 66575736 340569510 837373149 374325071 512258861 677049963 662666818 829692135 121914939 148210270 194818695 261551580 544243634 104179654 819285994 711212792 344200460 693393574 809945222 347731733 653025446 614420317 56103261 517533699 910041119 441548278 96673896 471833346 509969649 300205360 48671523 308452836 875840460 358586540 553160761 790404380 252232429 297984721 225193305 756654121 517821133 922986354 812609000 976918313 611002601 743657917 995399950 32444696 197730871 997783713 161168364 495512303 264029053 812962531 455132454 738003643 184894800 670008603 812740198 948389751 798532102 887269762 505312617 908213969 823752062 765444503 394069130 33223562 774715366 659245693 189641658 940132747 119199751 578345192 82520007 516150775 15813216 251587819 196582719 485434770 443984746 752718488 808000077 608025670 31642902 702938584 257729949 795336717 936104862 229059270 265806676 724838718 749952793 650256466 205718954 460630937 239186411 215642803 73402876 396166564 172158761 874754055 4475760 915617662 659521545 759856178 335132197 333502397 428714412 219178563 993197079 424548681 245828544 317435090 810174413 708776335 434000813 771009579 559813875 289625377 760479837 105767345 902064034 567638487 329373932 551944045 922564893 358007727 396846225 464675217 347823879 358692335 51668993 899164744 382543663 182805540 904731519 960419646 768393379 96673896 851446668 208890459 761978826 661142441 719416172 951805853 216009673 950030898 616734528 162359207 987971909 713660675 418470891 263405878 745232220 132271955 853867634 212442487 192243675 125694366 923422414 943256684 469796838 979075090 798176202 246557862 257729949 604597847 397263883 51739918 705409578 326095719 105396994 731850604 916080289 11074899 838403366 148790688 531077045 794674617 989893954 570904525 52012162 667997366 272577712 310920947 211539823 732621225 764991448 724371560 634683136 257997193 219027286 614741012 60231461 812676261 480319995 203942121 615192284 583928321 787747737 198854353 16079129 358692335 526917770 943114099 358429939 172771364 525983320 420113847 684426675 307767072 8514809 850504155 195279072 197524428 705568615 738003643 257729949 302951021 273576373 458873868 617626369 889307767 917987694 369043456 74158082 583102009 517629412 739203331 322377909 741111552 720307744 407046193 132808689 964329661 918258347 885729772 502879014 384171104 934174158 135063866 250568218 506062832 996601424 49453801 362252306 702934258 367348812 434941381 685885593 696309275 754782410 560147466 299851704 633223684 106129738 215844451 545394304 616836557 33525687 834374904 434173970 741622790 861260738 648412457 435455359 174120506 900666747 719389926 920004721 831877484 652912997 988648474 655214674 186664369 584392244 49621688 626671882 666944928 760057778 814228043 785028910 175731651 732478364 516441293 605779568 154888998 938841867 582423808 533073923 745152649 197177183 51132506 98732577 831605243 998447005 936299712 35114805 487256848 540034165 719088036 804612667 813414888 687796451 237380565 638281987 362252306 784591585 801888810 592855228 480680496 768149844 810228122 575932082 684915037 804772596 905623941 690081846 899734853 58809756 166833618 153063088 738819955 106121392 872764546 468557993 216583641 428071291 170372253 5226926 193029455 892049425 332389556 766554473 625990358 815437524 151854626 769429163 641770480 958868541 884156719 783381233 498561388 359309478 202620857 744725796 724831227 381374810 37361502 614446526 976918313 15579069 772844319 788890047 447820310 872871517 926759164 405861846 532809158 279627355 101581750 993197079 69124371 356248329 258044428 635819214 736226703 942923177 367158564 740310257 511486436 549240123 112396307 931649320 260784630 417878317 787125867 166833618 918939619 142309877 591508970 559631090 343838056 399514194 88750705 634685337 942701806 921098882 921783703 623090135 30001504 384379890 43739419 408287424 988068787 222393322 226947127 29601372 832315743 216583641 219526527 82389432 951805853 1831389 302274405 470332840 739203331 377041622 52250386 47750363 958396706 694314660 536909087 212977880 564942054 268611338 948389751 267784122 908986967 306167935 45763732 228263864 932687889 69479909 724916300 351162803 501602670 855193777 265174728 56371774 767505642 844433235 878562164 892557246 791178147 501184459 717402262 563952147 170330891 455566195 699642713 380825508 838782843 234902148 532313556 985702981 268929374 132808689 751977930 574974403 8514809 567193229 621126494 526646811 128943964 912586557 214190727 902064034 230589333 832908727 532862262 64707539 79465500 91723294 812204252 554347301 318095306 740448148 484032682 138936113 901307906 184235590 634124971 702285871 999941065 616875078 452850158 694765181 657172442 612989706 109254508 453067953 953887421 953843508 392769797 332909590 277750457 743508816 564253156 112782806 409721637 772954160 254471401 119199751 621126494 752986855 780475587 989328772 687672346 926614363 510165312 612674050 502779916 183548314 739305912 967760227 311374736 767018711 671203646 7285676 323009767 546606411 713660675 715563614 526236648 791536667 197338244 643061746 839523551 250568218 936706046 288338862 634605274 218639536 950020455 209752506 468128566 109501962 172328397 605045503 363181748 129343380 62192791 401590936 171104644 815128114 444989359 576325528 702256154 39012073 828760079 459855235 373197769 219243177 850512708 941946673 841089783 757336861 48949897 491943049 809524612 324215460 361703492 591202266 669118789 517698790 353032689 968556641 668622929 947283533 20726940 798532102 598516412 682384318 910390300 787238639 306959892 990063134 76612005 100289791 867108593 984382642 153683887 862533520 445571389 523086816 892294144 294920345 242560852 538380286 999510217 315366278 275801620 982248912 920065193 112798913 236529990 721965838 962645507 121914939 781470828 659768975 350517000 812993119 935324021 133199691 131171351 321347669 885729772 829491104 78357075 907679875 193673584 560343402 294312274 817034600 599311467 709584816 517930826 251283209 314175717 30301133 227205383 906323892 622065970 628613126 712091233 641652815 188627516 575082915 351966852 891701789 542149410 648087097 536187793 862307089 99693668 15194331 666525767 504257493 559813875 747226842 458794891 10585463 885312429 887960813 329373932 723432720 388349158 128139542 71896465 47081900 698863904 753171956 878562164 659921020 35185008 779131891 447283784 87060770 223924806 804612667 779412471 194407888 567888993 58809756 569820917 218124339 490280321 899734853 384084885 574268755 347731733 859432248 685045316 222655435 343838056 302951021 85772685 565134851 314770376 561249205 370976321 344949528 216453509 851545043 16298729 146673592 181309296 260126757 211564327 43296814 492982606 832671251 171571485 885828739 585629217 150252840 237129719 760057778 424846915 329364317 1624107 740424690 92792218 989513413 250653360 239888423 832468899 835454267 135496158 33034747 317099649 57602439 814740861 849111782 868572831 501602670 382400728 441578897 342274439 814228043 670008603 205312683 195279072 316219640 409150698 756782347 740424690 436951908 463968340 702938584 381470778 795336717 585045406 635333616 470583686 311959125 14091222 289625377 857902834 277565457 159905318 347937296 71787310 926994574 730490543 552949859 618391659 69403656 386915292 861697640 303939627 918428238 809596958 30142268 597041049 87129836 545394304 339676584 83441525 191844071 286435119 135276313 561235270 91723294 968452703 97203248 973632371 63336398 245876840 472162344 929547659 261914539 739529056 881430555 482236394 119199751 15363892 629934507 962416543 64707539 567961640 487394853 466146046 389220049 878472634 761271450 425482678 974607726 472711305 164269532 323829946 363282054 356967793 254882776 172232166 219639793 831877484 918093616 409082342 294920345 48132247 60084375 426562717 66100936 364014182 396731836 926298551 167908078 625034563 528065873 830330322 360083893 293273114 277961622 490544456 79032119 316219640 989893954 233251378 950030898 518622032 186988284 687915958 993729565 889680918 921769824 261881274 94778825 79913246 966985596 588539 445557757 132271955 575932082 353255844 847406541 604597847 894823343 847695905 567820467 605728723 935324021 563927216 841570440 475236645 851896635 590091443 921401407 910886192 115865535 160735073 170372253 972118206 313709737 466481471 893165284 178449086 341867020 957392180 32768680 590067407 857090815 766123053 812204252 481982083 745490300 972747953 86404900 956446474 306167935 808804150 485644097 315096082 87060770 622065970 939020973 786897254 916080289 959682189 837397880 264029053 774403825 641176604 961028661 938543122 706726060 363422913 772430279 661383057 241604643 576910474 584392244 715975322 959426924 436629293 421130402 814228043 841089783 586729040 553135375 202019081 750825149 957151736 794553967 718934949 464184273 377816991 353347633 730344309 950790491 339770353 169048486 645827799 953791872 586189648 787595718 423998435 326095719 595166705 206209771 838943535 203948742 483592324 415789607 683353440 178338226 170372253 590616349 615334562 183908166 584276590 151475928 293814950 338554905 565072428 532282434 217504245 447633093 385300022 276723131 173145620 284629587 627229892 980631873 15234053 609237951 260809328 387828469 469831496 279627355 775477924 910095312 221197630 838782843 580449787 190945250 773652562 543280238 353966960 717116426 534518575 69942571 862307089 695357890 420147398 922707036 327765793 983051729 653594916 880563832 330962701 360327736 174975441 967385727 487778963 591202266 757371686 314477510 481477522 239162507 625399808 327131980 326355741 468717707 644206022 401456345 953843508 261322372 15538095 156427640 283937364 192645058 230982949 783584290 679004072 995215522 929547659 828760079 900666747 742223817 343833471 351183796 916529225 89965595 200488786 548433146 995162615 613526821 758660435 600936263 633926277 368496531 336111822 628002125 990719695 548951569 762734206 202038019 941640695 464675217 11677405 482658484 259952854 413764162 39947427 934663808 329364317 199433873 119039730 753269448 153238467 972471770 926383726 960075280 272450454 173204726 410935643 757817319 952610192 990507207 393702122 614421240 822956905 351093322 911536901 55411364 429558578 323009767 725790888 197378343 11526537 842804647 716649254 771366659 259848496 875732615 400598057 331691451 668291165 578958391 906412493 157051224 341186216 71438949 753562574 359287451 83552542 922707036 213189513 532038123 315852411 880039838 357472945 131293000 644076688 49042740 962223044 923173997 893027217 44539235 241604643 164621197 598506402 524110453 638798934 454660890 952609698 997226910 417615828 971608771 272450454 253672164 959510438 364092130 740191941 422680817 605598679 442593493 515811834 134433213 411988656 742989014 641788754 963399229 256504077 370718372 327428172 828822386 114783109 745490300 785972176 55520299 850517129 247168120 208706801 119199751 711932887 611002601 257836777 291952526 275801620 799084059 344673051 491458438 706726060 189708257 512258861 983052792 276724991 605598679 276063075 325254218 446329057 179174542 164214169 455148066 943256684 766723396 250863157 816753453 584392244 784653387 884449180 376405395 507474445 592398796 456620093 193292683 600731848 165255667 332038341 447820310 904051833 926777932 236321237 594631604 898017556 492982606 356316751 142309877 926759164 800558469 166833618 489828998 768362806 341442670 240203660 657750288 582824875 854618481 491761037 836419600 364092130 597198944 575082915 567129445 943526257 526917770 787785760 146673592 452095870 176926759 443511527 447235483 709759009 700089141 121338368 439414044 964576608 502607863 652124899 319576043 427116544 616178629 432659386 219240554 75694116 513185757 379193252 565233456 343827028 761709224 241023138 711033 512258861 634529022 69344685 778765033 436356228 519178536 526560110 701613818 238275687 167932819 989694200 772294787 353032689 524110453 125818812 512997134 652647628 721248367 489130738 729323067 274044470 445674227 229750851 716512526 265964992 56107503 489500347 859227281 256920977 291619543 805615465 149412973 209022875 346600682 492247247 552997171 28831669 547426458 138936113 192666025 760550747 727831245 523323726 721574742 150449374 954346318 325694854 983472221 480680496 390386098 260098960 215916910 823403707 844018425 958177427 659554958 842233411 546584393 240608845 674542227 576325528 125818812 554014196 62555839 990412668 528075150 924298408 321816777 619392806 965677551 109254508 385888930 306216861 840012155 897695623 188982938 501614322 888363323 448940594 577470979 60084375 146442845 208890459 301059508 577418797 796425218 481453149 756883403 412969130 865660393 720307744 477651159 630445335 703234343 233251378 766645808 135867710 614477974 696416203 407143332 892121734 684123398 657172442 382106290 359802288 144093335 572223703 463373988 114037956 214190727 23418996 624766555 787066791 23913970 842024288 315096082 984403037 244645017 469536891 242601592 885165254 532862262 682275349 878562164 925414817 87625640 704095095 564184811 637399337 57870077 646934377 57212848 145853273 704619854 672502362 943366285 268878891 614421240 982879511 70711782 681084204 733884644 861260738 791574966 83552542 691827396 171104644 192089296 795499347 636502705 296907623 153238467 399514194 357518915 757627768 454125325 512965180 990774808 162320815 385316675 708776335 314808067 265603418 651131997 531598465 834728873 183548314 844075180 233313131 171346666 678758803 622557779 423988644 633564141 785028910 625116926 793088439 193091527 627201682 340569510 588204447 458720877 602360905 142759878 575907461 380743723 197524428 370904584 742784179 387811756 238243352 178612250 288266060 631168658 85330293 894823343 822956905 541271770 585899961 282949118 132708274 377816991 351093322 530607562 872010932 91088807 553160761 553135375 274682419 208052045 718450902 454660890 214081108 996652983 881407016 409973224 655072369 453455633 89607992 976918313 35794541 368402378 537277074 117517553 757371686 407208560 916560701 41649602 268200568 701474370 824892303 616836557 649302289 431228734 10571430 817287828 865647751 68153518 492414722 267784122 395054257 626258394 628942213 189768557 361800661 119275992 805401221 100571552 694193964 588496314 463968340 624766555 300466853 941673575 914625906 752718488 495130488 276663092 122957139 880863412 785685488 62555839 868561209 119415080 300705774 958326576 414209327 365997603 257681001 30098933 166757013 357728969 576325528 231282340 447020979 246114867 540571239 663140441 174675267 779410543 593388830 367128677 784069212 482209192 711212792 616859046 596213445 805401221 220211320 361034134 460158004 522997998 123918127 769875361 823606328 812400744 712091233 806761895 967385727 718934949 287229458 406708061 822956905 450267893 78988322 726713969 266502803 503472746 751979361 670157273 154844116 200492809 768393379 567193229 790584023 208429960 805992004 647998022 719863057 765700497 186101025 739879940 829027881 146673592 898323419 936299712 361870133 302303778 272502984 287076745 492713422 223096756 26346309 933781242 16410874 354641735 844172942 78894525 566415144 138653471 26758536 962645507 840345665 711515066 404433384 227341587 890425414 491943049 577820900 512997134 595166705 441578897 830691802 814015482 544110822 991056791 213230748 738461607 694236047 952574225 829491104 98614370 644076688 439513219 83408971 239811478 110407783 391232721 15194331 167939730 344558029 588360021 787850780 410468968 742989014 384379890 863779255 352019725 446081101 422680817 147055431 184167493 233251378 288686589 157337709 984782495 327765793 266067899 89516333 636517289 57431564 215942252 46723813 150479416 806386122 273455423 994113516 444341395 335184771 645653214 567258784 664563794 119565485 904450747 651131997 411461329 897241728 589244198 306959892 60511848 928104524 762740250 483592324 155802718 878267752 867617393 832687599 259264628 216583641 545135013 225392285 577611981 711166608 827026208 23164280 443984746 751977930 31642902 743258777 293666106 793946870 378197945 785248732 669124399 943526257 516050388 85330293 130681495 837397880 455148066 91039408 33608138 972118206 965677551 467480691 197524428 200492809 151116777 650256466 701613818 31642902 323973667 556603686 682872291 583468887 244140515 223893210 927270662 771518289 186474107 164214169 473204173 45004726 700147339 787467774 797973013 797973013 218455304 698863904 835217804 554347301 183601209 354021143 210010009 985236099 743749041 113890947 442593493 826390147 163617987 960419646 140607648 721172947 617446085 248367091 245167695 357881948 385300022 891775614 462438883 600401017 239186411 541213307 752519899 21350632 695577168 704095095 466634133 505312617 614421240 446132814 428689888 653057090 786685122 253672164 857708497 440032801 70449112 404226502 212389715 303345057 670726380 812982582 361870133 419013338 243996765 322250128 323594425 66659514 566050763 987178383 983052792 676214328 390852403 286185675 568066909 78894525 841570440 709418144 472711305 164874754 321691613 317934143 58809756 797973013 575698643 724916300 423988644 580039514 764347476 234483510 616875078 942427380 470894279 423750519 889880270 667997366 742446846 218124339 162845042 10462431 957115124 317161341 950197785 670095672 190518462 183363850 778937914 344673051 824380058 176986775 591508970 475702831 93601884 22190984 812419126 819033092 723259457 766107437 666083089 159365639 832345379 167939730 671203646 277547289 728984484 821190574 156968424 862307089 715642129 728084781 984483517 866677112 150801484 559377198 161196713 387146197 113581183 167939730 657362420 502879014 120825765 847695905 980747824 219493043 586793567 378123863 360980625 653894491 742446846 306594022 698311949 40879806 781220664 892013995 644655441 702938584 217034447 743657917 868090827 355485938 513185757 327055342 453455633 226673439 408287424 873323777 971966382 839523551 332701006 926759164 624854784 229526741 922707036 12405576 218588507 200488786 909040760 556940415 30684329 778937914 934461948 288338862 644075462 941640695 149412973 327765793 178304644 930649075 779410543 808817137 226290424 471807089 818530169 793658616 875067271 527299770 156367029 161190943 98960525 423750519 316478034 434354689 541213307 259715114 459549785 154844116 709759009 375081856 908502081 903738060 379218704 33034747 733392225 883594877 84035638 463074263 742919885 151116777 216236887 287513610 390386098 302792363 214772661 294920345 355619583 268611338 525638956 812204252 740659339 636674687 431228734 752981169 228000369 852816996 215642803 290136374 223747962 859042582 949680991 70978668 354355527 38852986 215068446 278939304 895864350 655072369 877609428 3097549 360288518 82820786 124595557 186840994 560180239 233034793 835153635 338801541 935324021 808242329 615334562 910095312 605416417 604020587 837373149 892447640 661903475 478142640 230771669 407773941 175964182 958177427 229059270 830691802 850517129 711166608 265806676 2267895 977445562 834374904 685885593 104575860 339106290 478699896 347313873 929650001 616734528 677408635 738613051 251587819 557045538 777135847 696309275 49106893 436629293 535389634 169651293 110421212 937451019 5385098 588733811 517698790 811119785 856217176 551421629 491761037 719389926 351705841 721155256 598715906 64747596 630566829 423988644 741588188 23864275 578236244 790191959 36498161 355485938 587355315 615674959 250414601 501382976 404433384 880029083 746633262 428744274 648558682 352779367 68574662 822318800 11511514 252772791 542607444 748555020 365563541 793110766 507071245 274044470 26764655 49621688 881298649 934317667 148790688 885949574 608893757 633101992 780959982 460449520 667786601 53139843 784207499 977729124 492753997 499280784 60525086 274682419 875732615 106559529 990063134 224698552 164874754 958326576 638798934 208290005 456620093 894560405 49808970 693623420 51132506 697285056 134433213 720021333 101600824 239851044 479556373 967477133 996070039 206834789 915165633 74105318 277961622 21583078 749434505 858172014 963535716 83408971 556816624 222052670 780068815 883442699 350615343 169651293 778245926 635418526 543492246 484094974 998925542 459370673 995215522 642913738 370586573 164269532 69403656 192107578 614479002 650542665 971516982 840345665 449943051 639333943 948713783 414936307 124412129 321347669 176192923 585899961 873173721 325252426 15194331 448290624 344289427 596478318 606535464 322549573 844172942 175722742 850512708 353685083 914345187 582543416 772954160 206558172 360327736 469478780 641142221 563375048 642027155 107575655 643177231 124595557 215068446 594485249 995207613 814085226 977151155 561899030 316219640 856205911 820695184 328373153 740873947 286185675 197628046 716070994 543483688 219243177 418943600 578158360 167908308 832345379 271569486 261805042 48132247 691672490 340777409 32375922 575968095 120315558 466634133 562737885 613863099 597339149 995807019 720838049 490006029 332992473 65414838 35017556 786294584 26402404 231472878 102348063 836505273 640019153 858616539 268813415 118321585 856217176 296907623 812085067 259590331 474098471 682039092 513719945 984382642 522104887 14594262 163417158 715964855 183090074 197524428 573012264 946988071 845872351 602052060 847695905 689203021 666141979 842024288 567258784 567638487 26417366 460158004 49442933 503472746 989694200 372909840 375081856 951550858 531648183 308279709 687672346 607903236 951140674 431003796 187921426 750495961 774444512 414209327 611035633 252772791 983479107 269312604 58809756 159082161 794896369 560147466 908986967 367128677 995734937 591508970 718418654 850512708 365997603 468410558 403810589 585899961 165606056 910290047 946629040 987493119 526236648 105767345 838175812 377780361 619035643 996942435 471833346 322788715 940159380 808831448 539963350 202620857 943526257 962097171 859566552 997889755 188627516 787238639 335184771 955491104 951550858 305092307 576910474 354641735 960950133 428714412 250401556 513078841 790033906 817034600 731796874 306594022 441548278 9339689 122467677 486348885 614548007 139721772 586189648 590388898 29677502 614421240 997421277 362252306 213629398 670357614 619409505 622065970 21835155 446286531 776827817 989848830 303432075 509093918 244239980 934317667 332992473 903296622 92184976 941640695 659769915 471807089 329142385 355515721 351705841 259785955 566900631 449301490 778202854 663400807 251305009 772430279 379448426 699882130 513206735 866049783 431343619 523086816 824220285 492149280 649185253 465432120 231672601 137809602 674542227 547292880 199286806 144282970 33448384 337995998 92184976 367939638 984105793 335184771 926626683 172376046 444341395 621166876 819285994 1997410 633223684 944140720 541228954 150915480 408547112 88381932 392045588 695577168 678074796 261551580 635859399 553480825 153238467 849233704 473933050 526630418 407976225 319123202 27019841 277800599 64399065 179174542 776847680 79865398 143005619 939357958 397187090 696416203 528508131 49808970 810818974 20248805 578159710 96159325 698278331 536056500 410914713 378341386 762013651 541691813 470155825 790409862 138653471 994113516 470332840 173287646 638773181 525983320 425697145 244645017 244661817 333541948 221197630 930606103 930649075 389210030 232042494 481029245 227119210 777948978 567258784 489457130 773171286 68151071 112396307 901403833 427554634 947436585 681033318 806833744 619153261 540888359 308949550 607190513 173695769 50050773 519100880 510330601 110477100 57859273 645653214 942844094 609515650 331976226 658030547 793420897 377816991 769648575 224424597 866275712 126856560 711212792 199286806 412155251 163764912 645726081 447283784 910215344 565134851 15363892 433158646 57602439 922564893 279193699 140709606 988068787 990615559 54495615 186474107 214772661 56178297 724140261 92337478 974196966 619958259 44013248 625269263 889307767 675525723 384372482 501382976 293666106 851783830 408631358 607006145 726659156 986584560 193679555 680938701 956692225 829964647 359843759 526560110 66575736 145030953 359707817 836913248 726713969 741082988 238946565 226290424 772621903 433447483 780251698 516348298 363737391 359935395 883442699 354583476 743722055 189285677 451277265 817034600 189220848 831605243 628885668 420019255 121461568 617924265 329373932 33921743 132410861 991481489 455629229 350779152 373943114 190945250 625269263 565718020 382106290 387985897 60511848 8514809 830573452 256541533 774534102 709418144 491458438 950790491 855342522 781470828 607006145 587713617 761271450 14183373 375390536 43296814 296816679 850504155 283599405 801888810 851280384 817797466 625954245 137115706 678758803 359707817 210371454 406436608 730344309 133471702 856303039 665505639 401842604 168696792 20955790 182521575 957452072 497283938 690406163 78357075 68151071 897241728 540888359 713660675 333796773 677759074 943256684 783919366 137972836 814209757 380672070 172784096 36001480 364014182 646292761 598801584 406746718 508338116 670726380 643758304 523147876 605779568 755329756 363181748 931587040 342983554 333187018 380743723 664563794 433175193 954346318 463978538 999510217 738747750 237102213 418603889 186215451 23864275 426908399 339060930 113975767 568224063 744725796 876597054 444165973 479395809 322486380 558131956 952610192 343724630 920158824 351162803 960502060 88520790 889704474 509969649 102348063 668424404 290136374 109254508 351678106 649980444 934317667 812993119 233251378 628947259 309307017 810228122 77562567 944958052 99490839 575932082 594185923 664156199 599501228 559063964 938841867 43269492 887665329 678291966 279443460 188079893 7220472 467423925 126151481 655214674 948389751 631145734 837931720 367128677 867108593 247220722 819781345 72071157 110162048 476884423 349160300 615192284 464405816 261365913 790409862 137290621 146420196 236217595 440463965 192742040 804152458 885089884 696416203 112396307 94778825 560959656 338840277 340777409 767891036 96159325 645536456 523306362 451020778 304687086 711649395 415456348 165255667 354021143 422639179 533704296 746207343 927719562 667055916 760550747 994399456 595945449 676193995 357897365 936104862 382785220 244656207 10281377 734077184 812740198 206915668 389358224 163617987 67797956 691827396 100422564 849111782 479374646 388439020 943256684 926705716 720021333 349938974 984177899 882456106 244661817 487658713 83095988 801391310 278897687 385888930 197700342 443031883 330696951 930691132 323973667 428879748 738747750 958645852 433447483 332007686 930025010 774715366 811162412 724140261 863692312 400598057 126291003 669258237 444502458 188982938 287229458 934461948 182576283 617034160 591202266 625340233 694071695 832468899 891290260 393336486 641770480 570271244 347742356 16238172 430209478 917598758 106559529 202038019 824914724 483592324 187042622 88244339 613926124 775551192 978532258 937354909 612257511 133847439 485434770 267200358 800558469 988068787 195574433 595802491 441209724 888802180 233251378 347731733 599477657 178894177 856449122 278144763 254882776 650478751 881911872 290489282 735948512 356779688 351906572 289926970 787747737 240357237 497164702 86870980 429438899 945727872 302396735 683353440 277565457 300852389 227471178 792199781 833891546 863891495 785462257 400099846 559236516 670604866 622356349 422463137 393116598 311374736 510330601 678439153 9898828 671589626 556218614 739305912 402217957 982592507 229151777 144061225 407877244 878461654 949430015 762740250 213379090 989893954 220211320 568224063 89013065 171206101 917656269 198791005 323829946 119199751 995215522 727831245 927719562 912569692 515199300 890998006 329676417 71787310 351162803 964998948 456620093 66901023 410468968 747585224 161680003 171571485 956831682 808831448 838782843 275815785 416193131 421294986 712038020 786294045 185868815 801781610 559236516 788565231 492040275 572210787 264090651 512262240 693735982 376971937 431343619 784543578 299408629 156367029 36469771 145030953 997421277 771455790 873049082 169651293 182576283 468604850 799308680 215202668 809596958 461358659 818012022 647275202 984028906 777446840 516050388 797501542 424548681 622356349 219027286 631338285 425697145 784537889 217545462 252383767 262610054 175722742 560343402 30098933 617296169 489386104 993091261 540250629 878919697 11074899 253672164 170460062 443511527 830829720 950917629 776733267 645114761 114039611 358220341 638664525 943408355 512698301 960950133 716625245 671753094 444989359 302951021 469478780 507509574 363078902 280728194 419427438 302303778 990412668 711166608 315852411 276151404 784591585 9339689 161739855 672224576 317435090 614420317 691827396 590388898 164184179 514985740 85505551 436962649 145853273 512997134 211248971 65001193 764166096 145769017 916512858 387146197 788565231 723880853 430692836 67797956 496374196 786193194 425447208 621290468 767985786 917615175 214571668 251283209 688926432 138043079 113643196 574046542 148210270 15944964 887530457 369741281 784888241 833924014 13306544 369741281 232042494 190945250 284177728 588204447 266502803 536187793 906412493 440383275 971630537 377757217 667589325 111953929 444579502 782321975 487252127 598801584 799002890 637555883 382387647 935563785 269005893 202620857 787270808 93562877 516650780 786469692 441578897 621290468 23835068 334714346 320431919 565233456 284322000 770699812 970416993 846047095 459892061 861849773 563452223 154149134 44539235 159879307 121461568 325694854 249976799 521940732 911357165 789197602 519100880 462795099 735125224 66100936 146183600 989848830 382543663 464675217 13153247 993732809 55022264 145769017 867095048 479374646 240608845 966364960 840012155 854366787 495261210 546606411 769460243 603529951 567820467 522867141 599195882 376899224 486304498 227341587 81482031 602353565 323374619 3831463 775775365 674542227 94529018 947283533 280492994 66100936 277497567 567820467 786231842 7766128 172328397 502779916 831148533 751787685 64707539 488224433 240197516 229061145 205945197 723434610 695577168 181340391 112260299 261546154 476046422 650159381 887530457 540676571 571912526 806761895 678284060 759279615 731391308 588496314 812573937 328845920 563325773 159879307 804935774 628942213 742919885 521940732 156448884 112798913 772914912 693631266 157334018 378123863 413180650 368496531 530840437 447820310 512262240 213742032 399021441 117250953 260126757 559799670 364364987 56740474 338230014 184894800 175722742 297950311 937354909 565134851 735351390 739983909 581456290 376860783 113890947 261322372 256920977 319791841 190531398 484185343 757336861 778245926 216663601 998279315 517078323 902064034 530607562 453067953 161739855 356067238 912076521 417868015 607190513 810228122 374829013 743258777 135000374 903738060 785685488 439414044 230623541 455605680 513994832 143005619 267759731 474098471 978024218 279193699 661958556 83095988 495747597 678439153 724351353 442250041 399562598 635333616 21520904 242560852 538380286 380672070 405526415 15767643 87554919 708505943 584078261 354599755 816222258 721360255 653449055 726101523 297753111 278528196 867123733 167908308 170330891 61203290 425447208 15944964 464937674 256504077 844433235 515894876 891149152 815257954 244239980 804772596 315852411 595848759 423988644 849233704 475471242 755171863 395054257 240659669 617276580 22190984 565134851 149617161 430209478 853725888 295925870 926298551 822571602 464675217 728665221 474098471 582655960 149181759 628897356 680439837 855193777 259590331 567638487 315757140 517821133 212186584 344200460 856698185 426069641 197543690 532809158 218588507 492333146 487256848 117517553 2254080 479395809 149181759 640094532 46282639 476895683 536123449 432659386 618344226 920365121 87368065 309677698 369741281 644450459 173046498 451277265 44406641 47560661 224424597 777293937 378421533 468410558 991651050 268929374 867409519 206674100 317435090 704317244 248880400 806898287 909328510 199199314 670046853 961327971 791574966 878394639 682371703 897916025 201591689 910886192 741805743 831324232 842233411 477003046 513994832 778022201 413123472 519011939 854610463 607903236 779555399 212632182 339940039 871852280 359707817 397187090 110452443 153661994 425313399 53383989 914460279 225282293 809838531 450777289 17647641 252693314 835582793 744854286 812551497 426069641 382543663 514327756 756883403 55878403 733762553 344673051 472791954 363422913 549240123 162359207 850249845 330696951 699882130 358551013 704095095 40761625 276063075 577203870 621149170 413764162 543840507 974809923 721155256 447020979 87625640 938327567 560959656 403012748 218639536 478683450 708398407 943842831 732478364 396166564 270530681 210682032 570904525 591869989 127406784 945141219 516724434 292320003 181807069 442588758 173287646 943408355 914412174 391219534 987741376 377257960 961129959 89965595 617276580 676214328 595004375 198235285 959789862 774526406 975392425 277565457 388223330 308279709 458287339 155533258 757627768 635819214 864562613 631168658 331852141 137290621 489500347 415456348 492001619 191951090 370899819 124595694 891290260 276063075 596871223 670008603 86733416 625013868 888977087 704095095 577203870 383380848 463978538 470200470 317099649 53313305 645536456 626709003 863674900 209752506 132524740 649260409 424548681 878394639 748555020 603896430 624854784 408631358 575698643 436966726 702934258 489603668 711033 822356288 125818812 61332591 300852389 424093157 537054158 7013154 685635040 389844160 169651293 859600514 636674687 245876840 35017556 368515802 458102694 188412017 403328214 470547145 806761895 267759731 801888810 703073204 65783382 837397880 717876219 134130650 112798913 519652098 638798934 822099193 668437990 880006485 984028906 333317752 990719695 996326182 988068787 925751148 716717720 406708061 300852389 48949897 627451717 6156588 740718996 556535048 735351390 779131891 199569265 441164379 361870133 141607140 959194049 301691460 569820917 943114099 690645347 995399950 328142874 526182995 258697597 172232166 356067238 760498130 216236887 222006918 3116996 35905145 902955471 953573082 479395809 981297114 797620090 894560405 803910518 192431461 703947004 526646811 405621069 613474500 964714139 18530476 909328510 495201443 107575655 332324779 968008469 621822034 892121734 891290260 277961622 514642995 532686342 295786083 914662667 550852259 464157258 242508751 1521687 409973224 898104564 264029053 885729772 56399673 807905098 699294880 478142640 207955886 425176277 75029818 723434610 505355078 183090074 55456604 261365913 460630937 435893449 470431583 392769797 543840507 261881274 450023501 826719690 60084375 416857815 517930826 524526177 970707395 331691451 64060549 646934377 553983855 519100880 441259523 246557862 488761774 296971426 157428808 215502867 165329111 234483510 762360581 662237534 428071291 941673575 569479799 702285871 744074096 309677698 810780546 434745449 114504608 978955950 101303048 546606411 543280238 251275201 138043079 646460514 240357237 155501701 480387440 240659669 197730871 975350874 875316502 741082988 464204081 704965966 649185253 65001193 178234658 64594873 581618221 23626317 895864350 955823986 340569510 187913741 145853273 950900487 586769582 175722742 553160761 821824301 792657048 714791481 202687577 838403366 279663853 693631266 293249724 564289167 188079893 844172942 793088439 384983061 114783109 784653387 411373914 489500347 352019725 329373932 469796838 481797000 423067490 325114746 577377636 610169722 449380185 661410658 373831895 226804901 763495111 234399744 804914076 577377636 889704474 897916025 881010154 516904060 515811834 628920656 834156389 486813735 385786013 818715944 241023138 180511810 426813070 941861375 53383989 370718372 809838531 805600576 933781242 878804420 202038019 70711782 157477269 487256848 533704296 445058957 88381932 449943051 695868455 220211320 256575995 619093824 751663150 904068334 611035633 799308680 261546154 66575736 354003269 600162938 856772079 999941065 107808978 358586540 808791735 164467868 388349158 965831491 56399673 172771364 60538458 245097735 374325071 979295191 581256406 356248329 693631266 573012264 533491545 400375635 787369234 257729949 549240123 346153013 427591573 603340710 572153244 387972540 252383767 526236648 392885733 812962531 216583641 641770480 422995827 387146197 804772596 841288779 136280040 526646811 423988644 222680637 430389614 58485452 125098132 657172442 812993119 36469771 133199691 446469999 942923177 91670966 932615272 117686882 597041049 20593514 468187475 822318800 757371686 71787310 613856410 885312429 859743875 623090135 15234053 361019624 490544456 169507050 874765059 249336239 893436549 486813735 23835068 283937364 584678561 957392180 639333943 404380730 870123638 504140152 171262197 386648749 332483785 356182816 245828544 249213512 47560661 914345187 655214674 303345057 131171351 264552659 977964499 200792570 427193603 512698301 835217804 655072369 329373932 237380565 53313305 342274439 823606328 431228734 976163852 140252005 917254879 881407016 471712214 294984204 798176202 807905098 308279709 60114511 465643223 716717720 178612250 785462257 606808899 241023138 543732312 624854784 650371604 437230490 86836015 440683510 914460279 868561209 728834069 892447640 858833076 385818791 931587040 934619036 290775947 838782843 33034747 481477563 910041119 167939730 367939638 215642803 489252977 37028736 487256848 762740250 336927622 156796129 245828544 156367029 385818791 967760227 358551013 723308589 986790528 189716201 916529225 457764991 104087672 427116544 212973675 32086948 206834789 801009499 414221178 892447640 486813735 379828427 155501701 619161855 150479416 991481489 451341954 647287845 468717707 168541496 357518915 813319210 90828708 26936778 268813415 380645221 441484207 40987007 780692187 20726940 44400258 668437990 780475587 849966254 909005038 745825721 98732577 480680496 643177231 347313873 38852986 711212792 614477974 658565136 378216275 659245693 734077184 32375922 99144276 993732809 315242797 909154394 165965558 693393574 988813198 944958052 335297970 119199751 471902992 172376046 335132197 773171286 490934541 417994703 839247150 832964852 653872353 257266617 29642358 944958052 168024415 341867020 849868763 821824301 120825765 146794653 184049420 759460712 861697640 354583476 114783109 164214169 669118789 626092991 340348364 201766867 382400728 428618086 882871743 90828708 404433384 760723429 652226584 120644927 815971091 2254080 917122297 630445335 881430555 823403707 661410658 205377948 165329111 801888810 188982938 384296691 172890601 700592307 662666818 917615175 808242329 935324021 702934258 132956382 229231430 657362420 617034160 664497996 851280384 306845244 706088955 979295191 203948742 821870786 686027125 657573778 65001193 290489282 470894279 526571766 995521533 227739391 363078902 20593514 591830038 249974462 770885599 17834316 350489177 876469630 669443488 716084460 512567532 89250476 17647641 318364342 268740215 739561319 983479107 321644210 359968629 752649806 14055174 878267752 278800524 367128677 663785507 643218581 415456348 955491104 122424999 382785220 396379256 300205360 120248634 323009767 663846540 523086816 124324948 590146562 861849773 641652815 512965180 726912627 531648183 76776241 761370820 295925870 988722625 639060490 82520007 359322884 595945449 35114805 595572629 237800584 786480040 715465382 732449157 559645002 300205360 190297459 978955126 175964182 491125478 628002125 56734569 771366659 681033318 154142244 491758875 307767072 693623420 501614322 38925484 89619481 254471401 576780065 327765793 310420366 785291611 697257806 192360522 119688172 78988322 476731953 666141979 5621264 8908392 674933816 230423084 188982938 502879014 243210728 814015482 594230441 740659339 163417158 509858141 482245586 934317667 317099649 671157698 929757110 779412471 200135663 315560044 826390147 159265904 360697393 441259523 983081496 382027862 219243177 135904170 784069212 244848560 830829720 695206734 40733471 784653387 887936210 624515974 250401556 803715180 911156828 724831227 653057090 824220285 178304644 48563029 801409198 160259709 179809518 710264116 517821133 436966726 731043813 91896373 827760201 949875879 185868815 835454267 108481641 881407016 674933816 141607140 145823899 389358224 244239980 140709606 488463526 252232429 191844071 406436608 28876123 317161341 102348063 130233752 44539235 132708274 722087694 619161855 380955396 302129544 259705784 886835981 834156389 938442301 225595088 128274101 838372130 259644489 554014196 753562574 558471522 552997171 309117493 455148066 753269448 217504245 585045406 703310864 439414044 146334028 17769661 695868455 512595478 416204454 34708050 1478365 390301576 494468203 146837720 43296814 329394702 814740861 936046129 680439837 223589059 357897365 650134945 714122176 845872351 767346766 110623025 511962449 65414838 841570440 789053029 768138772 823403707 842804647 505075478 90447245 838406143 101581750 9083207 75029818 879711490 361800661 903716250 531400665 169372924 1478365 259644489 572851317 425621666 406566817 212389715 608703491 122424999 355604580 963226961 660988632 46214083 137115706 163617987 678494167 265904576 517629412 744416892 359843759 451560800 356182816 320093398 881938727 645417617 617195341 256475429 670591275 120478095 778937914 271569486 571751125 35017556 664563794 610063072 904987269 683262174 455605680 240608845 528475809 384372482 532862262 462795099 387985897 565056543 599195882 757266445 120825765 499726655 380286765 188802296 716649254 554347301 256575995 175964182 855400000 401842604 90205660 489034016 209022875 478683450 513078841 746395196 812735700 993732809 817283361 463074263 295315244 446081101 626116382 806386122 314808067 696416203 918258347 208706801 387146197 75694116 495201443 70792490 884058123 904464640 812573937 192089296 761024521 332701006 858172014 619153261 66100936 263735956 854366787 474098471 559320957 741111552 71870116 917254879 698537005 921769824 6986380 808000077 650134945 914762971 299843690 842669363 943256684 287381943 49453801 259210433 824220285 845071084 108761141 309677698 378017842 960950133 801409198 114490376 61949058 930134374 176214541 752128946 537054158 913985244 615648474 546606411 172232166 720461925 297950311 875899015 194716952 423309284 407773941 37375125 1849529 29583194 976477474 537394553 918093616 116783336 768393379 54495615 164621197 224698552 586116774 650973466 209820542 853867634 755171863 303992096 51691462 453547005 411244769 835800812 372909840 309788087 264552659 246557862 1997410 105244512 773512522 904961277 238248119 536056500 285660749 563325773 636502705 45742076 223893210 239300098 996358274 286185675 961160715 69403656 646260122 248880400 309665803 526182995 295786083 354021143 512698301 996326182 540235952 281890528 451341954 670924186 230792741 275826341 923422414 843709330 207805575 48671523 82389432 277057306 916983262 471308146 492031763 727129556 205312683 314721346 229044161 106559529 208052045 514516638 978955126 135496158 532614649 360288518 217504245 581379821 229044161 77855757 883334008 872010932 20661388 849868763 996652983 817287828 92762280 379690792 25287674 226947127 930099114 385786013 341186216 277750457 453547005 603084254 505584305 770885599 536947790 277750457 738947833 594230441 528508131 569479799 172784096 528508131 998279315 271545507 50353247 246114867 999941065 96160337 491761037 151908558 283921209 563956416 627201682 809217981 779435019 214081108 831877484 967760227 662237534 29601372 215942252 360327736 727954761 386336927 79913246 809415544 288266060 151644485 505642602 339657591 212632182 727421839 791543521 89965595 610063072 132120437 356316751 609034384 878472634 978485528 968105119 380672070 605598679 156968424 334163442 730289727 440463965 515150137 476952902 934461948 666084378 224049912 49442933 947696425 414679578 242601592 342531699 189442294 356248329 524800771 66222960 540888359 855515073 971516982 516980462 275949763 600336212 766702899 331900744 520956931 223589059 809596958 191844071 757817319 757371686 374829013 732621225 154888998 940752030 517207322 574420367 33834715 794674617 164874754 763969673 382293322 9083207 409643450 371966706 245828544 977964499 646460514 911614409 727773067 924120547 624382076 495888567 905962223 244645017 68262523 904768837 804594890 590146562 367090357 147055431 579772323 655072369 471674957 132569079 306959892 652226584 815757031 21583078 665505639 971516982 513185757 89833033 123918127 882161017 708776335 625954245 292078138 15538095 693623420 982879511 799002890 795336717 33739873 633148289 825718553 872160203 822356288 293814950 358007727 939094194 931649320 612989706 267037411 478239526 884156719 641788754 821327954 283564720 548221608 995082130 229061145 373720203 229151777 82520007 40180901 192243675 453784055 577723693 925959068 671012655 693989040 731531344 402697337 526646811 779555399 798386400 328217752 630092600 905623941 40761625 246519318 859042582 466481471 642893639 689203021 224622492 895402126 295420985 952574225 872010224 936904534 649805268 786685122 424829099 764259519 224099360 523323726 392769797 71896465 877609428 216453509 32300385 847695905 425628417 265603418 188079893 619093824 810567026 303345057 881938727 506062832 768017079 462119098 264156847 470155825 52327804 712038020 899164744 778963886 797782093 927855694 585290460 39290274 947283533 950030898 652647628 441548278 159905318 825767247 468933072 560343402 868610137 9579364 902926944 269365459 800413183 534493578 367348812 87172430 600220820 706772155 343838056 191844071 934619036 865660393 181340391 184167493 467373016 762392720 522104887 217651693 137290621 678074796 851280384 403040141 250863157 521652866 88381932 48420421 649328326 325254218 384379890 531728564 967780145 961129959 505495188 77855757 64399065 45131602 246231996 498642163 128075156 355485938 446329057 857090815 804612667 126750777 119199751 998070740 487658713 121461568 657305305 731531344 697646981 957151736 336081011 267362140 563952147 428015236 883334008 370718372 267362140 983930175 174975441 878461654 520946914 27008557 859743875 278384497 83310806 931401172 458759602 426813070 659769915 314193344 642448466 924266382 468385477 988068787 533989534 48949897 282280759 155802718 444165973 394993865 958807111 522104887 149624114 238557163 272801478 42819703 353966960 215202668 332577239 242589325 712110955 840012155 577920361 130681495 58299343 790584023 181061043 664563794 264090651 10281377 192107578 72816262 20460124 297753111 414679578 129485936 930099114 126960792 480680496 309788087 481055729 801009499 459966514 640799332 273117142 888950181 28911638 559813875 883334008 380672070 330678970 187042622 338230014 410468968 899734853 524110453 845979811 957181171 382494544 170634303 832964852 565539542 139770734 65138516 39970385 578958391 908601580 208336950 477959774 581293723 610999655 710264116 747585224 630666315 663975329 172784096 265806676 97937401 99101069 16298729 107813311 816222258 792199781 539721253 77562567 841257996 266502803 197730871 638664525 311376870 733762553 638251606 977367481 824892303 626510734 115638551 870184406 230771669 577820900 812982582 907656645 439513219 450435362 380825508 157334018 64723222 492620156 550182649 70792490 839523551 225282293 215503619 100422564 914412174 491943049 904159957 830330322 713315905 278800524 750349249 115865535 150915480 119482989 158410014 481477522 139721772 878562164 137580107 253672164 264161013 598506402 168257314 481477522 524110453 950900487 252693314 866299792 638281987 104893837 529354668 653073910 709418144 591869989 401700185 571680536 244952813 489272749 46112686 532862262 132569079 809459138 319576043 45720878 172328397 186664369 849233704 892722963 653872353 766723396 908213969 968008469 474434198 908352284 657750288 483502744 930134374 517629412 936104862 155364325 298973198 993729565 473574639 371966706 867095048 490031170 476046422 650256466 838175812 151653995 536909087 453784055 404791307 89965595 159879307 159082161 207805575 880765678 399514194 260098960 531648183 760498130 497164702 300852389 843279559 85908862 387972540 164184974 102348063 380211376 951308929 920153792 559799670 694193964 830691802 714791481 539629985 753171956 28911638 863346610 574046542 175722742 34708050 820600283 131293000 584657673 648087097 210371454 551944045 359813935 373831895 58593532 56107503 192837190 347731733 35794541 250268130 101995837 646913780 92762280 767346766 230792741 538380286 401527487 64060549 26417366 273455423 286185675 664126617 440326361 571399623 787785760 913438138 744790892 334163442 684581945 454725867 498678305 167535364 515923912 30684329 447235483 490280321 54495615 427218881 588733811 778022201 812085067 209169370 277961622 901781673 835454267 1974501 914782996 967760227 760450565 218268412 593388830 422657201 669851967 804152458 814813297 194818695 267130391 691469695 995162615 911126285 887566724 401842604 930025010 7733931 267362140 107820156 342274439 809629583 577525572 691598812 743722055 697646981 525094124 17551290 530560377 125994586 294071211 489603668 924266382 133471702 622717017 967760227 600162938 589158295 577723693 364878980 922845593 615674959 378197945 798176202 772914912 638933192 251275201 371966706 957115124 374080883 486304498 666084378 888387334 404226502 750108844 82820786 86733416 723089378 46723813 339106290 906323892 442593493 653872353 573931392 836210608 155164400 110407783 75694116 382785220 768902238 209962150 878461654 444989359 486813735 526236648 350297176 747585224 750072751 386648749 315852411 531121674 206558172 124686517 683830163 260126757 764166096 53676003 445261790 95226514 288349510 151652734 670157273 855515073 423382810 33781772 682561229 331852141 330696951 645417617 228094086 539080862 247379936 603084254 199569265 793567237 64594873 580605582 89516333 943858896 806641776 396449836 951622853 190617654 187043789 889361891 952238771 575932082 296372695 917615175 489603668 528670985 722832406 933740284 694201659 133682923 965295649 396775313 422463137 238946565 959815330 950900487 61400453 400375635 267784122 677049963 9358321 892447640 189708257 295238338 921783703 16887740 766554817 889680918 232946291 55878403 700089141 544148756 956446474 449380185 573931392 614573160 812101129 614477974 314318032 73156407 231584079 369856924 358429939 793658616 687672346 387448768 124595557 201591689 728984484 291952526 678461570 732826725 638555422 911357165 914292700 558999876 244848560 996358274 538789025 826719690 676317740 381374810 923950163 302951021 894823343 633657793 901781673 451341954 627813749 315242797 197378343 866275712 542979336 213435668 873608238 891290260 943099642 23164280 509784640 66575736 454725867 364878980 267171391 194724146 517698790 332501814 943126348 106121392 327384116 277547289 135597483 251587819 923225818 822956905 248393161 742784179 144282970 459892061 151644485 165255667 904159957 325694288 191393088 786294584 414679578 967385727 915261787 164621197 130681495 306484866 183083443 781987609 711033 776456668 1624107 247187670 306845244 780068815 401279887 297687452 979295191 391513191 830330322 382293322 343786069 414812061 479190564 418246087 990332043 687796451 190945250 12100035 701819021 880265015 379886443 175519425 683674705 943526257 580676132 426942267 220211320 275826341 891149152 820600283 373991621 173476277 276677539 271778021 659768975 105670287 471833346 278899337 494468203 161190943 433175193 549577976 468385477 516904060 755706187 841089783 634683136 141607140 5729841 292432616 267534952 746351207 209962150 570574208 805836018 578491038 332007686 990507207 156427640 149412973 662588599 738769993 306845244 492247247 200349926 831324232 828760079 593388830 250653360 728665221 772566237 617034160 315225511 892121734 99620295 964248231 952271860 620797239 304687086 592342611 941673575 685635040 71870116 739993618 52327804 382400728 778202854 892358571 372192841 195238415 953077348 188799448 324577884 87554919 476428742 264029053 882223199 33721253 448290624 797272297 161190943 305793717 182521575 252232429 609515650 805615465 681987281 29419909 819585740 350549710 300466853 481477522 110623025 685324370 150915480 341442670 364586909 635717032 930861676 455148066 16079129 722087694 5385098 224049912 582655960 201049913 227218401 625340233 607190513 726713969 554014196 923129979 773512522 20726940 990750133 899164744 590616349 671012655 577611981 984782495 722097922 410119348 665924450 15813216 534742374 999348536 777446840 812157405 266502803 45818101 26758536 808817137 378421533 789147402 415678099 280728194 982248912 887960813 23835068 219027286 329265704 812085067 286185675 74158082 649980444 934317667 311287060 176703713 171385328 68151071 291952526 870123638 104575860 76612005 362338554 250268130 368515802 126585099 459821912 383008147 248393161 230982949 272801478 519652098 215068446 637583085 203683816 756883403 943099642 531648183 543492246 15944964 477003046 884058123 685629680 323970236 838943535 908213969 154844116 609238007 591202266 738968678 820162099 657451368 900666747 490006029 892722963 901072025 367552763 271480510 240836262 577054359 374024229 867409519 964329661 969266424 741376229 151644485 31115544 839523551 485606266 819684732 229231430 321059026 778007084 683674705 960329120 332701006 893436549 148473955 943400668 73156407 289638495 91670966 724371560 209820542 96273404 454725867 799131552 314087366 789991995 439812150 50353247 628323873 868119397 520946914 359309478 592352601 918134121 784287959 489386104 509858141 939776047 162320815 299241352 616836557 155518284 900042969 847406541 85410017 835582793 942923177 451381707 592398796 643988894 410729829 229172857 475236645 489603668 103617064 719863057 567656575 548221608 14594262 183908166 476056555 33525687 12291204 930649075 512965180 958645852 812545734 733258326 810567026 334461483 163613238 605779568 877911025 769429163 69403656 851446668 850919156 788859798 978024218 480387440 788565231 830330322 565361226 61400453 605045503 960329120 7825237 592548069 176703713 598715906 867682504 756978770 390584988 83596261 519298517 428714412 678494167 106204888 288266060 35185008 6114314 492247247 492414722 851280384 327384116 354021143 559063964 590790064 631145734 594230441 763085108 910215344 742989014 188627516 332532417 188799448 798748639 11677405 769951693 797782093 461139901 392857151 268740215 362338554 86001070 402171857 368095127 933767247 449301490 872160203 668239990 513185757 876054182 389814443 86001070 278528196 74686834 680961142 299273988 749291380 750349249 984382642 332404935 685121504 139178632 425482678 950856649 363181748 681323757 545135013 165329111 812398643 645114761 147055431 695611692 503472746 846327809 308311291 791178147 466634133 342660488 910095312 86836015 790409862 58485452 257729949 858722166 615677308 740601476 151475928 902064034 141046927 514124813 321059026 617296169 387146197 533073923 21583078 909454987 753146142 329676417 417994703 188627516 569820917 975318643 379448426 129485936 866728678 435455359 308306592 805600576 431890643 659921020 417868015 44013248 919397251 483761023 530607562 328746326 423382810 863346610 410287113 582570674 384983061 355619583 449943051 973062277 687213754 474872546 58809756 150801484 557707295 443511527 174125656 904768837 752649806 507071245 888802180 969667877 250414601 277565457 893524401 746024438 56636843 444341395 821327954 30265864 781470828 418603889 240249436 251214319 192742040 455605680 610169722 940132747 111953929 953887421 892022323 417615828 539128062 5729841 265794323 678461570 705952653 118200676 440463965 462438883 833924014 653449055 16298729 598912002 598516412 815702195 800717123 460158004 376860783 638664525 114504608 194738988 786769037 994191527 359652773 182053097 573454213 356067238 59053852 344200460 269834060 569115124 769875361 299933132 677049963 113718969 9898828 483492691 868119397 985702981 340569510 263427333 720881513 400560809 884006689 841162193 416204454 193930014 389716921 881298649 202019081 206947382 705409578 169048486 516418665 831605243 748555020 429165033 317435090 58485452 703204399 809629583 916512858 75017068 466991961 716070994 733258326 375390536 752718488 445674227 595004375 973374306 921446126 809627800 28169756 332324779 537111846 721172947 327384116 358429939 113365204 646468218 122424999 89154951 905623941 242088182 719416172 761978826 962762175 183423602 799002890 105070639 878394639 113702197 814740861 622557779 158483920 705568615 634320535 926705716 241704301 814740861 770885599 790409862 835582793 573699665 835184856 963412179 644206022 961327971 166757013 539172105 276960060 665661938 996652983 689203021 463373988 319791841 584276590 621380200 985236099 512258861 358679752 683674705 247168120 536187793 695611692 678439153 358220341 427322025 571751125 431432359 784543578 808804150 50066176 624738554 460216849 145030953 470431583 738461607 7455531 339676584 178234658 905662794 56103261 810784684 6156588 129343380 472661489 332532417 559826379 532686342 183963712 199352976 208890459 807569392 157334018 321644210 620908438 173854990 58485452 739983909 588204447 883334008 651644790 61977295 798856912 57622495 659382812 316337977 688878785 99490839 761176899 32994753 850353094 436629293 48132247 925959068 545135013 288338862 768149844 516724434 263735956 627707810 383380848 624679074 938130917 188011736 73156407 771518289 519298517 190560426 137115706 638933192 711033 676980845 168696792 385346897 893165284 155501701 532614649 844051855 45687807 788239486 699294880 422463137 422834468 298363841 657451368 651345135 130233752 279068596 520546481 35905145 512258861 844018425 472676815 700909507 99144276 80414768 290489282 832468899 526182995 925920080 693393574 785291611 764166096 481797000 396195715 140252005 333850293 396166564 952271860 560715363 881298649 571470383 297091631 792199781 595802491 418246087 685121504 784470358 417570046 641595790 87060770 958177427 60807748 29419909 85678530 842804647 389814443 678439153 404226502 655939631 983582719 897695623 278866541 279443460 879251547 850249845 106121392 412155251 344949528 400560809 629934507 693256137 308306592 380672070 512698301 943366285 481673072 670604866 28169756 982324277 519850114 545394304 376643535 536977963 786294584 442593493 645417617 701119742 911357165 499319242 834156389 415678099 360697393 157734675 230771669 427591573 917987694 676317740 512671011 476056555 409973224 155802718 724711319 773171286 482245586 719389926 48420421 875899015 192666025 453195888 694201659 577418797 208336950 974016874 289926970 902955471 99870520 516904060 250568218 812419126 68574662 922845593 700147339 672219217 315560044 570574208 55456604 804612667 908965387 261365560 29419909 777496901 72071157 283309395 753910254 843034984 505312617 114783109 814059348 203942121 472448047 291177192 296907623 407046193 595004375 641176604 357728969 559799670 608278165 523086816 780959982 528065873 324811550 424858956 708751 933767247 752986855 285660749 872010224 404495670 109501962 423129885 520546481 348003998 56964750 844075180 662207358 638281987 78747617 160857000 86870980 972118206 44514660 901781673 188079893 837373149 245828544 48671523 460630937 781452275 909454987 719088036 624515974 618344226 341442670 617626369 78357816 250505381 133912540 844931236 971966382 372909840 884156719 20661388 940752030 451064437 47560661 213359710 217504245 959682189 518575425 75029818 945727872 186840994 791536667 666716017 334461483 417615828 159167956 850512708 471308146 935844360 153683887 699762292 547059037 645827799 871852280 941673575 930291598 402697337 249976799 921738016 369244711 196911651 15404893 608278165 731640472 997226910 666073577 248071792 682810852 598134524 995807019 977354192 82832334 833924014 268813415 8991600 423988644 659554958 832964852 309677698 436356228 44514660 316244820 431755939 551307280 823531809 916560701 239811478 180648180 392769797 238534474 647049644 64747596 622098344 670604866 106129738 193930014 877193699 481797000 961129959 878919697 326355741 330879530 173046498 106732221 519652098 547426458 514584876 478239526 375515720 585045406 996518547 4314337 938130917 940159380 195574433 381522974 661584625 58485452 187043789 538380286 725133423 190297459 256566808 708776335 722323960 393336486 101410003 464157258 987178383 203683816 6986380 869259062 834728873 575698643 69479909 102348063 450267893 670924186 265794323 885729772 639207425 223096756 33781772 730046553 557229086 169252431 704364808 582570674 713356772 388439020 559221201 767891036 455132454 459549785 622717017 889880270 617924265 14640871 804152458 948929554 163613238 957151736 822571602 110623025 793567237 339064079 908661511 960587367 319927546 199352976 991228185 73839861 767229675 295420985 532259019 327765793 192742040 274682419 582543416 129244340 288338862 81401211 822318800 917598758 858616539 919975022 87060770 172890601 726052753 288266060 148790688 623090135 597619873 73839861 45687807 582824875 622327053 749434505 351906572 914018852 499069181 121565884 44539235 334247254 262610054 733258326 559377198 922707036 638767849 843321342 216671674 172158761 643061746 87625640 309199529 897916025 111953929 457764991 251587819 231883715 149181759 141480927 692744409 889880270 72816262 854618481 575932082 766554473 169651293 484428076 149424016 595004375 22837246 704441381 186988284 847406541 750495961 743007075 740539742 663846540 759460712 746395196 450777289 724677933 756782347 526560110 397263883 253672164 154888998 113702197 717876219 911536901 500069058 855086018 65414838 397886144 873608238 772621903 55878403 958807111 615648474 666525767 851617974 305652535 82188736 541271770 532614649 199199314 259952854 137290621 347313873 315225511 209935069 741622790 926283878 445261790 574974403 206674100 122424999 913985244 202620857 40761625 468128566 824333006 447235483 908661511 190317405 840719491 502959907 299933132 44406641 754782410 657172442 477003046 569879270 812085067 782350213 645726081 519850114 681987281 450023501 336823941 171735454 379828427 399021441 227205383 542149410 856449122 859716163 180053178 464675217 575351641 209935069 892502461 894968871 7962006 650478751 767018711 305084410 816749833 845979811 970069180 316244820 624738554 32375922 653721939 229044161 694071695 390584988 648222328 215942252 209935069 50353247 624515974 78894525 392539225 936095444 306959892 682079052 822099193 253672164 752034833 713217558 719416172 596056881 938841867 167908308 249279076 958807111 113365204 774526406 206915668 475199127 316478034 743007075 821039696 548951569 663707664 707282470 888363323 434354689 391340789 705363518 914782996 614573160 881298649 904028434 149624114 883442699 914625906 884562807 279068596 85772685 468205474 934663808 318244739 650159381 591112742 785972176 178338226 164084139 179342443 955405927 335256971 508703445 417542058 901072025 217545462 267362140 892121734 858833076 657957198 689846841 215502867 581618221 661584625 509638976 388439020 552562539 715975322 779118994 415678099 303432075 914345187 260126757 597339149 464937674 854211870 14484343 726529070 50066176 260784630 892022323 892447640 239642863 558891868 956831682 229061145 919397251 699642713 799131552 711212792 985235970 569479799 206674100 626510734 29677502 977964499 419378945 9579364 181340391 603084254 32444696 92337478 473848396 279844643 120825765 9579364 12686120 218639536 31642902 236529990 95450589 508338116 181309296 621380200 547059037 232260080 208311955 577054359 731640472 110347090 267689047 642893639 666944928 27019841 200135663 783919366 577418797 283921209 453051126 85593294 29036266 890668835 935844360 900042969 264552659 909454987 825563694 931913674 170850983 428689888 49808970 158410014 884562807 389814443 55520299 854610463 238557163 323594425 294312274 942271992 838372130 949680991 102884708 996070039 351093322 310420366 703351130 59053852 70423 836913248 492001619 483492691 378326734 939357958 333502397 28237928 400907941 309665803 331976226 175579721 107575655 528075150 462795099 126151481 296244299 106129738 608703491 771518289 590091443 248071792 113570806 85628837 53383989 536909087 608703491 623627406 498471688 869259062 906412493 224206891 872160203 161810784 249611755 56399673 769648575 298973198 715182955 924243081 754782410 924120547 970079337 79913246 728834069 346153013 619392806 970079337 985318505 261772286 972118206 339657591 577418797 31115544 410914713 81863854 515667681 181061043 822099193 662666818 811003316 713315905 517207322 115638551 566853751 188079893 703073204 953573082 60170425 507474445 197381949 299851704 343724630 983930175 856205911 377041622 160735073 829692135 255866621 890487116 332701006 744503077 217545462 566900631 892121734 382293322 615677308 689403602 474679443 599195882 517821133 272577712 741871506 727954761 693917925 271480510 642448466 69124371 212973675 409973224 685635040 898017556 402171857 135904170 591885275 145823899 950917629 904731519 114783109 960419646 738003643 128586283 797501542 159879307 711649395 14640871 409082342 554014196 637555883 564253156 908965387 411461329 948389751 520546481 483976487 351685336 421556683 955187862 930691132 319355705 403810589 889680918 560180239 9789829 759056116 975318643 671753094 903001492 94204569 377904018 661903475 997421277 784911924 1997410 472448047 628533056 12100035 959815330 914460279 540571239 197628046 3588375 425697145 374829013 985235970 840719491 617626369 233034793 319791841 440383275 522817710 586230535 250034332 611310352 436164620 363181748 559826379 138932130 148210270 143005619 245828544 18530476 983479107 87338502 642893639 746395196 111341182 892502461 952271860 259952854 92762280 960037658 453547005 738747750 473598912 208336950 548433146 445557757 224622492 957181171 474434198 712347955 987971909 708751 975577553 215502867 905266125 870207782 942844094 624515974 476056555 525850139 396094557 954346318 367128677 102348063 37361502 557707295 224780043 818131605 585045406 757817319 1849529 52706961 867682504 771518289 361800661 823403707 996027392 310420366 221197630 465864903 238946565 141480927 542288401 744725796 746351207 126174714 64472751 119275992 445557757 616415173 519568459 620797239 550199215 665661938 269834060 197338244 289351929 581258803 311374736 613926124 753562574 420394446 81166415 12501596 149181759 327765793 481477522 132708274 563452223 103617064 266840942 440751087 567656575 260784630 688926432 187043789 156448884 560187826 863779255 944140720 607190513 196582719 200488786 224099360 505312617 885949574 608726602 277497567 276063075 904068334 753436941 116783336 614477974 315750738 326025234 509862145 599501228 173854990 120825765 651345135 325694288 178320187 459892061 863779255 293814950 542288401 546584393 814234080 895864350 563325773 974607726 785291611 306594022 858616539 961160715 865890475 991683935 982039530 794896369 731402868 256541533 246231996 937253552 355930996 93562877 119260572 370586573 132808689 456620093 759856178 720461925 224206891 831324232 656596081 787850780 403328214 35017556 640284035 496374196 57622495 823752062 564184811 118945983 667589325 556816624 7455531 29642358 812157405 394069130 347731733 913795464 951419697 505495188 855342522 689101452 699591651 186215451 435455359 277750457 315757140 444989359 627229892 818131605 438717961 450023501 995521533 184049420 88520790 878267752 279663853 787066791 468187475 101518263 734077184 957452072 815437524 132956382 737165173 534060351 592548069 950925875 544110822 423067490 11942428 620908438 293048515 810548036 765700497 110477100 678439153 872871517 532686342 792199781 270796526 288349510 873954329 178320187 938130917 941946673 771455790 27564176 691672490 61977295 682810852 909005038 411988656 266602062 631338285 791536667 870123638 92941166 242088182 593706973 30098933 269834060 268200568 518636287 773863925 286969296 951140674 349648521 699762292 780959982 486813735 380211567 401700185 913438138 193091527 773171286 195238415 867108593 989893954 958645852 304687086 427116544 538899541 960037658 171206101 386648749 245828544 343123997 507921281 621126494 751979361 561212596 431706440 421294986 659554958 298985743 452117571 447633093 64747596 473848396 251468784 454660890 402513855 259125823 882223199 306594022 381374810 232870833 101518263 737218109 784537889 167525206 882223199 140601393 938349663 582570674 229231430 533073923 431432359 772914912 275174780 468205474 451560800 35114805 470547145 637555883 741082988 670357614 330678970 701617846 817509779 536298542 831324232 69124371 288349510 957392180 417570046 991651050 592342611 259952854 569879270 444502458 316117612 973780364 634609107 568021770 931401172 763495111 276546782 131293000 635707097 826583519 951140674 512965180 35905145 421130402 322377909 613108787 620908438 17568796 693917925 16498498 608025670 274044470 581618221 790855774 51668993 64472751 671157698 296372695 756883403 862533520 134119246 251214319 673376235 766064131 733189543 708751 769951693 951308929 588360021 249279076 810619438 786193194 947283533 190518462 17551290 670008603 463978538 920327801 233034793 455436685 330879530 183090074 685990293 771366659 507439477 338840277 134130650 655737064 318095306 391945035 128274101 364878980 230623541 79465500 356779688 444579502 33485421 51214252 205353146 614890665 484185343 682895445 229983290 357472945 633743883 413338415 512595478 828040799 607708723 43658180 571336957 942557803 205312683 966873422 404791307 964714139 984177899 164269532 674115130 867682504 831087620 198961108 739993618 311376870 440937448 556940415 536832785 829964647 963226961 855400000 428874628 87606923 654499905 290136374 443926841 908502081 351906572 392045588 323841451 770965764 544635952 402171857 306167935 591202266 660988632 130560454 146215244 939464133 400560809 972603452 554014196 866299792 246406611 45720878 495261210 404670881 809627800 30351439 280819281 226804901 463061598 14819313 202930840 267689047 610999655 251418463 626671882 640521890 291619543 358586540 776806258 549240123 669124399 126750777 414812061 385316675 513275688 33608138 726062477 44514660 678401292 597041049 269005893 550182649 939464133 838722526 833891546 194738988 126942402 955405927 188011736 365572937 577377636 212442487 763969673 246406611 452856504 503376723 339261681 876136418 930649075 993732809 252006196 471833346 578491038 489252977 94529018 598516412 120644927 401700185 359843759 583928321 971966382 292432616 698648173 246896386 812740198 213742032 133578092 126750777 193930014 810780546 5226926 315560044 545394304 341979252 286954042 336823941 687796451 215117545 194724146 687796451 94204569 190531398 353680420 519373057 280492994 849789595 552562539 333469096 694288134 742784179 648222328 671157698 861845489 967058640 804772596 720838049 899164744 561871206 146334028 515811834 380286765 382387647 718578207 15767643 216708316 580703002 244244963 548740123 286954042 655072369 144061225 778202854 173331806 172328397 602946967 157051224 452522913 920293966 533733346 238365103 113718969 159917509 217545462 380743723 20593514 814085226 777599463 786685122 603529951 316478034 787595718 507360648 398673966 58361869 53383989 443379097 442250041 484032682 639683180 305084410 741247198 863891495 341186216 489500347 964288958 790698682 29583194 549577976 815757031 126151481 666716017 989893954 151644485 565439429 959991697 28876123 537394553 998856933 11677405 427554634 303753583 369866400 514985740 990719695 202930840 125694366 489500347 459549785 657172442 5226926 637121734 428744274 919966051 704219866 483592324 78989626 792657048 461139901 268200568 387050663 204988477 412969130 229983290 270238853 380471354 179174542 760550747 250034332 711033 5621264 590091443 823403707 297753111 617034160 646292761 190849742 554014196 837931720 17834316 287076745 609515650 541228954 464184273 560715363 607014834 382400728 592855228 761709224 908213969 209962150 984781783 316337977 818131605 449943051 390228435 756670266 252753650 560083947 210010009 406518219 512997134 238557163 197700342 528670985 259125823 400598057 682561229 12501596 376356240 462795099 195574433 847558320 636991704 964288958 15767643 572100510 617066065 960454554 783919366 699591651 369866400 970416993 649260409 106732221 425621666 680477696 705363518 377904018 290775947 943154593 567442879 6986380 33223562 349938974 860440702 173331806 326355741 6986380 910290047 278144763 496374196 553983855 202019081 90938530 790490513 246406611 161842598 189716201 65001193 695868455 886835981 205718954 991228185 499947108 104144854 757336861 315096082 124412129 283599405 839830132 701119742 56250174 824892303 250653360 674115130 192747501 258007443 418246087 191768190 517473421 223843229 574037992 853867634 142572005 833924014 900393002 540134373 509784640 532614649 919975022 309307017 659921020 838175812 939357958 417868015 179058518 560343402 586230535 259848496 264724754 69942571 255052856 436356228 984177899 649260409 369262782 505584305 389212788 424985165 907938238 969534869 267784122 988068787 464204081 898104564 476731953 813378121 278939304 303432075 523139540 453784055 827859456 678284060 323829946 250568218 557229086 501382976 483326661 217546110 21520904 74388346 87112445 303280510 342224873 468187475 80168442 567519004 989848830 314477510 898104564 573360727 631999248 267162584 762999129 369043456 964714139 398024723 855086018 16298729 393581281 431853315 360083893 319927546 593248117 611310352 482236394 686027125 466991961 100289791 250268130 936104862 343554958 192666025 309307017 661154467 56399673 675395168 351966852 309292580 708751 524273512 699591651 267689047 11677405 523139540 456313393 240357237 719088036 350779152 5385098 247220722 689846841 301059508 492620156 922707036 189716201 813319210 977151155 357655314 3097549 872103597 224698552 490280321 131171351 85330293 720461925 680477696 958177427 100894582 383008147 193292683 725628791 555546429 865647751 741622790 491012904 787782146 163417158 255052856 987511774 816749833 655737064 431003796 278363762 661958556 439812150 641373720 431432359 387246481 244850388 888387334 739993618 940752030 889680918 130767407 329373932 857801647 372909840 321347669 132524740 92762280 247220722 790343863 421573887 267200358 597198944 487658713 388572059 82188265 161680003 302288197 920327801 749438363 356851957 695889101 184345684 503376723 347823879 890487116 35017556 768149844 956403889 2254080 388439020 955187862 174975441 725133423 682810852 570131772 689403602 896719815 962223044 855193777 373436147 281890528 522167392 87112445 240825535 906691365 489130738 940663788 674542227 648412457 119415080 742223817 590146562 405183113 986584560 744567092 207549397 889361891 653872353 588360021 682079052 887566724 311966060 299568802 704095095 138936113 623627406 626092991 305092307 609034384 263252601 401456345 259952854 815702195 492753997 284322000 993945511 412155251 753711643 228263883 745232220 811162412 327131980 978209200 142309877 432659386 723636806 172652081 677049963 228466535 972747953 718934949 910290047 516348298 107808978 314477510 165255667 724140261 447283784 37435186 790343863 657957198 793088439 473693206 23418996 382785220 352019725 762013651 46974505 986584560 514308534 814536247 193091527 948113430 510165312 615674959 310517189 812676261 553135375 309024963 256541533 511486436 586189648 866275712 486482457 51593992 183548314 406518219 628849748 413228688 326992960 112280473 16642774 357881948 315852411 81166415 759612529 52012162 609238007 833891546 536832785 526582844 631639650 194407888 702285871 176214541 254882776 9686570 399562598 693989040 883594877 631338285 452856504 405861846 252006196 932615272 147490697 973374306 862533520 776806258 732449157 776733267 149526166 37435186 227574043 887566724 267130391 452856504 99144276 266272826 821824301 524687756 865660393 254471401 937354909 335297970 999646466 351183796 342983554 411461329 59053852 499280784 853865390 61400453 824220285 674115130 332324779 675087462 386668522 252753650 56734569 122424999 572223703 209847334 728142005 14819313 884156719 926614363 741247198 762734206 36498161 492333146 180511810 33576867 611002601 924243081 885165254 243210728 508440691 757817319 105767345 686421587 799084059 690645347 803796397 558471522 607190513 320928601 732449157 607014834 968939998 280124843 886312393 21692697 774715366 543492246 664030093 187043789 881938727 947133065 588348200 763787861 996466367 815437524 23164280 263735956 72816262 788890047 169651293 565134851 418246087 327384116 440326361 520956931 45720878 85330293 598768149 961524215 200179854 862533520 682079052 798748639 960454554 4353081 827859456 855719098 275826341 738819955 214190727 608928141 380825508 151116777 628897356 792301752 990839687 251907555 961129959 173476277 325694288 56629975 721965838 330962701 26402404 719576691 29036266 772954160 990774808 963535716 171104644 83596261 484094974 883835529 107820156 95503451 393493552 315366278 972747953 859227281 761271450 256575995 355362277 182805540 344256437 800717123 609515650 824380058 790855774 149624114 570336807 730046553 741376229 472125077 701819021 380743723 3111695 29583194 880006485 912569692 47560661 372909840 850249845 239162507 590146562 332532417 118945983 239888423 777135847 289351929 267217986 397187090 355515721 880039838 175722742 52250386 634319834 948929554 202019081 757631259 15204737 962075597 790117046 234542759 209820542 317435090 735948512 676130202 560715363 618872936 666944928 57997134 682810852 459226503 666525767 758660435 411714755 295238338 960037658 705952653 634685337 977350885 368095127 673162053 128586283 238557163 731850604 691598812 836505273 91670966 190945250 414221178 920327801 834156389 384131815 649328326 314808067 573360727 28378009 387146197 98687602 510985571 261220091 807905098 646460514 180123600 713356772 625340233 57212848 139770734 979264750 297533239 401527487 627707810 203948742 626970185 189287450 249974462 259715114 264735222 471308146 678494167 8603590 259715114 615677308 716084460 235183835 268200568 344289427 178338226 587216291 476884423 563325773 878562164 568021770 667786601 317934143 179342443 766271338 804612667 162414246 87544649 701474370 402171857 416204454 334714346 664760210 46214083 192089296 56250174 179058518 137809602 832345379 374829013 301839364 28378009 902926944 409082342 963954978 685100407 831877484 43296814 511962449 68151071 602457065 73782650 134119246 366559017 786294584 835454267 280492994 711622133 446469999 548449903 997508282 922986354 459892061 167794990 87060770 446329057 650973466 464771447 964248231 306216861 56250174 782060892 685045316 265794323 512262240 888387334 755329756 776847680 33448384 546584393 210371454 451277265 29329225 460449520 365572937 792657048 143005619 695611692 436164620 153875560 746351207 996518547 251468784 60807748 145769017 518636287 766723396 512997134 288349510 358007727 743007075 183363850 214571668 438717961 182576283 206558172 943526257 627451717 55878403 904028434 582543416 316117612 294312274 393581281 264972600 575320847 498561388 772430279 424985165 499280784 633743883 722323960 672193907 980747824 776827817 800413183 983052792 857367584 194407888 874754055 104893837 753146142 356248329 698648173 151854626 400907941 594002418 567442879 631168658 653872353 614741012 387811756 85908862 369616511 560446957 119260572 855400000 823182841 87338502 768024129 130560454 574268755 393116598 384372482 814854596 438010733 782008059 648558682 73839861 917656269 788565231 85153464 124634215 161810784 854610463 607903236 511586087 749434505 888360095 60422189 699762292 597198944 730490543 385316675 249213512 309117493 815971091 428952411 802989717 936046129 473693206 73355194 996942435 217188292 33739873 529354668 723154856 838406143 264724754 983910721 100571552 749434505 944162334 260098960 89833033 707282470 339940039 401697917 188011736 892049425 71896465 172890601 417030305 626970185 509784640 414209327 247762164 200492809 536909087 198605082 124324948 225282293 763810664 16238172 197730871 6986380 332532417 231883715 710840227 841089783 726101523 798704204 422463137 394069130 293249724 37435186 252693314 198854353 367128677 90447245 681033318 26417366 780068815 411569380 717244409 135276313 741247198 930025010 202620857 348492981 925920080 721360255 939464133 338572695 944140720 358429939 929950543 100289791 29419909 232042494 406566817 288266060 780959982 207549397 383114741 922564893 942144547 302274405 154888998 513275688 618872936 592538952 576910474 993729565 391340789 995082130 628533056 760479837 710358949 727773067 634605274 172628880 818131605 784888241 770885599 216663601 698423443 151653995 917598758 578646572 435455359 926383726 174675267 808791735 825721530 248393161 618872936 188597773 997195252 551307280 384296691 212977880 635418526 227119210 408547112 959505218 731531344 427020948 663785507 507474445 646562408 93629177 723089378 264735222 880765678 45004726 167932819 744503077 616208593 950030898 753269448 317099649 73156407 289638495 29642358 775775365 148302427 655179284 299393538 879756970 667997366 189708257 881048964 69479909 103807406 132120437 858593940 703073204 752519899 844018425 667997366 457764991 227698284 9579364 931587040 678926130 977151155 382293322 81095663 93629177 377757217 311120460 872103597 913985244 995807019 453455633 630876037 310920947 173695769 48563029 468717707 993091261 199569265 990412668 787453728 61466476 180123600 788239486 119688172 520546481 227574043 527354323 8908392 934663808 849111782 232434763 674115130 396233741 79865398 176689484 420394446 700147339 437130414 540571239 446081101 744790892 649260409 700089141 361703492 301691460 555541236 265227120 678401292 832687599 124236362 89635272 923129979 861697640 44157032 929494216 433158646 727831245 288686589 842669363 494706641 397263883 417542058 288686589 526917770 87060770 516724434 66222960 805227781 198325455 790584023 582423808 926614363 46282639 320928601 45687807 746024438 317934143 73782650 764991448 746975324 740539742 116783336 966873422 480387440 722832406 359322884 448940594 984028906 387972540 301724228 181938030 539721253 189716201 751586158 600162938 631338285 962416543 167794990 158726966 720307744 178881338 68574662 721155256 448290624 117377908 863674900 960419646 817283361 255052856 436966726 659769915 978582159 779435019 773813511 970220100 107808978 163018950 608973577 617105125 651644790 36469771 730264987 967589305 600162938 598801584 565361226 217034447 768017079 710840227 892447640 776827817 644541370 167908308 968556641 548951569 898323419 920365121 867108593 699591651 689846841 306959892 564253156 178320187 924266382 264156847 565361226 828760079 330696951 103807406 222393322 527319796 646468218 192645058 694765181 278897687 435455359 678494167 422680817 132956382 78747617 151116777 137115706 950020455 344289427 231133498 529354668 553160761 783919366 219802791 637121734 247762164 463968340 411553572 523323726 597983691 884058123 315560044 702285871 641373720 810784684 189285677 263277201 596362664 491012904 608973577 804152458 740191941 964998948 287733226 659382812 628323873 966134039 39290274 29036266 627451717 680228220 648087097 681323757 793199056 799002890 110477100 943408355 58593532 823531809 741622790 167535364 772430279 787850780 835184856 222116249 859847704 416802463 212389715 744503077 43658180 154844116 33525687 936706046 868176165 284629587 823403707 659554958 989513413 112798913 865647751 119275992 706772155 523086816 624854784 586116774 142572005 844172942 404495670 694071695 394001727 998119538 567442879 30301133 739796743 421982303 698931608 964329661 292834712 66100936 880029083 930134374 512258861 139721772 697870062 496238050 704317244 813414888 96159325 915758682 736226703 157334018 367090357 213742032 436629293 620543182 232870833 267784122 783584290 188982938 176986775 943858896 190945250 110477100 826593764 751663150 787066791 974607726 88520790 405211363 895192336 554157262 672224576 995807019 418943600 943400668 914842146 218268412 414310733 497283938 24302057 319927546 565179997 202019081 998097657 804210053 436629293 848182671 71787310 482658484 520786714 741650673 259264628 124324948 920153792 354583476 458873868 130232149 316337977 75902075 784888241 390033319 302541073 238248119 466259378 598669512 154888998 774534102 819030496 943099642 255995014 90828708 279280125 445674227 924120547 108106381 887566724 476056555 472162344 531400665 64472751 963954978 489603668 883334008 99693668 994113516 410935643 703504200 117686882 420160307 259848496 544635952 12686120 252006196 995734937 66575736 359322884 421130402 166833618 105852443 459153226 968452703 433906697 78988322 744074096 837397880 40987007 157334018 282949118 197449106 8603590 105220781 277961622 764991448 232042494 672436733 343554958 704219866 648087097 428744274 817135933 407143332 989513413 281924586 709304768 212333910 506185191 536594851 909228475 560180239 208290005 766554817 375515720 459532919 519113787 305652535 4353081 473383951 788674724 914641322 753436941 220213682 501396072 23816368 918316207 265562253 892502461 455219701 832345379 190531398 181807069 391232721 305728713 216671674 799084059 914842146 705363518 127406784 988813198 347632676 203834002 906014518 380211376 619392806 451277265 284319963 768024129 240608845 812400744 736999941 319927546 279844643 195238415 113975767 982530458 956831682 330962701 319576043 831000470 514516638 875983680 634529022 977367481 92140605 780068815 228094086 913438138 422657201 957452072 195126498 268200568 787843011 149526166 367348812 764259519 594727596 570336807 12934785 810174413 911536901 540235952 726101523 452095870 943099642 192666025 58361869 16298729 392539225 359843759 892722963 380955396 82820786 574803352 528476639 225282293 478239526 663140441 397886144 445445915 360980625 770885599 347823879 336111822 14700170 256541533 644206022 666141979 105852443 546173207 31882415 243817675 12100035 951550858 309665803 110762787 325114746 338572695 230792741 584392244 707841194 524735400 239186411 791178147 914842146 777976325 402513855 169147074 101581750 427116544 544243634 966134039 873818921 567258784 880265015 100252771 473848396 384379890 767346766 167908078 462438883 2267895 354599755 224698552 691103807 361800661 264972600 349491094 645653214 225392285 400560809 434154654 30684329 927504629 668356247 492149280 497164702 451277265 348161731 347313873 168344050 103807406 128586283 887936210 978532258 56399673 328319663 463910045 727954761 40180901 258069963 8514809 101995837 626709003 892376032 272450454 886835981 463910045 74105318 237451076 630666315 774374924 150801484 532584882 783584290 84035638 559236516 89154951 941946673 662348623 489457130 448290624 575907461 577402271 238365103 353685083 598516412 769083052 494706641 826593764 465432120 347632676 824948289 81166415 164084139 684257398 288676380 565439429 229983290 841435251 386648749 234902148 165606056 582570674 191019940 823531809 925920080 428879748 679273097 667897873 60807748 834776242 92703987 891149152 264552659 161190943 260098960 28378009 536298542 908986967 327320447 466991961 308279709 415102606 110407783 674192648 634093431 892013995 665924450 698863904 270796526 809629583 227739391 137972836 222052670 389212788 82820786 567258784 325694288 873033123 426562717 960494774 199187960 155364325 428108416 16498498 934317667 59477311 561871206 738747750 721248367 6074683 825188590 17647641 219639793 197864332 443984746 492414722 175731651 303939627 217188292 769648575 814209757 495512303 859716163 612989706 758068661 606535464 520956931 400034263 215068446 529354668 240825535 405861846 379511196 923129979 733884644 58346344 538899541 388851546 117916570 59578663 953573082 962416543 624766555 830330322 422995827 934317667 181340391 478683450 43296814 125818812 463978538 397590059 803910518 632418290 556816624 253672164 250653360 529994673 449943051 597619873 61977295 63428356 389358224 288686589 768138772 356248329 411461329 523147876 753284194 27564176 572994337 605045503 81095663 35815094 977089088 943099642 704317244 641770480 431228734 956403889 29642358 56407269 242601592 999510217 233034793 889680918 585290460 66659514 70449112 740718996 224954976 464405816 819030496 172890601 892376032 100430245 768149844 82520007 680855333 819585740 294071211 419378945 897241728 389210030 934317667 624208996 60084375 560513268 711621501 877609428 698931608 605598679 300466853 390228435 451064437 473574639 98960525 910215344 679137362 570271244 113702197 718450902 797571073 377862640 904417649 415102606 464184273 815257954 434354689 277057306 563325773 920065193 665924450 645653214 449301490 770965764 993732809 812419126 996518547 197628046 64594873 72021839 534606800 441956221 160735073 699817175 549481338 287381943 535220604 780475587 938543122 690406163 426908399 467447872 144521246 474434198 766645808 986584560 411373914 223921663 831877484 613526821 691672490 878267752 223924806 435455359 473047610 778765033 124236362 385888930 209510394 289638495 98732577 466991961 237451076 123920110 447820310 960075280 197864332 740424690 923129979 872010932 327384116 266502803 917987694 239186411 933781242 897695623 810174413 87625640 89154951 864562613 532409687 635418526 514642995 213230748 327320447 614421240 578345192 31370513 604822790 561871206 622356349 205377948 301995198 284182474 120248634 265174728 738461607 982248912 967385727 176144086 657172442 56107503 76881051 630445335 621290468 34708050 724371560 600936263 461916368 132589201 129343380 128586283 749291380 247762164 223893210 666092329 510938204 822571602 362345564 744567092 332389556 673212605 214571668 646460514 165255667 610063072 758068661 90205660 514327756 281890528 277497567 812545734 738747750 37435186 9339689 5729841 309788087 61949058 426357987 512698301 727831245 618789317 977729124 105198281 308949550 475702831 471674957 369025046 205718954 118806460 275826341 362471681 375390536 276960060 525024402 13153247 752519899 999653626 942144547 572210787 832687599 22190984 888387334 835709956 823515747 649805268 867682504 573360727 835582793 573699665 361870133 48420421 486304498 465864903 960494774 193679555 176144086 947696425 720838049 420019255 154149134 404900912 653894491 282280759 693393574 122424999 387811756 368496531 835582793 250150288 227605628 649260409 90828708 516150775 669124399 430209478 596478318 877193699 628947259 101410003 424548681 157337709 570271244 472711305 536585486 993729565 507474445 741805743 753171956 760550747 297925677 295315244 786685122 135276313 340899503 203942121 509862145 241704301 875067271 875899015 704095095 596871223 865660393 947279692 746351207 762702304 479556373 26346309 188799448 516904060 623627406 892022323 394799008 334714346 469831496 750349249 703073204 186988284 171104644 105220781 338117032 618872936 982879511 463217611 419427438 512997134 298300071 208182956 566360189 110762787 532614649 600936263 489252977 721965838 171735454 722323960 29642358 317435090 682371703 194724146 699762292 450267893 145853273 905623941 595004375 996326182 566900631 642893639 249611755 942271992 723259457 483502744 351162803 953791872 556816624 256541533 962097171 991228185 113365204 373271018 353032689 467158904 185161977 538899541 703504200 161196713 217546110 113975767 7013154 309117493 882456106 856698185 146183600 845872351 367090357 814854596 132808689 676193995 209847334 685512187 652647628 873033123 379218704 755329756 540888359 709759009 636502705 81482031 910290047 531400665 409082342 176069986 691103807 526646811 425621666 197381949 720307744 643218581 934174158 742383757 781220664 606808899 990615559 125818812 196660535 774510532 814085226 426813070 244952813 225392285 790584023 306216861 319576043 603229253 827578078 175731651 889307767 952574225 595036279 74105318 172158761 726713969 894560405 16079129 819131667 29092482 373436147 267689047 89013065 223921663 843034984 173854990 219802791 985805134 349491094 132271955 476731953 931649320 7221291 727169356 327765793 885312429 689403602 919975022 515199300 208890459 576910474 117916570 72816262 96673896 693631266 774526406 706772155 774374924 769460243 246726784 687213754 668437990 527319796 305282600 428071291 471722035 718934949 35185008 492001619 604020587 749434505 194716952 472339999 812398643 883594877 988722625 722087694 801409198 408631358 365853060 780476 230126727 625990358 594105616 516904060 167856660 621290468 472162344 268200568 29863733 539319088 635115246 74105318 382494544 575082915 801009499 572100510 812419126 733258326 938130917 585862918 957392180 192666025 143321119 113581183 405183113 280728194 902064034 620908438 69942571 455566195 15404893 634319834 619035643 911126285 834728873 813414888 633223684 739993618 489252977 161842598 88244339 719088036 592398796 447235483 793088439 420160307 892502461 602529257 477651159 382400728 501602670 634683136 374080883 621149170 614561131 57210434 870706542 493523186 750495961 273117142 32994753 615495811 703863830 16079129 528075150 295057902 879711490 546842413 786469692 79830684 492040275 515811834 541933893 854771089 967385727 965295649 846250560 132956382 911536901 143781808 499319242 305092307 664760210 772238817 914842146 299933132 310813775 68153518 495379034 544635952 7455531 140607648 669124399 138932130 30301133 275949763 212186584 233313131 516650780 962223044 143410362 316337977 677759074 759729639 476891549 564942054 749952793 190849742 301995198 310517189 287507022 427116544 723434610 914460279 130681495 247379936 508684375 177813141 523086816 866049783 507474445 849789595 476428742 422995827 320692286 502700414 675395168 134752355 46214083 364878980 670591275 595802491 724916300 827859456 617924265 492031763 33485421 657305305 919397251 673162053 265325896 411244769 296244299 251589259 281924586 278897687 372596949 908987452 89177410 880006485 455566195 166757013 978955126 909154394 690645347 957086375 784470358 355515721 182805540 832979725 346948324 95450589 317453486 760479837 701819021 663322883 278899337 180461516 112782806 87368065 851221731 201188076 208706801 553135375 990719695 329835419 233251378 771009579 309117493 867095048 586793567 884006689 498678305 86870980 208290005 195279072 826583519 297533239 471722035 250414601 183363850 908213969 417878317 665661938 203373170 471712214 678461570 371966706 855719098 749438363 187921426 835817953 445557757 552997171 29062331 794896369 916983262 327765793 275949763 532409687 168696792 396517154 361034134 603340710 905623941 762392720 948929554 7203477 777948978 596362664 4475760 711166608 139721772 351439552 711621501 326992960 199337209 557641316 125994586 452481824 790490513 128274101 203834002 650159381 890583877 581258803 510985571 298300071 698863904 841257996 537054158 174120506 138653471 568066909 369866400 724838718 523323726 664126617 305469242 247220722 815702195 572100510 359802288 167908078 298300071 343838056 316117612 253672164 112396307 104575860 119199751 359707817 309024963 93629177 261881274 518583385 62268228 463074263 650542665 265227230 512286536 272502984 464093382 167908308 926614363 18440543 825718553 154142244 808903382 826390147 560446957 810730357 74105318 490544456 590388898 366762884 309792018 873954329 78747617 434745449 168024415 217651693 950020455 468385477 705537029 602360905 545223103 542607444 778963886 228000369 626709003 250644493 603529951 950020455 516650780 958326576 926383726 264552659 630165875 228897489 347632676 21231585 9339689 331900744 391219534 592548069 396517154 10571430 778202854 914292700 731796874 876597054 75902075 368636485 382494544 661903475 647049644 284177728 550813348 157428808 475236645 487394853 343724630 878394639 943154593 288338862 876054182 339676584 219178563 272716401 648915259 683664676 173695769 134433213 817797466 170372253 857090815 567638487 782034696 329142385 773512522 677759074 353002204 640521890 594727596 280124843 476884423 507921281 960454554 534518575 878804420 540235952 181262713 248393161 233332213 641373720 787782146 952574225 608703491 985318505 901781673 471712214 82188736 808242329 323970236 376899224 778202854 803715180 773813511 791760627 814228043 743258777 654385775 429165033 176214541 514985740 538636029 761271450 438630753 631639650 433447483 245876840 226673439 163764912 266408022 477003046 426069641 502779916 570776827 392463439 227218401 765465955 948929554 829461905 706772155 188802296 996415305 522167392 546606411 30351439 709418144 588733811 359107939 510853284 240357237 678291966 44406641 859432248 738996404 653025446 169048486 224206891 822356288 468128566 423168797 132248484 959991697 775714082 145198789 376899224 769291405 495888567 424093157 34228815 426069641 428714412 752519899 288338862 609237951 175573396 993732809 732621225 490031170 824388656 1831389 502959907 767505642 443926841 110477100 324811550 968585418 912569692 408547112 586793567 101533387 190617654 240659669 193029455 925270919 989893954 622141992 355515721 710358949 801888810 386915292 715445737 412124180 124634215 481294839 697870062 999653626 191393088 761271450 209022875 197864332 228000369 248453729 768149844 997226910 14281208 26764655 410935643 70792490 945090883 668437990 978548841 136280040 668424404 334461483 151908558 841257996 571913207 974809923 920153792 134130650 689203021 56636843 680092482 711932887 391909991 238981092 412969130 161810784 752981169 194738988 358007727 290136374 89965595 363737391 168024415 251589259 120644927 560083947 88750705 209752506 591869989 762999129 827859456 662348623 709584816 485644097 601245418 698634449 498285405 793088439 223893210 424548681 185161977 485644097 780475587 720021333 99870520 243784306 956831682 211017061 516050388 744074096 702938584 719863057 589158295 644450459 916835044 639060490 97937401 275525456 534493578 668797597 991481489 261365560 914762971 750108844 280728194 802239266 416204454 148302427 442250041 735055857 335184771 230792741 13153247 78937211 373831895 43658180 543483688 615677308 720021333 638664525 892013995 832979725 528476639 370904584 678461570 814848138 666752585 425482678 255052856 672193907 239851044 194738988 130748149 872871517 461139901 560370514 206209771 95503451 384171104 814059348 942271992 543492246 975577553 639333943 962075597 963535716 266840942 469536891 763387595 694236047 173204726 736999941 106129738 724838718 683941034 738669950 144061225 505075478 902955471 49808970 730289727 670591275 69124371 623193147 361703492 616415173 146420196 921401407 81166415 608025670 32768680 305084410 672436733 789991995 637121734 378326734 817509779 50353247 484428076 832964852 259590331 410287113 538636029 252693314 260784630 295107210 71870116 265227120 988722625 154470635 30001504 407208560 366762884 483326661 100141404 75017068 787453728 692644806 952271860 528699284 236321237 786469692 745351886 640094532 369616511 539895653 393581281 540250629 168257314 726659156 164184179 960587367 489981592 100430245 208182956 767018711 934461948 830691802 568224063 603628000 158496583 411373914 380471354 360083893 947436585 351685336 821274633 457764991 252115701 616081352 730046553 60511848 721172947 868176165 711622133 920642846 641652815 768362806 212973675 339060930 216009673 705759680 635115246 158496583 108481641 94543457 104575860 575082915 215942252 836913248 213189513 210682032 795371025 2267895 407976225 154844116 401279887 63336398 577525572 768017079 334247254 563452223 826390147 400598057 487394853 419378945 339064079 212186584 44157032 374326498 556603686 166833618 996455605 117517553 319927546 787785760 961028661 834374904 381374810 48949897 982098718 511962449 305084410 791536667 871334946 402697337 145853273 806386122 46370264 404900912 960075280 431003796 188412017 539172105 285660749 176689484 808987555 592855228 428714412 506353082 158901683 675395168 101600824 711649395 584678561 429558578 56450978 614561131 7733931 215916910 982324277 995207613 466481471 895192336 650973466 211539823 447633093 985805134 231584079 976918313 474990991 535389634 743033500 440326361 170330891 839523551 437130414 888360095 228263883 670157273 619409505 760685220 664497996 130767407 365997603 310111008 646292761 23418996 477651159 26158477 539319088 227698284 449415038 18440543 132248484 55496604 383865111 215503619 821824301 768902238 988648474 146334028 809217981 801781610 630876037 575068340 824469097 87606923 35794541 321644210 557045538 695577168 167856660 512870618 836419600 793088439 787782146 970220100 485606266 358007727 474098471 991481489 38852986 358007727 930099114 580703002 444165973 112782806 351162803 485644097 401590936 194967528 916560701 879711490 399562598 499319242 891357783 691672490 627977236 379886443 422834468 651661531 417570046 441259523 628613126 725133423 787467774 542607444 641373720 33608138 814740861 522817710 571336957 168024415 134119246 596257755 12934785 676980845 989893954 176986775 173790654 574046542 290489282 247168120 134433213 746351207 676980845 81095663 678074796 622356349 805227781 521940732 864382338 889361891 206165929 643218581 622065970 179174542 943842831 936706046 264090651 937253552 382583630 529994673 465864903 544368552 161548506 467373016 427020948 923422414 480319995 598715906 40279151 679004072 536585486 624679074 648087097 526917770 431706440 267362140 306455665 336081011 960454554 102884708 536947790 678291966 384983061 887219104 230792741 827760201 786480040 691672490 489386104 298754411 59578663 137563558 47560661 204988477 846250560 941640695 876136418 42819703 659769915 876054182 359875347 550813348 473598912 822571602 309762615 887960813 172232166 672537924 244848560 108106381 105220781 781452275 188011736 629934507 668291165 612975435 277057306 259590331 222228927 554014196 136458315 689857400 359707817 242589325 893436549 672537924 297091631 1831389 528476639 553292341 531598465 147490697 176214541 948113430 10571430 843709330 309292580 936316033 466918176 227739391 529994673 791574966 506762055 1997410 388195489 178894177 436951908 917122297 315852411 100252771 639060490 805401221 197524428 277547289 81095663 683941034 396449836 933781242 533730104 20248805 998097657 971630537 447980318 161810784 502700414 464157258 592398796 460630937 926759164 15234053 868372476 740448148 739796743 280728194 369244711 635283672 619409505 759407699 617195341 917598758 724140261 512870618 492380149 243784306 930099114 540250629 394069130 744854286 108098871 553451374 283599405 427322025 613926124 272577712 908986967 406708061 393116598 219243177 387949612 381374810 681084204 199433873 525850139 796204767 358551013 822571602 820695184 942557803 803167446 880561179 599501228 202964646 212389715 522162975 49106893 655214674 741622790 781452275 638767849 879711490 357728969 336823941 705363518 326992960 100141404 678926130 158483920 170850983 132410861 380955396 238792356 803910518 781548066 82188736 297687257 817928915 129036075 368515802 701819021 624382076 964288958 388349158 572935160 407208560 296816679 159167956 856303039 428879748 333281305 464157258 790404380 914345187 423067490 815974732 189285677 435488342 728142005 823515747 812400744 345251277 238243352 64060549 788565231 154142244 209820542 738003643 464204081 126174714 881835831 375662115 315757140 962645507 261477517 985318505 240608845 240357237 766702899 257836777 7799608 389210030 447020979 269834060 252006196 538789025 458794891 995734937 278800524 927855694 727361894 951140674 444989359 507360648 574268755 873608238 606535464 921769824 999510217 512870618 113570806 384983061 383380848 483592324 844075180 861697640 719500333 912586557 957392180 823606328 75694116 962645507 903001492 359802288 850517129 282011979 475471242 269005893 653594916 540262136 531728564 902064034 394069130 666073577 126174714 178338226 817135933 396517154 315560044 268200568 648087097 906412493 793946870 772566237 615557404 424858956 506353082 136280040 17551290 512698301 58593532 481684319 52327804 989694200 46282639 642448466 972118206 560513268 926727247 318413499 559645002 230126727 57622495 418603889 239210373 651598949 664497996 21511798 890487116 620908438 65138516 64399065 280084908 343123997 309677698 568066909 490031170 163409082 711932887 455436685 242601592 614573160 76612005 2267895 559063964 904068334 56250174 459226503 411714755 987971909 137208685 189588225 181061043 805992004 39012073 700909507 45004726 868119397 423168797 252772791 614421240 198241370 700660892 239300098 980771035 436356228 982592507 214386054 783584290 977354192 858593940 522104887 644541370 757817319 407208560 491758875 446345935 258069963 197628046 967589305 873954329 499629455 858722166 664030093 422639179 602360905 752718488 819684732 526236648 822015890 666752585 280084908 44400258 739993618 296907623 588496314 305282600 472162344 814740861 77857419 571213810 401322138 376643535 983051729 137954794 104179654 707870680 43269492 709759009 255995014 196660535 563952147 234483510 178540205 459532919 626671882 92184976 592352601 415074383 785462257 101303048 136280040 856205911 507071245 132120437 732449157 105070639 140607648 998070740 87368065 593706973 120511434 276723131 530560377 790490513 971966382 467194946 55520299 112396307 43658180 580885708 76834175 444161878 492414722 927855694 614741012 354003269 594259329 469150488 227893773 162320815 446286531 483761023 785685488 277750457 279844643 615674959 746024438 377362748 935844360 220659968 85153464 733258326 683353440 377757217 45742076 812204252 340899503 365901998 476891549 491943049 383512998 332324779 621149170 659769915 891775614 647049644 943366285 68262523 840345665 801409198 171206101 351093322 311120460 684758551 427420019 934619036 138653471 939020973 51214252 329142385 843034984 676214328 605598679 575968095 657957198 43269492 60170425 959426924 577920361 447633093 567888993 656546640 191393088 575082915 190297459 369616511 935563785 929494216 634319834 740191941 233313131 334714346 749438363 465864903 324577884 33485421 21583078 399021441 532050035 744725796 332038341 99620295 458794891 984338318 460449520 507509574 251418463 168213692 920642846 526630418 648915259 454567843 62304730 832468899 776827817 260098960 537277074 514124813 290775947 847558320 381509145 344148846 809838531 931587040 300705774 373436147 930219713 808966775 560343402 347742356 190617654 814209757 794896369 459966514 250505381 567820467 676494709 468385477 517207322 332404935 349648521 125098132 310420366 647287845 122957139 700757275 143781808 165329111 357518915 174975441 584744819 873049082 794674617 571470383 934174158 40761625 219240554 350615343 690406163 640019153 759763473 356067238 775049527 646562408 956831682 409721637 830691802 504140152 2267895 544110822 531077045 470894279 655939631 701119742 466146046 306484866 698931608 217545462 340569510 318878994 282280759 197266655 382494544 381374810 798386400 766123053 968585418 401644558 760550747 920638017 581618221 788565231 685512187 740310257 26936778 273253453 139178632 809627800 703204399 94529018 426069641 159082161 216236887 287733226 578345192 765444503 386336927 32768680 164467868 145769017 284322000 316117612 351162803 182426444 774534102 244239980 828969147 38852986 363167554 481477522 710840227 453067953 630666315 223942560 716070994 168375994 36469771 568106942 199352976 784888241 359435870 920638017 551307280 822318800 596056881 102884708 463074263 206558172 110623025 551749464 672004996 741650673 216453509 772914912 223905430 985702981 881430555 996942435 481797000 624382076 532259019 309210732 50066176 806920331 620797239 181938030 434069593 37375125 131806351 484428076 69942571 951419697 60538458 627707810 371966706 213359710 995082130 939776047 894968871 56250174 772238817 407208560 539172105 225282293 111341182 929494216 641595790 223893210 378326734 144595910 268878891 806641776 33921743 401697917 841930470 11511514 495201443 709418144 468604850 963226961 858172014 939464133 256475429 487658713 135597483 998856933 864382338 977729124 936095444 143549423 58593532 752986855 133631226 178894177 773863925 463910045 580703002 268813415 617446085 241704301 517533699 858722166 594259329 15204737 709584816 497227763 541271770 659554958 615495811 590388898 707870680 225282293 685629680 329394702 372596949 829491104 16887740 532282434 821824301 556535048 79032119 512595478 238243352 424846915 678401292 82582804 489828998 767346766 530409704 800413183 975318643 161196713 169048486 520786714 668291165 568066909 6114314 529204436 278800524 606728140 513275688 174120506 557707295 447820310 776456668 512262240 281102007 953573082 614573160 885165254 759279615 351093322 567961640 225437652 653594916 179809518 420160307 525769343 768024129 267037411 420113847 15767643 840012155 514985740 257681001 811162412 39012073 594727596 822571602 319576043 115638551 56734569 622717017 740659339 680938701 871242616 702256154 250401556 577920361 414812061 492001619 59938206 482658484 784543578 415074383 119260572 584276590 8991600 658030547 256920977 264090651 265794323 536558946 445261790 893027217 149526166 263427333 890998006 978485528 505312617 759056116 507071245 882161017 118806460 815437524 577128712 102348063 75017068 44400258 510853284 926614363 396094557 278144763 445820895 692467279 974607726 633743883 485644097 57840426 659521545 44406641 83408971 530409704 414812061 918316207 495201443 364092130 956403889 873505595 114037956 684257398 882223199 271926452 584276590 444402973 612500940 577128712 481684319 693989040 301832448 490031170 407773941 454567843 597198944 412124180 80414768 101397168 810730357 140601393 446286531 615334562 183601209 740718996 473598912 453784055 920158824 653594916 713315905 798386400 147490697 145030953 327055342 910390300 885165254 892022323 932687889 201766867 507921281 320093398 30098933 603529951 910290047 834728873 528476639 91723294 982098718 14700170 819592797 213742032 459107524 261655449 352726596 375724357 821327954 278939304 909964203 537054158 699642713 789053029 943126348 574803352 794674617 801009499 23418996 921038201 329364317 93629177 201766867 904987269 178338226 396517154 878919697 785972176 618254763 775049527 730046553 109254508 534060351 606731442 363282054 90205660 82582804 830573452 419378945 222006918 516980462 797729741 595572629 536977963 918939619 414221178 832315743 165329111 977977171 552562539 197378343 8856821 593706973 199187960 921769824 86870980 445880547 963282434 263252601 21692697 991481489 917994196 998097657 649328326 526630418 431432359 234542759 735470095 463968340 455132454 471712214 421573887 82832334 423067490 306959892 15944964 753910254 814015482 855086018 625463030 968008469 819033092 303992096 47448021 767891036 800717123 790117046 367953979 222052670 99693668 269435006 121366676 724831227 172890601 193930014 538644345 170546132 315560044 575082915 560370514 631999248 16298729 446345935 69479909 505642602 255995014 147793220 313041351 471674957 875899015 662207358 434069593 288338862 777599463 614446526 120248634 208336950 14819313 661903475 592538952 144521246 689101452 517868766 603943017 926759164 507071245 951608449 792234558 145198789 538636029 786294045 70449112 318878994 379215607 901403833 887960813 664716307 110452443 739305912 144666313 252753650 810619438 942557803 973780364 847563421 930099114 710358949 322377909 808804150 652912997 507071245 594177251 282011979 359435870 272716401 501018051 444402973 385786013 648915259 279782267 450970107 691672490 893024942 901307906 508703445 369025046 921038201 703310864 777496901 317099649 811003316 648558682 937354909 617195341 804772596 119880723 526646811 757117805 233251378 28872460 669036250 666716017 642893639 964668536 882880092 474926333 777446840 742989014 236529990 523147876 404791307 318364342 830223686 206915668 79102775 831087620 418246087 591202266 758919685 442250041 264029053 888977087 918894283 978582159 466991961 146442845 972118206 614573160 453784055 36001480 381470778 918316207 976918313 479395809 853725888 871334946 640019153 386668522 56103261 99490839 141046927 635707097 567888993 518204083 331852141 224954976 950197785 818715944 361870133 534791603 753171956 850919156 149412973 433906697 813378121 812609000 856698185 531400665 719863057 400375635 360980625 835817953 532050035 361703492 812101129 906643987 8613421 447990825 644457283 241604643 757371686 560187826 551776085 638251606 336823941 308306592 327384116 163018950 433144115 375390536 90828708 911126285 184167493 880006485 792234558 445820895 238275687 162414246 873201881 51214252 934174158 286050564 83596261 72021839 487252127 175731651 449301490 599501228 629934507 996027392 207805575 861000474 526571766 28831669 798704204 904051833 635283672 64747596 369025046 767891036 248453729 984483517 861013948 51132506 93857831 711621501 155533258 963399229 401590936 187043789 724866791 810730357 780692187 565056543 119449622 240608845 947696425 276723131 56250174 51132506 110477100 349491094 414310733 538789025 944162334 676980845 740424690 261365560 406436608 117916570 182576283 428618086 539319088 110680382 523086816 891357783 10571430 444884023 502700414 506447694 775714082 914292700 277961622 959682189 695868455 839890633 560370514 919397251 838372130 790117046 339060930 625954245 541213307 125098132 736226703 220659968 755171863 704746261 46112686 213379090 85593294 473933050 705952653 729094066 91692005 619093824 62192791 344626500 498471688 761176899 66100936 144282970 208890459 769875361 577402271 723636806 803900750 273120705 390519786 846250560 487256848 16887740 558471522 622163185 228897489 840535103 684426675 808817137 786769037 485644097 689101452 784591585 994113516 330962701 805615465 644075462 759407699 59007994 489252977 656596081 117686882 351678106 808831448 724838718 812676261 162320815 945727872 310420366 581256406 815971091 880765678 578646572 906412493 323594425 341979252 560370514 163018950 936095444 396195715 972603452 882161017 461139901 961524215 357518915 467447872 856217176 206551521 316219640 524687756 384983061 723089378 165606056 882592911 216671674 787782146 947436585 553160761 753269448 550852259 701474370 190531398 881430555 953843508 806325457 851221731 381522974 619409505 795499347 996466367 598134524 104144854 808817137 96057294 20460124 959505218 29329225 916983262 72468342 803715180 857090815 772752998 374829013 845979811 597983691 434941381 781470828 588360021 678461570 329676417 167932819 267037411 85410017 358429939 431228734 266502803 444402973 902064034 242589325 787747737 571680536 792199781 113890947 867123733 791681394 843034984 817196111 382400728 381509145 994113516 448290624 208706801 44013248 963399229 183908166 468187475 953965032 14055174 548433146 77512148 678284060 954552713 470505843 490031170 705537029 197524428 39684598 57431564 701119742 528699284 22190984 760128862 983081496 846144830 649328326 826593764 650661528 672537924 499280784 803796397 230423084 303280510 810730357 146183600 230771669 652384198 954346318 635859399 387985897 839890633 584078261 350297176 961524215 872010932 470225889 181061043 793199056 92792218 945516549 157734675 250644493 202964646 786231842 987162538 193679555 366559017 532050035 440326361 415456348 151644485 251587819 528475809 471308146 468557993 708505943 911597038 401590936 611310352 668768280 577377636 612934169 516724434 298985743 566415144 542607444 758446505 244244963 347937296 373943114 489386104 857090815 464405816 12100035 725133423 488761774 758500703 644680721 560775764 611310352 897241728 743508816 749291380 764166096 287733226 85908862 99693668 936299712 517473421 501602670 633564141 23418996 635333616 100552030 328373153 536947790 778963886 960263728 750495961 963535716 815128114 189588225 550812065 642913738 625463030 999653626 425776323 157428808 309792018 989893954 873954329 265174728 708589565 703947004 215642803 258007443 365572937 385316675 757266445 592342611 971630537 342983554 157334018 865660393 381509145 649421860 417994703 310408596 950020455 559320957 12405576 519113787 917598758 84352528 619035643 505584305 540034165 544148756 977445562 185808457 953965032 901781673 192666025 438688912 661383057 844075180 124634215 411777768 110347090 46112686 896719815 961028661 305084410 71870116 87060770 466918176 33119528 159917509 598715906 842233411 298363841 10462431 675087462 169048486 125994586 194967528 684429686 392769797 428714412 525094124 813378121 468187475 662348623 966364960 815128114 389716921 861013948 7455417 74686834 895192336 609238007 641176604 894560405 618254763 362954591 90447245 351855708 814848138 929908858 418216138 21350632 685045316 404380730 536909087 203377670 962416543 772914912 561212596 888950181 244239980 364092130 327320447 924266382 178338226 244838002 992761434 190849742 890425414 231282340 885729772 168213692 798856912 28831669 982098718 917254879 886312393 689857400 178320187 145769017 205312683 848391143 347731733 784287959 804935774 881911872 607014834 466259378 649302289 84574869 524687756 997421277 739203331 683262174 498323717 376356240 486304498 577054359 31146677 880561179 723432720 382785220 216671674 784287959 922845593 881298649 594157733 657957198 501184459 962223044 952238771 159879307 760128862 400997928 309307017 417994703 146794653 391232721 123920110 722466239 848182671 997185480 751979361 956831682 610360329 336927622 738613051 715465382 350549710 996518547 541691813 92140605 113718969 17568796 73156407 535397387 501018051 56399673 622141992 91039408 413192247 377904018 707214403 592508592 375390536 416204454 868372476 204988477 209935069 439540949 120478095 391340789 606808899 497227763 88381932 41649602 436962649 369262782 628002125 89607992 731391308 273455423 157441769 508338116 279068596 908987452 390584988 548740123 315096082 528075150 647275202 110680382 430333603 389220049 755171863 962644983 917656269 670726380 794896369 339940039 453547005 57698839 772914912 987741376 208336950 567258784 526646811 884058123 694314660 953573082 570904525 646292761 786294045 657048440 283599405 943526257 595036279 60084375 59477311 503472746 7455417 743508816 942427380 636991704 560513268 997783713 781548066 899734853 329142385 715563614 246114867 90244340 614890665 802989717 91692005 944162334 228263864 52250386 332050044 340899503 401456345 296244299 898104564 189641658 286954042 445058957 855675634 747585224 100141404 423961901 782034696 337995998 814740861 465432120 132808689 899164744 172358499 473102970 487252127 302801866 669840131 365572937 557641316 739203331 401456345 574268755 87172430 27008557 581293723 379736617 332007686 462795099 228000369 763810664 259264628 170001592 682810852 573931392 265227120 757627768 719863057 790404380 254219287 822099193 737594595 52706961 170546132 261365913 845071084 347823879 379511196 202827177 526560110 813414888 638933192 685512187 983479107 693108488 56103261 884156719 227687232 119275992 888886584 635707097 903738060 96273404 156718040 571558303 568838815 658262868 418603889 446345935 957392180 437038421 577402271 228897489 939020973 372192841 804914076 865890475 59578663 966364960 787369234 178540205 7733931 975006428 471807089 668424404 711515066 872748182 260784630 600162938 508684375 358586540 661410658 628920656 476895683 651644790 904475980 456068336 382543663 490544456 892049425 501018051 559236516 733189543 376356240 473047610 251214319 12291204 841570440 894560405 490006029 110477100 232870833 489386104 787619449 182053097 167794990 942427380 472791954 585862918 350549710 784911924 350779152 665924450 343786069 720881513 324644196 411569380 888363323 584392244 535397387 87060770 367128677 400375635 518583385 457764991 806761895 635246842 952238771 728371212 158496583 244850388 553160761 455436685 393116598 359875347 542507362 625034563 591508970 443511527 547763240 57602439 239162507 274044470 518583385 32375922 764166096 302129544 871852280 612185008 704219866 540192457 569943814 906691365 384296691 706088955 832331795 699294880 970416993 64747596 796204767 183963712 593248117 977977171 445674227 600162938 854366787 266067899 306167935 331691451 760498130 916080289 591202266 990750133 316478034 192089296 322250128 729854211 847406541 951140674 625034563 353002204 261805042 61949058 306594022 233034793 787066791 219240554 633564141 759856178 528508131 114504608 603229253 196660535 64060549 752341854 201049913 995734937 788859798 100252771 680439837 927719562 999348536 99693668 434154654 400997928 168630740 483976487 844051855 694236116 805401221 9789829 707841194 443044213 652384198 577611981 250644493 705421539 604597847 357518915 85678530 653073910 133847439 227205383 777976325 461358659 638767849 844172942 851896635 157337709 110421212 512870618 376643535 146334028 380471354 73839861 866728678 609237951 813319210 180511810 174975441 940663788 539963350 754782410 792199781 991683935 56407269 781634857 428689888 359652773 955491104 78989626 315366278 724140261 50353247 994399456 265806676 682371703 717402262 769083052 795499347 266840942 188648062 786897254 918093616 727954761 666525767 515257919 547292880 583928321 244952813 690645347 371008172 470894279 641142221 565056543 17834316 429181026 715087620 224049912 525638956 64747596 93601884 339910347 24199369 929650001 9763352 690645347 329835419 315852411 758919685 588152520 427218881 250653360 724866791 376899224 914782996 554347301 617296169 271569486 209962150 91088807 319927546 146673592 321644210 384379890 900217253 671157698 677408635 791178147 344289427 495349404 609237951 67977428 614421240 617276580 892557246 75960094 248453729 780251698 586189648 559236516 355619583 329776315 655737064 566050763 240197516 805600576 288676380 329373932 551421629 512267793 716649254 244318318 810780546 832089041 216583641 197325365 621380200 943256684 456620093 768017079 441484207 667897873 190297459 47750363 438688912 778022201 525638956 222393322 967780145 161168364 443926841 125994586 978955950 856205911 894968871 580676132 988813198 542507362 265794323 815257954 883835529 991481489 246519318 972471770 36446880 147055431 545135013 980747824 15944964 420113847 921098882 168344050 298363841 178894177 58346344 183963712 642561124 567193229 996263353 744416892 470547145 20661388 886312393 517078323 445968885 733762553 356967793 101024530 481453149 521652866 903001492 92762280 740718996 922564893 835217804 787595718 218124339 381839501 322486380 755550290 37375125 902926944 306167935 511962449 865660393 631338285 909040760 666141979 472162344 704317244 388851546 620445892 86001070 463978538 143781808 712038020 719389926 358692335 588360021 512997134 88520790 830223686 574268755 297533239 715465382 924298408 62304730 96057294 539080862 209279596 995082130 135276313 83774350 732252193 889704474 793110766 445880547 84352528 965887028 517473421 150252840 526327478 61400453 843279559 439812150 772238817 251283209 636674687 726062477 981307420 123629213 208706801 700089141 796204767 881298649 781634857 76612005 546606411 158410014 689203021 487778963 805401221 397263883 85908862 793946870 271545507 805227781 484056718 261322372 890425414 345251277 243784306 132410861 377757217 987511774 210371454 178234658 383008147 148790688 167535364 243210728 175731651 442250041 344237643 1831389 338801541 933767247 49442933 960347173 214772661 103807406 935563785 60114511 920638017 51214252 792566738 323970236 370586573 650256466 310420366 524800771 157334018 225437652 182576283 90938530 623193147 551307280 391909991 985235970 631639650 408631358 719088036 762360581 59007994 688926432 974809923 727421839 446104712 837373149 376971937 417615828 762013651 711166608 727169356 570336807 687796451 942844094 385818791 749434505 604822790 571913207 461916368 239300098 424846915 653449055 571913207 185344797 945193914 469150488 756782347 823531809 767346766 421130402 750495961 469796838 81863854 411244769 186840994 194529872 647287845 723432720 147490697 190531398 310111008 571470383 956403889 602529257 435738767 791760627 925414817 435738767 197266655 718450902 622717017 119688172 960263728 230771669 295786083 661410658 625013868 828760079 590616349 950020455 841498462 532282434 444579502 661584625 294920345 519298517 884058123 227574043 123629213 215503619 551307280 65138516 703863830 943062655 762360581 712347955 714954919 910367804 926759164 825718553 29642358 220659968 487256848 750344920 437230490 943526257 674961326 831877484 215503619 480680496 688926432 532862262 691672490 777293937 828760079 8613421 410241368 62769875 892722963 127948605 417615828 890425414 189220848 512199828 532862262 382835379 98960525 769291405 844018425 677833662 374785248 560343402 621380200 217034447 778894873 170330891 776847680 712110955 63428356 877193699 391945035 502607863 891701789 184235590 995807019 590146562 216236887 135276313 387828469 146420196 242088182 473848396 422680817 532584882 177813141 495349404 936095444 738947833 418603889 24199369 979075090 956831682 774444512 978924176 609034384 613108787 8856821 893524401 755459531 236217595 926614363 817135933 181309296 351093322 681182328 215502867 526630418 425482678 821039696 138936113 721248367 643177231 197266655 836210608 661903475 840535103 32768680 983081496 62769875 624854784 797973013 959510438 699642713 985318505 452117571 255995014 158901683 544243634 289351929 2267895 568066909 771366659 216704599 996466367 829461905 330879530 594657232 265325896 925751148 672193907 69403656 466991961 653449055 238248119 215942252 621822034 161842598 960454554 516980462 464675217 133631226 240203660 358007727 805600576 888387334 960419646 395240605 316244820 700909507 229231430 923950163 672436733 15944964 95226514 964576608 653449055 134433213 376899224 868372476 403040141 713356772 980771035 430209478 51593992 499280784 140709606 598669512 999948052 17834316 543280238 939357958 112798913 579772323 70978668 672537924 812204252 638664525 33834715 712824576 532584882 609238007 746395196 438010733 35185008 203377670 73782650 507921281 87368065 139143925 383380848 571399623 423646799 91723294 600731848 677833662 359935395 322486380 380286765 309199529 300852389 833015052 908661511 654385775 908661511 611035633 239642863 539963350 439812150 739983909 53313305 635246842 584678561 996601424 485434770 636517289 177813141 428744274 639889322 248367091 974016874 727831245 249974462 27564176 28872460 297753111 847563421 606731442 456171329 642448466 166873308 532614649 512997134 320928601 10281377 984483517 407208560 567442879 368496531 826320260 474679443 536056500 766645808 904292494 990615559 617195341 331058503 908987452 428689888 966364960 164184974 497283938 112578508 824380058 782008059 662423538 968939998 476731953 265806676 798386400 668424404 318095306 216708316 938349663 370976321 517868766 859432248 878562164 910886192 522167392 93137007 381509145 388349158 943099642 60231461 634624298 891357783 134119246 877609428 424985165 905962223 482236394 642913738 52327804 188648062 784591585 421294986 407143332 247099447 348161731 217546110 516418665 894187951 228263864 676317740 540235952 615192284 991481489 960950133 56103261 560147466 7203477 447633093 664156199 69124371 217188292 740942695 384379890 62555839 213379090 110452443 953077348 609034384 126942402 391573832 996466367 272716401 814059348 224099360 417570046 668437990 43296814 838782843 210010009 425628417 882592911 615192284 338840277 74105318 901781673 677408635 776456668 613108787 60231461 477564988 774526406 639333943 828040799 614561131 176926759 359435870 969266424 106129738 835582793 120126730 655939631 879854980 821407538 595848759 921038201 28237928 436356228 498727374 168630740 977367481 895632224 525638956 35815094 483502744 605598679 343827028 876597054 786231842 171571485 128075156 701992506 153238467 667897873 464405816 134313497 466918176 176144086 619153261 528476639 801409198 516980462 560343402 836633166 124595694 802987185 150801484 509638976 461358659 592538952 806325457 530409704 552562539 1478365 808242329 233772566 24302057 769460243 489386104 183781502 264090651 784207499 273108764 815257954 856600804 347742356 182805540 420394446 332038341 837373149 904292494 959682189 488463526 100252771 331900744 56636843 474872546 956403889 779208512 594177251 940752030 846047095 55789802 678926130 576910474 595802491 822022239 559799670 503173055 881474405 389844160 643177231 867095048 934663808 650159381 847406541 498285405 501382976 859847704 787857820 34708050 259210433 547059037 718450902 769460243 61977295 170372253 695611692 772238817 741082988 777446840 577377636 859432248 9789829 996829154 694236116 948113430 763787861 365572937 694314660 932615272 685045316 880039838 472791954 760685220 798176202 476428742 606535464 553444143 607708723 706772155 156630558 825563694 484032682 326435001 736999941 676494709 75166092 711212792 252772791 412969130 392463439 617066065 403328214 425628417 323594425 635333616 596362664 367348812 225595088 54495615 244838002 197524428 29329225 122424999 239186411 359287451 647275202 256920977 810780546 189716201 241121740 223942560 324577884 941294164 789147402 532809158 728371212 160735073 572153244 34708050 522867141 625954245 450435362 272801478 246471661 778963886 21511798 379736617 228263883 645114761 550355914 883301410 217504245 678439153 670604866 892502461 809459138 644206022 330581999 21231585 847986690 252805292 844931236 47105108 43658180 606535464 497417342 554347301 7825237 923225818 923422414 587713617 105220781 938442301 772621903 835217804 838856955 302885739 693108488 463910045 242601592 441956221 751787685 223942560 560180239 835184856 713356772 723636806 572100510 637555883 250268130 35815094 968452703 608960658 616208593 526917770 569943814 225282293 173476277 259590331 636502705 429558578 914292700 223747962 894514412 559320957 872010932 343838056 991481489 511486436 148473955 843709330 227687232 885828739 298985743 108481641 999948052 411777768 833924014 121366676 502779916 625463030 906691365 396233741 994399456 380955396 670008603 925414817 269244170 558891868 757627768 228434038 627201682 572851317 976163852 14484343 910290047 65138516 812398643 613474500 55789802 680439837 15204737 824333006 106732221 603529951 21350632 351162803 861849773 649805268 445674227 27008557 700592307 157734675 223942560 939414110 704364808 33921743 144521246 429438899 957115124 691366612 261365560 174675267 972603452 247099447 683353440 310111008 746207343 619153261 594259329 467194946 622065970 804612667 54495615 119565485 154264367 337995998 259952854 855193777 680938701 502879014 116783336 228343722 684123398 855342522 317099649 670157273 240203660 672193907 721360255 926782710 802987185 693108488 549647088 643061746 948713783 643218581 540681705 287229458 845539476 472339999 564184811 183548314 337995998 537277074 427811175 404226502 646913780 277981675 232151291 623193147 663846540 751732179 454660890 847695905 624039253 243210728 296372695 455605680 767173538 291758658 618391659 581456290 568838815 838406143 723154856 260809328 157337709 993729565 257681001 892557246 481684319 232151291 683941034 475199127 852816996 225282293 365605292 782060892 254730737 794896369 508703445 59007994 950790491 670924186 997508282 722087694 633101992 789147402 785248732 101397168 750495961 474872546 933767247 710358949 471348221 445571389 686421587 485606266 866299792 471674957 698537005 746975324 54495615 189608705 300107053 906323892 143321119 711932887 621822034 407877244 150801484 420394446 907679875 608960658 532409687 947436585 599975425 873201881 970707395 151854626 481477522 167856660 686176210 417615828 515923912 479190564 591813282 921098882 841570440 213435668 828760079 836210608 236529990 967886202 387050663 929650001 881835831 736625033 759729639 157337709 440326361 567258784 927504629 615677308 4710819 599195882 215068446 854771089 534518575 899600039 27019841 380471354 704219866 184167493 386915292 706772155 989513413 268813415 224780043 7220472 814666112 164269532 288676380 588496314 872160203 411569380 794896369 131171351 430333603 67797956 793420897 324811550 962645507 375662115 622717017 819177331 174554145 425872107 708260818 113581183 741111552 881407016 447105298 129036075 224099360 679137362 3588375 321347669 271778021 256566808 714954919 213629398 566360189 87112445 334461483 769648575 516150775 700757275 763085108 866299792 307399876 309199529 768213695 268813415 212632182 889704474 339060930 411553572 82582804 324644196 4475760 967757318 549240123 212186584 392463439 146215244 519100880 622065970 200492809 416204454 592548069 512258861 946988071 551421629 86836015 851280384 935324021 994939812 935324021 375722358 620445892 668239990 197381949 359802288 223893210 71709694 763615961 287557514 422657201 359435870 129036075 280492994 101600824 850353094 599311467 94778825 949875879 197338244 622327053 267689047 575968095 146215244 7455531 180648180 436356228 294920345 996652983 119449622 434211465 323841451 159917509 730490543 514985740 661584625 999510217 153875560 471674957 910390300 365563541 582423808 614420317 555546429 323970236 53383989 918894283 507071245 384296691 577820900 673007083 940752030 127582838 860227244 920065193 191844071 970707395 683674705 825721530 159082161 242589325 735470095 563452223 920365121 907938238 387828469 487658713 752649806 882161017 113890947 208182956 441209724 669258237 960263728 828040799 53075410 216744565 706088955 359843759 684758551 206551521 878461654 489603668 347731733 633148289 630165875 787125867 296853909 481029245 596213445 259125823 763787861 338806367 227739391 861260738 82389432 327994956 410287113 248393161 444341395 297950311 519113787 3111695 987511774 791178147 614420317 588733811 924298408 605066463 229172857 964998948 895864350 776827817 334586837 278384497 636674687 408547112 744503077 27008557 950030898 101397168 580885708 287507022 887530457 483592324 998070740 559236516 100552030 57840426 391729428 422657201 809627800 882880092 131806351 231472878 575351641 652647628 384171104 962645507 946629040 136458315 840282225 194529872 926759164 358220341 45004726 348492981 648915259 11677405 316490139 653057090 272502984 973780364 217188292 378216275 942844094 408547112 635283672 271926452 453455633 905962223 334461483 859042582 919966051 49442933 835153635 132808689 743183256 239851044 460216849 528670985 267534952 867617393 489034016 185868815 812609000 668239990 93629177 996942435 119880723 302288197 803167446 703073204 613526821 540134373 27008557 958326576 702256154 375662115 694236116 322250128 595945449 936299712 16498498 659382812 320431919 938442301 71438949 241350186 433447483 557229086 751977930 428108416 712713070 334586837 806920331 749438363 625013868 460158004 819131667 703417771 20593514 355289161 833129815 259644489 984028906 670008603 744725796 162765371 295238338 408722873 144282970 795499347 307198743 591945647 229172857 209022875 447283784 878267752 421661591 700813324 153103136 382400728 414929390 11677405 161885158 148473955 159365639 383008147 157477269 28911638 70449112 987741376 779555399 732504771 1478365 792234558 812204252 780251698 757817319 561550658 93349154 653057090 810730357 174554145 475702831 130767407 620908438 411244769 443511527 210552683 56450978 575320847 991122761 143081607 91039408 777828070 847558320 863779255 264735222 531121674 916835044 275801620 944162334 33119528 699762292 132248484 885089884 790855774 907679875 563927216 801009499 659768975 879711490 430544846 834156389 64472751 7455417 849966254 174125656 630165875 683941034 510165312 248367091 55022264 1997410 30265864 595848759 614468721 953077348 858833076 763969673 197177183 536977963 433144115 198854353 544243634 314477510 59859789 872103597 423352270 183908166 296816679 414812061 698537005 7220472 741111552 609514592 56629975 770965764 174125656 834374904 568224063 910290047 182426444 767891036 984781783 889680918 145823899 273108764 815757031 410729829 659768975 120825765 38852986 78989626 375722358 192837190 617276580 641117022 723636806 342224873 381839501 876285402 371966706 248367091 746633262 401322138 172784096 215503619 174122074 3097549 638664525 944162334 501614322 489603668 45720878 14091222 392463439 644450459 903738060 351705841 131171351 638251606 756978770 346600682 965831491 757371686 37361502 887530457 715563614 823606328 594002418 332038341 565134851 744854286 640799332 40733471 793110766 283937364 33576867 988066118 625463030 795336717 780692187 34979133 909154394 322250128 196660535 278800524 111341182 476952902 362252306 567442879 791760627 510165312 74686834 812962531 56629975 168541496 315225511 617066065 373436147 750108844 717876219 910095312 128075156 685552189 980771035 495747597 129372826 532809158 256475429 336081011 78989626 445261790 353685083 495349404 793110766 331852141 241604643 344915872 322221775 237993313 65402346 239300098 509969649 367552763 670726380 967589305 162765371 15579069 898017556 581258803 839988865 881048964 600220820 978955950 8908392 664156199 246406611 621149170 460216849 808817137 618344226 144595910 945193914 599477657 988066118 30098933 668768280 810228122 283921209 645536456 539629985 481029245 29112804 914662667 413180650 953077348 407208560 390852403 788674724 998306686 959505218 154844116 209022875 520546481 356851957 704965966 978838782 931649320 670726380 990774808 470894279 981307420 339261681 222655435 577920361 360697393 787125867 61253085 482245586 891701789 342660488 17568796 444402973 389358224 194529872 872748182 132248484 852816996 772566237 559631090 679273097 487394853 588348200 666944928 169507050 616839055 978548841 929547659 301724228 215642803 835184856 766554817 960587367 221580236 823752062 453051126 683353440 873173721 493523186 585629217 664030093 194407888 279663853 575351641 602360905 812545734 276723131 267534952 560446957 301059508 215502867 80414768 742223817 37028736 260126757 168696792 162361916 870123638 873608238 693631266 954502138 624766555 562737885 178894177 46723813 578584180 757117805 205945197 759729639 406746718 715964855 310420366 606808899 394993865 769460243 736999941 353002204 451064437 747585224 407143332 112798913 750495961 769990974 956921703 842804647 652124899 916835044 197449106 857367584 289351929 798409191 428879748 622098344 199352976 7285676 428874628 499319242 470505843 405861846 421661591 299933132 454125325 193292683 523323726 267200358 983930175 267784122 427020948 715964855 199911373 309792018 983052792 330879530 810262034 835709956 602457065 460158004 740659339 879711490 524800771 668239990 471833346 391513191 227574043 467423925 171206101 29036266 423129885 112578508 520546481 578158360 328329111 450435362 513719945 94204569 389212788 628885668 6986380 512965180 245449194 700909507 661142441 581379821 695206734 493981688 677899284 401322138 278363762 357881948 242560852 619153261 765465955 134313497 617105125 186474107 548433146 7220472 867123733 715563614 998306686 996518547 961028661 495888567 339770353 487394853 504140152 511962449 481055729 340899503 647275202 422680817 831087620 464157258 301995198 143321119 784653387 314175717 930649075 784069212 819684732 159167956 458102694 999348536 631338285 721788932 301059508 991056791 118321585 329265704 83552542 496374196 736982534 532686342 447283784 125818812 764259519 517629412 641788754 872010224 887530457 682275349 299393538 139770734 665505639 743258777 964714139 566900631 244850388 84574869 134845343 174250648 441956221 344237643 525850139 720021333 571399623 734658014 153875560 479374646 717876219 674507154 99144276 61466476 866275712 735643098 224424597 724594043 897695623 952238771 654385775 776827817 823515747 329373932 698931608 945516549 162320815 102348063 935563785 105070639 372909840 827760201 402946232 396379256 491943049 243996765 990018651 940663788 809403255 950900487 354599755 976163852 238243352 772238817 986584560 476891549 79102775 977964499 690635716 710399184 935065995 216009673 953791872 635707097 58593532 199433873 632832527 342274439 365563541 417030305 938130917 706726060 676997288 531400665 655179284 684429686 822356288 202019081 616178629 867682504 506353082 425176277 603084254 653721939 510779554 787369234 865660393 693623420 842804647 764166096 493523186 319355705 619161855 617626369 82832334 561235270 183083443 412155251 925216722 536466451 401590936 393116598 51115272 286742283 284829030 846250560 585844063 711621501 501602670 719576691 302801866 48563029 260132578 872160203 591508970 968452703 55022264 663785507 254471401 746707200 32300385 851783830 340777409 663975329 698648173 473204173 544368552 617195341 212186584 899734853 224424597 4353081 89177410 573360727 507439477 281102007 535220604 775714082 208890459 397590059 812676261 784591585 395606749 611762769 877193699 626510734 749952793 467423925 857801647 512870618 317453486 429438899 566415144 9763352 512870618 12100035 996466367 783919366 694517015 49106893 321223832 983472221 164084139 170850983 577920361 810548036 743722055 149617161 650134945 473383951 519373057 951608449 742989014 183908166 792566738 837373149 717116426 563952147 75166092 296816679 789991995 86685872 738947833 392857151 339060930 560083947 431003796 662666818 344915872 654499905 384131815 998447005 296372695 480302776 594157733 233251378 739203331 277547289 248005248 412155251 763085108 508188423 18832837 760550747 445445915 706088955 261805042 729094066 359813935 872160203 717402262 628002125 904028434 597041049 673162053 444989359 75017068 915758682 134433213 379690792 711033 186215451 804772596 159082161 657750288 891701789 866819194 984105793 280819281 472125077 958177427 208429960 490031170 252006196 23864275 787238639 361019624 946629040 447283784 922707036 980631873 219526527 472791954 233168958 707227138 495261210 167794990 225282293 245711526 260098960 835454267 549240123 66659514 595697081 893949709 498678305 983930175 760057778 902064034 768393379 205718954 509969649 614477974 274682419 997185480 268611338 848391143 627201682 228263864 512997134 89635272 567888993 57698839 245097735 305084410 559236516 874765059 441209724 450970107 716625245 483326661 674192648 362763648 920185762 922986354 731796874 65783382 920365121 232434763 443044213 922845593 465643223 423067490 314477510 682039092 641176604 392769797 27019841 930291598 809459138 2267895 650371604 768024129 631338285 602529257 164269532 703863830 355930996 789991995 798176202 963954978 345251277 45720878 44400258 296244299 162414246 998279315 258697597 541691813 156367029 855086018 990615559 768138772 233574357 907427002 31115544 536298542 330581999 92184976 483502744 401700185 87625640 211564327 576910474 509093918 633743883 273120705 455629229 508338116 587355315 72021839 702897492 915758682 890998006 172232166 622444979 351906572 607903236 137563558 750495961 655737064 775714082 465643223 119039730 357623307 229061145 916560701 230792741 418603889 781634857 999510217 192360522 851221731 339940039 356779688 720838049 70423 277961622 968008469 56399673 530607562 964714139 161196713 266272826 388439020 259264628 134119246 839830132 391729428 315560044 428952411 270607642 894968871 265904576 481055729 156367029 252006196 850857631 366762884 231672601 608960658 198854353 314285605 941861375 367128677 392045588 471722035 597983691 462795099 825767247 800558469 172706857 55022264 577820900 510985571 590146562 983910721 959991697 471722035 836419600 149526166 34228815 570271244 24199369 567129445 537111846 750495961 761709224 575068340 281102007 98960525 175519425 173145620 378326734 249336239 443031883 405211363 60084375 433144115 147793220 905662794 961552936 175573396 171206101 323970236 285660749 213629398 85772685 783584290 946629040 51739918 129244340 332073190 967886202 245711526 101410003 659554958 363737391 174675267 8613421 996466367 427591573 238365103 149526166 216744565 850504155 980278514 323594425 514985740 29419909 186474107 499629455 882880092 492031763 991228185 559377198 982592507 20726940 959789862 638184924 854211870 244244963 637039423 946988071 520956931 538636029 48855726 391909991 780251698 90828708 731796874 857445998 983930175 845872351 371931041 998119538 143410362 426727201 236529990 266840942 572223703 724838718 576744099 83552542 175519425 480302776 703234343 250401556 105852443 838403366 48563029 560083947 507071245 293249724 467447872 960494774 591830038 263277201 375662115 982592507 43296814 814854596 623627406 21583078 331058503 470894279 1974501 927504629 712110955 233168958 164621197 278866541 783564947 57840426 466086329 997421277 125994586 84574869 619188238 857090815 653872353 400099846 441164379 318095306 533733346 282949118 778245926 146183600 866049783 56629975 755706187 964714139 879854980 738996404 84352528 329394702 611002601 240197516 51132506 422639179 704965966 861697640 56734569 596362664 389358224 643177231 690081846 591813282 668291165 878472634 271383175 855515073 779131891 545394304 329364317 46214083 680228220 705409578 827026208 996263353 829692135 358586540 595848759 617034160 187042622 482245586 704317244 564314986 189442294 960769770 185868815 409643450 406566817 309024963 523323726 978532258 459892061 847695905 225193305 657750288 474872546 859566552 608278165 391729428 282280759 463217611 335256971 628849748 85505551 157441769 384372482 37435186 157441769 714954919 411003982 757627768 808804150 239851044 193365645 231282340 492620156 250644493 552949859 962644983 43269492 276546782 720021333 571336957 900217253 474434198 669443488 14640871 862939936 286050564 836913248 418470891 192742040 971516982 968939998 804772596 425313399 307767072 55411364 58593532 622444979 678926130 635717032 313041351 429558578 519298517 680477696 40279151 410241368 665661938 119880723 920365121 998856933 183423602 648558682 47081900 68153518 669443488 688138477 391729428 121461568 367939638 218588507 92941166 867095048 180511810 304962070 489252977 273576373 56103261 947133065 336823941 428744274 376643535 205377948 219802791 844433235 914412174 158483920 893949709 769460243 290630815 762740250 983052792 29062331 987741376 99730457 546862328 825188590 761978826 64399065 61332591 451277265 464771447 965403633 532584882 356248329 645726081 402946232 476731953 907656645 549481338 624039253 867108593 975318643 292320003 962223044 974196684 911597038 951805853 396166564 531728564 173854990 800413183 332389556 78621776 634605274 279627355 12405576 807911174 225595088 69942571 422463137 191768190 520786714 251283209 437230490 167908308 325252426 4525458 982039530 142572005 89965595 172328397 868090827 217651693 351093322 850249845 648363324 108481641 211212202 400560809 787238639 74388346 540235952 905623941 757817319 379448426 780692187 85678530 688926432 836210608 465432120 988722625 381470778 164269532 793946870 62192791 821039696 302303778 735470095 405183113 650371604 660988632 70792490 341867020 58809756 536466451 292320003 700089141 799084059 670604866 740718996 782625863 778937914 91670966 55496604 267716550 743007075 699294880 157477269 563375048 894514412 894514412 105244512 609237951 290775947 404380730 124595557 824380058 365853060 267362140 699642713 344289427 344200460 29677502 69124371 908894608 704619854 192243675 269435006 925216722 760057778 461139901 192747501 786480040 549647088 243210728 174554145 257266617 516418665 620846892 356067238 34979133 904464640 287229458 405621069 48855726 418216138 884006689 560473028 832315743 301059508 189608705 782060892 899734853 14700170 906014518 616859046 212758138 366138558 823403707 536558946 810174413 87606923 797729741 390584988 989328772 699642713 479955528 192666025 770699812 723154856 612185008 626258394 490934541 425482678 264156847 446469999 373943114 56178297 389358224 770965764 732449157 428952411 512267793 615495811 403012748 546584393 732621225 885729772 586729040 937451019 708594369 858833076 595166705 858172014 863779255 308311291 728984484 854211870 252693314 967477133 287076745 586116774 821407538 842233411 424985165 887219104 327320447 956265400 329394702 291952526 888977087 635418526 481055729 739879940 936612530 73782650 795371025 193930014 615677308 833129815 218588507 302274405 588496314 161885158 231584079 389844160 716084460 920365121 757627768 401842604 468717707 772914912 332404935 305084410 908986967 453455633 982324277 168024415 489981592 43269492 106820454 946948767 137563558 752986855 168375994 519113787 793420897 872010224 65414838 27008557 648915259 711033 377816991 619161855 923950163 819585740 953077348 265603418 349648521 431706440 212333910 818012022 102884708 485644097 957086375 470332840 699460113 892557246 492247247 678074796 522167392 648915259 396379256 633101992 281890528 39947427 742784179 39012073 984382642 862939936 447990825 334461483 73782650 392463439 138932130 65414838 638131947 278384497 938130917 856772079 997185480 577525572 272801478 701119742 675087462 474872546 863779255 854610463 503173055 557229086 198854353 838372130 230982949 317934143 275826341 186101025 593562347 539080862 553291542 184345684 29329225 275174780 705363518 672193907 491458438 516980462 307767072 994113516 307767072 921769824 100369079 729094066 586729040 218268412 790855774 716625245 998856933 481982083 922707036 96673896 505075478 244848560 876136418 725790888 319349634 855193777 207955886 340569510 809403255 924243081 540571239 269244170 396010135 243996765 961327971 894823343 459966514 931649320 311374736 728371212 454725867 736226703 491012904 157428808 959505218 209820542 602946967 854618481 297753111 391340789 178894177 917656269 925920080 904475980 674895693 192747501 823078558 7963024 487394853 132569079 139178632 495349404 990063134 56740474 526917770 721155256 518583385 496696353 626671882 269435006 428071291 112435422 607903236 226947127 816749833 990719695 266502803 621380200 349938974 570271244 534742374 197177183 392769797 694288134 523306362 451020778 797620090 960587367 691672490 173046498 468557993 543483688 817196111 661154467 685998329 838372130 792301752 869259062 393493552 476895683 753562574 644206022 821824301 303280510 956265400 284177728 56107503 336927622 265806676 204988477 705421539 853479900 972118206 441276023 673162053 428071291 7455417 199911373 664716307 798176202 638251606 209752506 561899030 244239980 774715366 285660749 718987921 367158564 948929554 850504155 393702122 456068336 920065193 641595790 903001492 567129445 244239980 788674724 508703445 391573832 275549790 722323960 323970236 399514194 87544649 56629975 442588758 348492981 891290260 856698185 779410543 135597483 40987007 650256466 734658014 191019940 544368552 426727201 270796526 807905098 424985165 240659669 532259019 581618221 751787685 875732615 245711526 559645002 528475809 680439837 174554145 652384198 994128464 707282470 105852443 248005248 127948605 308452836 772430279 248979596 550199215 928104524 296907623 259785955 954275797 187921426 441548278 160259709 238243352 513185757 746975324 196582719 214386054 308452836 172328397 960075280 106820454 319349634 422680817 385346897 854211870 44539235 570131772 641595790 311376870 647535281 556940415 717402262 614479002 780068815 189708257 209169370 572210787 135496158 725790888 174120506 830223686 867108593 30301133 767505642 808791735 694236047 756654121 423168797 800413183 112798913 772294787 392463439 155518284 527299770 299851704 728371212 388439020 817283361 107820156 831000470 349491094 186101025 401697917 892294144 740448148 161711129 911156828 780177659 94543457 618789317 577377636 787782146 298985743 784653387 700147339 567519004 812398643 627201682 574037992 362345564 446345935 574046542 407208560 769875361 261911099 787066791 351162803 422995827 89833033 552562539 205353146 435488342 717244409 785248732 194529872 535389634 787843011 690081846 809415544 405529721 539629985 749291380 428879748 212632182 33034747 936104862 376356240 272801478 681182328 689403602 238792356 387828469 319349634 105852443 449301490 953843508 252693314 810548036 809415544 663846540 958645852 908894608 619153261 809629583 196660535 431228734 569943814 454660890 385888930 708589565 694765181 715642129 625013868 65138516 678926130 625463030 136458315 739529056 59053852 21541253 129036075 230589333 425628417 52012162 29112804 659554958 83310806 224622492 502959907 731402868 230792741 959815330 255052856 991228185 458720877 446286531 793420897 904159957 23835068 962694322 870207782 703947004 414310733 226290424 55456604 279663853 555859738 56964750 823078558 826390147 690081846 459226503 427322025 166873308 867095048 356542805 736625033 252753650 30265864 990750133 637039423 602946967 471902992 70978668 9789829 731246096 689957974 667055916 668622929 898104564 139918534 328217752 615334562 139143925 563375048 638184924 146715673 129343380 370410811 943126348 621126494 613863099 121565884 880563832 287513610 786897254 536374362 879251547 716717720 174675267 140601393 443379097 295191333 880863412 824380058 52412927 376899224 515923912 200792570 489457130 348492981 727361894 595004375 318244739 527319796 348492981 391513191 816222258 411461329 280124843 526182995 513078841 543492246 97937401 51132506 991651050 736999941 84352528 847563421 459966514 441209724 208336950 703204399 456620093 323829946 723636806 756727543 902926944 639207425 189608705 740942695 415074383 548449903 364878980 284319963 348161731 803715180 242589325 721574742 740539742 761024521 150479416 267037411 766064131 182796995 642913738 428071291 251418463 722323960 379736617 194738988 424858956 469796838 199187960 765465955 30351439 171206101 993945511 807911174 478777032 879711490 614890665 893436549 434745449 365901998 690081846 547426458 373357752 922986354 865647751 15363892 793946870 642448466 513275688 900197125 283564720 55020392 552553040 132120437 881031080 548221608 359707817 546862328 937451019 353255844 419013338 951608449 666092329 662296076 444165973 824388656 697870062 279844643 705363518 201766867 597198944 317834206 9898828 363422913 536909087 221580236 963655621 478142640 26158477 851966681 67977428 475702831 362954591 55878403 532862262 786294045 828822386 752034833 326355741 517207322 684257398 197628046 841570440 379690792 133912540 945141219 250644493 173145620 307890239 91670966 739561319 216453509 381522974 840282225 171346666 666092329 179809518 223893210 328142874 88520790 89635272 539080862 531400665 910215344 784911924 390033319 459821912 938841867 994128464 302274405 365323948 302303778 885089884 278866541 778765033 683830163 354003269 31882415 593706973 231883715 266602062 798409191 110421212 548740123 960502060 681323757 985236099 882223199 959815330 735470095 385888930 699762292 126151481 667055916 387985897 287381943 840012155 650478751 98960525 473848396 662348623 378421533 47081900 894187951 898373863 482236394 820600283 622098344 957452072 30684329 445571389 881430555 694236047 377257960 511586087 772238817 578958391 142309877 6074683 727129556 738613051 821190574 99693668 471722035 645114761 159082161 821824301 246231996 348161731 433447483 370586573 424846915 120511434 925078060 478142640 577203870 715642129 182521575 183601209 699591651 594105616 547059037 687213754 290066634 567258784 278384497 29583194 989848830 143410362 747226842 6074683 594177251 455132454 853865390 192360522 555546429 655737064 259210433 488224433 559631090 321816777 952061178 715182955 758500703 472448047 996027392 403810589 593248117 940159380 358220341 495201443 676980845 731391308 139178632 584392244 428689888 998856933 594002418 173331806 507921281 861845489 795346979 172376046 591508970 37375125 470431583 609515650 996466367 358692335 978548841 501437834 743508816 26764655 71953532 90244340 915261787 124324948 569879270 675525723 427554634 374080883 557229086 443984746 838856955 795371025 707870680 392769797 641373720 20726940 567888993 301966468 418943600 181340391 526327478 694517015 401456345 694314660 698537005 97937401 446329057 715087620 133199691 980747824 872103597 883334008 883442699 964329661 219243177 87129836 165255667 332992473 113365204 468385477 400598057 286050564 850857631 446104712 642894296 769429163 408287424 778007084 491012904 277057306 599413440 766554473 685552189 512199828 143591736 393336486 373271018 316758170 750825149 424093157 212632182 963412179 130560454 545751460 400907941 599363173 33739873 191844071 443511527 641770480 205353146 247220722 735470095 799084059 481673072 190560426 439513219 58361869 276151404 389814443 23164280 263373410 505642602 718578207 128139542 508188423 106204888 686176210 507474445 53075410 36001480 30098933 379511196 475199127 208311955 704441381 944162334 447990825 356851957 45004726 541060785 124412129 694210633 628849748 121565884 371070164 110347090 9898828 555546429 35794541 137290621 984382642 507509574 256504077 290775947 955823986 188799448 964576608 617626369 506447694 390852403 484428076 653721939 446104712 188799448 817928915 336111822 815128114 126750777 963282434 847406541 229172857 706726060 68574662 913795464 685998329 464157258 248624936 511486436 420147398 59938206 701617846 979264750 559823835 911614409 846327809 515941727 820754635 120644927 838403366 143723968 21692697 390386098 286954042 35815094 154264367 911597038 887269762 427020948 953843508 275525456 814228043 283564720 196980000 131180650 607014834 172890601 407976225 113702197 751663150 938841867 14700170 323374619 531121674 46253964 96673896 173046498 97203248 702256154 459370673 693393574 838372130 16642774 723880853 325694288 223843229 62555839 716625245 835308811 289638495 630566829 450023501 635283672 473383951 130681495 353680420 404226502 279193699 279627355 476428742 145853273 594002418 584392244 340899503 859227281 146442845 589158295 78989626 143549423 68574662 732826725 853867634 760479837 659554958 755706187 594002418 816753453 215202668 226673439 964329661 323009767 403682682 516650780 265227120 584678561 295057902 827760201 622717017 331601423 119199751 673162053 33485421 775049527 491012904 943858896 577820900 443756384 907427002 344626500 32375922 984028906 566415144 539526798 907271911 95503451 17568796 901403833 771009579 855515073 660988632 264090651 423646799 677408635 101156301 462795099 507509574 77839985 940663788 694071695 677049963 58299343 377757217 63336398 297753111 7221291 577470979 764738058 891775614 408631358 12100035 599363173 14484343 192666025 602946967 625269263 87060770 757399876 214571668 115638551 396195715 866275712 976477474 810225936 161739855 364302306 101024530 743508816 161885158 47448021 240249436 653057090 531400665 8908392 282280759 831000470 957181171 396449836 259264628 790490513 764166096 621166876 396010135 532038123 247220722 494226701 859716163 784287959 917987694 888387334 254882776 181476437 824955170 784207499 488224433 310813775 164214169 436951908 183548314 489828998 447633093 685121504 291177192 563542199 722097922 703351130 512870618 774534102 108098871 529994673 681033318 126942402 585862918 314318032 917987694 101397168 169252431 743749041 543280238 977089088 299241352 527354323 694201659 219493043 844931236 724838718 40733471 14640871 641652815 328373153 169147074 4710819 726713969 630666315 919397251 793658616 550812065 863346610 248624936 545135013 349160300 704219866 170333475 332007686 351678106 266793745 622327053 790490513 693631266 603340710 80414768 11511514 169252431 378123863 819585740 721172947 55411364 803715180 303345057 403264959 222052670 413180650 632832527 297687257 810730357 77562567 120644927 469833761 17551290 712110955 249279076 301724228 406708061 711166608 842669363 942271992 508703445 245097735 577611981 293666106 811162412 990063134 485644097 602529257 133578092 735125224 387246481 616859046 117250953 556218614 31115544 581618221 580605582 150252840 482245586 441164379 232870833 453195888 398673966 817509779 353966960 356067238 209169370 527299770 673162053 507474445 168213692 689957974 414310733 332992473 503472746 884156719 493981688 607006145 990750133 668424404 139178632 135597483 57431564 934317667 965677551 701613818 963226961 907271911 898323419 991122761 278897687 147793220 892013995 805401221 824333006 7221291 318244739 406518219 450777289 120315558 56103261 101533387 948113430 113702197 286954042 131293000 986790528 479374646 648363324 484056718 401590936 470155825 333187018 43789182 737218109 76605712 259210433 517698790 77855757 411466487 119275992 644076688 279280125 852751929 310408596 279193699 70711782 565539542 690645347 284319963 625990358 921038201 177265867 655072369 672224576 87338502 93137007 625269263 89516333 352779367 615557404 711938915 290489282 352019725 240836262 708505943 778202854 425628417 262610054 786193194 194296543 851545043 578958391 962762175 113365204 743749041 307767072 484196394 29642358 834374904 34152531 840535103 200792570 253672164 715465382 255467498 443511527 359968629 414929390 579505148 326355741 724140261 990332043 757399876 791681394 48420421 56629975 707841194 994160995 168375994 873505595 567961640 323594425 326992960 743007075 368402378 83774350 293249724 388195489 98614370 613765439 332909590 179809518 823182841 375722358 344626500 176144086 219243177 816749833 327384116 370586573 898373863 359707817 801584772 814536247 130681495 311376870 486031750 799131552 893949709 228434038 744503077 825721530 387985897 961028661 101303048 463061598 224206891 392353254 251283209 694517015 683830163 314808067 135496158 488761774 228000369 984781783 855342522 539895653 114490376 59938206 373197769 684426675 78989626 143321119 508440691 903716250 791760627 264972600 213629398 277750457 972433370 733392225 625990358 134803167 287476371 683049695 55496604 956921703 251275201 959682189 2267895 68262523 590146562 332909590 305728713 168779710 188011736 288338862 397590059 641117022 263427333 660738714 33119528 999653626 173287646 481477563 245167695 363078902 591945647 79913246 552949859 778022201 767505642 559823835 170333475 567656575 425697145 977354192 288349510 909005038 481029245 339261681 830829720 339676584 26758536 482209192 215068446 846250560 920365121 36446880 753910254 942144547 832879077 787066791 859743875 873608238 639060490 468604850 168375994 56178297 9789829 667055916 856772079 769648575 278384497 183548314 56371774 814161904 444341395 831087620 98614370 222655435 322250128 833015052 264972600 309792018 585290460 716654012 10571430 953791872 44400258 583928321 63336398 801781610 239642863 222393322 173287646 373271018 117517553 39012073 606731442 198325455 721360255 315852411 297091631 840719491 882880092 333796773 232151291 343838056 377757217 255995014 242601592 776456668 288338862 516348298 81482031 496219658 885729772 666716017 387811756 253672164 630369541 608960658 607190513 613474500 134752355 213359710 858833076 324644196 923225818 781470828 87112445 768138772 559192103 832671251 10281377 998925542 496696353 924120547 881430555 49453801 197381949 425697145 498285405 473848396 919397251 317642770 934461948 943400668 575968095 740539742 814209757 635246842 779208512 149412973 547426458 32300385 245097735 199199314 271545507 531598465 290630815 238187118 166873308 130748149 482236394 112260299 739561319 444579502 847563421 434173970 318244739 720307744 645114761 338369013 505355078 173331806 82188265 810174413 904417649 767505642 761271450 413764162 27008557 621126494 663400807 424829099 383008147 669840131 663707664 184235590 351183796 191768190 767018711 511962449 172652081 968556641 678284060 433609376 707870680 972603452 566853751 354021143 141607140 611762769 322486380 894968871 447283784 267200358 272716401 47706221 666084378 768138772 322788715 104132483 809217981 777948978 913438138 628533056 684915037 409721637 157477269 793199056 738003643 704746261 814059348 782350213 987511774 805600576 167525206 362345564 213742032 727169356 279844643 303939627 266502803 722466239 344256437 100252771 805615465 259705784 892376032 978024218 588152520 623090135 60538458 182426444 243817675 309307017 648222328 118806460 511486436 599712989 459855235 56103261 496696353 295315244 405529721 882880092 415074383 900393002 630666315 959505218 738669950 650973466 62555839 341186216 291177192 161548506 889361891 355930996 251907555 966364960 95226514 426908399 554157262 559063964 418603889 364878980 808966775 358220341 776456668 743722055 930606103 684426675 153683887 564289167 438630753 132410861 959426924 771366659 578491038 183963712 592398796 554347301 875983680 473047610 558273017 553480825 905623941 538380286 634319834 652124899 215642803 516724434 85619126 93629177 614890665 71787310 413123472 602360905 550182649 609514592 750495961 492380149 4353081 436951908 774526406 143410362 968008469 318095306 851296302 784471339 633101992 525094124 497417342 112782806 523323726 16498498 474872546 849229551 441259523 539319088 413228688 881048964 440937448 138932130 933767247 302885739 190317405 301724228 635717032 799002890 428618086 46793799 760057778 485606266 813378121 271480510 766123053 803900750 599477657 568891626 368095127 256541533 166873308 106559529 71787310 95503451 674542227 427811175 129485936 622356349 827859456 935844360 797501542 732826725 667055916 35114805 252693314 674507154 861013948 580703002 617105125 956265400 829964647 682561229 778007084 210371454 44406641 410729829 803715180 28911638 944958052 322377909 112475447 206674100 156630558 761062502 399366010 594185923 418246087 532397682 908986967 189287450 172652081 176144086 774715366 230792741 39970385 838782843 658565136 779208512 195238415 401527487 656596081 762013651 809524612 744605802 379215607 945727872 438010733 9686570 182521575 767346766 36001480 758331348 391513191 421661591 657048440 409643450 778765033 169147074 627451717 406566817 246726784 244850388 863779255 279627355 722466239 634124971 132956382 366138558 201049913 71438949 980771035 567129445 868925862 900666747 177265867 187043789 764738058 229059270 676130202 256475429 684429686 279280125 119880723 731246096 734077184 824892303 428108416 417878317 258069963 189716201 930219713 325114746 222228927 930649075 895632224 833924014 413338415 857545955 611002601 445880547 926626683 839890633 374829013 678439153 116783336 275525456 50143954 864666896 232946291 391219534 572210787 877911025 956692225 995207613 423309284 475199127 486482457 391573832 575691133 239851044 612989706 224954976 599195882 421294986 359813935 350549710 596871223 218455304 567820467 212333910 202832456 999646466 653721939 447235483 61203290 714954919 783908830 650661528 769429163 618872936 508684375 652647628 464675217 723259457 272801478 19221093 774715366 999653626 789991995 507921281 814085226 835217804 873954329 92941166 26346309 195574433 472125077 691663480 320692286 743033500 597299091 766702899 218124339 359802288 868176165 841089783 302951021 798409191 316337977 450023501 268929374 554157262 111763676 918093616 9789829 787270808 707227138 124324948 744790892 149624114 844433235 485644097 339064079 440326361 921038201 287513610 225193305 332050044 168344050 399021441 659554958 738968678 806386122 92184976 170330891 997421277 442593493 496445800 362471681 234902148 255995014 26158477 194529872 524735400 427811175 582824875 471348221 10883138 445557757 76881051 997226910 166873308 718450902 960587367 757371686 192747501 342983554 861697640 699872724 467447872 581293723 146183600 453195888 882592911 831087620 489386104 293273114 299241352 32444696 362763648 824892303 302885739 740424690 732449157 264156847 194738988 156968424 470547145 516441293 208290005 419013338 364302306 331976226 691663480 422657201 570904525 603084254 584657673 783564947 835217804 135597483 464093382 781220664 279193699 805992004 397187090 796148540 85330293 767018711 866917533 953791872 703947004 993729565 211212202 973374306 255866621 268812720 287698662 232870833 315366278 539172105 40761625 597983691 769083052 319576043 880006485 698931608 902705377 778963886 239186411 196911651 821274633 77839985 118945983 758919685 505495188 758660435 21692697 157734675 644655441 248528541 10281377 425176277 885089884 245180337 704317244 413192247 561871206 722087694 20460124 783919366 249611755 148872843 880006485 7285676 712824576 676130202 193292683 959451854 528475809 419427438 186474107 821407538 814740861 914782996 625269263 622400429 890487116 365605292 393702122 845979811 92762280 589158295 23816368 475471242 217504245 859743875 406436608 373943114 940132747 437203448 787747737 392045588 814536247 130233752 30098933 811003316 926626683 8908392 621166876 101410003 648363324 559377198 31882415 785291611 657750288 269244170 538644345 645417617 298300071 766064131 165147259 856449122 396195715 5729841 740659339 791536667 727773067 695688258 947696425 891149152 929494216 270607642 624854784 72816262 207805575 876597054 484733488 339106290 960263728 646468218 670924186 143410362 866275712 845979811 960587367 360980625 791178147 28831669 79032119 841449414 977089088 622327053 606535464 492031763 332532417 528508131 584678561 89516333 242426405 627977236 464771447 957392180 588539 284629587 418450655 414812061 75960094 357472945 735055857 119688172 827026208 329676417 837931720 741111552 459370673 996027392 803900750 892022323 403328214 149927065 452095870 484196394 914292700 171197583 752718488 261914539 943842831 555859738 35185008 124236362 522997998 670591275 15234053 617034160 799131552 938349663 412124180 459892061 57212848 745351886 703504200 121338368 172158761 429558578 536206732 680938701 422995827 124412129 343724630 332501814 542507362 259848496 164214169 890583877 812993119 486482457 827026208 52327804 910041119 84035638 384131815 94778825 998119538 649185253 996358274 85153464 82188736 405211363 425872107 190945250 522104887 920327801 215844451 560446957 561871206 7733931 181476437 246907900 540571239 339064079 261546154 216708316 576870939 863674900 1997410 266382246 370899819 588348200 895402126 888802180 455629229 447235483 143321119 740683000 248367091 359435870 261655449 998279315 412043121 798409191 265227230 916080289 396195715 194529872 417615828 380286765 632418290 32994753 246896386 573360727 266408022 851896635 324644196 789053029 605598679 459966514 753436941 998119538 59859789 591869989 298973198 641788754 519652098 289625377 168779710 925414817 208052045 263252601 21350632 644075462 323829946 299851704 939357958 182576283 330879530 126151481 261914539 991056791 89619481 785028910 44157032 199433873 302396735 466991961 779131891 421294986 424829099 75029818 657573778 451341954 512997134 704441381 171116601 121366676 643437154 462438883 329676417 704095095 812993119 532409687 90938530 199569265 724140261 673212605 766064131 586793567 911682579 678074796 15363892 121914939 522867141 126856560 616208593 435893449 131293000 391729428 856205911 341442670 202687577 571680536 998279315 480302776 571336957 260098960 664716307 592508592 71438949 9083207 259848496 37361502 71787310 890998006 606754672 158483920 167939730 299393538 161842598 859227281 449301490 181807069 374325071 194738988 202832456 697646981 14594262 188648062 827859456 238981092 248393161 70792490 227527670 138936113 586793567 343833471 501602670 279193699 227119210 520946914 470155825 313709737 652188104 144061225 859227281 464675217 929102257 568838815 238534474 731850604 982248912 128274101 308306592 815971091 608973577 113702197 171208483 715041146 838856955 144093335 445674227 963655621 560343402 991683935 298985743 270796526 971516982 907427002 323841451 104575860 436951908 162414246 161842598 44406641 614446526 970707395 327765793 196660535 323973667 608928141 64747596 775477924 907656645 149424016 810225936 396195715 998070740 940752030 827859456 383114741 679137362 36001480 818530169 946629040 619153261 408547112 156427640 608928141 90205660 876469630 608726602 677049963 812157405 343833471 536123449 929547659 450435362 324644196 565439429 98960525 398024723 504512314 470583686 991228185 352779367 723089378 114039611 181309296 819030496 820162099 981297114 142572005 476056555 988068787 702934258 458720877 384372482 180461516 851545043 606731442 940159380 624208996 841257996 9358321 383380848 253672164 808556393 736999941 740191941 960263728 901072025 719576691 254730737 674507154 361703492 993091261 858593940 822099193 765444503 125818812 94204569 43658180 71787310 867682504 996070039 449301490 154264367 124634215 733371371 940887852 375722358 943400668 100552030 23626317 809945222 544243634 433906697 582423808 331601423 258007443 55456604 56178297 583468887 181061043 71896465 445445915 559221201 911536901 797571073 122424999 735948512 205377948 384372482 85908862 245828544 471807089 492333146 715964855 926782710 135276313 70792490 164184179 267759731 711649395 414936307 724711319 301724228 413180650 34228815 168696792 942271992 588152520 382494544 593562347 730289727 228263883 876054182 661154467 717876219 978838782 246114867 671157698 158483920 200135663 101533387 379511196 868119397 219639793 173331806 925078060 429558578 176986775 888363323 459532919 250034332 664563794 12934785 646934377 251589259 303280510 56371774 112396307 481029245 565539542 278363762 83552542 893027217 514124813 498727374 645114761 441164379 351906572 388851546 772238817 687669529 306594022 486304498 756727543 74686834 545223103 819177331 833891546 29863733 571213810 288266060 212977880 414209327 527319796 814209757 952610192 756670266 573360727 596675559 542979336 637329054 302973806 431228734 64707539 732504771 287076745 331058503 516650780 821327954 28876123 459153226 504257493 308311291 205377948 597983691 339060930 107820156 594002418 101995837 532862262 79830684 115638551 17834316 264161013 803684878 575932082 906323892 853865390 985235970 434069593 881031080 788565231 136458315 205718954 590146562 782060892 810818974 133847439 259848496 644655441 564289167 267217986 572994337 878472634 723308589 161168364 951419697 133578092 568224063 454567843 577418797 985236099 206947382 112260299 196660535 725790888 963412179 51739918 617034160 431228734 616208593 189588225 722097922 108481641 305728713 874765059 168344050 940728771 133847439 990332043 224780043 244848560 819977585 125994586 20593514 603943017 120825765 297533239 798532102 952238771 15579069 605066463 695889101 830691802 735470095 826593764 742989014 798704204 782321975 592778944 137972836 435455359 685990293 244318318 906643987 977920683 601245418 297533239 759856178 549577976 786769037 454567843 151644485 914345187 884156719 600731848 7455531 43789182 381509145 16642774 695611692 174554145 313041351 927504629 652188104 410729829 534791603 925078060 887665329 266793745 925959068 772430279 573012264 378341386 741111552 259848496 640094532 809945222 582543416 213379090 873954329 471807089 473204173 414310733 336927622 100894582 422834468 730490543 154142244 456171329 227119210 572153244 647287845 708594369 362345564 699476986 441259523 723434610 100369079 482658484 795336717 470225889 797729741 513275688 522162975 738097040 464675217 871852280 980631873 930606103 749952793 474434198 649328326 423067490 278363762 891044227 52012162 193673584 472339999 728371212 605728723 795346979 30265864 715975322 698537005 724838718 139732631 231282340 156367029 113204630 639207425 306594022 758331348 179342443 582543416 794674617 825718553 760450565 959426924 265562253 753269448 246896386 314318032 677408635 966364960 112396307 149624114 955187862 929547659 106820454 452095870 804772596 71953532 586230535 308306592 626671882 491125478 683963524 473204173 348003998 523323726 842804647 768149844 532584882 53139843 761024521 829027881 678461570 176214541 200492809 600162938 786193194 577920361 535220604 938841867 771366659 134313497 575907461 228263883 704317244 170330891 308452836 484196394 943858896 513275688 724677933 345251277 165965558 663140441 940887852 389814443 435488342 886835981 818012022 364092130 552949859 611035633 33223562 677408635 473204173 524526177 633223684 83441525 787369234 954502138 728084781 890425414 846482054 628897356 740683000 892502461 814228043 34979133 481477563 48855726 91896373 357623307 56629975 657750288 694193964 528745266 974196966 559631090 810174413 29112804 689957974 856449122 666944928 19221093 707870680 133578092 426562717 365997603 251418463 880039838 401697917 492040275 73782650 920365121 440463965 409973224 48132247 994939812 770965764 15363892 401700185 456068336 742691498 977729124 482245586 959451854 34979133 29677502 716070994 616178629 648363324 454725867 381522974 34152531 738669950 519100880 223905430 658030547 838372130 245180337 85410017 753269448 576780065 513185757 97203248 406518219 990615559 390519786 918894283 530409704 783381233 701613818 377780361 573931392 670157273 622717017 525638956 548740123 318878994 822099193 189768557 423750519 329373932 817797466 241704301 266840942 483976487 491458438 911126285 256920977 353966960 801584772 387828469 52706961 359322884 902955471 481477522 666084378 272801478 625399808 867617393 685998329 817287828 396166564 793110766 982039530 338230014 241023138 768138772 680855333 625013868 591813282 578584180 414812061 683941034 388349158 222116249 897916025 302580911 735302815 426813070 704095095 171197583 373436147 559645002 265904576 926298551 989575449 989269750 23164280 982039530 817283361 227739391 795371025 361019624 921738016 634093431 669258237 85772685 144093335 194529872 575351641 933740284 425447208 60231461 496445800 553291542 860440702 736999941 139732631 175964182 18440543 823606328 880029083 803900750 61949058 68574662 546606411 322377909 111341182 379218704 768720862 135496158 873608238 65499478 33223562 943256684 808000077 737218109 113718969 264552659 722323960 270238853 40733471 3517888 514642995 277961622 158901683 885454799 251275201 582543416 193029455 512870618 171385328 512567532 104179654 635115246 424093157 387828469 223893210 73402876 545135013 529994673 391909991 849868763 178234658 277750457 621380200 73782650 8908392 881298649 14091222 50066176 827760201 295191333 880561179 414936307 467158904 119449622 874765059 670046853 20726940 913881336 810174413 703310864 661410658 600336212 504257493 34152531 105244512 176986775 473102970 936904534 195126498 917656269 531077045 379448426 280084908 518204083 566050763 45763732 197378343 329394702 545751460 526630418 327428172 259715114 968452703 957181171 330962701 983930175 707324332 851446668 48671523 208052045 59578663 618391659 87129836 669443488 881010154 374325071 191019940 434012545 658262868 668239990 299851704 137115706 332532417 895632224 189220848 487394853 210010009 536585486 540888359 159917509 383380848 742691498 648222328 772566237 33717760 231672601 502779916 867095048 237451076 106559529 107808978 11942428 53676003 699460113 925920080 251468784 931649320 197325365 203377670 306455665 359968629 741376229 906412493 78989626 470547145 369244711 534606800 240357237 230982949 276546782 657750288 997226910 812157405 928104524 621126494 190560426 540192457 145198789 172771364 638773181 720881513 186664369 972603452 662207358 812993119 32375922 286969296 809459138 617446085 446345935 884006689 509969649 764991448 690081846 14281208 992761434 278363762 342531699 411244769 893165284 773652562 792301752 811119785 28831669 775551192 763085108 935844360 998097657 888886584 889680918 712110955 863891495 509784640 808791735 755329756 622400429 296378401 867123733 693950087 542979336 489828998 205945197 670095672 763615961 379215607 329394702 622444979 666525767 912586557 20661388 407046193 347742356 684758551 940663788 701617846 959194049 936299712 876483283 753910254 8856821 156630558 516904060 426562717 702897492 943114099 421661591 49808970 964668536 469536891 227218401 186664369 872010932 845071084 573360727 919975022 49808970 79830684 716649254 149181759 158726966 401590936 27019841 447020979 358551013 565539542 857367584 456068336 821274633 648087097 144061225 105070639 171385328 495130488 723434610 56450978 634529022 159265904 648222328 872344572 464405816 135276313 44013248 82389432 381509145 938349663 980278514 968452703 3517888 575082915 707870680 377862640 33781772 571336957 758068661 787619449 669851967 20460124 229983290 42819703 631145734 276723131 867682504 787782146 433144115 661584625 607006145 790033906 719576691 446081101 145853273 128274101 279663853 398024723 108106381 31882415 440463965 670157273 287076745 485644097 640284035 577418797 250034332 835896179 199187960 839523551 783919366 441276023 50353247 19595964 399562598 87606923 124634215 639207425 322221775 352019725 989893954 451064437 640799332 472125077 74158082 605066463 443379097 476046422 351077143 680439837 469150488 790584023 685121504 630092600 512965180 775714082 729854211 613526821 125098132 402697337 387949612 840345665 215942252 615674959 265227120 685629680 100430245 648222328 671157698 980747824 810228122 626970185 585862918 557641316 149927065 929650001 346153013 132569079 667055916 943408355 368636485 142309877 887566724 229059270 449301490 209935069 617195341 938841867 943858896 711212792 685100407 706088955 459549785 46793799 809415544 317642770 47560661 470225889 203683816 365997603 305728713 230126727 484505198 612257511 646460514 428874628 618344226 486031750 250401556 111341182 165606056 634609107 35634966 873173721 693917925 869903136 516050388 89250476 321347669 827578078 258069963 733371371 956921703 302303778 833924014 8514809 496374196 409721637 821190574 124686517 785685488 30265864 35114805 455989267 929494216 523306362 821190574 742446846 288266060 963282434 290136374 705409578 559813875 231883715 964288958 835817953 538701178 604020587 934317667 258007443 504257493 409721637 242088182 575691133 946988071 590790064 685045316 215844451 614741012 294071211 661903475 87060770 670157273 767229675 213435668 790343863 481477522 728904305 177265867 12291204 82188736 481684319 469833761 233168958 669258237 612498838 936316033 35017556 575968095 682384318 752649806 336927622 987741376 163409082 614890665 824469097 678494167 313041351 985235970 678926130 209935069 769648575 966134039 87554919 515257919 954552713 61203290 309024963 373991621 409082342 424093157 680961142 756978770 955823986 33739873 746351207 832089041 259644489 406566817 123918127 46974505 807569392 391729428 468410558 826719690 464771447 558471522 723308589 181262713 588152520 492333146 572210787 15194331 55022264 475471242 378017842 960950133 836210608 444341395 335256971 700592307 59578663 567656575 779410543 831324232 512595478 652912997 120825765 496445800 403040141 60601077 363167554 592855228 940132747 209279596 47560661 124412129 571558303 426942267 873608238 44406641 426069641 751663150 212333910 265904576 692467279 825767247 169372924 370718372 328373153 842024288 619035643 638773181 607190513 681164093 622065970 653721939 776827817 348492981 833015052 888802180 996466367 939414110 904292494 55271786 243817675 229059270 764166096 201723093 82188265 564184811 859743875 599975425 146442845 19595964 88244339 35017556 36891258 440683510 171206101 915758682 778963886 637583085 608928141 592538952 967477133 742223817 718450902 831148533 401456345 925414817 111953929 829027881 685629680 194529872 283309395 180511810 276677539 776827817 489130738 525094124 516904060 188648062 579505148 532686342 772752998 156630558 792199781 174554145 881010154 316337977 176689484 790584023 263405878 365853060 517868766 878394639 29583194 12686120 351685336 943154593 788890047 446286531 800561183 261322372 355515721 472791954 255866621 175579721 173854990 177813141 355485938 943842831 606728140 232042494 616734528 406976454 674933816 227471178 458873868 470200470 314770376 112782806 702285871 234483510 34228815 818524185 135904170 818131605 427116544 926727247 287557514 649805268 261322372 985318505 780068815 836913248 455132454 993732809 57997134 391945035 276546782 501614322 638184924 645536456 627166441 869259062 558471522 860227244 849868763 987807177 661154467 699817175 359707817 915801617 184235590 70727208 775477924 245711526 418603889 814228043 29583194 470155825 726912627 540676571 416204454 244318318 214571668 922308369 779555399 75017068 362471681 299933132 303345057 505355078 59859789 990332043 713356772 259848496 831087620 304962070 516650780 329776315 475471242 300466853 413192247 384675487 319355705 873954329 862307089 484094974 516441293 139178632 446469999 189768557 993091261 948389751 635115246 444161878 5226926 814854596 77839985 807569392 982592507 719500333 332073190 984338318 421573887 392769797 653025446 194166465 680228220 576325528 553300223 171104644 436164620 28831669 634685337 539963350 208052045 961327971 704095095 386668522 803900750 460630937 747585224 216663601 538899541 838175812 919975022 737218109 74686834 698423443 286969296 559799670 309307017 58809756 199286806 789147402 340348364 922564893 192107578 738097040 506353082 105070639 261477517 163089910 543280238 676130202 68262523 847563421 466634133 783919366 925270919 839523551 636729064 22837246 907427002 227893773 117686882 415074383 743258777 433144115 779555399 124595557 319791841 700592307 164269532 193679555 101024530 921769824 412124180 524687756 280819281 62555839 797782093 218455304 720307744 351705841 279193699 622400429 91723294 244850388 361870133 121565884 283564720 6156588 477564988 930099114 800561183 825721530 644680721 390033319 132549744 636517289 578345192 169147074 707227138 934461948 261881274 682895445 74158082 82558513 102884708 339657591 911156828 176192923 772844319 449415038 229526741 983479107 56399673 251418463 430025923 206209771 962097171 593388830 832671251 332577239 370084353 290066634 233332213 788239486 32768680 216744565 516348298 785685488 348003998 23910770 536187793 862939936 410241368 553160761 176214541 818530169 427420019 882880092 454567843 521940732 200306575 172706857 885454799 474375349 188079893 541060785 396094557 300205360 575351641 232870833 822318800 699460113 250644493 888363323 358551013 491761037 519269211 451020778 693631266 119275992 385316675 184167493 20955790 678284060 824948289 185808457 503472746 614561131 722466239 568066909 479374646 875316502 244850388 659245693 377757217 155501701 996263353 61977295 380743723 279193699 540235952 850857631 476952902 358429939 938543122 244645017 201188076 691103807 432659386 360697393 309792018 134130650 738078174 78747617 329394702 941640695 657305305 411373914 623884734 788890047 411777768 498285405 133578092 173287646 768149844 126942402 483326661 994399456 972471770 791536667 212977880 541691813 984338318 95503451 985236099 176192923 424093157 617626369 212442487 129092330 672219217 89177410 120315558 370904584 602457065 600336212 714791481 685552189 742383757 634093431 414209327 945141219 966134039 305282600 918134121 388223330 668797597 49453801 830573452 787453728 249336239 431706440 808242329 771009579 628849748 324811550 864382338 894187951 543483688 938130917 108761141 859847704 823752062 892022323 309792018 508440691 906412493 241604643 793567237 254730737 159082161 45818101 577470979 480890394 509093918 263427333 137290621 556603686 538789025 240608845 773512522 624515974 638281987 527299770 470155825 485644097 917994196 277961622 156367029 902705377 75229102 889880270 146673592 726529070 577723693 642448466 432659386 195574433 494226701 430544846 271926452 56636843 301431139 384296691 75229102 284177728 588348200 7455531 528699284 781987609 414310733 776847680 531400665 46253964 967780145 12100035 732504771 959682189 473102970 639683180 738003643 392885733 464771447 308306592 302792363 537111846 133847439 347632676 699872724 705759680 21231585 297533239 65001193 812101129 252115701 835709956 863779255 831148533 105670287 367953979 157334018 459892061 504140152 202979483 85628837 220213682 45742076 805615465 805401221 952609698 149927065 186664369 486813735 744493275 301724228 682561229 272577712 328319663 851296302 309024963 936612530 564253156 371008172 590616349 630445335 904159957 172706857 904987269 93349154 567519004 319791841 413123472 128139542 588348200 532050035 626510734 840012155 607903236 368402378 759856178 631639650 666092329 771366659 524110453 566900631 151854626 414209327 868176165 311966060 947283533 259590331 831148533 695688258 863891495 968008469 860440702 808804150 351855708 877609428 184345684 451064437 735470095 715964855 113890947 7135427 22190984 82520007 424093157 620846892 343833471 532050035 295315244 999510217 810619438 411777768 511586087 838372130 861849773 594002418 796274678 825188590 425447208 703417771 815257954 648087097 703204399 586116774 143081607 265562253 835817953 385316675 638933192 133199691 897916025 769291405 683664676 823606328 893024942 326095719 736982534 186840994 229526741 190126168 638664525 904961277 862533520 176069986 567539530 664563794 621380200 885949574 477564988 61949058 296372695 405183113 353032689 589158295 291177192 437230490 544368552 192837190 208052045 995082130 490280321 383380848 304687086 331601423 380471354 565361226 243784306 554157262 763787861 868925862 614477974 247762164 56636843 516348298 357728969 878472634 13306544 493981688 231672601 344626500 237129719 542979336 131293000 505584305 438688912 832345379 870184406 385300022 199433873 955491104 414209327 472162344 145823899 566900631 974196684 64707539 892013995 509093918 183963712 190126168 516348298 697257806 891290260 428874628 246546922 330581999 306959892 387448768 634605274 513574714 931587040 97196444 87338502 534606800 585290460 847563421 382400728 306167935 137972836 589158295 695577168 209752506 619958259 892358571 158901683 385818791 722323960 709759009 495261210 998856933 861697640 804772596 597041049 108481641 413180650 672436733 551749464 488769441 837931720 316117612 458873868 873505595 208182956 426727201 323841451 237451076 693950087 572851317 945141219 122467677 799002890 3111695 757117805 151854626 599975425 145015410 101024530 168630740 993945511 533491545 477897425 982039530 261914539 851896635 701119742 868119397 191768190 471348221 414679578 427193603 963655621 309210732 532409687 539526798 413228688 260126757 715563614 132589201 189442294 662207358 838782843 548951569 392857151 151644485 308279709 965295649 100141404 211564327 418603889 156448884 302801866 820754635 769951693 831324232 835153635 768149844 731850604 993091261 1997410 969534869 465432120 205377948 612975435 990063134 553160761 228000369 925751148 617626369 7733931 291952526 440383275 826390147 894514412 572935160 265325896 724371560 495747597 265603418 75229102 608025670 516441293 566415144 389210030 350517000 3831463 611762769 616178629 159879307 708449224 498678305 575932082 21520904 669258237 176144086 214081108 961524215 110347090 630092600 920153792 936046129 911597038 622141992 321059026 678758803 559799670 138936113 428108416 192243675 728904305 549577976 268813415 239162507 486813735 711515066 165255667 697285056 9358321 500069058 518583385 560180239 819131667 943062655 620908438 639889322 512997134 416204454 663975329 463074263 803715180 847558320 411553572 187913741 280124843 621149170 418470891 244848560 976163852 89607992 689857400 766064131 611002601 998856933 259320003 938739245 474679443 471348221 251907555 11526537 158410014 732504771 583611040 369741281 192742040 735643098 866728678 577128712 749952793 710399184 622356349 977729124 500069058 777496901 671157698 135904170 286954042 470225889 812545734 738078174 642913738 101600824 954552713 65402346 868176165 594157733 781634857 144595910 880006485 524110453 344237643 612498838 453067953 885089884 455566195 705409578 251907555 332038341 149617161 604020587 614468721 209169370 60084375 416857815 541691813 139918534 104132483 440463965 473574639 581293723 367158564 918894283 643061746 696416203 75029818 487256848 614420317 655231498 951602307 571470383 850353094 202038019 178320187 967477133 174554145 499726655 145030953 533733346 855515073 55410018 987493119 404285864 685990293 670924186 637555883 600936263 883442699 949875879 367953979 591813282 804914076 173287646 524526177 200792570 423382810 51115272 961327971 689857400 232260080 113975767 463910045 330581999 768138772 248005248 592538952 885089884 163617987 508440691 39970385 303753583 240249436 83313076 440751087 44514660 662423538 703351130 129343380 533491545 482245586 130232149 449943051 446345935 782625863 841288779 464157258 920158824 143723968 244850388 795499347 297984721 16887740 681323757 15813216 956446474 940159380 830223686 561212596 239162507 271569486 918939619 483976487 717116426 953887421 248528541 612498838 256475429 395606749 516650780 515032275 605598679 716654012 858593940 302792363 977964499 363078902 325254218 969534869 338369013 493981688 738613051 278363762 736226703 445571389 532584882 847558320 59859789 30684329 682039092 694236116 388439020 567129445 456620093 487778963 168630740 780692187 124324948 70792490 534060351 823606328 838856955 698648173 786193194 436356228 199569265 774534102 470200470 814666112 18440543 290775947 246538611 10585463 318878994 515923912 808000077 224099360 733884644 732504771 121565884 586230535 602946967 246907900 382785220 265562253 577470979 853867634 260809328 93601884 230623541 631999248 820600283 517078323 431755939 483326661 458873868 528475809 951602307 405861846 501184459 476891549 681987281 741805743 299843690 560959656 392857151 443511527 354583476 956921703 217651693 523105096 544148756 433609376 880863412 175573396 630369541 753146142 607708723 446081101 369856924 338230014 147793220 789053029 617066065 739561319 131293000 365997603 789991995 231133498 112260299 168213692 941673575 489130738 847563421 958326576 506353082 409973224 627451717 362338554 451560800 8908392 338230014 212186584 576744099 838722526 957392180 852816996 401590936 68151071 996601424 523306362 650973466 373943114 969266424 524273512 561550658 60511848 496445800 15404893 914662667 892557246 387828469 634320535 382494544 398910985 395606749 280819281 190317405 405183113 104179654 250863157 517629412 572153244 840345665 353685083 683664676 78027090 92941166 940132747 844172942 211564327 379828427 242426405 117517553 871334946 344949528 111953929 772844319 237993313 795346979 623627406 93629177 906643987 369856924 10585463 480890394 123966205 734077184 105396994 330696951 455605680 255866621 926383726 421294986 314721346 982248912 301059508 186474107 925414817 75029818 776847680 332007686 566900631 314087366 925414817 10281377 27564176 515150137 711938915 178554650 63428356 978838782 119199751 612257511 941294164 994399456 87172430 867123733 33576867 182796995 197543690 377041622 485644097 576744099 856205911 378123863 852816996 393581281 428618086 498471688 613863099 540676571 267130391 731402868 476046422 544148756 543492246 792234558 573360727 208706801 602457065 300107053 151653995 561899030 226290424 401644558 199352976 735302815 357897365 814228043 440032801 341979252 961524215 985236099 588348200 101024530 270238853 634683136 463217611 977367481 227739391 730289727 60538458 518575425 404380730 558131956 421982303 687213754 844018425 589678839 481797000 888360095 889361891 371070164 104144854 175964182 107820156 498412445 492333146 393702122 137563558 993729565 390584988 920638017 49808970 293666106 410935643 356967793 369866400 833015052 840535103 424548681 208182956 248528541 460449520 829461905 665661938 808000077 641595790 638184924 926994574 567129445 586769582 414209327 590388898 693917925 667786601 137208685 443031883 485644097 978485528 53313305 392769797 137954794 723636806 414221178 145769017 664716307 213230748 264090651 254471401 922845593 270238853 987511774 590091443 378421533 23418996 260809328 963954978 542592405 215642803 435738767 90828708 326025234 431755939 536947790 515199300 565134851 164269532 777828070 138936113 777599463 387985897 881835831 29677502 344626500 173046498 554347301 37375125 866728678 810818974 369856924 205718954 331976226 168213692 223942560 911126285 850353094 801584772 672537924 818524185 404433384 616178629 670157273 765700497 766107437 964576608 82582804 585862918 996415305 294312274 901307906 744605802 614479002 161885158 993732809 417030305 808791735 292078138 724711319 411553572 91088807 507071245 1831389 573012264 726713969 56371774 735643098 249279076 809415544 396010135 208182956 910390300 536558946 817283361 624382076 756883403 189641658 723432720 565134851 612257511 863429518 773171286 246114867 801584772 595945449 793946870 508684375 995399950 359875347 362471681 595697081 704364808 607708723 332909590 269365459 528075150 573360727 26158477 310420366 876469630 965887028 120126730 256541533 9339689 132524740 501396072 859716163 519652098 922564893 248367091 176192923 190560426 878394639 924298408 382387647 691827396 317161341 635115246 534060351 624766555 567258784 744725796 344237643 631168658 266272826 361034134 83408971 615903288 267130391 563375048 557045538 300466853 303939627 21692697 436962649 626671882 64747596 923950163 637329054 9763352 673007083 569479799 699294880 853867634 738078174 162320815 887219104 293814950 691089214 862307089 302885739 314808067 918093616 620846892 683941034 29863733 698863904 8991600 407877244 656596081 375081856 401842604 441209724 296244299 113718969 46282639 945193914 472676815 648087097 32994753 553135375 595848759 145198789 868561209 397590059 378216275 113570806 408631358 609514592 515032275 469796838 3111695 393493552 197543690 950790491 127406784 218455304 440683510 369043456 239300098 715975322 174120506 455989267 182796995 44157032 393493552 630666315 984782495 388439020 982248912 11526537 561899030 984483517 370899819 759407699 522167392 610999655 215523700 295057902 812982582 773813511 667055916 627813749 633416532 261477517 296372695 564253156 139721772 137954794 371008172 168541496 340777409 470583686 389716921 963282434 567539530 703504200 763615961 678284060 651708170 164184179 438630753 704095095 515257919 405211363 740448148 271480510 155164400 673007083 797571073 76881051 55271786 423168797 149624114 36446880 474434198 256920977 184894800 642561124 25287674 506185191 563542199 239300098 176069986 271383175 878267752 26417366 301724228 466918176 959991697 703234343 167525206 570574208 989893954 173854990 822022239 700757275 908965387 567656575 73782650 387985897 998925542 992761434 170001592 516904060 244140515 960950133 522162975 870706542 290425737 930219713 104575860 367939638 257681001 57622495 746975324 301966468 369271239 778007084 256475429 578646572 918939619 206209771 942271992 597983691 727169356 8613421 678074796 472711305 743657917 96673896 920293966 441259523 477897425 114037956 61203290 114037956 317453486 766723396 550182649 371008172 411714755 709418144 330962701 357655314 16642774 690406163 248393161 914018852 367128677 704364808 566853751 640799332 222116249 30098933 404495670 945141219 694201659 561235270 463061598 689846841 704965966 87172430 681084204 478683450 487394853 600936263 775477924 695206734 380955396 251589259 822099193 229231430 780692187 222655435 504257493 826390147 724140261 443926841 872344572 970069180 858841379 591885275 544368552 532809158 269312604 100422564 57210434 331601423 739235009 372801202 977964499 396094557 214386054 693950087 851896635 7825237 567442879 422995827 56103261 373357752 172358499 872344572 457764991 158410014 655939631 51115272 422463137 694210633 619035643 452095870 286050564 856772079 70978668 565056543 527299770 145823899 872010224 217651693 367389172 56107503 660169201 694210633 387146197 745825721 760498130 531077045 129244340 470894279 113570806 45004726 280492994 63336398 651131997 936299712 84352528 902705377 762702304 481029245 273120705 960419646 784537889 276151404 584392244 959815330 958326576 540134373 78834134 488769441 492982606 906643987 230126727 524735400 844931236 255052856 272502984 775049527 87060770 872764546 891290260 577128712 422657201 319123202 965543990 743007075 261220091 524273512 363737391 267362140 339676584 61203290 146380544 23164280 861000474 97937401 158522358 372596949 832468899 559799670 960347173 644655441 702897492 568838815 121565884 383380848 510165312 644076688 7285676 33576867 990507207 159879307 353680420 672722727 546173207 472791954 426813070 388851546 120126730 474679443 645536456 638664525 76776241 544148756 613474500 837373149 526630418 784471339 127384076 664156199 213379090 208890459 815437524 309292580 21541253 980278514 7203477 362954591 30667705 492040275 362345564 200349926 18832837 947436585 179058518 117377908 18832837 674115130 871334946 419683861 240659669 511586087 202832456 293048515 257406078 173145620 724831227 229231430 800303456 624738554 46214083 812204252 770885599 940728771 605066463 950917629 216671674 33525687 163613238 175579721 836419600 934663808 803796397 231672601 428015236 428108416 857801647 543280238 30684329 69403656 148210270 707870680 35185008 402697337 385316675 672004996 7455417 958326576 355619583 926727247 140607648 614741012 1997410 743749041 611002601 32768680 206165929 757371686 197338244 343827028 266793745 200135663 201517485 638555422 189608705 282949118 885089884 25675319 553480825 380471354 323841451 773171286 45687807 201723093 316758170 361800661 343838056 284177728 227218401 377257960 314285605 573931392 21583078 476428742 667055916 473574639 937253552 831148533 772954160 929908858 144061225 317099649 277057306 23835068 792301752 811119785 892294144 249766964 599712989 707841194 265603418 959682189 18530476 213435668 427811175 226947127 560473028 263427333 812551497 32444696 558273017 572153244 739796743 429558578 789197602 65001193 809459138 844931236 357472945 662588599 908987452 414679578 287733226 812573937 868176165 467447872 87544649 423998435 455856823 923422414 374326498 208336950 559236516 494468203 777293937 881042377 336111822 920153792 616734528 332577239 435488342 362345564 131180650 366559017 241604643 602360905 652647628 513446596 644076688 248071792 464204081 650973466 611310352 259705784 378017842 476046422 192243675 658565136 945516549 127406784 684915037 953573082 69479909 881474405 644541370 694201659 860440702 476952902 447820310 299933132 645114761 586230535 626092991 130767407 602052060 63428356 692467279 55520299 472125077 120478095 351439552 249336239 597198944 164621197 226673439 56629975 957392180 418246087 685998329 389358224 465432120 526327478 664497996 772566237 132956382 629934507 813414888 209820542 902705377 249974462 278528196 715642129 869259062 744790892 628897356 422995827 451064437 7013154 180648180 976918313 636502705 967886202 605045503 960587367 163417158 510779554 875840460 438630753 135904170 686421587 328373153 548433146 240203660 464184273 163018950 515126925 250268130 361800661 604822790 785248732 428108416 119449622 968105119 119199751 302129544 112396307 268812720 760498130 92941166 163417158 219802791 946948767 724831227 861845489 729854211 492753997 490934541 791543521 268740215 39012073 354583476 872748182 874765059 296244299 519100880 321223832 625340233 47448021 681164093 705409578 673162053 60170425 711622133 647287845 551944045 482658484 139143925 64747596 528476639 668622929 241121740 787850780 491458438 831148533 15538095 482245586 85772685 33576867 833129815 563956416 65783382 903716250 346948324 670591275 48420421 858616539 319349634 490934541 753436941 89516333 247168120 620797239 205353146 79102775 979264750 99144276 106732221 305728713 220213682 650542665 619161855 580885708 190265561 229526741 56178297 108106381 311120460 960329120 134752355 331976226 151644485 228000369 672502362 279193699 438010733 435738767 921738016 75990800 84035638 788560689 950020455 779118994 39012073 591508970 771455790 375662115 148872843 35794541 746395196 697646981 938327567 775775365 522817710 984782495 857801647 838782843 615677308 387246481 339657591 538789025 392857151 355930996 61466476 115865535 21583078 37028736 575907461 961129959 167525206 141607140 858722166 14281208 956446474 650478751 713217558 760550747 868090827 83313076 218639536 539721253 242589325 69124371 780476 701474370 81863854 778765033 907457875 465432120 396846225 983052792 503173055 775551192 910041119 684426675 826583519 548951569 375515720 11526537 759460712 995207613 763615961 560446957 834728873 28831669 812609000 956403889 516348298 693108488 703351130 132120437 809945222 453455633 731246096 538899541 531728564 388223330 272450454 404670881 624679074 227205383 358007727 183423602 646913780 761062502 994191527 533733346 129092330 580039514 704364808 254882776 85153464 33034747 699460113 44013248 104087672 215502867 16298729 968556641 222393322 622327053 689846841 681323757 857902834 866677112 806833744 557641316 740424690 350517000 416385457 487778963 611002601 838372130 177813141 220211320 368496531 59859789 672224576 45742076 536056500 453067953 9579364 622400429 685552189 414929390 956921703 484094974 615648474 888387334 973374306 761176899 120511434 543280238 808791735 103807406 333589597 174122074 964329661 378421533 536947790 120126730 727773067 223905430 839830132 459370673 383865111 137115706 124412129 540888359 575082915 46112686 278897687 1997410 140252005 314193344 75029818 591885275 378341386 27019841 326095719 187042622 131180650 660169201 383008147 474872546 351183796 552553040 404285864 70727208 269435006 871852280 565134851 537111846 892022323 186840994 357881948 130767407 546422509 888977087 251214319 974809923 512997134 839988865 439812150 664716307 22837246 119688172 666073577 968585418 295315244 27564176 576910474 373991621 730832538 609034384 360697393 366559017 23913970 730046553 330696951 354583476 386336927 286742283 378017842 167908078 334247254 178338226 359707817 556218614 625013868 216009673 501382976 588496314 447633093 467194946 396094557 399366010 438717961 581379821 106732221 554014196 947283533 46793799 471902992 593562347 495747597 640799332 887665329 332404935 328319663 744503077 850857631 612674050 157334018 791178147 377041622 212632182 792797962 924266382 166757013 210682032 597041049 212977880 873173721 143321119 480319995 385300022 657957198 118806460 596871223 438688912 460630937 770885599 855193777 779118994 146794653 621126494 766271338 1831389 960587367 271383175 392857151 831324232 990615559 462194028 823606328 764347476 443756384 182521575 628323873 69403656 515667681 437038421 383008147 244661817 545223103 274044470 979075090 758068661 858841379 929547659 324577884 996829154 668835332 353966960 144093335 947436585 809403255 125098132 44514660 428952411 651598949 228897489 995807019 195574433 359968629 769460243 972485967 387146197 961524215 738968678 400560809 749434505 376971937 616178629 7135427 644680721 508188423 786897254 33525687 416204454 444341395 910390300 253717222 837373149 929908858 678494167 182053097 464405816 366762884 868372476 553291542 388223330 106732221 793110766 289625377 516150775 632832527 32086948 614479002 214386054 489457130 532397682 735643098 318095306 313041351 519850114 349491094 977367481 304014711 634609107 809415544 135276313 700592307 904768837 781220664 787850780 208290005 380471354 723154856 252772791 73839861 603084254 248624936 201188076 710840227 668835332 496219658 364586909 682810852 294071211 491012904 698634449 349938974 423129885 317934143 738769993 473693206 907457875 926283878 668239990 461139901 239642863 196582719 852816996 367348812 851966681 558471522 742383757 546584393 45608788 659382812 541271770 626258394 200792570 504140152 362338554 411777768 69344685 999348536 356019667 517821133 387972540 507509574 715563614 948113430 378197945 212186584 267200358 283940189 355604580 261622006 468385477 16410874 441106841 885454799 525638956 396775313 758919685 348492981 385888930 947279692 208290005 751663150 584276590 577525572 174125656 429165033 120315558 511586087 527299770 119415080 176069986 46370264 943408355 953077348 392885733 766107437 798409191 576780065 698869912 786193194 65414838 248624936 359968629 598134524 74762379 503216758 560343402 489500347 870123638 700757275 727773067 709584816 668424404 812204252 180511810 359817537 156718040 893524401 820600283 219493043 30301133 477897425 282949118 965543990 559631090 436164620 357881948 359287451 903296622 930134374 560370514 640094532 484505198 34228815 421661591 512567532 651644790 105767345 805992004 866275712 470225889 651661531 983051729 881474405 295315244 878472634 416672454 522104887 375722358 55496604 869259062 994128464 331976226 194529872 481982083 526236648 567888993 578491038 266067899 752034833 202019081 892903095 223924806 678926130 257729949 972118206 531400665 832979725 513206735 71787310 403264959 777446840 839890633 61466476 855719098 723432720 735302815 100289791 107813311 911156828 65402346 113643196 259125823 682384318 699872724 882871743 746207343 669840131 314175717 86455817 822956905 164214169 146183600 962416543 171571485 790033906 705605781 994160995 680092482 594259329 15204737 801409198 668768280 277961622 528075150 267171391 588152520 224780043 881073120 548221608 594230441 157477269 108098871 149181759 251907555 467423925 740683000 701119742 271926452 943256684 7455417 977977171 148210270 592538952 756670266 144061225 820600283 62192791 86455817 240197516 790033906 854618481 970220100 600162938 267362140 922707036 134752355 853725888 49042740 261365560 385346897 825721530 647998022 192645058 830223686 533073923 978024218 861260738 711515066 833924014 360288518 385888930 796425218 369866400 706772155 914782996 478142640 784911924 796204767 910215344 737594595 546173207 669258237 244244963 621380200 56107503 609238007 691672490 391513191 766107437 140601393 806325457 360083893 277961622 713217558 948113430 893027217 724351353 674115130 583468887 997185480 783381233 784470358 523147876 442962978 794674617 539895653 331058503 661958556 369856924 767891036 357553023 879711490 131145969 862533520 615648474 405529721 773171286 857445998 867409519 739561319 983052792 572210787 423067490 625463030 537054158 753711643 55020392 323829946 475199127 138699183 198381740 168024415 23816368 705409578 913881336 94778825 692744409 452117571 311966060 366138558 614468721 304962070 186474107 3097549 563956416 384372482 275525456 392463439 572223703 934461948 324215460 493523186 824388656 685512187 339064079 454125325 82520007 781548066 606731442 517868766 423309284 154470635 387985897 931587040 491012904 617034160 917254879 583102009 328373153 224424597 563375048 403012748 189716201 536909087 608928141 86685872 393336486 63428356 137208685 752034833 472339999 470583686 133199691 622557779 434423234 344626500 10462431 107808978 202832456 278866541 476895683 139178632 174122074 75029818 1831389 78989626 275826341 817283361 708589565 826719690 489386104 731640472 381509145 550852259 559799670 786294045 322788715 504257493 915165633 847558320 600220820 132410861 83408971 533092466 541060785 536206732 364878980 543483688 704965966 353347633 648363324 971608771 556816624 169252431 18530476 222116249 433906697 177813141 100430245 832687599 949875879 743258777 490280321 261655449 183963712 590091443 266272826 285660749 810262034 795346979 612730315 963655621 89516333 464675217 260050756 52012162 918258347 757117805 149927065 672004996 958396706 967058640 573699665 815971091 920638017 938442301 55496604 916835044 205945197 516441293 959194049 101303048 564130455 57602439 197325365 932687889 526582844 188412017 231584079 590146562 909964203 387828469 944958052 220213682 682872291 144595910 510938204 414812061 61977295 677759074 801584772 287476371 926283878 701613818 902705377 126750777 372192841 668797597 339657591 534606800 937451019 687915958 689203021 967757318 484032682 846144830 343123997 627707810 570574208 768017079 70449112 93137007 553444143 919397251 914842146 389210030 541271770 239851044 190531398 851280384 256575995 565134851 682895445 519509431 444989359 261220091 985318505 176192923 682872291 343554958 986584560 58809756 464937674 135496158 162359207 358692335 232151291 375722358 242560852 576744099 498471688 729323067 916529225 942923177 431343619 260126757 984105793 473598912 757627768 374785248 804152458 411373914 246907900 840345665 92792218 641373720 268200568 599975425 695975505 448940594 513206735 89635272 70978668 510985571 881031080 642027155 682275349 481797000 291758658 541083595 101533387 154142244 112782806 330581999 98732577 293666106 570904525 580885708 915758682 815437524 65783382 743007075 699872724 464675217 161842598 414812061 126960792 609034384 437712411 597299091 393336486 245711526 678439153 213379090 207955886 11074899 265227230 943099642 231672601 800413183 238534474 906323892 719500333 384372482 532050035 75694116 301966468 626671882 995162615 674933816 13153247 625116926 876054182 243996765 86870980 617034160 640284035 248624936 678926130 378326734 117377908 845539476 44539235 234902148 731246096 948113430 14055174 469536891 835308811 929757110 73774554 581379821 269435006 89177410 439540949 246557862 625116926 772914912 44406641 279627355 752986855 280084908 490544456 666073577 919975022 788859798 786769037 963412179 648222328 566697641 728665221 124634215 139732631 939464133 600936263 538701178 317435090 978209200 856772079 689957974 396166564 512262240 217651693 57698839 921038201 202827177 577470979 739053117 99870520 14091222 326025234 720881513 314087366 343724630 577820900 965831491 780177659 100289791 79032119 501602670 430544846 942923177 990750133 383114741 114490376 528508131 996027392 132569079 703310864 643061746 495130488 633750615 539128062 309292580 417030305 549577976 298386406 682275349 85593294 914662667 708449224 870184406 342531699 559826379 505075478 597619873 182521575 41649602 575082915 494468203 209962150 445261790 348161731 672193907 760450565 737594595 132808689 181476437 473383951 914292700 528508131 241350186 403682682 767018711 733189543 174120506 113890947 667897873 472448047 966134039 259848496 100252771 850517129 334714346 888977087 676980845 870207782 30684329 736982534 694201659 501437834 930099114 827760201 218268412 244022656 953843508 571470383 133847439 721574742 870706542 21511798 812419126 667786601 132248484 987493119 527319796 305469242 64723222 909328510 930861676 622141992 400598057 119565485 333317752 827760201 908894608 424548681 647287845 286050564 210682032 858841379 975006428 388349158 578236244 605598679 121366676 149617161 428618086 271545507 427554634 786897254 151653995 387985897 904731519 645114761 606754672 225193305 560959656 261805042 33608138 771455790 722832406 740310257 548221608 144282970 873323777 731850604 30351439 298300071 675087462 808804150 81482031 953573082 396449836 836505273 732826725 540134373 72021839 877911025 484196394 433906697 824380058 458873868 174122074 440683510 452522913 870184406 182426444 265174728 593248117 661903475 288266060 691103807 423750519 519568459 997889755 311966060 816749833 549481338 334163442 26346309 842024288 268611338 117686882 783584290 492640640 888950181 203942121 549647088 575082915 175519425 920158824 828969147 297091631 218124339 26346309 322221775 193930014 309762615 929908858 519113787 58809756 907271911 991181377 78894525 698869912 369244711 617924265 498285405 921038201 364586909 486348885 640094532 393702122 738947833 410287113 680855333 275949763 112280473 302303778 908601580 592508592 396379256 697646981 556816624 767346766 155518284 993945511 857090815 209752506 256434426 821039696 174675267 158410014 776827817 351678106 960329120 357518915 652912997 386668522 61977295 585290460 29601372 554014196 792234558 448290624 946948767 448290624 121461568 325114746 146715673 615677308 661958556 638798934 613526821 518636287 758331348 740659339 332007686 766271338 126291003 527319796 284182474 367158564 201591689 417868015 425447208 578345192 766064131 7221291 240608845 346948324 273120705 60422189 983472221 999646466 328329111 592778944 599477657 421573887 512267793 389210030 529639549 652474174 961552936 102348063 333187018 476046422 143321119 477959774 486042949 635418526 585045406 426562717 650661528 778963886 410935643 85153464 560775764 553300223 419681408 278897687 630666315 233168958 358679752 644075462 976918313 362763648 445261790 785972176 778894873 500069058 910215344 726101523 219493043 32300385 231584079 853867634 723434610 47706221 170850983 455856823 178894177 85593294 941946673 999948052 294984204 571558303 252006196 878919697 368402378 890583877 572223703 19595964 895192336 784287959 277800599 594157733 437203448 272577712 581256406 476891549 29062331 136458315 701819021 786685122 750349249 523086816 125818812 183363850 316219640 577525572 567638487 711622133 397263883 964576608 281924586 650159381 201188076 438688912 641770480 201591689 156630558 772914912 828760079 440032801 510779554 178234658 639333943 431228734 650542665 255741301 560473028 268878891 279068596 977367481 806827582 259644489 206674100 7962006 15234053 689846841 4710819 84574869 267162584 174554145 619188238 47560661 681323757 250268130 97203248 594727596 498727374 251418463 416193131 238365103 243996765 441164379 904475980 760057778 521652866 722087694 756727543 333187018 840012155 887566724 567519004 81095663 98687602 95503451 658262868 767891036 52012162 250505381 259320003 590067407 650542665 208706801 862756440 888363323 577402271 419013338 733762553 739993618 417542058 683262174 870207782 924298408 186840994 127406784 236217595 219802791 866049783 608928141 377362748 978548841 232151291 515667681 516650780 32086948 553135375 792657048 466146046 614477974 417994703 533733346 250644493 189716201 978548841 225437652 251589259 120478095 302129544 613856410 10883138 89250476 93562877 745232220 302129544 130560454 758331348 259785955 486482457 71896465 109501962 193673584 668835332 26402404 957115124 428879748 511486436 202019081 237993313 40761625 468128566 916983262 983081496 157051224 298300071 227341587 881911872 950925875 169651293 55271786 894968871 972118206 537054158 795752098 889307767 626258394 996358274 155802718 390386098 825188590 202019081 764384285 56107503 163409082 893949709 446329057 975392425 983582719 296244299 578236244 755550290 706088955 498561388 810262034 919966051 259210433 55050615 422995827 573699665 652188104 474926333 744567092 294984204 306216861 112798913 666083089 937354909 207549397 428071291 307399876 54495615 144282970 101410003 646292761 711649395 367158564 374080883 1521687 615677308 274044470 636502705 343786069 967757318 161190943 165255667 430025923 504257493 661903475 622163185 745351886 466086329 327384116 712713070 990507207 924120547 526582844 519269211 377362748 781470828 588539 341442670 425697145 894187951 743657917 232260080 842024288 417994703 693989040 750495961 491458438 885828739 229044161 890425414 952610192 822356288 272450454 564314986 127406784 212973675 856772079 963655621 823515747 466259378 438630753 846327809 560513268 844125511 935324021 305084410 297984721 695688258 825718553 464093382 380211567 718934949 512698301 819033092 575702800 402946232 55022264 667897873 742691498 751663150 742784179 217188292 199433873 428108416 970079337 869259062 82832334 31642902 3588375 661410658 824892303 995215522 650973466 964288958 241704301 380955396 436164620 9339689 425313399 244661817 418216138 370586573 230589333 229151777 657750288 670046853 597041049 143410362 740942695 340569510 110477100 468331058 303992096 857708497 920158824 95503451 783381233 639207425 622717017 326992960 459226503 767018711 581379821 596478318 265325896 275801620 608278165 513446596 162845042 606754672 803167446 127406784 528508131 123966205 607903236 246557862 515667681 298973198 532409687 142759878 283309395 354021143 357881948 446345935 399366010 358551013 446104712 453067953 180461516 105670287 340348364 98614370 213379090 657451368 449943051 922845593 942427380 855086018 702256154 144061225 839830132 321117599 572210787 278363762 838372130 804935774 106732221 843709330 753436941 255467498 727954761 835817953 613474500 702934258 301059508 157734675 149181759 249976799 288676380 56103261 184894800 655072369 657573778 763615961 311959125 911156828 146715673 297687452 80414768 438717961 139721772 691672490 95503451 481477522 774403825 297091631 882223199 265806676 2254080 101581750 772954160 716625245 693917925 683674705 55410018 372909840 773171286 677049963 292078138 511586087 787747737 991481489 11942428 299843690 426813070 838722526 904068334 245167695 998097657 355619583 740601476 332501814 756654121 642913738 942427380 678758803 628920656 330879530 849466253 652912997 201049913 997195252 376899224 357518915 693631266 809838531 472661489 196582719 124324948 567638487 463910045 821039696 83408971 36446880 960769770 813378121 915165633 126856560 354641735 837931720 187042622 631338285 978955950 378421533 223747962 65001193 239162507 743722055 761062502 413764162 412124180 398910985 367552763 30684329 117377908 306594022 143674052 370410811 781634857 149617161 977354192 842233411 12501596 682039092 411988656 789991995 247099447 164269532 237129719 353966960 393336486 598134524 239210373 595802491 309292580 26758536 7285676 669851967 950900487 859042582 196582719 635819214 381509145 660169201 778022201 801888810 35114805 302303778 964668536 454725867 561871206 307198743 275228450 912586557 812101129 863346610 960454554 516418665 421573887 545751460 666716017 904961277 215942252 433447483 647275202 766554473 220645026 217545462 593388830 893165284 822022239 893027217 888802180 410468968 691469695 778202854 683830163 943154593 699591651 195648156 467480691 692744409 670604866 113204630 701617846 258697597 209820542 493981688 191951090 441484207 382835379 541083595 950030898 101581750 221580236 383008147 14594262 82520007 924298408 356019667 386668522 1478365 96159325 446469999 213435668 77562567 988068787 806641776 248979596 277981675 740659339 920153792 12405576 771366659 641176604 990774808 478699896 814854596 409150698 143723968 194716952 784207499 659245693 906572633 338117032 619958259 440751087 174975441 199187960 229983290 469796838 367128677 824892303 18440543 552562539 545394304 910367804 525094124 82582804 338554905 437038421 711622133 441106841 495888567 18530476 261546154 999948052 176689484 15813216 804594890 846144830 940887852 708594369 231133498 105396994 773512522 744503077 198235285 850919156 216453509 252006196 671236453 999941065 950856649 277750457 814161904 728665221 755706187 755171863 250863157 220659968 648087097 787857820 498323717 361703492 190531398 349160300 518204083 229151777 804152458 1831389 962223044 364092130 89250476 267217986 819977585 157337709 776733267 711166608 657048440 850919156 227605628 804152458 964998948 149424016 314770376 443044213 67797956 523306362 538636029 344237643 840345665 850919156 904731519 325254218 379448426 382835379 60084375 941861375 737218109 129343380 850512708 431244224 639207425 614561131 612498838 223942560 338801541 722087694 600162938 202019081 981307420 887219104 968585418 366762884 627977236 959682189 593248117 165606056 267784122 975577553 92184976 858841379 459855235 743722055 571399623 808966775 598506402 936046129 274044470 83013527 519509431 956446474 189768557 391573832 586793567 956831682 112782806 512262240 450777289 711212792 130681495 662296076 883301410 790409862 821824301 209935069 400099846 309292580 644655441 206834789 614420317 627451717 298973198 265806676 998097657 441713920 386336927 703310864 248979596 616178629 838175812 648412457 282949118 444989359 592778944 467373016 446081101 775775365 228000369 193292683 926759164 814740861 222006918 779208512 7203477 363167554 999510217 245828544 926727247 685121504 924298408 369856924 155533258 727129556 494468203 776733267 229231430 859432248 815971091 62304730 923422414 782008059 151908558 214190727 724371560 437203448 773652562 550355914 836210608 401697917 241604643 872010224 302288197 960347173 725628791 539080862 340777409 430319529 459966514 604020587 35815094 707324332 540571239 903716250 220213682 619093824 250644493 956403889 893027217 999653626 972471770 526646811 143005619 990839687 914292700 347742356 266840942 781548066 372909840 533073923 215202668 453067953 713660675 417030305 217188292 812545734 32994753 770965764 678291966 498471688 626116382 817928915 8613421 267759731 380211376 615495811 922308369 596213445 255052856 904450747 370904584 639060490 515941727 844051855 717876219 960037658 298386406 532397682 420578219 893165284 486304498 968452703 920327801 608278165 224424597 951308929 684426675 129036075 91039408 572851317 626970185 624766555 614741012 124634215 85294613 356967793 445571389 156367029 611035633 743657917 800303456 818524185 805227781 102597635 391945035 832979725 947696425 83552542 602457065 832089041 996455605 85330293 901403833 314087366 171735454 128575115 173790654 198241370 140607648 35114805 788890047 240608845 417030305 783908830 566360189 726659156 806898287 864382338 375081856 256920977 444502458 453547005 15085853 181061043 859847704 181476437 87129836 559631090 951140674 492001619 107820156 359802288 374024229 29036266 61977295 336927622 195648156 429165033 114783109 668239990 467158904 794553967 374785248 913795464 9789829 911597038 212389715 385346897 110053791 317161341 942701806 89833033 155501701 447105298 402946232 39947427 837397880 558273017 682371703 128139542 815128114 89635272 476891549 848391143 240357237 893436549 169252431 36001480 281683102 965887028 824948289 755706187 740424690 126151481 834374904 873033123 344237643 753284194 308949550 167932819 33119528 48420421 255741301 443926841 358551013 454125325 699882130 475702831 423352270 261477517 667589325 746707200 246726784 857902834 639889322 534742374 359802288 713217558 248979596 728309739 227739391 883301410 733762553 995162615 248393161 326025234 416857815 960347173 206551521 241350186 287076745 13153247 947696425 35763677 167856660 317099649 743749041 440326361 126174714 265964992 513719945 901307906 217546110 181309296 683049695 170634303 142759878 900217253 229061145 532809158 997185480 685635040 121914939 851966681 398673966 815437524 565233456 565539542 454567843 99101069 701474370 51115272 789147402 172771364 764991448 506762055 713356772 603229253 189588225 93857831 881911872 356779688 855342522 626970185 497417342 387146197 511586087 482209192 744567092 329373932 590091443 641142221 543732312 75029818 231584079 594177251 269834060 604020587 596257755 972471770 201766867 3097549 200306575 202019081 821327954 768902238 434423234 512870618 920293966 775551192 553300223 412969130 810174413 616875078 282891236 69124371 306845244 332324779 997226910 423750519 715975322 339770353 244239980 327765793 184167493 496238050 148872843 981307420 910390300 515667681 987741376 223096756 858841379 467423925 71870116 768017079 538701178 780251698 505312617 617034160 87129836 938739245 244661817 785248732 870706542 951805853 678439153 138699183 708751 428108416 476056555 769083052 3111695 133471702 459549785 713315905 157734675 118321585 586116774 627977236 437130414 193292683 650134945 946988071 538899541 56371774 660738714 805836018 929494216 526829132 139143925 968105119 325254218 662296076 513078841 344915872 954346318 471722035 743722055 49621688 80168442 694071695 383865111 7013154 717244409 644680721 756670266 688138477 903001492 735470095 567539530 728371212 3097549 438688912 873505595 668622929 162845042 343827028 619188238 112396307 396517154 878267752 188412017 327384116 536206732 850353094 407976225 707324332 425697145 667897873 719416172 498323717 14281208 577402271 245167695 918894283 190297459 421556683 745232220 614468721 975006428 384171104 248393161 648222328 733392225 425447208 379215607 978209200 441164379 509969649 824220285 169048486 318095306 277565457 363181748 663382808 28378009 384084885 192837190 571213810 212758138 347823879 426908399 428846680 428879748 715445737 884006689 781548066 815128114 87554919 55411364 219243177 153875560 765465955 727169356 822318800 749291380 242589325 430209478 176703713 995082130 519100880 981297114 499629455 988066118 724594043 127384076 281102007 354599755 664030093 674933816 94529018 524273512 765465955 107813311 776456668 45687807 685045316 649302289 78937211 72071157 336927622 276677539 961327971 806641776 86685872 798748639 188011736 700909507 699872724 762740250 378341386 772914912 941673575 428879748 404433384 956831682 738097040 159917509 159905318 678494167 270530681 750344920 952271860 310517189 766723396 780177659 592398796 131145969 382387647 943400668 99101069 401456345 633148289 663846540 357623307 990615559 684426675 333187018 229172857 192360522 230792741 308279709 25675319 2267895 881407016 7203477 865369249 964248231 148473955 687915958 513185757 700757275 889680918 832089041 614421240 168779710 551749464 701613818 261477517 612934169 779118994 704619854 779435019 446286531 571913207 624515974 624679074 488463526 431244224 301724228 559377198 916080289 526327478 667897873 894823343 685885593 814740861 884156719 165965558 999941065 278899337 727361894 216009673 120644927 468205474 105070639 926727247 695975505 869259062 190518462 561249205 502779916 362252306 483976487 532686342 347937296 139732631 980278514 150449374 66659514 943114099 639333943 425313399 908661511 273120705 316337977 588360021 808987555 843034984 668768280 359843759 831324232 476046422 990412668 592778944 536206732 259590331 757371686 980771035 645114761 719389926 543483688 643758304 906084346 300205360 848182671 663707664 51691462 514124813 512595478 326435001 532584882 144595910 716649254 99490839 624515974 526560110 773813511 286969296 139143925 616734528 495349404 49453801 213742032 370718372 145823899 684426675 777948978 477224484 389844160 496696353 242589325 947696425 836633166 199569265 935324021 175519425 55789802 276546782 956921703 112280473 922564893 377904018 692644806 821824301 229061145 406976454 949875879 147490697 772430279 926383726 975392425 880006485 584657673 977964499 816222258 156427640 910390300 984888163 724838718 971630537 682039092 137290621 421982303 836633166 183601209 824469097 528670985 566900631 218268412 705952653 787238639 279782267 699294880 636502705 721965838 138699183 155164400 295191333 484056718 197378343 978582159 698278331 874765059 595572629 962097171 532614649 882456106 897241728 61949058 699817175 987493119 761271450 215642803 303753583 51214252 481673072 560343402 354599755 624766555 594485249 161190943 728309739 254219287 1478365 818524185 356779688 565072428 308306592 743508816 72816262 786231842 215844451 509093918 842669363 804772596 498471688 991651050 565439429 927504629 441578897 832908727 167939730 423382810 332577239 277800599 132271955 926759164 403012748 15363892 462795099 486031750 355289161 753146142 367128677 540888359 233772566 975392425 774374924 178540205 523762289 294920345 850517129 799084059 206674100 292834712 466086329 614420317 597198944 414679578 919975022 456171329 387050663 694765181 907938238 384084885 16238172 547763240 502959907 864382338 283599405 435738767 138043079 473558528 650661528 942923177 348161731 591869989 722832406 760498130 155518284 786897254 565439429 763810664 468557993 459892061 396233741 637121734 559221201 564942054 739879940 400099846 134313497 451560800 41649602 611035633 700909507 950197785 161842598 762392720 965295649 716070994 568891626 32892959 774510532 821870786 380672070 515150137 445571389 43658180 9339689 866049783 89619481 606731442 490031170 56450978 537277074 670591275 953077348 270796526 227341587 683664676 407143332 506447694 153683887 296971426 716084460 662237534 90244340 906412493 493523186 412124180 700790592 359802288 495888567 437130414 644076688 159082161 858841379 615192284 393702122 474434198 455989267 512258861 674895693 43739419 619035643 199352976 13153247 505584305 342274439 476884423 306167935 577402271 811119785 23418996 151116777 721172947 531648183 434423234 570271244 321223832 253672164 621166876 326440611 888360095 711212792 261551580 642893639 759763473 265244843 574037992 190617654 920638017 100552030 642561124 210682032 354003269 851221731 46793799 990839687 428015236 669118789 47706221 291177192 135000374 883301410 240836262 475471242 787453728 311374736 609237951 301966468 981297114 947436585 323374619 316244820 881474405 700089141 778894873 97196444 751979361 247220722 326973370 305728713 586793567 172706857 434941381 819684732 868925862 784207499 298985743 614420317 286435119 341867020 351966852 921038201 977089088 777599463 520546481 411373914 264724754 708398407 858593940 552553040 856772079 678758803 353685083 471674957 132549744 717402262 731531344 554157262 44400258 302303778 355362277 586793567 303432075 693917925 570776827 397263883 182426444 631145734 991248064 376860783 531077045 876597054 636517289 625399808 244244963 268878891 594230441 85153464 272502984 625990358 708594369 308311291 149181759 389844160 925414817 514985740 265794323 155097744 814161904 118945983 717876219 619093824 365572937 106121392 543280238 656546640 411244769 176689484 284121265 914641322 640284035 42819703 56740474 213230748 861849773 28237928 433609376 76834175 466086329 814059348 21583078 50143954 987971909 729323067 594185923 824469097 616875078 793110766 567519004 925751148 273120705 275174780 411244769 903738060 261655449 926994574 32768680 979295191 792234558 133631226 2267895 801409198 800717123 819131667 21350632 672351048 829964647 14484343 370976321 94529018 883835529 611002601 847406541 447105298 770965764 251907555 625269263 934461948 348492981 321691613 209510394 666084378 523139540 930099114 826583519 520956931 146420196 157337709 330581999 11074899 801781610 716084460 574268755 367953979 997508282 838856955 332577239 724594043 81166415 321691613 485434770 515894876 707282470 752981169 99730457 218268412 957151736 835308811 104438147 813706999 486042949 425872107 532809158 182805540 363167554 790698682 30684329 892722963 549481338 790698682 927855694 427116544 614446526 599413440 390228435 720349018 689203021 664563794 618872936 563542199 884058123 725628791 343827028 536253188 762392720 246907900 181938030 297687257 953077348 299843690 735125224 553444143 836505273 203942121 401644558 197864332 670046853 578646572 719088036 384675487 640284035 248453729 633148289 862307089 983930175 380471354 417868015 474990991 793658616 622163185 491758875 700660892 230771669 630566829 578958391 200179854 787619449 673007083 652188104 131171351 650661528 828040799 485434770 324215460 190317405 634093431 258044428 223589059 893556423 4710819 26402404 566050763 161810784 685324370 826593764 519269211 960075280 691089214 675087462 760685220 608703491 421120875 892903095 976477474 568891626 507921281 967058640 790698682 450777289 360288518 929547659 29329225 17769661 703863830 369866400 608973577 750108844 35763677 119415080 844172942 524735400 435738767 407877244 451277265 999510217 984782495 10281377 699817175 687672346 440937448 803167446 70978668 862307089 926705716 215844451 317642770 272412032 872871517 338806367 766723396 943842831 903738060 40180901 698931608 718578207 983472221 838943535 599501228 521940732 829964647 499069181 173142251 766064131 666944928 459153226 923422414 568838815 202827177 721155256 135000374 614477974 225282293 786769037 783381233 724371560 953573082 880265015 904475980 331601423 911597038 473204173 800717123 881474405 281102007 777446840 960075280 671589626 826719690 484733488 349491094 639683180 815128114 3831463 223905430 92337478 492640640 763787861 137563558 539172105 29583194 524800771 418216138 266840942 622557779 687796451 667055916 660738714 85153464 695868455 379193252 854618481 705605781 51668993 737165173 539128062 290630815 644075462 550438304 147793220 656555262 826583519 938841867 286435119 226673439 283940189 625269263 838943535 543280238 708776335 885729772 687669529 835454267 191019940 350779152 405529721 873954329 268611338 453784055 722097922 675525723 699882130 904961277 464405816 276546782 295107210 670924186 181807069 901072025 963226961 667055916 436164620 236529990 167939730 428714412 476891549 977920683 728309739 618254763 111763676 924243081 869259062 885165254 465432120 729854211 40987007 975577553 883124357 872160203 369043456 867409519 107813311 914641322 28831669 728142005 451341954 780692187 83774350 597299091 476952902 594230441 552553040 45687807 469831496 918134121 835800812 676193995 608893757 983472221 3517888 60084375 993197079 414221178 227739391 227893773 346948324 375968612 444161878 159082161 780251698 76612005 284182474 705363518 760723429 504140152 701474370 558999876 33485421 453455633 576744099 57212848 872160203 219243177 411466487 104438147 582543416 539895653 551776085 366138558 859716163 553160761 368402378 956831682 107813311 931401172 464937674 644206022 878919697 485644097 35794541 786769037 416802463 467240339 567539530 314808067 3097549 943062655 895402126 204988477 822571602 672219217 952610192 560343402 920158824 29583194 979264750 517078323 963954978 704746261 777496901 899600039 48563029 104087672 236529990 617066065 778765033 302541073 198605082 311374736 455989267 124412129 189220848 459532919 183363850 112798913 819033092 271778021 558999876 182796995 302951021 245167695 472676815 831000470 375724357 822015890 637583085 766723396 380211567 515811834 862533520 967589305 172628880 689101452 838856955 796425218 114037956 306216861 614548007 600220820 346600682 528670985 440463965 119415080 351183796 426069641 416193131 159905318 239729082 165147259 477651159 387050663 46723813 966985596 402697337 452856504 178338226 918894283 276724991 918316207 775049527 493523186 822356288 810548036 164084139 738968678 933767247 685324370 908213969 443379097 216671674 533733346 536253188 219178563 318878994 213742032 119275992 415074383 163417158 784543578 325114746 732621225 787467774 440032801 684915037 173786510 553160761 535397387 739529056 203373170 319355705 45818101 200179854 347313873 713217558 198854353 809945222 538899541 320431919 420394446 467447872 729323067 113581183 149181759 512595478 121868805 751787685 257681001 404380730 801781610 966364960 740539742 738947833 91723294 790404380 251468784 733884644 428015236 741805743 98687602 739993618 549647088 63428356 81095663 35185008 738461607 451277265 78357816 597619873 324577884 844565139 227527670 440463965 861845489 988722625 878562164 82520007 132248484 166873308 328845920 610360329 150801484 282280759 420113847 967385727 786294584 246231996 738097040 428714412 617924265 943114099 266602062 746707200 960587367 528670985 908502081 880765678 343833471 631999248 456171329 268611338 847986690 907457875 419683861 482658484 698311949 668291165 81863854 929908858 894560405 641788754 60170425 705537029 85908862 996358274 705409578 651708170 440032801 926626683 743033500 36891258 404285864 10571430 138699183 558131956 806827582 37028736 626671882 769291405 715563614 120126730 204988477 532409687 594631604 952271860 50143954 99730457 745490300 382387647 79465500 283940189 266793745 238946565 621380200 207549397 303992096 881407016 423382810 559063964 468933072 147793220 241121740 305652535 323841451 159917509 867108593 873954329 879711490 307890239 49106893 421130402 729323067 330962701 603628000 628613126 270238853 235183835 353149270 216708316 975392425 641142221 771518289 784069212 777976325 876054182 198961108 536909087 243210728 572210787 317453486 7802130 331691451 194407888 433447483 664563794 227218401 384084885 525024402 788674724 343786069 492982606 689957974 638131947 810784684 422680817 100422564 741805743 691103807 278899337 90828708 771455790 117686882 259749110 456068336 832345379 743033500 39684598 474990991 264972600 924266382 652912997 832908727 178612250 215916910 515150137 203373170 370084353 99693668 974607726 914460279 516050388 900042969 812398643 132549744 713356772 536298542 691672490 920642846 578236244 803684878 732504771 815128114 237993313 742691498 214614219 810262034 841570440 359843759 883301410 728142005 891044227 232042494 814015482 349491094 420578219 663322883 780959982 206209771 915801617 757336861 974196684 71953532 385346897 302288197 112578508 742223817 228897489 708751 82520007 777976325 791574966 841435251 590146562 611751787 288686589 170546132 230771669 883594877 715465382 830691802 59938206 193673584 982879511 609034384 804612667 941640695 257406078 782350213 897695623 189608705 959682189 149624114 444161878 189588225 753910254 830330322 819030496 743749041 786294045 634320535 972118206 674961326 571558303 303753583 165147259 376356240 501614322 83774350 564184811 707841194 687669529 597299091 649421860 674192648 561899030 576744099 378862694 883334008 851221731 239729082 887530457 422995827 433447483 525024402 869259062 760723429 9789829 300205360 709759009 293048515 868176165 90244340 897916025 295925870 786294584 333469096 29583194 56734569 731850604 17647641 759856178 523086816 926727247 512870618 275949763 199911373 486813735 545394304 608960658 217188292 595945449 459966514 485644097 382583630 648222328 251275201 633148289 190560426 593562347 664563794 744790892 969534869 793420897 826583519 249611755 680855333 55411364 259749110 542149410 591885275 682810852 268611338 279844643 886835981 49808970 991056791 528670985 691103807 501396072 277961622 910290047 323970236 379511196 197325365 873505595 887936210 15813216 703947004 980631873 703351130 125694366 690645347 96673896 689957974 425621666 595166705 850504155 259320003 458720877 921446126 10281377 628613126 997226910 401842604 502879014 414209327 42819703 77857419 777828070 675525723 804152458 177265867 835454267 688878785 459966514 694071695 375390536 814228043 812962531 213359710 383114741 248453729 278528196 59477311 847695905 421661591 806833744 570336807 489500347 543654114 310813775 21583078 607014834 151854626 1849529 806920331 542592405 409643450 929494216 539128062 624208996 260132578 78989626 934663808 420576735 427591573 780959982 255467498 519509431 29863733 171208483 671236453 619392806 82820786 651708170 531728564 150252840 151854626 618391659 460216849 692467279 837931720 698423443 420576735 560343402 712824576 719389926 181807069 76834175 360083893 358551013 943842831 354021143 952271860 800561183 33921743 99620295 742691498 51593992 973780364 170372253 998097657 936046129 227739391 239851044 82832334 474434198 53676003 657750288 283921209 44514660 76776241 146215244 578159710 459549785 738613051 625463030 154149134 604020587 197730871 801009499 139918534 957151736 909328510 512567532 533730104 445058957 699294880 365323948 481982083 757627768 779131891 91896373 861000474 756670266 502607863 256475429 28872460 502607863 630666315 815702195 577418797 294071211 111462522 739529056 477003046 129485936 193673584 79830684 389844160 814848138 940752030 812962531 959451854 539895653 479556373 104893837 463217611 798748639 203683816 985318505 153238467 339940039 353347633 766064131 990615559 7799608 714954919 901403833 238187118 308306592 75166092 639683180 849229551 474098471 3357464 242426405 171262197 689203021 463968340 670095672 244140515 996601424 624515974 975350874 594485249 677049963 286050564 526630418 163617987 905623941 776733267 882161017 964641894 888886584 300107053 609514592 299933132 693108488 884562807 162359207 708449224 117377908 241023138 194818695 793658616 812085067 268878891 758919685 826390147 100422564 723432720 367939638 165255667 355362277 416860 275815785 700592307 291619543 915261787 138043079 169651293 181476437 167525206 531400665 195238415 553160761 806833744 923422414 925216722 650661528 112435422 738461607 145853273 681987281 854366787 79102775 615192284 400375635 202620857 65783382 790698682 845872351 621166876 778937914 572223703 429165033 838406143 322486380 268611338 588348200 172232166 605779568 481029245 607903236 197864332 694236116 846144830 630666315 495201443 418470891 851296302 793088439 695577168 510330601 115865535 690645347 570131772 936095444 459226503 104179654 936095444 16887740 728665221 740424690 359435870 75017068 361870133 216273045 376899224 392045588 824220285 974196966 391729428 14055174 23910770 674895693 227341587 872103597 907656645 525769343 841257996 408287424 645653214 812419126 752718488 250505381 393702122 595945449 897916025 467194946 692467279 392045588 411569380 588592243 774403825 176144086 691469695 8514809 369856924 817509779 630369541 515257919 934619036 634685337 107575655 991481489 459892061 942057798 607903236 144061225 678926130 496219658 369741281 89177410 154844116 908661511 249213512 113718969 17551290 724838718 480302776 369262782 626510734 358692335 23913970 615903288 165606056 854366787 19595964 536585486 804152458 815437524 940728771 503216758 546173207 627451717 447633093 427193603 570776827 525024402 948389751 523105096 738669950 288266060 844172942 372801202 295315244 867123733 886312393 223921663 647910718 594185923 851617974 82389432 705605781 774403825 378862694 31115544 639683180 289351929 530607562 540676571 894560405 711938915 915261787 232434763 11526537 333469096 962416543 251907555 812545734 155518284 612257511 371931041 179342443 930099114 510985571 645653214 250268130 649980444 947283533 339940039 240249436 413192247 571336957 76776241 922308369 310920947 257681001 176926759 681084204 633750615 107032755 769291405 797729741 108106381 736625033 983081496 223921663 704317244 436962649 947696425 76776241 314285605 74158082 229526741 456171329 326440611 624854784 392463439 772752998 882223199 742989014 297687452 746351207 101410003 575932082 114490376 700790592 415456348 889704474 32086948 677408635 419681408 917598758 60084375 172706857 186474107 303432075 72021839 978955126 779435019 577723693 317642770 623193147 617626369 431890643 829027881 832671251 789991995 743007075 616875078 920327801 787453728 818012022 381470778 57997134 91896373 524687756 100369079 359107939 45687807 627201682 917254879 446286531 215068446 873954329 64060549 798748639 995734937 597619873 321347669 677408635 792797962 699642713 190518462 385888930 969534869 325114746 358429939 982039530 176214541 835153635 694288134 517078323 7455417 157334018 858722166 961028661 976918313 477003046 495747597 154264367 845071084 812419126 814234080 515894876 615903288 680938701 245167695 998279315 257997193 476046422 435893449 44514660 245180337 595036279 513994832 970079337 672224576 170372253 358220341 881048964 96273404 172232166 835709956 747286282 796204767 965295649 379193252 218588507 434941381 250150288 187921426 406708061 990774808 469150488 50050773 906691365 39970385 655214674 281102007 189641658 522997998 348003998 883301410 408631358 782321975 887219104 392115779 359875347 391945035 668768280 356248329 426069641 894823343 941294164 918093616 771484950 355485938 880265015 133578092 311966060 826583519 691103807 884058123 218268412 381522974 453455633 742223817 190265561 757117805 719500333 80414768 284121265 565134851 880265015 29112804 591869989 691672490 314770376 161196713 208890459 133912540 615495811 447020979 188627516 108481641 469478780 328373153 324215460 283599405 373197769 162845042 417615828 298300071 491458438 29642358 810548036 174120506 349648521 451560800 496219658 713217558 759612529 156367029 984105793 87606923 603896430 299843690 559826379 222006918 882871743 241350186 206834789 540192457 83310806 238792356 798386400 46974505 130767407 691089214 961160715 391513191 711212792 257836777 935065995 878562164 737165173 126174714 198381740 578236244 762013651 143781808 982530458 755329756 116783336 153063088 771484950 302973806 496238050 828822386 883442699 325694854 908601580 719500333 389210030 887961342 682384318 651598949 455132454 212758138 977920683 154264367 146380544 895632224 830223686 287873315 914292700 328746326 808903382 824948289 259848496 918134121 310408596 464675217 92703987 278897687 926705716 835582793 778937914 525638956 124412129 710358949 63428356 328217752 524273512 303939627 47750363 257836777 109254508 847695905 898017556 315242797 423646799 841257996 556940415 433175193 821190574 430389614 150479416 393702122 476884423 42819703 359652773 620908438 703351130 951419697 41649602 782060892 369025046 397187090 926777932 56636843 864382338 650478751 81166415 161739855 620445892 884058123 883442699 403012748 357472945 281102007 468331058 831324232 786294045 473933050 466991961 239210373 925959068 899164744 722097922 305793717 691598812 328373153 299408629 224049912 868372476 518583385 747226842 146420196 990774808 566050763 735003286 343827028 431432359 749952793 95503451 445527809 613863099 705952653 245180337 376971937 306845244 29092482 210682032 991056791 487658713 635246842 326025234 106820454 229172857 273455423 414221178 561550658 772238817 228094086 193365645 635283672 692467279 176703713 523086816 43658180 202827177 132271955 882880092 163613238 436951908 892013995 735003286 721788932 758446505 169147074 77855757 817797466 452481824 81401211 990018651 989694200 664760210 542592405 126174714 720021333 743749041 133912540 113890947 240357237 523762289 566050763 719088036 209022875 616208593 529994673 410241368 161739855 344915872 886312393 261911099 28876123 199911373 414221178 911156828 953965032 356182816 929908858 230126727 776847680 248453729 81401211 163617987 973374306 196911651 610360329 172890601 382785220 525024402 916512858 874765059 548951569 455148066 804594890 222393322 237800584 434354689 481055729 980631873 244022656 434423234 920638017 943858896 361019624 414221178 942144547 237993313 7203477 120478095 401644558 251214319 938841867 98960525 279782267 819781345 682079052 624039253 720838049 213435668 126585099 138653471 715975322 93629177 550438304 790584023 157337709 938739245 671753094 780692187 382543663 902926944 86001070 908352284 174250648 948929554 282011979 955405927 642561124 878472634 793110766 735125224 879251547 86455817 665924450 978924176 575968095 514618541 616081352 600336212 575351641 232946291 90205660 496219658 847563421 801584772 110762787 258007443 853865390 668437990 161885158 33608138 459855235 512595478 302951021 434423234 287733226 688878785 914842146 970707395 349160300 560775764 589678839 652074960 169252431 668356247 856217176 328142874 481982083 559799670 769951693 311376870 130233752 167939730 674507154 744503077 386648749 585844063 526829132 88750705 652474174 434069593 514985740 63428356 261622006 796148540 838943535 298754411 190531398 959451854 761062502 296816679 17568796 451560800 487252127 222655435 567442879 997195252 79865398 134845343 55020392 238792356 408631358 539172105 107808978 744790892 973374306 362338554 306484866 952609698 779412471 386668522 889680918 278384497 267162584 208336950 215942252 847406541 45687807 155533258 826583519 317099649 441106841 87060770 195238415 11677405 612730315 970220100 255741301 214571668 156968424 172358499 214614219 971608771 697646981 422463137 929650001 785685488 625013868 44013248 428015236 25675319 174975441 632832527 644457283 765444503 622098344 804594890 721155256 481684319 943114099 916983262 727773067 781220664 322377909 141480927 528075150 788560689 232260080 809459138 73774554 303939627 542592405 369244711 908986967 265227120 694314660 127948605 239851044 515811834 687796451 492149280 783381233 849466253 326025234 259210433 295107210 682895445 757371686 459966514 905623941 989848830 694236047 887219104 1997410 753284194 684915037 173046498 483761023 508684375 793946870 14594262 515150137 491012904 400375635 682079052 974196684 778007084 625034563 11677405 710358949 906643987 99620295 930025010 649328326 839890633 926759164 548433146 768138772 46253964 163089910 416860 181340391 367090357 492640640 950197785 294984204 760128862 193930014 370410811 607014834 57840426 426089883 3097549 819684732 711649395 474434198 487252127 845872351 534606800 812204252 380471354 974016874 790033906 605598679 910367804 104575860 214386054 461916368 213189513 303345057 216009673 237451076 309210732 487778963 969534869 844565139 25675319 571213810 175579721 755459531 507439477 310920947 832908727 527354323 817034600 658262868 129244340 881042377 15085853 644075462 490934541 879756970 549481338 370976321 766702899 36001480 526582844 205945197 782008059 854211870 222655435 284121265 401279887 814848138 732621225 693108488 851446668 333541948 966873422 344949528 641142221 514985740 998306686 690406163 819033092 677833662 599363173 922308369 851545043 541213307 55020392 335297970 908601580 264972600 47105108 178017282 855675634 630445335 658030547 849111782 224424597 190317405 399366010 180511810 940887852 99693668 462119098 982324277 134803167 131145969 479955528 353680420 803900750 733762553 685629680 823531809 489130738 925920080 878394639 21350632 75029818 180461516 817797466 525638956 810548036 559813875 467194946 846250560 685100407 786469692 947696425 335184771 70792490 178612250 112435422 876483283 943842831 952610192 974196684 960950133 193365645 551307280 641770480 287476371 832979725 870706542 104438147 678926130 11074899 701992506 941861375 496445800 553451374 305469242 772566237 273455423 698423443 137954794 777446840 625463030 266502803 521652866 977354192 327765793 695688258 641117022 146794653 736999941 732826725 206551521 873173721 82582804 413764162 984028906 119688172 561871206 62304730 427554634 478777032 296853909 243996765 134803167 611751787 703504200 274682419 443756384 964668536 858593940 721172947 316219640 396379256 686421587 534606800 256434426 20248805 822022239 926782710 113643196 284829030 599413440 196516403 788560689 96160337 893949709 295786083 812101129 590091443 329142385 656546640 941946673 220211320 357655314 324215460 55022264 385300022 29036266 180648180 556218614 23910770 944140720 223924806 617924265 399366010 979264750 272412032 655737064 643218581 226947127 532313556 259705784 926782710 10462431 857367584 920365121 785685488 682895445 666716017 756782347 410119348 596257755 443031883 787619449 857090815 101533387 577402271 547059037 908965387 866049783 941001692 23835068 272450454 680961142 272502984 818012022 348161731 534791603 544148756 215642803 960329120 718450902 471833346 250034332 980747824 137954794 387949612 783381233 534518575 11942428 137580107 234902148 630666315 571336957 900042969 516418665 277800599 294312274 401700185 881042377 177813141 296816679 261772286 299241352 200306575 853867634 316758170 128575115 536253188 942271992 389220049 738669950 535389634 690081846 796148540 234902148 780959982 723434610 30351439 284121265 208429960 501437834 851783830 613856410 704441381 951550858 643988894 960347173 130767407 630092600 406518219 914762971 412155251 272716401 129036075 385786013 316219640 522997998 892121734 560775764 964288958 956446474 367090357 944140720 668835332 214081108 396731836 26764655 591945647 205312683 437230490 738947833 8603590 680855333 859227281 532809158 824388656 760723429 48563029 132808689 87606923 407877244 26417366 43789182 932615272 716625245 731640472 978024218 522867141 891149152 199352976 678494167 960494774 731246096 253717222 985235970 377362748 781452275 618344226 446469999 17769661 376971937 622163185 298363841 306594022 229231430 812204252 313041351 840282225 296816679 743749041 98960525 387949612 193930014 708449224 206947382 748555020 584276590 257729949 653594916 861000474 404495670 685121504 580605582 421120875 862756440 51593992 865369249 943408355 137563558 792797962 232946291 909005038 551421629 452117571 751979361 838943535 299393538 499726655 33739873 448940594 680228220 996829154 867108593 447980318 959815330 147078208 150479416 570131772 643218581 819684732 887961342 170372253 423646799 305084410 524110453 560180239 302580911 446345935 47750363 993729565 129372826 531728564 351162803 731043813 528075150 505355078 571912526 78989626 528476639 550438304 399562598 806641776 120248634 391729428 574268755 538636029 89154951 493523186 779118994 461916368 465390544 564184811 161711129 315750738 352726596 728904305 191393088 707324332 943526257 447235483 875067271 421556683 541691813 887665329 183423602 143723968 606231690 178540205 279193699 60114511 72071157 187921426 607708723 301724228 215117545 386336927 829491104 718987921 674192648 926727247 838540674 228897489 536253188 616178629 519568459 250150288 514516638 804935774 590790064 58809756 862307089 177813141 135063866 79913246 930606103 620846892 900217253 812400744 738078174 302274405 592398796 774526406 162361916 73782650 149424016 365605292 278897687 481673072 105198281 894560405 261365560 617195341 256566808 514124813 492640640 492713422 38852986 406708061 265227230 512199828 450023501 973374306 701474370 23418996 3111695 513719945 808242329 902064034 311287060 811119785 286742283 396731836 332483785 182426444 231584079 334586837 975577553 560147466 832908727 192107578 559192103 144282970 646292761 746975324 425176277 884562807 518636287 29112804 982248912 756782347 364586909 153683887 422834468 863779255 894536045 423382810 8908392 778202854 695975505 586230535 695688258 166873308 12788600 906014518 507474445 3517888 909964203 32086948 712038020 342983554 824948289 503472746 423168797 110762787 964668536 786294584 916560701 738747750 861000474 702285871 423998435 802989717 427554634 491761037 970069180 926705716 499069181 425447208 246726784 322549573 580703002 560343402 594631604 904051833 921738016 12686120 649185253 572223703 428689888 437130414 110762787 181262713 247187670 495130488 382293322 567258784 493981688 385888930 144061225 39684598 525850139 780177659 61203290 591869989 238946565 265806676 900217253 976477474 888977087 470547145 527319796 351439552 817135933 777599463 720021333 596056881 310920947 800561183 96159325 978582159 200792570 718987921 585844063 531400665 267130391 192431461 268812720 81863854 520786714 526571766 92184976 996455605 590146562 823606328 592352601 951419697 820162099 811119785 975318643 250653360 349761303 786480040 117377908 597983691 551307280 943366285 963282434 428015236 775049527 472676815 812982582 298754411 923173997 746633262 714791481 463373988 813378121 29329225 328072844 925751148 384296691 926777932 546606411 670157273 930691132 709304768 478683450 952574225 401322138 244838002 196660535 332909590 200492809 545751460 636991704 613863099 504512314 102884708 190518462 516348298 229059270 591830038 884058123 778007084 732826725 441209724 302274405 538636029 499629455 350489177 766064131 639889322 37435186 380645221 231672601 514516638 470547145 261805042 469536891 851783830 84035638 813378121 798748639 732252193 837931720 83441525 540250629 762740250 39087309 199352976 636991704 212973675 183548314 332050044 565718020 900197125 516724434 315757140 175573396 445557757 259125823 280124843 321644210 805615465 206947382 722323960 226947127 208336950 953573082 517078323 73402876 327055342 683049695 335132197 841498462 461358659 881407016 349491094 201766867 134313497 309199529 416672454 598715906 328217752 528745266 320431919 167525206 760450565 960329120 35114805 835817953 460216849 965403633 716070994 929650001 170634303 21583078 146673592 451381707 556535048 89635272 983910721 727421839 694314660 449415038 909228475 49453801 405861846 645417617 741805743 568021770 526327478 769951693 155097744 797973013 743007075 283921209 268200568 371070164 827375668 638251606 344200460 473383951 279782267 938349663 812993119 55271786 113975767 557641316 124634215 910390300 993729565 990615559 722087694 126174714 738003643 341979252 779412471 920065193 745490300 468717707 123751823 229983290 138043079 835582793 652474174 8514809 478142640 360697393 363078902 172328397 184167493 440326361 362345564 672351048 505495188 710399184 568066909 453067953 31882415 700790592 51132506 440326361 376899224 35634966 351678106 425776323 496238050 907457875 173476277 383008147 972118206 49442933 707841194 563927216 7220472 104144854 144521246 913795464 226290424 128575115 873201881 847986690 44013248 414812061 187042622 77562567 213629398 458873868 422639179 121565884 17737192 308306592 240357237 567888993 755171863 406577006 526630418 358692335 678439153 83441525 691663480 769291405 131145969 922564893 31115544 934461948 82558513 39012073 694517015 652474174 761062502 401697917 444341395 821407538 178612250 999941065 682384318 783564947 380672070 8908392 591945647 717244409 353255844 424093157 17834316 255741301 716654012 949430015 95226514 57698839 540134373 901781673 603084254 367348812 319927546 264090651 26758536 616875078 641595790 314721346 941861375 638798934 532809158 315560044 259644489 351705841 161810784 908502081 495261210 562737885 599447517 507071245 458720877 74762379 635246842 445557757 911536901 308311291 305092307 598715906 402171857 591202266 941640695 133199691 519100880 938327567 194724146 442962978 320093398 97937401 63336398 620445892 958645852 571399623 512258861 825718553 678074796 526236648 545223103 458794891 498642163 309024963 728371212 85330293 184345684 778022201 316219640 53075410 492040275 535945852 231883715 127582838 442250041 411466487 936046129 969534869 908987452 943400668 203942121 676317740 750108844 28876123 272412032 683262174 535389634 715563614 186474107 347823879 271569486 952610192 208290005 449380185 790033906 732504771 400034263 35017556 738996404 143005619 724351353 46253964 731391308 978924176 273253453 959426924 784287959 184049420 134803167 881407016 256541533 768720862 811162412 497283938 150449374 771366659 64594873 310517189 35634966 404285864 622400429 426727201 776847680 172706857 569879270 644206022 997783713 869903136 786685122 924243081 394001727 336927622 740683000 622557779 411003982 595166705 292432616 290630815 395606749 797620090 270238853 560775764 411777768 128075156 341979252 625463030 223893210 288349510 135881823 169048486 424858956 915801617 420578219 131180650 772844319 946988071 698311949 378216275 326025234 296907623 199352976 786469692 545223103 812676261 617626369 984382642 920642846 598715906 513719945 766723396 348161731 197177183 423067490 85772685 849111782 393702122 417878317 386668522 578646572 662666818 634683136 192431461 96160337 66659514 539526798 452522913 675087462 951308929 388349158 892557246 885729772 117686882 861849773 944140720 52706961 788203830 751732179 318095306 132524740 719576691 661410658 672537924 668835332 396846225 260050756 728834069 71870116 768213695 997508282 673212605 416193131 423998435 297533239 269312604 950925875 110347090 906014518 95450589 776456668 546422509 954552713 325252426 8908392 194166465 436629293 148790688 138653471 540262136 305652535 910886192 442593493 701617846 705759680 447235483 127384076 668768280 533092466 891775614 385346897 391573832 498323717 577402271 86836015 496238050 7799608 767229675 546422509 634726762 691366612 328746326 168024415 580703002 183781502 214386054 96159325 659382812 317099649 155097744 564184811 63428356 764443046 196980000 234902148 572935160 342531699 143005619 990774808 424846915 212977880 942271992 776827817 873201881 198381740 787857820 850249845 440032801 63428356 347937296 212758138 857367584 424985165 213379090 208890459 463217611 732449157 926705716 990332043 422657201 819131667 351855708 523105096 88520790 519100880 635707097 958807111 51668993 68574662 508684375 26764655 106121392 356851957 528745266 379736617 297753111 738984442 287557514 503173055 346153013 484733488 537111846 189641658 844931236 383865111 435455359 414812061 603628000 542979336 134845343 283564720 305092307 321347669 244656207 102348063 627707810 977920683 594657232 26758536 333281305 247099447 178612250 718418654 768149844 206915668 484185343 94204569 114037956 427554634 736982534 839988865 777828070 683674705 8856821 139770734 431432359 744074096 560513268 533733346 384983061 468410558 140601393 367953979 113975767 622098344 305282600 524687756 130233752 8603590 984781783 333502397 540134373 592778944 214386054 740873947 64472751 400099846 370899819 926994574 784470358 594157733 204988477 222680637 909228475 440463965 927504629 56450978 812398643 844075180 29601372 32994753 813706999 750072751 21692697 209935069 443379097 411988656 403682682 955823986 782321975 409643450 738747750 52706961 761978826 970416993 120248634 373357752 724140261 10883138 45818101 890425414 641142221 633223684 216009673 173695769 915261787 12100035 738078174 357623307 280084908 984888163 128943964 893027217 347313873 15944964 698278331 627707810 402946232 342274439 6074683 697870062 390228435 787619449 196748209 715182955 751979361 984105793 690406163 929757110 124595694 721965838 139721772 707841194 614420317 639683180 99490839 634624298 752128946 46723813 557229086 602529257 995399950 935844360 154142244 752128946 960347173 739993618 780476 581258803 638131947 806827582 663400807 963954978 122424999 447020979 892903095 913795464 814209757 75029818 466126124 546862328 831000470 126960792 261477517 542592405 280819281 103617064 904068334 471308146 165606056 796148540 835896179 234399744 33739873 848391143 891775614 454660890 228000369 819977585 96160337 904159957 800717123 887936210 238275687 110477100 170372253 513206735 109501962 947696425 499069181 376405395 921738016 674192648 150479416 227218401 733258326 614420317 959789862 52250386 526236648 176703713 287698662 612185008 89250476 145015410 332038341 563375048 749291380 271926452 189220848 171735454 782350213 726101523 842233411 420576735 293666106 759763473 512997134 566697641 930649075 612498838 844051855 760498130 173695769 927504629 606808899 343827028 239300098 106129738 565134851 108481641 3517888 920638017 186215451 155518284 549481338 903738060 137563558 648087097 510985571 261365560 314477510 708449224 255052856 753269448 484196394 650542665 711033 348492981 610999655 295925870 742446846 682561229 565179997 187913741 299241352 110347090 143781808 490006029 973374306 347313873 203373170 7825237 473047610 165087591 841435251 880265015 34708050 657573778 884156719 715465382 467194946 66222960 211564327 316117612 753284194 599363173 212973675 123918127 995399950 159917509 564184811 759729639 661584625 326435001 780476 112396307 883124357 544148756 831877484 984105793 519298517 306484866 824380058 383008147 489981592 814209757 86685872 301995198 85153464 738984442 26402404 375390536 665924450 229172857 440383275 464675217 635859399 276723131 488769441 344558029 553444143 856698185 113365204 610063072 990412668 584392244 652188104 614446526 391729428 225193305 24199369 973632371 404900912 454725867 244850388 87544649 599363173 616178629 320692286 569115124 149181759 229231430 200135663 412043121 379886443 122957139 703204399 701119742 976163852 50050773 211564327 223843229 956692225 694765181 255467498 711033 168024415 110623025 857367584 249336239 356067238 682275349 250644493 149617161 101397168 492247247 302303778 955491104 57997134 46974505 15404893 145198789 606728140 873818921 976918313 539963350 146334028 216453509 649980444 868090827 749434505 419681408 158726966 630369541 759056116 297984721 778202854 634320535 53313305 634124971 73774554 805992004 687669529 430319529 628897356 603084254 591112742 678401292 418216138 965887028 732504771 391729428 993732809 841089783 760498130 952271860 995215522 872871517 490544456 963399229 936316033 53383989 563452223 411373914 170850983 745351886 280819281 100430245 425628417 640094532 946629040 137809602 87606923 247168120 211017061 699882130 612498838 893524401 727773067 46370264 171104644 477003046 958326576 217034447 785972176 8991600 832964852 239300098 244645017 231133498 786469692 811003316 463978538 532259019 160857000 918134121 982879511 847695905 823515747 270607642 131145969 812993119 240836262 441209724 8514809 904028434 244848560 332389556 180648180 242689620 515150137 56636843 868610137 919397251 512258861 158901683 137563558 616836557 970079337 188627516 812740198 78747617 856303039 190531398 996415305 29062331 172771364 372801202 840012155 343554958 833129815 662423538 947283533 717876219 975577553 982879511 427322025 317435090 205945197 254882776 993945511 408287424 268740215 451341954 998279315 143674052 822318800 560180239 477224484 707324332 248979596 36498161 378341386 812676261 619035643 462795099 826390147 479190564 133199691 702256154 218639536 299393538 55020392 594259329 664126617 770965764 682079052 404285864 180648180 196582719 648363324 947283533 961160715 752649806 417542058 137115706 705421539 37435186 498412445 21835155 238792356 441259523 499629455 434211465 704619854 384379890 33223562 227341587 567129445 425697145 647910718 209279596 742223817 962416543 725133423 854618481 219240554 159265904 468604850 236217595 250401556 854211870 758500703 669851967 181262713 686027125 418943600 519298517 6986380 109254508 800303456 807911174 311959125 872010224 209820542 971630537 960950133 117517553 248367091 980278514 571912526 885312429 146183600 467194946 461139901 471902992 414221178 475236645 135597483 709759009 598768149 791536667 738669950 362763648 357728969 786769037 966985596 278800524 10571430 474375349 183090074 764384285 474679443 541213307 577820900 534791603 276677539 458794891 514327756 232434763 877609428 790033906 329394702 228832083 578584180 560180239 608893757 645827799 952555750 200306575 305793717 727421839 803684878 76881051 629934507 539172105 603340710 705363518 739053117 427420019 157734675 725790888 669124399 571558303 693631266 315560044 907427002 481797000 300705774 767173538 609238007 129372826 763787861 589244198 978024218 921038201 216663601 738003643 565718020 561249205 407143332 816222258 524110453 254882776 899734853 964998948 60525086 120088775 445674227 798532102 480387440 51691462 812085067 101581750 309762615 400560809 851446668 904028434 342660488 368636485 279627355 694765181 217504245 439812150 86836015 627813749 660988632 871852280 963535716 594631604 338369013 634124971 332909590 533730104 676193995 558131956 373357752 153238467 861260738 604391949 335184771 588360021 750349249 641373720 939414110 188079893 188982938 328373153 178881338 808903382 614421240 171385328 100430245 519011939 344915872 455132454 196911651 768720862 78357816 821870786 326435001 767985786 791760627 751787685 336081011 370899819 154888998 231975533 793658616 993945511 76881051 832671251 602946967 323973667 476731953 684581945 569820917 647535281 931587040 359707817 83552542 625990358 404900912 74762379 592342611 216704599 329835419 753284194 250863157 806641776 769990974 276151404 466481471 420019255 958396706 990839687 27008557 246114867 364092130 56450978 826719690 863674900 443984746 200792570 404226502 229059270 745825721 352019725 268740215 559799670 560187826 695357890 400907941 462194028 266502803 810730357 664716307 96159325 681987281 228343722 367090357 824948289 903738060 685121504 339910347 348003998 577525572 56103261 50050773 577920361 760450565 781548066 137972836 79032119 154264367 30684329 205353146 369741281 17568796 765444503 889307767 179058518 780068815 57698839 297687452 923129979 920185762 758068661 272577712 785972176 613863099 694210633 526236648 649328326 764991448 750349249 560473028 61466476 248071792 469478780 99144276 880265015 154142244 212442487 983479107 875983680 352726596 470505843 897695623 249766964 940887852 217504245 37375125 105220781 339106290 765408618 380743723 144595910 891149152 12100035 861000474 703073204 391945035 949430015 52412927 89833033 990719695 785462257 893524401 443756384 166833618 374829013 954552713 186840994 183083443 727773067 613474500 816749833 415074383 306594022 755329756 675395168 241121740 455605680 201591689 921401407 563956416 691663480 956692225 160735073 764443046 672193907 381374810 575968095 814848138 516418665 889680918 665505639 841089783 694236047 4710819 14281208 482658484 155097744 46112686 202979483 834728873 409721637 665505639 484094974 902955471 683830163 96273404 52706961 33525687 473047610 802989717 170001592 73782650 176192923 332050044 495512303 815974732 726529070 922707036 295420985 124412129 36498161 90938530 496238050 126960792 918134121 444238918 320093398 167908308 874765059 630876037 595802491 983930175 240249436 577820900 615674959 56734569 887936210 73774554 410468968 753146142 334163442 812085067 665924450 397590059 342983554 164621197 670046853 627568743 293048515 258007443 907457875 602529257 190531398 398673966 846047095 824914724 963226961 425872107 577723693 398024723 266840942 82520007 294984204 772566237 134313497 426089883 226290424 51739918 208182956 806898287 475199127 339910347 787125867 873608238 240197516 923173997 810262034 887219104 630165875 900042969 428071291 739529056 936904534 367128677 223589059 552997171 680961142 612498838 947436585 137563558 593388830 58593532 999348536 577470979 920185762 801888810 319123202 167939730 622163185 916512858 416385457 351439552 217546110 379690792 287381943 953887421 633564141 163089910 904051833 159265904 131806351 72816262 615677308 351093322 932687889 137563558 476891549 21583078 962223044 223589059 547059037 741805743 725628791 914641322 730832538 460216849 838782843 90244340 382293322 898323419 232260080 971630537 242088182 739796743 528508131 699460113 188011736 267217986 827578078 804612667 187921426 668622929 581258803 914641322 447235483 90447245 678461570 652384198 164214169 70711782 700909507 64723222 568021770 218455304 605416417 542607444 333502397 465432120 555546429 441548278 866728678 778963886 294920345 261477517 626116382 246546922 137954794 463910045 953573082 980747824 535220604 198235285 885312429 5729841 781470828 158410014 342531699 176144086 415678099 193930014 571558303 314721346 939464133 599477657 910290047 190518462 377780361 630369541 821274633 814228043 492333146 470431583 916080289 135904170 357655314 261805042 116783336 463217611 86455817 427420019 942923177 661958556 577054359 857902834 526630418 482245586 674961326 852751929 342224873 756670266 56964750 901307906 686176210 766554473 509862145 682895445 334163442 509638976 924266382 593706973 662207358 233574357 33525687 759407699 402697337 525638956 766702899 350489177 414929390 674115130 612498838 265174728 599413440 57602439 637583085 751586158 543732312 950917629 600936263 613863099 40733471 484185343 57870077 256504077 168696792 7766128 685552189 146420196 540134373 181309296 654499905 733189543 841435251 812962531 757399876 302792363 638281987 101094736 864666896 480661007 608726602 608726602 311376870 287507022 442588758 417030305 766554473 472448047 775714082 163764912 88750705 880561179 807569392 496219658 216273045 144061225 32086948 529354668 577128712 20661388 194529872 671012655 441484207 228343722 73774554 127948605 55789802 652226584 595945449 149624114 156796129 258069963 100894582 933740284 252383767 577525572 616208593 405183113 452856504 173145620 310920947 705363518 809838531 548433146 705568615 599195882 104893837 39087309 694071695 689203021 317161341 469478780 754782410 468717707 387972540 196660535 773863925 920638017 575320847 881298649 305469242 363167554 799131552 419681408 536909087 189608705 155364325 560715363 89833033 880561179 635707097 567656575 311287060 140607648 222655435 676980845 625269263 83408971 861845489 470332840 642893639 506062832 497227763 638184924 810174413 736625033 353966960 770965764 373197769 246231996 202019081 481029245 792199781 261477517 574268755 694236116 547763240 44539235 61203290 377780361 14640871 707324332 318878994 715041146 891357783 425697145 590091443 245167695 451064437 185808457 263277201 914662667 542979336 554014196 385346897 378862694 110477100 493523186 929908858 7963024 487778963 495512303 761978826 329364317 987511774 876469630 524735400 501018051 586230535 392885733 594230441 295107210 685998329 117686882 910367804 298363841 933767247 768393379 533704296 46112686 433175193 464771447 209962150 14640871 117517553 386915292 677759074 509862145 273120705 79102775 608928141 809734786 431003796 520956931 163613238 907457875 481477522 532282434 628942213 662296076 761062502 506447694 672351048 231472878 571558303 466086329 945090883 508338116 787785760 452856504 944562291 732478364 863429518 631145734 23910770 423129885 224954976 599501228 45608788 123966205 384171104 148473955 436966726 265603418 359652773 870184406 750344920 550812065 967780145 653073910 439812150 359802288 910367804 246114867 770699812 272412032 215523700 220645026 669124399 777828070 565056543 831000470 617195341 732826725 258007443 491761037 576325528 856449122 428846680 303753583 92140605 920293966 273120705 804612667 579122139 415102606 821327954 582570674 111341182 769291405 191951090 18530476 812204252 228343722 381522974 892447640 396449836 598801584 171116601 271569486 628897356 528508131 814854596 788859798 485606266 492247247 614573160 14848528 778022201 224698552 691672490 290630815 251305009 57431564 999948052 237380565 614477974 565056543 64472751 731043813 474872546 498727374 742919885 341979252 188079893 222655435 943114099 675525723 768362806 739879940 553291542 489981592 976918313 727129556 743749041 512870618 509093918 186988284 295057902 226290424 736625033 198325455 763085108 239729082 440463965 613108787 700790592 871852280 787467774 57698839 418943600 492333146 57840426 73355194 288266060 637329054 100086616 327765793 575320847 277750457 867682504 445445915 374829013 70727208 338840277 922845593 449380185 814813297 86733416 34152531 729854211 40879806 675088442 422463137 384131815 392463439 810225936 803796397 891146088 159167956 146420196 87060770 158901683 211212202 501382976 146380544 843321342 323841451 23626317 306216861 831324232 189768557 518636287 598516412 942057798 261911099 301059508 722323960 317099649 471674957 158726966 636517289 719500333 273108764 87129836 600162938 437203448 775714082 170546132 921038201 227527670 86001070 319123202 322549573 783908830 492380149 817034600 796425218 228466535 121565884 173854990 118200676 323841451 256475429 370899819 201723093 35634966 907457875 89516333 943842831 349160300 328072844 776806258 788239486 461358659 958177427 130232149 515199300 12291204 838540674 196748209 514327756 791681394 120511434 433158646 194529872 832979725 940132747 915758682 859716163 693631266 790033906 75902075 49808970 666141979 812551497 193365645 625116926 595697081 168257314 256575995 71870116 968452703 376899224 276546782 913795464 222228927 597041049 908987452 411373914 749438363 383380848 586769582 766554817 780475587 384296691 32768680 929757110 624208996 819030496 934619036 594727596 168630740 899600039 3116996 844565139 588360021 834728873 722832406 517629412 866049783 414209327 238187118 217188292 657048440 202827177 476428742 100894582 751979361 259705784 678291966 514516638 580039514 423067490 588592243 812740198 268740215 238365103 721248367 845979811 837931720 807569392 541691813 88750705 316117612 7733931 403810589 506062832 591508970 269312604 968585418 619188238 575932082 477959774 631999248 265794323 812157405 785685488 724677933 357472945 906412493 893027217 926782710 251468784 904961277 167908308 328845920 908601580 571912526 838403366 883334008 476891549 483976487 723308589 93601884 444502458 572223703 577723693 189287450 287507022 490280321 559063964 777948978 824388656 848182671 767891036 264161013 955405927 250653360 767985786 192742040 578158360 439513219 680228220 23913970 267037411 565539542 489252977 814740861 156367029 435488342 727361894 786294045 199911373 164621197 746707200 156448884 637399337 834374904 440032801 915801617 474434198 472448047 29092482 217188292 627229892 693108488 33739873 935563785 866917533 212758138 842669363 101410003 911536901 3097549 675088442 211017061 343786069 104893837 973374306 577418797 596871223 451341954 187913741 35815094 304962070 43789182 586793567 565072428 163051376 52706961 916080289 916529225 421130402 41169649 86685872 444579502 198325455 496445800 638555422 276960060 588496314 154470635 783584290 480319995 33119528 359844593 288266060 155364325 588204447 446104712 772566237 261622006 45687807 944958052 359875347 936299712 88750705 212973675 358007727 252772791 633101992 962694322 92703987 433609376 911597038 516441293 434173970 40879806 403328214 941673575 904450747 540192457 560083947 405211363 391219534 478142640 788859798 515199300 831148533 55520299 151652734 649185253 795336717 72468342 39290274 989893954 477003046 662588599 297950311 114039611 654499905 228897489 24199369 359107939 393336486 309677698 466146046 845071084 998447005 27008557 971966382 812085067 444165973 807569392 483326661 619958259 917598758 200306575 869259062 808804150 512997134 960950133 599363173 164621197 671157698 764738058 402171857 892557246 534060351 469833761 738968678 231814607 137972836 558273017 812551497 815974732 246557862 536187793 526327478 818524185 444161878 947283533 711212792 297533239 451277265 678758803 870706542 715111646 637399337 321691613 721574742 278866541 243210728 873608238 539963350 868372476 490031170 735470095 11942428 30351439 975318643 172158761 655179284 131806351 735351390 283940189 525769343 827760201 760057778 698311949 721360255 733762553 143674052 878804420 133912540 613765439 769990974 222393322 994191527 82520007 350489177 739235009 318413499 771518289 445058957 582655960 51214252 926777932 268740215 5385098 606754672 878394639 957392180 512267793 763495111 118806460 738078174 436164620 215068446 382494544 97203248 516441293 814161904 668424404 217504245 166757013 762013651 901072025 229151777 473047610 240659669 644457283 606535464 216583641 813706999 906412493 691366612 388439020 872103597 268929374 409150698 518575425 995082130 646913780 167939730 661154467 459892061 926705716 332073190 492982606 764738058 848182671 606731442 959789862 51739918 248005248 652124899 571399623 526646811 791536667 809734786 954275797 823752062 392539225 74388346 388349158 267362140 276723131 718934949 661154467 188982938 355485938 847695905 191393088 626258394 178554650 625399808 765700497 433609376 250150288 355485938 430209478 403682682 769429163 251305009 672219217 228000369 288349510 688878785 79830684 483502744 583468887 297984721 9898828 259848496 79830684 197628046 843279559 619958259 360083893 753562574 920185762 206551521 553444143 852751929 426908399 327131980 481673072 669840131 307890239 223893210 649805268 576325528 233168958 80414768 800561183 717116426 180053178 46282639 857801647 37361502 265603418 41169649 101303048 182796995 278899337 132708274 894187951 651598949 876136418 672004996 229151777 85330293 653721939 99144276 575968095 56740474 888886584 272412032 72816262 630666315 479190564 847406541 841162193 580703002 7962006 23418996 386648749 100571552 44400258 71870116 427322025 950900487 946629040 265244843 825721530 545223103 314808067 848182671 145853273 674933816 323973667 319355705 46974505 582655960 774715366 392539225 443926841 884156719 78988322 211017061 208534941 175964182 635859399 943842831 316758170 615192284 190518462 978209200 725133423 901403833 834374904 401527487 535397387 193029455 773171286 317435090 230771669 275815785 202979483 448940594 861845489 56450978 750108844 708589565 317642770 570574208 699460113 287476371 614890665 926777932 60170425 299273988 214081108 26758536 637399337 947696425 381522974 918939619 287698662 346600682 399562598 462194028 173854990 567193229 582570674 925751148 685998329 702938584 883301410 336081011 661383057 473848396 58485452 201723093 814848138 507524590 513719945 27008557 703504200 861013948 481982083 521652866 178338226 523306362 170001592 431228734 745490300 794553967 540681705 396233741 693989040 354641735 818131605 267689047 628002125 34979133 46974505 612185008 382785220 604597847 560959656 988068787 261365913 843709330 440463965 738996404 60511848 636674687 602360905 380211567 26402404 806641776 428714412 75902075 718450902 546422509 370586573 98732577 77857419 880863412 313709737 562164691 652912997 622717017 192645058 381374810 397263883 220659968 904292494 220213682 612257511 516348298 412155251 36498161 374080883 289926970 813319210 698869912 84035638 82820786 911156828 288266060 491758875 885949574 259264628 998856933 183963712 627229892 311374736 996263353 404226502 814085226 767229675 984888163 85619126 988066118 833294807 855086018 430544846 741588188 73774554 977367481 259848496 663975329 549577976 621149170 837601924 125994586 117250953 657573778 171197583 154142244 808804150 97203248 707324332 407046193 885949574 182576283 499947108 232151291 605045503 50143954 690081846 168257314 880006485 798704204 906412493 226521418 698423443 679137362 77839985 958645852 131293000 476891549 321691613 603340710 911357165 692644806 919975022 616415173 130767407 968585418 550813348 8613421 895192336 979264750 360980625 532614649 222006918 656555262 910041119 503472746 511962449 370410811 167932819 450970107 120478095 244239980 578646572 594631604 963954978 560513268 28876123 260098960 882880092 876285402 759407699 494226701 993729565 167932819 786897254 814228043 351093322 640094532 678284060 967477133 301966468 95450589 787857820 140252005 581258803 735302815 996070039 791760627 599363173 995734937 591830038 875067271 322377909 440326361 379193252 497672919 155533258 130560454 616178629 405621069 399366010 968008469 646468218 487394853 283564720 727361894 931649320 742784179 272577712 762702304 23626317 277961622 374829013 568066909 187042622 558891868 261914539 240836262 649185253 990774808 849466253 983472221 184049420 77855757 252753650 901307906 73402876 422639179 275174780 477224484 840282225 407976225 637329054 81166415 565179997 724371560 977354192 812609000 254882776 301832448 377118070 75017068 491758875 357553023 452481824 81401211 558999876 726529070 890487116 776733267 683674705 538701178 663975329 61400453 146673592 257681001 638131947 19221093 282280759 33781772 369262782 453784055 81863854 423067490 264552659 532050035 647910718 277981675 21692697 189608705 922845593 455219701 438010733 88520790 835896179 168630740 89833033 59859789 423067490 122424999 321117599 456068336 976163852 64060549 259644489 598715906 397886144 511486436 370410811 219639793 328845920 463968340 326435001 296244299 614561131 355930996 323841451 869259062 467158904 233313131 430209478 847695905 572210787 321223832 102884708 351855708 113975767 276677539 594177251 296816679 851966681 428879748 112280473 47560661 76881051 838856955 809415544 806761895 7963024 171571485 481477522 854366787 172771364 859227281 958396706 333281305 919975022 119880723 728309739 418450655 659554958 100141404 370410811 745351886 351906572 272450454 279280125 630165875 464937674 788859798 433158646 674542227 256920977 16238172 884449180 45763732 797571073 861845489 942144547 369616511 428071291 620846892 490934541 722097922 389844160 734658014 276724991 594485249 938543122 161739855 400907941 470200470 759460712 244645017 120315558 674192648 463373988 128575115 675395168 786294045 651131997 722832406 674933816 753269448 873323777 116783336 433144115 922707036 247168120 611310352 863674900 321347669 861260738 392045588 149181759 943400668 536187793 971516982 280124843 468205474 728984484 822099193 694236047 537054158 329364317 356019667 16642774 784888241 686027125 732504771 153683887 134119246 339060930 598801584 553444143 830223686 148790688 881042377 647910718 667055916 288686589 634685337 908661511 741082988 455132454 791574966 536374362 298300071 87060770 114490376 447283784 126291003 850919156 560343402 627977236 567820467 389844160 996601424 716070994 622163185 781987609 519509431 206834789 550813348 505642602 744074096 89177410 716625245 58593532 426727201 491943049 724831227 944140720 906691365 787125867 542979336 627568743 323829946 550182649 585629217 643758304 911614409 792797962 229172857 541933893 75902075 535389634 346600682 554347301 302973806 579122139 322486380 10571430 516441293 453067953 359813935 32086948 168024415 197449106 612934169 586116774 514584876 321691613 253672164 537394553 565072428 431432359 669036250 566050763 622717017 276151404 643988894 124595694 605045503 714791481 517533699 987511774 172328397 216009673 89154951 764166096 990615559 634605274 199569265 110347090 817287828 769429163 155164400 791536667 140252005 766123053 740942695 678926130 196748209 350489177 782060892 570271244 203834002 565539542 729854211 789991995 200792570 976477474 705409578 481684319 993732809 742383757 156718040 726659156 532050035 529354668 264735222 37435186 32375922 121868805 547763240 942701806 336081011 446286531 723154856 772621903 48420421 669036250 810784684 396233741 567442879 773863925 389220049 930219713 565072428 857545955 684257398 916835044 89833033 415074383 281924586 874754055 212442487 577611981 663975329 132589201 391219534 468128566 687213754 255995014 820754635 726713969 433906697 81863854 936046129 489981592 134433213 411244769 276724991 78357075 420576735 402171857 60231461 892557246 614573160 412043121 373357752 759856178 12291204 764738058 556816624 743183256 629934507 202827177 807911174 219027286 906691365 872010932 11511514 206209771 682079052 567961640 154149134 844018425 232946291 532038123 339106290 226290424 931649320 838406143 792199781 792199781 778202854 652474174 566853751 553292341 997421277 478142640 316337977 546173207 728084781 958326576 885729772 128139542 251589259 998856933 82188736 50143954 832671251 12405576 471308146 518583385 983930175 233251378 965295649 242088182 764443046 414209327 226947127 701119742 301724228 693393574 392353254 305282600 591830038 872010224 635717032 962762175 526829132 105670287 446081101 175579721 550852259 516904060 173695769 920638017 894560405 581293723 741650673 87172430 400997928 964998948 891290260 783564947 305282600 814813297 297091631 740659339 693256137 516724434 423750519 577611981 206209771 107820156 760550747 914018852 359802288 114039611 57870077 670726380 898017556 844125511 44539235 617576471 640284035 983052792 733258326 328142874 390386098 374325071 743749041 501614322 175519425 55271786 198854353 151653995 498285405 536374362 575968095 575082915 269005893 755329756 884006689 513994832 420394446 121366676 625013868 57859273 412155251 120511434 444341395 47448021 964714139 427554634 380211376 266793745 308311291 249336239 4314337 582423808 380743723 169048486 808831448 997508282 878919697 670046853 410914713 686176210 380743723 841089783 653057090 589244198 721248367 536298542 757371686 304687086 242088182 994399456 382583630 165255667 628323873 167908308 332007686 615334562 42819703 322486380 802743247 753734179 594105616 44157032 609237951 470894279 744854286 866917533 128943964 643437154 780476 276063075 132549744 134313497 702285871 996942435 21231585 889361891 255052856 426813070 22190984 890487116 634685337 236529990 246546922 224206891 400034263 58346344 161168364 693735982 672219217 943842831 904028434 279193699 410241368 254882776 880563832 73402876 322486380 667786601 613108787 343123997 33223562 451381707 662666818 85330293 193679555 274682419 259320003 651131997 212977880 775049527 567656575 594485249 438717961 199199314 723089378 113365204 540134373 900666747 805401221 473574639 388572059 247187670 363282054 890668835 205353146 170546132 453051126 430389614 720349018 553480825 421661591 481673072 580605582 669036250 719500333 339657591 7135427 179058518 146334028 913438138 838175812 907457875 76776241 540888359 750159069 363422913 206558172 447633093 260809328 189716201 570336807 801409198 762999129 2267895 927270662 614421240 446081101 551421629 501614322 687915958 476891549 859600514 894560405 168375994 249611755 582570674 815971091 582655960 306216861 368402378 620908438 700790592 382494544 353002204 101410003 357728969 220213682 259210433 871242616 417868015 711932887 11074899 915261787 279844643 85619126 175573396 292872923 662588599 172890601 788859798 141046927 389814443 401644558 763787861 950790491 43296814 580885708 938349663 133847439 490934541 484056718 547763240 439812150 714122176 235183835 747286282 732449157 15944964 359813935 196516403 740310257 126151481 532584882 160259709 784543578 309665803 393125415 390386098 329265704 180461516 924266382 53383989 866677112 379886443 865369249 84352528 35114805 814015482 149526166 806827582 694288134 782321975 994399456 19212436 599477657 944958052 71870116 568224063 577128712 186101025 635333616 936316033 469833761 174975441 62304730 693631266 873818921 964641894 350517000 587713617 792301752 334163442 553300223 153063088 178881338 575932082 864562613 978485528 793199056 199187960 342660488 634124971 878804420 364586909 638184924 987511774 244656207 391729428 390228435 596213445 787857820 900666747 124686517 489272749 175731651 331852141 541271770 696309275 825188590 218588507 7203477 93629177 270238853 986790528 455989267 332038341 823078558 196516403 850353094 870706542 424548681 998856933 60538458 26764655 242560852 168024415 328845920 996027392 49808970 55022264 753562574 420147398 387246481 625116926 614741012 872103597 30667705 909040760 811162412 843709330 671203646 608928141 588592243 723308589 78988322 484733488 282011979 310920947 622400429 189287450 375722358 661383057 149624114 154142244 950020455 406518219 443984746 304687086 291758658 376899224 147490697 190126168 624766555 711515066 161885158 35763677 227341587 367348812 466481471 956831682 527354323 596871223 726713969 82820786 870123638 173287646 983051729 553451374 198961108 548740123 4475760 78357816 524735400 199286806 565072428 168024415 589678839 16238172 892022323 405529721 536832785 266067899 326992960 15204737 332992473 64723222 838403366 784911924 599363173 505075478 555546429 60807748 974196966 425697145 848391143 902705377 99693668 557641316 614468721 672722727 823403707 288676380 7963024 126291003 423067490 488224433 86733416 368402378 472676815 936299712 744416892 331976226 881835831 268878891 172771364 791536667 803910518 826593764 854366787 272716401 184345684 561871206 880039838 252232429 233772566 428879748 548449903 586230535 211539823 140252005 6114314 739983909 392045588 135496158 791574966 166833618 363737391 1831389 761176899 142759878 781220664 347742356 293273114 353685083 608278165 391909991 817509779 33608138 999646466 753910254 763085108 466991961 904292494 68151071 620543182 731796874 731246096 94529018 778765033 158901683 519298517 408287424 993197079 622717017 614479002 766554473 261622006 95503451 643988894 524526177 697668680 174122074 515811834 269005893 354599755 766702899 606231690 638251606 73402876 286969296 107575655 863692312 824948289 546842413 79865398 766723396 553983855 130232149 682275349 326992960 689846841 919397251 299568802 180511810 716654012 588592243 672722727 775477924 751787685 946988071 244645017 176689484 252006196 321691613 968585418 244850388 572851317 861000474 192107578 745351886 787453728 906412493 678284060 247379936 434941381 318095306 182521575 515894876 967886202 207805575 975577553 219493043 55878403 551749464 107808978 415399005 827859456 16298729 115865535 769951693 496445800 39947427 411244769 315242797 134803167 512965180 885089884 694314660 664030093 268812720 820162099 189287450 300205360 416193131 624515974 412124180 891357783 921446126 674895693 213379090 100141404 601245418 467194946 7455531 62192791 379828427 788859798 396233741 750072751 351966852 315750738 834374904 802987185 672502362 159167956 155364325 83596261 275525456 661154467 173046498 946988071 134313497 962416543 669258237 525983320 248367091 272577712 788203830 276663092 809459138 805992004 88381932 98732577 141607140 694765181 357472945 164214169 900666747 454660890 336111822 332324779 136458315 208336950 424829099 444165973 517533699 909328510 787270808 692744409 551421629 440683510 463217611 367953979 798176202 941946673 134130650 507921281 724594043 316219640 948929554 616836557 212758138 56407269 412124180 940752030 628613126 926614363 512870618 367389172 867095048 502959907 382027862 191768190 904464640 538636029 818715944 444579502 525024402 555546429 510779554 878804420 871852280 647275202 536594851 849229551 631338285 421130402 559221201 828969147 760479837 309762615 818715944 735470095 100552030 71870116 888387334 197378343 822956905 373436147 597198944 407208560 731402868 407046193 857545955 105852443 920153792 372801202 584276590 8856821 259785955 819684732 123920110 809838531 227574043 167908078 941861375 757627768 423309284 501382976 842804647 387448768 239729082 787369234 287873315 464157258 12788600 392353254 256920977 827578078 259952854 75902075 900393002 237993313 165965558 929950543 990412668 344949528 305728713 804612667 201766867 362338554 362345564 469150488 434173970 832687599 599501228 106121392 143591736 908965387 580676132 218268412 75960094 368095127 719863057 508703445 853865390 685324370 856217176 7013154 732252193 479395809 359935395 339261681 623884734 308306592 8856821 311120460 651661531 244661817 404495670 431432359 121868805 145823899 429558578 18832837 663707664 359813935 471807089 836633166 298386406 271778021 306959892 812157405 300466853 5729841 246726784 611751787 7825237 495130488 559823835 208052045 122424999 878562164 295315244 482209192 208052045 305469242 406436608 181309296 869259062 39970385 777976325 884058123 23864275 58346344 959426924 313709737 858172014 707870680 851617974 422463137 816222258 492713422 128575115 588496314 309792018 97937401 1974501 865660393 501382976 934663808 646913780 882456106 259705784 103617064 731531344 315096082 309792018 425313399 648558682 106129738 475199127 923422414 990063134 414310733 676980845 186988284 208290005 743749041 164621197 565233456 747226842 598669512 203373170 87060770 128274101 360327736 789147402 143321119 680961142 730289727 616859046 950917629 718450902 745490300 229526741 224049912 593388830 699642713 714122176 509638976 633657793 655179284 525024402 687672346 661958556 834776242 983472221 682384318 763085108 962694322 522162975 515150137 360697393 597619873 55050615 128139542 646260122 431343619 918894283 265174728 306216861 745490300 220211320 616859046 287698662 206674100 794553967 2254080 326355741 764991448 877193699 279844643 678461570 416193131 685998329 103617064 134313497 418943600 251418463 855193777 451381707 778202854 577054359 208706801 377780361 643061746 267689047 613765439 858722166 271569486 256920977 481477522 571912526 997783713 831148533 951602307 381839501 390228435 854610463 926782710 264724754 968008469 705421539 89607992 540676571 57431564 216009673 988066118 189768557 653894491 657362420 453067953 319791841 88244339 810228122 976918313 694314660 866677112 977920683 387949612 769460243 244022656 858172014 224049912 356542805 83313076 415678099 859716163 145769017 462119098 645726081 949680991 976163852 161548506 926994574 167908078 347937296 157441769 484185343 242689620 864562613 958807111 989269750 550199215 657362420 267759731 239300098 683664676 752986855 11511514 182805540 568891626 781452275 603943017 15579069 988068787 519509431 543483688 516150775 688926432 912586557 443511527 812419126 101995837 449943051 492380149 713315905 281924586 214081108 703863830 476952902 938349663 759279615 585862918 863779255 134313497 797571073 719500333 189442294 649421860 459855235 599477657 66100936 787238639 359107939 619161855 872344572 163051376 724711319 101094736 797782093 34708050 143549423 472125077 515667681 339060930 216704599 954346318 799308680 60511848 578159710 577418797 34228815 951308929 489252977 711649395 328845920 289638495 11526537 176144086 724831227 907656645 822015890 331601423 784470358 738669950 347742356 880006485 516441293 964288958 268929374 892358571 542592405 314477510 863692312 576780065 173204726 809734786 65499478 835896179 137208685 669036250 574037992 631999248 606808899 78937211 369025046 919397251 255052856 459532919 245711526 758331348 225437652 951602307 211564327 370084353 119039730 711621501 700147339 984781783 441548278 268200568 401456345 633926277 812157405 370904584 101995837 7825237 612185008 433609376 446469999 808903382 967780145 278866541 568891626 315096082 362338554 210371454 507360648 232434763 521652866 322221775 39970385 784207499 333502397 172771364 468717707 904028434 904464640 943114099 567129445 431755939 301966468 449380185 808804150 322221775 998097657 437038421 785291611 625463030 189768557 885949574 628323873 360697393 731246096 577470979 74105318 326355741 728084781 695357890 822956905 171346666 786480040 93137007 841435251 753171956 948113430 195648156 742919885 944562291 467480691 614421240 773171286 367953979 130560454 589244198 761709224 468717707 987971909 957181171 162765371 105244512 868090827 908894608 684429686 759460712 543483688 194818695 287557514 891357783 687669529 518636287 930649075 538380286 919645859 266840942 942701806 671157698 229750851 358429939 820695184 744074096 904464640 158901683 355362277 682895445 140601393 931587040 693917925 374785248 644075462 791574966 380672070 678461570 615677308 134803167 48132247 20955790 165147259 57997134 183423602 60511848 576325528 369244711 691469695 680228220 613765439 586729040 197543690 218455304 882456106 249611755 562164691 761978826 729323067 305084410 549647088 130767407 415102606 941294164 385888930 413764162 377362748 590091443 796148540 170460062 435488342 296853909 382835379 225282293 534606800 449301490 162414246 287076745 344626500 331691451 157477269 765465955 117517553 703504200 956265400 790698682 421573887 307890239 353680420 387146197 560187826 780692187 185161977 57622495 474926333 318413499 926994574 505355078 441106841 3116996 200792570 960419646 455856823 350489177 469150488 990412668 112260299 136458315 237102213 259125823 393702122 205718954 914762971 532313556 67797956 189641658 231584079 787238639 641595790 100086616 669258237 678461570 641142221 44406641 781634857 228897489 755550290 585045406 3111695 746975324 904292494 713217558 368095127 702934258 982530458 381509145 418246087 858616539 247168120 406708061 959682189 584276590 494706641 849233704 572851317 598669512 838856955 513994832 150479416 54495615 631145734 261772286 622444979 265174728 385786013 728371212 102597635 859566552 393116598 524687756 206674100 683049695 621290468 32086948 794896369 685998329 199569265 471712214 520946914 970079337 49106893 685100407 350779152 186474107 435455359 517629412 246726784 990615559 840345665 70449112 322221775 855400000 20593514 333317752 447980318 584744819 5385098 164874754 86001070 939094194 379215607 239210373 652647628 935844360 445445915 698869912 85619126 692644806 91670966 140709606 218639536 407143332 242088182 65001193 23913970 126585099 217034447 510853284 882456106 821327954 349761303 77512148 565233456 946948767 140601393 814234080 15234053 57622495 661584625 767346766 409721637 290066634 225392285 188079893 640284035 445820895 414221178 211248971 163417158 496238050 226521418 244850388 517821133 698863904 509858141 702938584 416860 970220100 984403037 561212596 46112686 19212436 831087620 242689620 261622006 267037411 425313399 271545507 780476 158726966 442593493 712347955 233313131 364878980 171208483 417542058 688138477 204988477 295057902 592778944 467373016 761271450 214081108 602052060 845979811 223921663 429558578 302792363 178881338 993945511 36891258 703073204 227471178 804914076 999348536 691598812 748555020 277565457 760498130 998925542 92140605 64060549 599975425 552997171 693950087 474375349 95226514 759763473 407877244 246471661 1521687 9898828 329364317 263252601 327765793 685100407 963535716 826320260 106121392 985805134 326355741 892022323 530840437 565056543 792797962 403328214 422657201 389220049 747286282 51691462 192666025 750072751 904768837 676980845 245180337 890668835 201723093 430333603 190518462 474375349 961160715 969534869 984403037 680439837 329835419 666752585 458287339 23864275 526236648 275549790 674895693 694288134 199337209 315225511 62769875 92792218 261622006 724838718 168213692 359802288 771484950 347731733 33921743 418450655 711212792 41169649 574420367 360288518 71709694 431003796 619153261 151116777 446469999 880561179 336823941 133199691 426562717 218124339 519178536 806641776 911126285 859743875 883835529 897916025 618254763 867617393 682810852 220645026 239851044 708505943 903738060 849559289 231672601 641770480 685998329 245180337 416385457 699642713 394799008 565539542 297753111 861260738 982324277 355362277 319349634 667786601 841498462 782350213 201766867 146442845 866049783 378862694 784911924 619409505 358679752 324811550 107813311 817509779 327765793 704095095 786231842 545135013 716512526 316478034 64594873 364364987 418246087 839890633 480661007 401279887 727773067 973780364 350779152 114039611 656596081 416385457 489603668 628942213 723308589 846482054 982039530 630666315 253717222 461139901 170333475 595166705 417994703 527354323 639683180 296244299 547426458 246114867 744503077 528075150 286969296 15204737 739529056 524273512 670046853 600936263 511586087 293048515 102597635 14819313 713356772 266793745 373991621 333281305 575907461 488761774 428874628 195126498 413228688 222006918 298363841 705605781 811003316 251214319 951602307 841162193 388572059 484185343 969667877 508338116 785685488 530607562 921783703 186664369 546422509 966134039 86404900 943408355 188799448 637555883 631145734 108761141 423168797 303753583 208311955 991651050 359817537 425482678 425447208 553291542 663140441 126856560 278528196 428846680 255866621 260809328 560959656 599413440 746633262 65499478 4314337 650973466 982530458 657957198 652188104 553451374 881031080 645417617 233168958 43658180 534060351 68151071 6986380 812545734 495888567 785685488 698869912 7799608 224049912 392353254 229059270 856303039 332050044 347823879 435893449 666716017 724677933 123751823 173204726 436356228 132808689 242426405 620445892 792566738 240659669 57212848 827375668 57698839 728084781 915801617 307767072 122467677 277961622 275525456 157441769 670604866 978955126 699872724 149526166 670008603 104893837 824948289 103617064 98614370 46253964 228094086 546173207 614446526 422639179 119880723 525094124 538380286 126960792 919645859 428714412 468410558 396449836 316219640 66575736 208706801 533730104 423309284 939464133 107575655 514124813 616859046 889361891 655737064 468557993 321117599 546842413 9763352 772954160 546862328 576744099 329265704 493981688 700592307 543840507 373991621 180053178 990719695 310420366 559192103 254471401 259644489 135904170 986584560 423168797 594259329 984105793 787270808 870123638 592548069 974809923 195238415 887665329 259590331 228000369 278939304 649260409 442588758 55520299 926727247 753562574 557229086 881010154 997195252 586230535 179174542 447105298 112782806 393702122 270607642 3116996 255995014 586793567 641595790 718578207 170330891 512199828 335256971 94204569 423168797 602360905 167908078 92579297 571913207 835582793 215502867 287873315 855675634 782960007 133578092 580449787 288686589 580885708 275815785 162359207 807864156 53139843 158483920 740873947 462438883 354641735 774715366 857445998 738078174 280124843 911536901 57840426 650256466 778963886 285660749 508440691 875983680 359802288 483492691 364092130 509969649 5729841 870184406 740683000 974196684 819977585 786480040 808791735 248393161 546422509 617034160 718418654 331691451 95450589 963535716 199337209 118321585 891290260 110053791 171206101 704364808 232946291 347313873 56103261 315852411 218455304 263405878 618872936 446345935 723259457 528476639 953887421 295925870 26758536 993732809 678284060 348003998 310517189 630876037 182426444 46723813 378862694 397187090 702938584 876054182 196911651 355515721 617195341 778202854 505312617 40987007 894536045 107575655 918894283 835709956 682810852 302792363 195574433 909040760 657172442 197730871 261546154 141046927 855086018 266067899 739993618 17737192 941294164 547059037 554014196 990332043 817034600 610360329 651345135 194407888 444402973 603229253 476428742 90447245 663975329 395054257 560775764 657750288 559236516 472676815 125994586 211248971 789147402 795499347 910886192 412969130 195279072 960454554 469831496 720349018 277961622 516348298 230126727 471348221 892722963 192747501 940728771 315750738 816222258 93562877 303992096 257681001 671012655 611310352 443379097 819030496 281683102 576910474 977350885 808831448 344289427 309792018 789197602 697870062 165255667 958868541 685157777 866275712 5729841 73402876 177813141 849868763 698311949 466086329 486482457 732621225 282280759 225595088 324577884 526829132 257266617 776827817 895864350 221197630 411003982 499629455 669851967 75017068 818012022 497227763 470505843 663140441 157477269 465432120 582423808 183781502 728834069 539895653 651131997 891290260 473047610 382583630 664497996 344200460 926705716 213435668 994128464 429558578 35815094 369866400 250653360 173786510 699591651 90938530 164874754 878562164 676317740 257997193 565539542 76605712 739993618 391219534 486348885 806325457 915165633 724140261 730289727 672436733 317834206 772844319 772294787 957086375 369025046 864562613 850857631 172771364 263277201 796683456 91670966 828760079 287873315 515199300 46282639 403810589 798856912 52012162 540034165 20593514 747226842 36469771 104144854 549240123 826593764 214772661 806641776 377041622 888360095 797782093 344200460 612934169 631999248 651708170 526560110 326355741 342531699 758331348 565056543 239162507 190560426 399562598 168630740 526582844 336823941 960454554 75229102 719500333 942557803 462795099 514584876 281683102 124324948 637329054 495201443 721248367 470583686 628920656 351077143 952610192 171116601 972118206 462194028 181309296 574803352 812735700 803796397 829027881 197378343 571913207 571680536 274044470 492982606 683353440 371070164 201766867 492677033 455132454 908601580 704219866 808242329 201723093 891146088 802743247 526630418 66659514 515811834 334163442 268740215 927270662 35905145 177265867 926614363 941001692 519373057 489500347 22190984 30098933 895402126 388572059 450267893 376860783 505355078 325252426 838175812 515894876 21350632 158726966 539080862 414310733 352779367 533730104 940132747 428879748 950925875 59938206 14819313 85410017 34228815 682810852 998306686 461358659 880561179 932687889 377118070 519113787 240659669 498678305 319349634 55496604 86733416 212333910 295786083 996829154 782960007 619153261 697870062 58346344 962416543 332007686 179342443 989513413 765444503 812419126 768024129 309788087 594105616 456313393 740539742 704441381 941640695 29642358 662237534 514516638 435893449 777135847 56178297 735948512 367158564 101533387 29112804 585045406 861845489 43739419 302129544 502959907 521652866 783584290 763085108 303753583 663846540 264724754 157477269 95503451 319927546 430544846 522104887 814234080 644541370 822099193 268740215 886835981 321223832 892121734 744503077 259320003 120478095 112475447 873033123 266272826 205377948 85505551 998070740 94204569 613856410 89250476 719389926 406708061 753284194 306455665 169252431 719500333 470155825 877193699 131145969 786193194 546422509 360083893 826593764 978924176 279068596 453455633 505584305 497227763 223096756 440383275 373831895 351685336 261805042 668437990 757266445 976918313 960419646 76834175 703417771 401279887 792234558 588204447 757336861 331976226 542507362 588360021 392857151 420113847 575320847 339910347 459549785 1831389 978582159 186215451 280124843 104575860 250644493 9579364 599477657 259590331 638767849 659769915 199433873 729094066 757627768 529354668 497283938 543732312 835817953 133199691 721360255 902705377 443044213 756670266 849111782 379215607 525850139 344148846 40279151 431343619 9579364 878460774 373991621 257729949 258007443 377904018 779410543 172784096 698869912 943114099 409082342 328319663 31115544 172232166 689957974 229231430 892022323 635707097 610169722 623090135 814234080 985318505 389212788 921401407 600336212 972747953 167908078 447633093 772430279 952061178 64060549 273576373 171208483 929102257 264735222 786193194 225392285 430333603 15194331 715642129 672722727 650542665 744567092 727421839 558273017 704441381 649421860 30301133 678758803 627568743 275174780 272716401 817034600 264972600 267171391 794896369 670008603 943114099 355289161 340348364 381089290 3588375 370718372 86001070 188597773 548449903 445674227 565233456 572223703 139918534 678439153 982879511 360327736 662423538 237800584 934619036 619035643 983472221 56964750 127948605 758660435 947696425 812545734 203377670 1831389 196516403 249213512 960347173 245167695 566415144 169252431 421661591 44539235 157477269 137580107 868176165 708398407 180648180 365605292 120644927 315852411 817034600 164621197 86733416 14640871 29062331 11511514 284319963 537394553 10883138 133578092 572100510 855719098 838856955 151653995 224206891 849111782 724594043 682810852 275525456 881042377 384131815 170634303 726659156 945727872 672722727 327131980 319791841 276546782 329364317 738947833 942844094 804914076 535397387 899164744 701613818 564253156 855675634 415399005 32375922 322377909 16887740 628942213 756883403 302541073 430389614 124595694 641770480 988068787 799308680 767229675 982530458 206834789 431755939 731246096 153661994 135867710 787369234 124595557 268929374 381089290 946948767 228000369 441276023 622444979 918134121 784287959 503173055 753711643 618789317 573931392 808831448 290630815 256504077 815974732 1974501 141480927 534518575 407143332 379448426 743258777 164214169 263735956 249213512 810548036 384983061 329676417 635283672 476884423 231133498 881010154 663400807 964288958 262610054 101518263 216671674 722832406 135276313 844125511 927855694 580703002 389814443 765444503 972485967 836913248 432659386 329835419 657750288 359652773 250034332 105767345 663785507 21541253 894560405 453911019 239729082 705363518 176926759 624854784 284182474 676317740 773512522 226673439 163409082 215523700 716512526 640284035 212186584 672351048 967886202 60422189 711938915 189768557 735351390 447820310 925270919 126174714 382400728 78621776 19221093 369262782 454567843 824914724 735470095 306216861 378421533 984105793 74762379 199911373 737594595 470894279 508188423 787595718 422639179 100141404 556535048 501396072 140252005 620846892 945516549 404900912 74762379 29062331 537394553 782321975 392539225 684915037 434354689 459892061 982879511 466481471 82820786 999510217 55410018 470431583 477003046 193365645 146673592 219526527 417030305 921038201 788859798 489386104 927719562 562164691 428108416 771518289 457764991 780475587 943858896 665505639 70423 104144854 501382976 125994586 679004072 380645221 593388830 139732631 587216291 663382808 595572629 37028736 356851957 239729082 846482054 403040141 364014182 214386054 841257996 950925875 4525458 82820786 777599463 755171863 691827396 433906697 760498130 650134945 727129556 144521246 124686517 533730104 320928601 714791481 757627768 108761141 995807019 815757031 23910770 996601424 576325528 231672601 314285605 644655441 912569692 962097171 282011979 183083443 738461607 685885593 287076745 715563614 181309296 56740474 743033500 66575736 537394553 87129836 422680817 788674724 180511810 427218881 662207358 165255667 836419600 192645058 240659669 295420985 654499905 66659514 317435090 948713783 887961342 988813198 742784179 151644485 942271992 882592911 502959907 471348221 577402271 265964992 639207425 133631226 876483283 290775947 79913246 266272826 287873315 729323067 687213754 7203477 176689484 649421860 390519786 806325457 538701178 498412445 199569265 876483283 708505943 274682419 825767247 620543182 35634966 293814950 596056881 540571239 351678106 302541073 619093824 967058640 723259457 599195882 69344685 484733488 878804420 910095312 833294807 841257996 505075478 197864332 441106841 89965595 571399623 639060490 261622006 681164093 400907941 700813324 633743883 261772286 87112445 711515066 278528196 468557993 492982606 902926944 277981675 219178563 357518915 535397387 956692225 455132454 513078841 229983290 431244224 759407699 237380565 22190984 332404935 630445335 503173055 45004726 273957410 129244340 791574966 483976487 780068815 29329225 863891495 606231690 524735400 38852986 347731733 876054182 265904576 373271018 868176165 927855694 635333616 977089088 540250629 677049963 680855333 201188076 602052060 638281987 202687577 249213512 964641894 689203021 467158904 276724991 598912002 56107503 386336927 786294045 638773181 64747596 450267893 445261790 29601372 821407538 365853060 475702831 572100510 723434610 914662667 427591573 973374306 531077045 484505198 300205360 674895693 477564988 738996404 779118994 303432075 528508131 416204454 650661528 698278331 868090827 149927065 552949859 227205383 510779554 286185675 634529022 970707395 745490300 92579297 908965387 55410018 287381943 556603686 584657673 451277265 764991448 588152520 958396706 475199127 94543457 245876840 455856823 344148846 317435090 277497567 47448021 367348812 625463030 329373932 83596261 332389556 698278331 473047610 130767407 809629583 514985740 227698284 130748149 128075156 278800524 667589325 275826341 998097657 19212436 686176210 900666747 911597038 875983680 968008469 177813141 862533520 853865390 160857000 503216758 134433213 588204447 70711782 446329057 536206732 3111695 590388898 176144086 294984204 643437154 481294839 423998435 37805790 315096082 342224873 329373932 291758658 92184976 477003046 567442879 812085067 878472634 198325455 384379890 558891868 196911651 519100880 120644927 209510394 973780364 412155251 548221608 481477563 86455817 549577976 114490376 599195882 685629680 292078138 66100936 169651293 268813415 209279596 838372130 9898828 647910718 670157273 81863854 391219534 216704599 719389926 819285994 957115124 299273988 771009579 907656645 51739918 904159957 396517154 283309395 318095306 595004375 382027862 420019255 195574433 276546782 670726380 808242329 983582719 861260738 107813311 406976454 560715363 303939627 385786013 279068596 368636485 768149844 597619873 396775313 560473028 197325365 856303039 769291405 392463439 206834789 422657201 602353565 424093157 202620857 37361502 86870980 536558946 490544456 828822386 241121740 148302427 23910770 791543521 259210433 835896179 854618481 12291204 538644345 447235483 339064079 496219658 978024218 791543521 735055857 916835044 327694172 445820895 29419909 356779688 996326182 834156389 235183835 645726081 267162584 21692697 678461570 634320535 382106290 840345665 303753583 261322372 504031705 790409862 124412129 769648575 172232166 999941065 840345665 441164379 922707036 683963524 197381949 808903382 87544649 863891495 237129719 168541496 33485421 360288518 83774350 723880853 683262174 284322000 876054182 993732809 552553040 878460774 921038201 568891626 77839985 7285676 264090651 715445737 239162507 273455423 267200358 411553572 46253964 836913248 52412927 322377909 387050663 574268755 810548036 21350632 526630418 749438363 111763676 661958556 395606749 626258394 665505639 148872843 735125224 550812065 206558172 148872843 3111695 522104887 301839364 545394304 999646466 878562164 832468899 307198743 36469771 330678970 162359207 905962223 219243177 78937211 387246481 333317752 155518284 170850983 283940189 46793799 840345665 908965387 786231842 277057306 496219658 155802718 197338244 57698839 848391143 429558578 305793717 371008172 466126124 389814443 95503451 183548314 530409704 622356349 950790491 761978826 434154654 856217176 775714082 89250476 167939730 934461948 657305305 556940415 675395168 673212605 578158360 876285402 207477311 435738767 838406143 628533056 63336398 974196966 274682419 843321342 492031763 640284035 225282293 56636843 295925870 739235009 473693206 803900750 514327756 431755939 143723968 154888998 518575425 245449194 543492246 639207425 488224433 646562408 348161731 691827396 292432616 200792570 428618086 422463137 249766964 452481824 540681705 43789182 378326734 973632371 339770353 508188423 921738016 367090357 302541073 642894296 434000813 812676261 735302815 795336717 240608845 327384116 393493552 962097171 440751087 26346309 757266445 923225818 362471681 440463965 512671011 903716250 618789317 117686882 470547145 695868455 924243081 915617662 181938030 492640640 995399950 513275688 184049420 804772596 931587040 646562408 668622929 960075280 591945647 764991448 838540674 128575115 787238639 65001193 486348885 470200470 62304730 558273017 615557404 411777768 881010154 333281305 487256848 194724146 851221731 560513268 178418999 123918127 382400728 819592797 908965387 267689047 708398407 21231585 58485452 625990358 335256971 719673639 819592797 735125224 581293723 119415080 904028434 101995837 190617654 514124813 975350874 348492981 919975022 376643535 9339689 930099114 308452836 546842413 294920345 87172430 61466476 287076745 14819313 387985897 753146142 907457875 188799448 287476371 405861846 812676261 21511798 965887028 408547112 909040760 684123398 416385457 535397387 37805790 624382076 375722358 792797962 602946967 538701178 241350186 832345379 780177659 75960094 832315743 356316751 711622133 175722742 64472751 477224484 131180650 928104524 763810664 256541533 110347090 478699896 559823835 900217253 59859789 711166608 91692005 86836015 528670985 772752998 491125478 845071084 830691802 70711782 543492246 738747750 982098718 571558303 866275712 246726784 248367091 60525086 146334028 987493119 325254218 30098933 791760627 796683456 898104564 914662667 923129979 176926759 811119785 671157698 731402868 242508751 179809518 58485452 247187670 700909507 29112804 351685336 509638976 89833033 738819955 428879748 158483920 392857151 420113847 269834060 170460062 305728713 226947127 498678305 663846540 639889322 953843508 788239486 396195715 878460774 7221291 801391310 624515974 419427438 560187826 775049527 910215344 242601592 690645347 514327756 608025670 431755939 53676003 228343722 887936210 664716307 526829132 977445562 170850983 343827028 519100880 15944964 193679555 519011939 822318800 75017068 591202266 218124339 707870680 346948324 309307017 528075150 167932819 822356288 269435006 560343402 445571389 907656645 806898287 690081846 653025446 990615559 524526177 359802288 97196444 394993865 947436585 161885158 70423 243257350 609515650 746024438 508703445 423168797 578491038 809459138 918258347 703417771 776456668 558471522 738819955 59053852 960347173 213230748 519850114 571680536 377041622 206551521 571751125 532050035 976163852 469536891 786469692 722832406 966134039 36498161 332050044 742691498 698311949 674961326 705409578 60807748 497164702 769291405 677049963 610360329 3517888 990615559 266840942 677408635 959451854 813378121 990719695 993945511 600336212 466991961 427554634 358551013 476056555 492620156 740908785 615677308 367128677 538644345 824220285 995082130 791681394 984781783 171262197 958807111 694314660 266067899 361800661 769951693 797973013 223905430 678494167 526582844 416385457 596213445 859432248 112435422 618391659 649185253 11526537 7455531 127582838 574037992 79830684 158726966 203948742 88381932 436962649 467423925 261805042 761024521 416193131 507439477 223096756 882592911 99620295 295925870 876483283 524800771 189608705 198791005 859227281 273253453 159082161 14819313 35634966 908601580 412124180 240608845 298363841 250505381 256541533 104893837 594727596 206834789 809459138 532862262 239729082 632832527 634529022 592398796 40180901 970707395 287873315 489034016 783564947 370904584 668424404 492380149 783564947 954346318 256504077 468331058 399562598 526630418 264552659 45742076 331900744 599363173 216671674 197628046 849789595 9686570 997195252 377780361 138936113 213435668 339910347 130233752 284629587 62304730 11526537 237451076 244661817 394993865 173476277 849111782 340348364 710358949 298754411 480387440 704317244 357728969 993197079 381509145 821274633 567539530 832089041 852816996 309665803 354912267 988068787 957151736 528508131 343123997 894514412 576780065 378216275 918316207 146837720 832979725 453195888 612989706 902955471 69942571 522162975 13306544 904450747 431244224 548433146 618344226 208706801 536253188 554347301 7455417 564373630 51214252 756883403 268200568 301431139 436962649 583928321 70711782 259848496 790117046 178017282 724711319 92792218 943126348 165965558 415102606 78834134 526829132 607708723 363181748 676980845 456171329 934663808 875899015 8856821 231584079 266793745 192243675 683963524 926383726 532259019 942427380 416385457 217034447 393336486 454567843 635707097 512595478 883124357 362954591 891701789 425482678 96273404 494226701 817797466 101410003 878267752 557045538 252772791 898323419 624039253 647910718 69344685 675395168 568838815 109501962 55271786 927270662 959505218 575907461 945727872 620543182 777948978 316478034 147078208 228263883 321644210 617034160 180511810 491125478 18530476 129343380 394993865 516724434 609514592 59007994 524735400 39947427 546173207 834728873 930861676 954346318 214386054 267689047 390519786 540681705 832671251 852751929 215642803 502607863 857367584 309117493 967385727 99730457 769648575 727954761 784069212 556603686 855193777 859743875 466991961 957392180 956446474 716649254 936316033 519373057 793567237 980631873 592538952 967385727 720307744 278528196 699294880 950917629 267759731 361870133 391729428 636991704 633564141 882592911 535397387 305282600 340569510 636502705 199911373 617066065 639333943 553300223 504140152 622717017 544148756 786294045 920293966 585844063 682384318 77562567 610063072 534606800 318364342 436962649 456620093 728142005 994939812 239210373 314477510 205718954 574268755 491943049 669443488 8908392 424548681 352726596 56964750 943114099 203834002 266602062 590388898 532282434 130748149 869259062 824892303 456171329 455566195 37805790 875316502 786193194 244022656 545394304 411466487 365605292 892376032 876597054 809838531 606731442 46282639 267162584 315366278 528065873 23816368 46214083 577920361 885729772 52412927 926283878 145853273 284177728 118321585 914292700 222006918 217034447 878394639 88381932 27564176 422834468 302973806 835153635 995399950 526327478 532809158 267171391 695868455 227574043 996358274 639889322 430319529 687213754 685635040 570904525 701613818 357472945 627977236 713660675 15085853 161739855 66901023 866275712 191844071 728371212 439540949 142572005 763969673 540250629 426727201 453455633 518204083 921446126 434154654 95226514 859716163 956446474 296907623 607903236 922986354 870554145 399562598 373943114 728904305 135597483 573454213 592352601 851617974 393116598 994160995 991683935 135496158 149624114 60601077 960263728 972747953 149624114 424093157 389212788 826593764 73774554 96159325 695611692 58299343 86685872 492640640 442593493 740448148 400997928 682371703 332007686 801391310 542592405 278939304 532038123 455219701 7825237 558273017 761370820 608960658 766723396 86001070 856303039 144595910 997508282 215844451 411461329 533989534 460449520 897695623 165965558 311374736 666752585 5385098 785685488 634319834 270238853 331601423 200179854 780959982 474926333 617276580 590790064 15813216 126585099 663400807 620543182 2254080 254882776 942144547 245097735 546842413 412124180 874754055 298363841 187913741 984782495 163051376 178320187 745825721 726052753 736625033 522167392 49621688 417868015 950917629 328217752 387146197 763615961 245876840 70711782 190317405 85294613 584657673 73402876 146715673 726052753 530607562 407976225 376356240 707214403 256575995 552997171 822022239 488700138 440383275 581456290 174250648 235183835 445445915 741622790 844125511 841498462 682895445 641652815 784911924 357518915 4710819 123920110 524273512 616208593 183548314 859042582 129485936 314477510 23835068 923422414 464184273 265603418 731246096 885312429 439513219 560343402 176069986 26346309 720349018 190518462 985805134 483492691 652226584 491012904 806761895 690406163 120644927 277800599 612989706 423988644 956831682 156630558 827026208 532809158 539721253 747226842 302801866 648363324 46112686 316117612 815257954 959682189 15363892 317099649 327765793 451560800 947283533 238187118 225392285 796204767 265964992 504140152 445968885 415789607 277961622 653594916 900666747 278800524 595697081 827375668 143081607 86404900 239729082 362471681 107575655 172158761 375968612 7962006 315366278 409150698 277981675 291619543 684123398 228343722 614420317 133682923 787238639 302484474 335132197 976163852 86836015 178894177 331691451 219027286 873818921 756978770 637399337 157441769 941640695 31115544 449415038 359813935 40879806 540250629 267171391 121868805 625116926 600731848 893165284 315366278 528508131 806325457 797501542 767891036 218455304 396517154 891357783 249213512 78988322 481294839 290630815 797973013 15404893 240608845 349648521 727421839 930606103 325254218 413338415 17647641 159167956 858172014 873201881 32444696 299393538 615192284 578958391 972603452 568891626 752649806 44400258 70423 568838815 697646981 305652535 577920361 578958391 564130455 219639793 506447694 231814607 493981688 680439837 170333475 574420367 725133423 457764991 359287451 866917533 300107053 894514412 604597847 450023501 330678970 4710819 594002418 594657232 8991600 911682579 324577884 868572831 245449194 726101523 173046498 747286282 833129815 215503619 296853909 776456668 814666112 792199781 504140152 881407016 95450589 649980444 682079052 388439020 129036075 691663480 507509574 558999876 755550290 913795464 647287845 605598679 120126730 514327756 816756547 755171863 211248971 681323757 551421629 891044227 119565485 981297114 999646466 405621069 202687577 494226701 14484343 610360329 810780546 145853273 347313873 715041146 616081352 176703713 163617987 275549790 533092466 74105318 381509145 126174714 740718996 733258326 89635272 132248484 472339999 315757140 474926333 894968871 309792018 348003998 962416543 251589259 473693206 362763648 526829132 823606328 463978538 188627516 861260738 809524612 105670287 855400000 716625245 93601884 294071211 635333616 353255844 491761037 999941065 37361502 218124339 143005619 594727596 288676380 219639793 404285864 302129544 956265400 542979336 821407538 214571668 499726655 687915958 531400665 911682579 923225818 979295191 549240123 653872353 171206101 146215244 578159710 814854596 327428172 83408971 101995837 267716550 779208512 137809602 161885158 139178632 840535103 688926432 133578092 965677551 429181026 632418290 950917629 983052792 365605292 952610192 107813311 742919885 904417649 191393088 192837190 574037992 618254763 244140515 374829013 424846915 841930470 159167956 910041119 628885668 863779255 112578508 803167446 299241352 197378343 414679578 712091233 634093431 726052753 311376870 536947790 622141992 592398796 679004072 170330891 574037992 267716550 789053029 593562347 487778963 59578663 690645347 880265015 87368065 315242797 344558029 943526257 872871517 695868455 332992473 761370820 743007075 149624114 765408618 731531344 267362140 615192284 466481471 645726081 272412032 827760201 163617987 314318032 977350885 385818791 538636029 298754411 507524590 541933893 567129445 738747750 882161017 373436147 287557514 467158904 108481641 279443460 214190727 674961326 659554958 962097171 622141992 612989706 874765059 192431461 710840227 865369249 541060785 368402378 208290005 537394553 506447694 905962223 668797597 350779152 974196684 657172442 994399456 684257398 528075150 23835068 990750133 561212596 282949118 602529257 462795099 716649254 361800661 665505639 536374362 425697145 745351886 37805790 86870980 139721772 221580236 652384198 3831463 291952526 841435251 203942121 105198281 30265864 995082130 600731848 372801202 73782650 849466253 603340710 246114867 983051729 616734528 459107524 430333603 296372695 351093322 953573082 240249436 715975322 9686570 740448148 617296169 944958052 942923177 685045316 858616539 256541533 473933050 617446085 244656207 216704599 315366278 821327954 450267893 346600682 264724754 760685220 407773941 855675634 962416543 227527670 357655314 819781345 290066634 94543457 603896430 83774350 101643149 18530476 245167695 738996404 980771035 482658484 113890947 265244843 14819313 307198743 265964992 136280040 615334562 171208483 608928141 173786510 750349249 237800584 694517015 410119348 92140605 201517485 512671011 357623307 449943051 996829154 627451717 883442699 757399876 250401556 466991961 66659514 396233741 489252977 350779152 531648183 459549785 534606800 763615961 252383767 296971426 699762292 481684319 559826379 306594022 962694322 768362806 79102775 788859798 564130455 597299091 681182328 329394702 450777289 33485421 592342611 556218614 324577884 678291966 353149270 208336950 642894296 839523551 531598465 539080862 786469692 71953532 591508970 812676261 237102213 721155256 494226701 73839861 397187090 187488138 828969147 349491094 961028661 101643149 585899961 637329054 223893210 496219658 63336398 414929390 196582719 89833033 117250953 608025670 940663788 842233411 689846841 627201682 159905318 135867710 824380058 681182328 532614649 441484207 690635716 512965180 990018651 475471242 282280759 158410014 454725867 281102007 894560405 343838056 290425737 108106381 16642774 779410543 7221291 652647628 284629587 880863412 534791603 991248064 711938915 383380848 900197125 881835831 150801484 881042377 329364317 765444503 77562567 359935395 55789802 453547005 278939304 305652535 89635272 930606103 367953979 426562717 785291611 143723968 256475429 765738398 515257919 812551497 564942054 692644806 822022239 369856924 210552683 801888810 398024723 412155251 399514194 233168958 930219713 353255844 381522974 13153247 583928321 296378401 200492809 486031750 455132454 19212436 29601372 902064034 353685083 781548066 622717017 492040275 276063075 618789317 911682579 260784630 20248805 455566195 826583519 863779255 183083443 324215460 838175812 926759164 275801620 484094974 863692312 738669950 610169722 421982303 599363173 838403366 281683102 563952147 964248231 577128712 772566237 923950163 181340391 630666315 437230490 694765181 611310352 566050763 409973224 47081900 875899015 550438304 867409519 779412471 138043079 627201682 540235952 120088775 741871506 752986855 83013527 813414888 436966726 512567532 545223103 922845593 560147466 363181748 595802491 373720203 406566817 253672164 575351641 643758304 287229458 577203870 772752998 15085853 759612529 175579721 423382810 859716163 162359207 973780364 103807406 338801541 468331058 449415038 740659339 190265561 605416417 130681495 132271955 978209200 468187475 733189543 297687452 990018651 145015410 250401556 239851044 693623420 959789862 868925862 327428172 785462257 365997603 259264628 530560377 370084353 193091527 702285871 297687452 60084375 427116544 228897489 619093824 99490839 384171104 578345192 699762292 325694288 182796995 416385457 850517129 297687452 297687257 744503077 405211363 990063134 613765439 153661994 165087591 66222960 445674227 560446957 491943049 276151404 463074263 784537889 835582793 298386406 110452443 666525767 670008603 796425218 858616539 34979133 4710819 757117805 65402346 760057778 984483517 697285056 190531398 623090135 972471770 245449194 287381943 547059037 639889322 47706221 826583519 504031705 510985571 622098344 922308369 75029818 246114867 980747824 35185008 835308811 267037411 604020587 325694854 129244340 264972600 973780364 787857820 357553023 764991448 734077184 578159710 43739419 659768975 138653471 374325071 17647641 250268130 498561388 369025046 184235590 149927065 301431139 3831463 466259378 180648180 242689620 264972600 576780065 38852986 994191527 12100035 284829030 44157032 617034160 755171863 7802130 277547289 359322884 919397251 652647628 960075280 314175717 162359207 924120547 247099447 52250386 609034384 40279151 858593940 519850114 764347476 824948289 952609698 314477510 492713422 463978538 99730457 426942267 603084254 465864903 832908727 904068334 812551497 860227244 147055431 756782347 163051376 125818812 630165875 621126494 190617654 475471242 60084375 363737391 633101992 934461948 980278514 546842413 732621225 170634303 3588375 827859456 753269448 660738714 516150775 820754635 838722526 390519786 877911025 787467774 925216722 544635952 630566829 265806676 790855774 181807069 680855333 972118206 86870980 833924014 606535464 671589626 234483510 455436685 53676003 871334946 210682032 227605628 520956931 614468721 784543578 459226503 184049420 962645507 169372924 705605781 467240339 224049912 959194049 847406541 809284964 349648521 428071291 707214403 79653308 82820786 567193229 168541496 357518915 56371774 32300385 325252426 785685488 529354668 790191959 963399229 953843508 75229102 700089141 328746326 403264959 60422189 628947259 851221731 970079337 787467774 372909840 363282054 582824875 731402868 55050615 810784684 817509779 687669529 606808899 779555399 650371604 316478034 568021770 189708257 261911099 575082915 33921743 82558513 66659514 815128114 715465382 343554958 617576471 577920361 156427640 286742283 239162507 241023138 574037992 88381932 952330793 517078323 265562253 382543663 810818974 646562408 426908399 540262136 327994956 294984204 508188423 864562613 944562291 299241352 529204436 405211363 608278165 464937674 277981675 993945511 594631604 156448884 28872460 789991995 202964646 294071211 799002890 564184811 739796743 64399065 232151291 148302427 238275687 753146142 164084139 210682032 276546782 467240339 498285405 632832527 416385457 187042622 911156828 863674900 51115272 735055857 132410861 835308811 835217804 805401221 391232721 991651050 448290624 450970107 126174714 446132814 777446840 16298729 836505273 806833744 812398643 590790064 308452836 824388656 615674959 31115544 374829013 618254763 650371604 894536045 881430555 562737885 911126285 794553967 510853284 947133065 558131956 761709224 670604866 678461570 349761303 325694288 353685083 377118070 101410003 894823343 279844643 694071695 905266125 988066118 110680382 904068334 238792356 83310806 330962701 565134851 907656645 829964647 978024218 31882415 359935395 907457875 122467677 999510217 758446505 663975329 991683935 490544456 46282639 186840994 590067407 208429960 775775365 268878891 151116777 342274439 708776335 414936307 436356228 996358274 625463030 455148066 112435422 635819214 239888423 308949550 441106841 887936210 739529056 472448047 707282470 397263883 881938727 642894296 703204399 243257350 527354323 679137362 278899337 206947382 783584290 585629217 532584882 14848528 868372476 129092330 299408629 132120437 915801617 362252306 572935160 742691498 141793945 798856912 516650780 199199314 173287646 227341587 169507050 160259709 854610463 458720877 936316033 489828998 972118206 628920656 439812150 182576283 846144830 966873422 819684732 114037956 343833471 908352284 227527670 289926970 907938238 835153635 277800599 994128464 929494216 839830132 89516333 739983909 914842146 809524612 627229892 129343380 398024723 707870680 240249436 779208512 501614322 567820467 92792218 64060549 21692697 962694322 778894873 636674687 979075090 776847680 148790688 86001070 386336927 234542759 984177899 646934377 672537924 812157405 982324277 613108787 698869912 853479900 621126494 544110822 230771669 544635952 488761774 797501542 716070994 876597054 295057902 271383175 164184974 430389614 720881513 837373149 898017556 498561388 89635272 761271450 603529951 273108764 994160995 234902148 292078138 832345379 306845244 389844160 273117142 516150775 471712214 914762971 920185762 916512858 192742040 51668993 620445892 298363841 784470358 197338244 358220341 55789802 244645017 23626317 288686589 414209327 838856955 244318318 17647641 175573396 284629587 906412493 561899030 647998022 738003643 450435362 644680721 990774808 76881051 731531344 392769797 947696425 186474107 863779255 572210787 296853909 986584560 661383057 332404935 322486380 64723222 344200460 894187951 218268412 359309478 95503451 795752098 465643223 583468887 247168120 30667705 941001692 217546110 468128566 713315905 911126285 86455817 387828469 366762884 667055916 637329054 602946967 651708170 655737064 132120437 302801866 162765371 783584290 416672454 443044213 750495961 848391143 723259457 255995014 881298649 653894491 33717760 327320447 227527670 407143332 376971937 786294045 261655449 301431139 188648062 676980845 126151481 244239980 143005619 379218704 534791603 197524428 418603889 329364317 641652815 108761141 55411364 576910474 228094086 300852389 343827028 183781502 505075478 467373016 283937364 596056881 25675319 617195341 930606103 170333475 263735956 378341386 741805743 449380185 672502362 512698301 55411364 611035633 610063072 11511514 357655314 384131815 488463526 317834206 737594595 229151777 384131815 577723693 153063088 7203477 14183373 371966706 504512314 269834060 753562574 967589305 673007083 741871506 990507207 267362140 506185191 796274678 357655314 570271244 641770480 427116544 756654121 428846680 783564947 762360581 825563694 172358499 572153244 560180239 423382810 323374619 57870077 347632676 900217253 420578219 171208483 758068661 730264987 213359710 256434426 570336807 314770376 809524612 963535716 350615343 246406611 132569079 505355078 965543990 855400000 112782806 615677308 488224433 14640871 848182671 542149410 251214319 181807069 275826341 779412471 766123053 329364317 823531809 685635040 861845489 478142640 586769582 635707097 683941034 401527487 577470979 561212596 622717017 208534941 223905430 889361891 445674227 933767247 965403633 797571073 631338285 536206732 623193147 111462522 303345057 958396706 997185480 587355315 4314337 968105119 28876123 784543578 788890047 170330891 762999129 230589333 296853909 164269532 376405395 36001480 401644558 390386098 911597038 646460514 387246481 316337977 934317667 346153013 75017068 417615828 796274678 219027286 545751460 66901023 624039253 324215460 229750851 171346666 197177183 840535103 264090651 115638551 355930996 286435119 745490300 663400807 960329120 600401017 374024229 649185253 67977428 145769017 406976454 666716017 558471522 998070740 533491545 794553967 244656207 307767072 185161977 472676815 792557502 699762292 458873868 321347669 532259019 574037992 612975435 91896373 929908858 402171857 7221291 704619854 99870520 626970185 143723968 249611755 638664525 618344226 404670881 962644983 130767407 242601592 747286282 538899541 314285605 197543690 953791872 894187951 10462431 665661938 234483510 936316033 756670266 711622133 37435186 62555839 676997288 385786013 401456345 43658180 841162193 768017079 78937211 652226584 232870833 617446085 820754635 178540205 410287113 388223330 238248119 85410017 228000369 228094086 738613051 28876123 939357958 633750615 861013948 328319663 162361916 832671251 39290274 488761774 261881274 635115246 278939304 184167493 789197602 961524215 532282434 985805134 89154951 524687756 123629213 720349018 173790654 794674617 522104887 270796526 192747501 77857419 912076521 143005619 411988656 519178536 424548681 543840507 64399065 555541236 724916300 965403633 808804150 634683136 85294613 471712214 920185762 588496314 273117142 977367481 389210030 526630418 410935643 719863057 260132578 464771447 749438363 79653308 884449180 328217752 749438363 822356288 984782495 176926759 163764912 400598057 87606923 793946870 332532417 161168364 835153635 804152458 518583385 906691365 516418665 539963350 875840460 637583085 220213682 614548007 716512526 941294164 978955950 60807748 79102775 682810852 715563614 873173721 73156407 407877244 444989359 30265864 181061043 6114314 636991704 135867710 355930996 474872546 785972176 745825721 161885158 408287424 284322000 420578219 560775764 684581945 287507022 801409198 132808689 107032755 875899015 676214328 43269492 922308369 552562539 882880092 113718969 112798913 491761037 970416993 737176087 740191941 223905430 35905145 138932130 135000374 107820156 546862328 283309395 685324370 830330322 819131667 119260572 567888993 816756547 887665329 37028736 706726060 819592797 261881274 430389614 897916025 944140720 328142874 694765181 563927216 750825149 483326661 786480040 569479799 576780065 533092466 56569092 143321119 441209724 30351439 805992004 328329111 998925542 141480927 83013527 564314986 640521890 803910518 913881336 155164400 882161017 594230441 283921209 542979336 359309478 625463030 387828469 853725888 944140720 462795099 415456348 450267893 246231996 666092329 715111646 482658484 871242616 301691460 804210053 512870618 792566738 92762280 862307089 841570440 159167956 473102970 208182956 311287060 348492981 787785760 56740474 201723093 698265453 784888241 291758658 674542227 755329756 877193699 211539823 937354909 703947004 354912267 724831227 215916910 675395168 730264987 504140152 379828427 652124899 502879014 233772566 217504245 219639793 373991621 594230441 575351641 767346766 90244340 100422564 359652773 382543663 701474370 678758803 275549790 495747597 304687086 833924014 151854626 362954591 813319210 332501814 812157405 495512303 515126925 479374646 101156301 114037956 368496531 473383951 595166705 62555839 207549397 607708723 965831491 662237534 208311955 960494774 45608788 538636029 396379256 560446957 125818812 153103136 309117493 854211870 242426405 732621225 572100510 331691451 83552542 349761303 294984204 341186216 52327804 882456106 99693668 354355527 277497567 306455665 487256848 857801647 521940732 543840507 43739419 730832538 487778963 608278165 823606328 812982582 532397682 150801484 916529225 814161904 913985244 778007084 89619481 693950087 250863157 122424999 353255844 370899819 400907941 664497996 620797239 473933050 657750288 273576373 522104887 89154951 513078841 60807748 254219287 342274439 65499478 75990800 894560405 323841451 472162344 548951569 50353247 937354909 2267895 630876037 266067899 827375668 44406641 149617161 742784179 806898287 744493275 431432359 998925542 433158646 281102007 266272826 492713422 749291380 392885733 44539235 678461570 173145620 890425414 297925677 919975022 5226926 210552683 563452223 495512303 259125823 871334946 910290047 548221608 360980625 289625377 146715673 621822034 192089296 748555020 973780364 861697640 458720877 45004726 30142268 251587819 802989717 991122761 892376032 669851967 894823343 283599405 78937211 444238918 960075280 678074796 974196966 449380185 252805292 437038421 367389172 314175717 536585486 617195341 878394639 63336398 878267752 415074383 324577884 662207358 205945197 592398796 146215244 47560661 682275349 497417342 734077184 362338554 600401017 871852280 732621225 458102694 447633093 782321975 252693314 963226961 971608771 971630537 862939936 104438147 679273097 375515720 870706542 801391310 721965838 143549423 319355705 705568615 329265704 844433235 628002125 217034447 808987555 724866791 980747824 441578897 637121734 972433370 170330891 721172947 699817175 861260738 578236244 29062331 522167392 759763473 683941034 296244299 326992960 360980625 188648062 778765033 983479107 259749110 92792218 63428356 454567843 945090883 550355914 996263353 777496901 150915480 630666315 832331795 314318032 359652773 216236887 719673639 151475928 184049420 192243675 695688258 875732615 699294880 1831389 487256848 855675634 894560405 174554145 814059348 21835155 268611338 327055342 103617064 16642774 718450902 324644196 880561179 929757110 432659386 617034160 232434763 919975022 298754411 746207343 428071291 622444979 685100407 85908862 923225818 697257806 433175193 50353247 575702800 993945511 803684878 693623420 277057306 605598679 877609428 290066634 679137362 688926432 803167446 208890459 405211363 730264987 889704474 569820917 844565139 599363173 668835332 772566237 649980444 473693206 410468968 883334008 443926841 102884708 817509779 891290260 273576373 79102775 241350186 874765059 507509574 716070994 124412129 567129445 297984721 926994574 479395011 836419600 859600514 102597635 692644806 497672919 281683102 657048440 918258347 375968612 431228734 344289427 314808067 56734569 793199056 226521418 490544456 62304730 309788087 724351353 652226584 726529070 428846680 941001692 214772661 532282434 321644210 910290047 991248064 64472751 361019624 275549790 952061178 961129959 529994673 8991600 767346766 903078684 60538458 637555883 56964750 680092482 652384198 921098882 880265015 627813749 331601423 653057090 428714412 891146088 695206734 62304730 758068661 779555399 311287060 496219658 214571668 889361891 917656269 675087462 118200676 649980444 45763732 541083595 233332213 207955886 189716201 406746718 308306592 294984204 812398643 626970185 815702195 361034134 318878994 455219701 129036075 257997193 655214674 338806367 10585463 790343863 245876840 323841451 353255844 559813875 353347633 197864332 300466853 750344920 249976799 762360581 322250128 55022264 537054158 865647751 548221608 228094086 609515650 533092466 778022201 849111782 228263883 857367584 103807406 104144854 865647751 883301410 413338415 891149152 164184974 551776085 453784055 677833662 804914076 757266445 740448148 785462257 732826725 841498462 265562253 73156407 447235483 649421860 645726081 473693206 956692225 32768680 224622492 466918176 146442845 790343863 304014711 720021333 106129738 628002125 341186216 175731651 99101069 165087591 708449224 602457065 576870939 468557993 962762175 34228815 595572629 566050763 678461570 517629412 311966060 649185253 608025670 987511774 478699896 775714082 190297459 401842604 608726602 100430245 176926759 960037658 925078060 149927065 6156588 733258326 182521575 89607992 787857820 511586087 295786083 259320003 467373016 822571602 740873947 492753997 677408635 516418665 882223199 990719695 597339149 680938701 458102694 455605680 171735454 952061178 329364317 768362806 515126925 953573082 911682579 357553023 405529721 780959982 868610137 85294613 243784306 591112742 998856933 872871517 795752098 560370514 778894873 249766964 7455531 207477311 916080289 800558469 80168442 835817953 917656269 377816991 370976321 149624114 119565485 423129885 768393379 634624298 971630537 424548681 95226514 146334028 873505595 498285405 413123472 650542665 265806676 572223703 290775947 959194049 526829132 870123638 174554145 798386400 306594022 646913780 804152458 739235009 808000077 309292580 962644983 416204454 410241368 652226584 240836262 392353254 72816262 110452443 453067953 185808457 653721939 194407888 943256684 296971426 110421212 623884734 865660393 671236453 377780361 899600039 359107939 147490697 841089783 833015052 342531699 479395809 319791841 852751929 630666315 925078060 522817710 295925870 37028736 496238050 705421539 823531809 33034747 306845244 206209771 419681408 233168958 947283533 746707200 460630937 200492809 950020455 996466367 475702831 119275992 484094974 760723429 89516333 889880270 921783703 1974501 463061598 471674957 651345135 182576283 151116777 301059508 214081108 905623941 990839687 411777768 375724357 526917770 960950133 641652815 185868815 996263353 499726655 628002125 890668835 172628880 715975322 892358571 616734528 787850780 283564720 121338368 867788675 641117022 206551521 388223330 321347669 251275201 995162615 489386104 411569380 631999248 278144763 447283784 174120506 129036075 267217986 252115701 189708257 378341386 810225936 61400453 814848138 470225889 332483785 964248231 554014196 217545462 768393379 57997134 711033 220645026 759056116 773171286 133847439 166873308 602052060 305282600 483976487 212758138 86404900 553160761 877911025 653057090 265794323 589678839 158522358 523306362 541060785 288338862 693917925 856698185 512997134 681323757 596213445 530560377 434173970 621290468 7455531 57602439 333317752 7733931 873954329 738097040 278939304 330696951 850249845 956692225 375081856 159365639 551749464 459226503 879251547 194166465 714791481 532584882 163617987 776827817 766554473 163051376 120478095 674933816 861697640 247168120 916512858 161739855 332073190 906643987 556218614 641770480 91896373 145030953 289625377 208706801 750072751 250268130 525769343 923129979 904961277 262610054 404433384 434354689 350489177 282011979 960587367 252383767 975392425 806833744 387246481 986584560 518575425 201766867 213435668 549240123 779208512 616208593 866728678 420160307 503173055 354003269 909454987 830223686 261772286 783919366 784470358 73402876 751977930 656546640 464405816 884058123 396233741 498678305 334714346 164269532 501396072 516050388 520786714 182426444 936612530 300139076 804210053 424093157 919966051 906084346 841435251 431003796 77857419 801409198 303992096 967385727 232042494 408631358 806761895 624679074 691103807 348492981 561235270 327994956 949680991 812735700 943400668 167939730 326992960 972433370 288349510 791178147 171116601 836210608 681323757 674507154 49442933 857902834 522167392 3831463 930219713 559236516 444579502 213359710 603340710 639207425 516441293 265227120 149617161 130232149 681182328 768393379 322250128 145198789 749438363 926777932 392463439 158522358 435893449 867788675 182521575 826320260 947696425 568224063 420576735 373271018 433144115 380286765 510779554 159905318 237129719 187042622 998279315 544243634 663707664 579772323 773863925 109501962 149617161 565539542 329394702 468331058 398673966 738968678 546584393 321347669 705363518 17834316 628613126 438010733 334586837 943099642 463373988 710358949 55271786 187913741 943526257 568021770 877609428 257729949 489034016 663846540 188011736 740659339 450970107 474990991 724594043 117686882 938349663 355289161 150479416 295238338 524735400 594259329 888886584 226290424 634529022 844018425 12405576 507360648 884449180 488224433 633750615 928104524 801391310 883301410 627201682 418470891 162414246 950020455 254219287 477564988 793946870 441956221 404285864 483592324 888802180 999653626 353255844 60538458 342983554 423750519 227574043 858841379 263277201 361703492 531077045 639889322 422657201 612730315 616415173 809734786 85330293 98687602 382293322 649421860 998925542 344558029 677899284 264552659 468604850 439540949 774374924 678926130 67977428 616208593 215502867 59859789 671203646 299393538 885454799 33119528 380672070 790490513 277565457 47448021 582655960 300852389 322788715 405529721 759763473 246471661 640284035 250644493 183963712 624382076 205945197 775551192 361019624 258044428 381839501 908986967 914345187 405211363 334247254 265964992 996070039 160735073 56107503 239300098 219240554 146380544 332483785 968585418 464157258 181061043 188627516 133912540 888363323 356019667 775477924 553444143 738078174 835184856 128575115 822356288 509862145 665505639 8603590 84574869 797272297 279280125 351439552 625269263 536253188 475702831 243784306 190945250 481055729 953887421 146837720 147490697 698863904 222006918 396010135 434941381 823752062 790033906 593248117 61253085 701119742 261477517 333317752 311966060 894536045 497227763 510853284 516050388 717116426 929757110 153103136 763969673 677049963 812398643 965831491 508684375 819285994 326435001 270238853 303280510 780177659 167908078 674115130 800558469 229526741 385818791 201049913 201766867 576910474 730832538 515667681 344673051 507360648 360083893 297533239 210552683 984781783 335132197 1521687 133199691 614573160 607006145 425176277 602946967 443926841 156718040 193365645 942057798 269834060 18530476 435455359 333187018 809596958 570776827 567638487 385888930 711622133 575320847 199911373 370976321 921038201 466634133 647535281 817287828 795336717 178234658 810228122 495349404 519100880 791574966 295315244 225392285 12100035 944562291 577402271 589244198 713660675 531598465 295107210 89013065 943099642 189641658 332909590 921038201 209510394 275525456 459549785 360697393 373197769 985235970 808966775 108761141 938442301 702256154 828822386 872344572 800561183 975350874 716084460 536123449 941640695 667589325 841089783 828760079 40180901 228832083 396517154 787850780 793110766 444238918 617195341 31115544 259848496 33223562 984782495 57212848 758068661 169048486 849466253 646562408 635707097 336927622 536253188 540235952 873033123 183083443 240197516 805615465 777828070 515811834 112475447 642894296 575320847 643437154 490006029 810619438 930691132 751787685 597198944 594185923 517821133 350779152 100571552 434012545 409643450 809403255 446469999 373197769 393493552 205377948 174125656 715445737 506762055 181262713 837931720 112260299 693989040 771009579 261546154 822356288 225282293 965887028 674895693 476895683 889880270 942144547 263405878 114490376 55022264 379886443 57602439 51739918 880563832 913438138 820162099 289926970 259644489 206165929 990839687 125818812 617446085 720021333 250653360 350779152 943400668 829461905 509969649 484032682 898373863 100430245 833129815 107820156 470583686 655939631 191844071 153238467 433175193 480680496 49808970 543492246 768902238 186988284 419427438 822099193 687669529 145823899 406566817 405526415 64060549 92703987 158410014 965403633 201188076 538380286 465390544 804152458 400560809 983081496 434012545 411461329 854366787 86870980 425447208 410468968 79653308 851896635 883334008 763615961 810262034 749434505 83095988 898373863 805615465 571912526 377862640 491758875 497417342 761271450 603896430 524526177 777599463 885089884 515894876 324215460 464937674 770885599 982098718 788859798 8613421 691469695 920327801 403682682 851896635 663400807 3831463 12291204 880561179 329142385 230623541 539319088 787619449 71870116 251214319 727831245 926727247 548433146 517207322 411244769 301839364 178338226 360980625 202979483 800717123 722832406 740310257 841288779 519568459 875316502 835308811 212973675 458287339 371070164 188799448 48563029 840535103 752519899 967886202 598134524 85772685 960587367 458759602 873954329 529204436 573012264 215503619 522867141 491012904 144666313 491943049 700592307 864666896 391573832 279443460 82520007 977964499 427420019 351183796 680439837 744493275 272450454 375722358 685100407 859716163 178234658 739305912 223921663 364092130 957115124 310420366 328746326 176069986 408287424 471722035 693631266 951308929 920638017 45131602 317834206 246231996 517698790 361019624 257997193 249336239 105396994 193292683 117377908 361019624 226521418 467194946 52250386 987178383 267784122 385316675 575068340 668437990 832687599 239300098 970416993 37028736 787453728 50353247 311959125 504031705 322221775 172890601 592855228 452856504 818012022 515923912 90828708 590388898 434000813 192107578 570574208 407208560 657048440 887936210 513078841 919397251 810174413 116783336 492677033 925920080 780068815 588348200 769990974 574037992 388223330 812676261 45720878 639060490 603628000 551776085 574046542 396166564 228832083 659768975 594002418 492713422 971630537 782625863 841930470 542288401 324644196 192837190 699460113 481477563 297091631 565072428 705421539 247168120 348161731 197266655 40279151 857367584 342274439 654499905 496238050 583468887 911597038 956921703 819684732 628533056 533491545 909454987 647535281 263427333 720307744 187921426 854610463 155097744 333502397 216009673 768720862 448098326 839523551 296971426 531077045 440937448 371070164 389220049 217651693 641117022 879251547 286435119 280124843 468604850 485434770 440683510 905266125 283309395 883334008 595697081 362345564 479374646 15234053 227471178 206209771 416385457 427554634 622400429 98960525 481029245 978209200 468205474 220645026 950925875 930099114 261914539 57210434 376643535 813706999 996415305 461916368 891146088 422639179 47750363 520786714 745152649 753711643 960329120 358551013 260809328 812204252 134433213 183363850 839830132 252383767 721360255 744790892 867123733 351906572 342983554 515126925 264156847 780177659 78937211 614479002 401644558 423309284 198791005 32444696 60538458 45004726 622400429 274682419 189608705 69942571 747585224 693989040 708398407 411003982 629934507 954502138 656596081 1997410 525769343 297687452 496238050 413228688 259715114 536585486 704619854 243817675 999653626 444884023 614420317 769648575 226290424 325114746 359968629 539895653 484428076 614421240 756670266 667786601 487658713 401700185 359875347 445571389 306959892 996466367 384084885 900666747 401527487 799131552 904028434 713356772 453067953 119880723 917598758 265562253 634319834 694193964 803167446 558891868 770965764 132808689 568066909 559799670 480661007 132589201 819285994 454125325 30265864 378421533 755171863 437038421 501614322 878267752 92792218 700592307 359875347 943408355 435893449 497672919 1478365 512262240 534606800 163051376 146715673 879756970 692467279 925078060 7802130 165147259 907938238 983910721 356851957 53075410 247099447 155164400 35815094 719863057 614468721 806833744 921783703 298363841 843321342 110623025 743007075 972747953 267362140 667997366 127582838 819684732 693623420 470225889 317161341 754782410 800717123 995207613 323829946 690406163 318364342 867788675 904731519 12501596 508188423 227687232 812993119 970069180 653872353 463968340 324577884 415678099 849466253 167794990 710399184 606535464 819781345 795371025 307198743 714122176 947279692 208534941 640521890 317642770 498642163 164184179 979075090 133631226 536056500 15813216 14091222 738669950 415102606 841570440 496219658 982879511 603340710 729094066 45763732 156796129 108098871 512965180 326025234 785028910 827375668 209752506 470431583 722323960 926626683 566415144 176986775 161739855 702934258 728834069 530409704 78937211 740310257 391232721 439812150 612730315 244848560 227471178 639889322 494468203 793946870 158901683 63428356 790855774 227471178 762392720 50143954 812400744 301995198 134433213 28237928 967757318 228000369 78937211 560446957 372909840 195574433 100430245 458720877 983479107 902064034 628920656 813378121 960347173 736999941 59859789 441956221 745152649 495349404 246896386 728904305 528475809 182805540 819592797 349160300 384983061 302129544 441209724 438717961 853479900 436966726 212442487 647910718 476056555 256434426 15767643 936612530 398910985 106204888 392115779 193292683 106732221 904417649 427811175 382387647 359843759 241121740 720881513 1974501 858172014 255052856 199352976 801391310 744503077 812573937 453547005 606535464 476895683 721155256 553292341 333317752 138653471 914345187 907656645 252753650 559063964 57840426 114504608 623193147 347937296 620445892 269005893 64594873 89619481 12291204 884156719 571336957 943408355 990774808 199433873 915801617 188802296 831087620 190945250 471722035 763810664 533092466 561871206 673162053 585899961 792199781 157337709 593388830 757817319 665505639 765738398 34152531 119275992 408287424 26402404 680092482 839890633 328845920 541213307 189608705 184894800 882161017 620797239 818524185 778202854 995215522 622717017 676980845 183548314 517698790 921769824 536977963 618789317 714954919 353255844 595036279 757371686 185344797 750344920 595802491 468717707 994939812 528745266 815757031 908661511 780177659 338230014 964714139 73355194 31146677 530409704 977151155 799002890 182521575 1997410 462438883 178612250 755171863 156630558 816756547 309792018 754782410 343786069 251468784 76834175 341867020 679004072 550199215 176069986 410241368 763387595 978955126 309024963 828760079 785291611 414209327 304687086 33834715 428015236 516980462 741650673 117517553 453784055 154888998 873033123 48949897 685635040 351855708 644457283 39947427 498204791 411553572 369025046 715964855 279068596 738613051 433447483 707214403 387246481 272502984 568224063 765738398 107813311 721172947 643218581 809627800 408631358 613856410 342274439 489272749 705363518 525024402 30684329 511586087 761271450 874754055 51593992 725133423 171104644 100086616 973632371 968105119 439540949 585629217 614421240 812740198 942427380 631999248 724711319 339910347 290630815 21692697 655214674 94543457 838403366 123918127 244645017 284629587 161548506 238248119 47706221 169372924 296853909 674192648 831877484 132589201 581293723 317161341 260098960 622141992 822571602 329373932 264029053 106129738 351966852 232434763 380743723 897241728 438010733 494226701 717116426 483592324 311287060 453547005 542592405 545394304 844931236 186840994 854366787 764166096 987162538 464157258 186215451 603229253 8856821 83408971 725133423 443044213 743657917 229044161 563375048 979264750 113890947 762702304 894823343 808831448 930025010 173331806 587355315 609237951 696416203 746707200 249611755 219178563 29062331 890425414 636674687 495747597 479955528 423067490 93137007 689857400 191844071 853865390 559799670 872010932 529994673 78357075 872010224 183363850 758331348 715111646 215502867 369616511 45763732 953843508 663382808 500069058 118945983 787125867 367128677 72816262 777293937 323594425 968585418 240203660 216453509 186101025 229750851 771518289 674192648 284177728 299933132 502779916 27564176 495888567 359813935 364586909 693256137 77562567 858833076 428744274 643758304 536187793 326992960 473102970 326095719 906572633 640284035 521940732 396846225 333850293 873323777 901072025 445674227 889361891 267534952 739053117 638664525 850919156 859042582 461916368 768138772 545751460 805615465 453911019 138653471 355362277 173854990 179342443 603084254 681987281 335297970 812545734 536374362 4525458 367953979 763495111 847695905 171735454 385888930 763387595 699591651 181061043 967780145 631145734 774715366 525638956 243210728 430333603 473204173 374024229 679273097 126151481 129092330 744854286 572994337 849966254 559377198 666752585 787467774 146673592 998070740 213629398 835582793 307890239 662296076 792557502 244952813 131293000 889361891 868572831 671012655 458759602 651131997 386668522 881911872 380645221 763615961 187043789 526582844 172328397 855400000 281102007 143781808 138699183 528476639 15944964 697257806 721172947 776806258 75960094 472711305 544368552 799131552 104575860 167525206 498727374 736982534 127384076 599413440 598506402 614477974 793946870 601245418 331852141 752718488 594105616 538701178 617446085 396731836 604822790 990750133 891701789 389844160 557641316 333502397 162320815 736226703 511586087 61253085 247762164 777496901 689101452 403328214 238946565 641117022 190945250 150915480 783919366 458287339 741650673 297091631 209022875 780068815 358551013 635283672 507071245 718578207 318244739 698931608 364092130 959789862 586769582 302973806 634529022 387246481 953887421 710399184 82389432 975350874 446132814 887269762 498561388 188982938 431890643 224099360 570336807 161168364 238243352 70727208 157051224 55410018 149526166 202964646 224780043 289638495 953077348 503216758 313709737 891357783 245449194 334247254 853867634 797620090 592778944 723636806 427193603 927855694 144061225 94778825 120511434 247379936 118321585 281102007 990774808 986584560 793567237 784591585 273455423 344256437 875067271 319791841 973374306 145823899 10281377 424985165 784207499 471807089 975006428 248453729 350517000 15204737 680439837 515667681 883301410 568066909 309292580 428618086 118321585 581293723 331058503 687213754 977151155 506762055 695577168 138043079 356316751 796274678 540192457 87060770 161739855 782960007 255052856 28831669 542607444 953573082 124236362 102884708 368636485 386668522 167939730 912569692 498727374 519011939 15363892 323374619 695611692 171208483 661142441 801391310 334714346 573012264 65499478 520546481 962075597 743183256 458720877 27019841 4353081 395240605 342660488 238792356 23418996 819033092 162765371 814536247 605728723 396233741 884006689 351685336 506353082 833924014 59578663 51691462 719416172 698423443 69479909 967886202 236217595 472162344 633657793 295925870 750159069 135597483 351966852 787782146 803715180 273253453 414936307 256475429 286185675 239300098 815971091 332701006 718450902 122424999 797501542 314175717 536594851 872764546 244244963 474872546 680938701 261477517 826593764 704746261 917615175 143081607 265603418 916835044 146420196 659921020 842233411 616859046 868561209 455629229 189287450 250653360 482209192 121338368 938442301 471674957 536947790 141480927 599363173 425447208 269365459 414310733 559377198 787125867 110162048 252006196 259644489 271383175 161711129 58809756 608928141 725628791 911536901 693735982 66659514 249974462 799308680 822318800 742446846 357728969 351077143 35185008 191844071 471712214 810818974 702968824 561871206 519269211 463978538 956403889 936104862 263427333 778937914 901072025 485606266 867788675 889704474 962694322 302274405 782321975 277800599 394993865 712038020 86404900 692467279 490934541 646562408 246114867 39684598 999948052 597299091 615903288 532686342 491758875 32444696 856772079 983479107 705952653 506185191 503472746 537277074 192431461 757627768 10883138 535389634 342983554 195238415 333502397 626510734 755706187 446132814 296372695 132410861 614548007 733258326 133682923 612674050 154264367 988722625 517821133 863429518 192645058 340777409 507474445 92337478 971630537 570574208 829461905 916512858 129036075 568066909 58361869 138936113 791536667 916560701 519113787 559826379 459821912 947436585 197381949 786469692 515257919 464093382 964248231 427554634 345251277 544635952 132589201 454567843 377757217 194922297 943062655 749291380 998279315 644450459 662622370 785248732 444579502 370084353 784471339 72468342 291177192 703417771 205377948 381509145 443756384 290425737 699460113 960263728 113718969 950790491 938543122 544148756 855719098 791178147 110477100 194818695 202979483 29419909 707282470 270530681 214081108 412969130 540571239 995162615 408287424 44514660 559823835 622557779 627568743 657451368 150449374 481673072 613765439 694210633 613926124 761370820 630566829 318244739 755171863 701992506 339060930 703234343 872103597 953843508 212973675 388195489 861013948 339261681 481477522 563325773 639333943 665505639 625954245 559826379 410914713 129372826 355619583 498471688 962097171 434069593 322221775 850857631 610169722 51593992 518583385 391340789 934317667 276723131 542979336 300107053 107575655 974809923 821870786 172784096 9083207 463217611 892903095 230982949 58361869 101410003 454567843 833015052 162361916 892022323 809629583 974196966 512286536 522162975 267217986 681084204 809459138 372596949 605045503 436629293 652912997 594727596 847558320 762702304 623884734 71896465 483592324 791574966 740659339 78989626 694071695 691469695 969667877 830330322 995734937 156718040 786469692 942923177 974809923 987971909 211017061 287873315 625013868 371966706 86870980 304962070 789991995 876136418 376899224 812101129 268813415 910290047 244645017 703204399 428744274 82520007 757266445 332992473 867788675 514327756 376860783 801009499 384084885 295786083 426908399 577820900 891775614 365997603 767173538 421661591 824380058 101995837 172158761 471674957 892376032 254730737 183963712 276723131 24302057 167856660 644541370 421294986 189442294 943526257 473558528 856600804 71896465 850919156 700660892 955405927 302541073 341979252 332038341 154142244 663382808 784287959 723154856 261546154 566853751 232434763 966873422 872344572 181340391 343827028 392539225 908601580 229059270 524273512 630445335 578584180 117686882 407143332 885828739 868119397 873033123 880039838 333281305 51593992 902926944 653073910 433144115 564289167 309024963 738078174 878461654 236321237 467423925 389220049 569943814 87112445 527299770 135496158 784470358 960347173 836913248 646260122 356248329 133199691 608726602 828040799 776733267 776733267 297925677 620445892 206674100 843279559 405211363 548951569 401700185 851280384 814161904 276546782 837397880 467373016 778894873 526571766 427116544 613526821 402171857 595697081 783564947 120644927 990063134 322486380 430333603 89177410 940752030 769291405 567638487 917122297 956403889 882871743 808987555 905962223 967757318 333187018 794896369 575068340 862756440 648087097 744854286 793658616 791681394 244952813 965677551 335184771 638251606 57210434 283940189 358586540 378197945 587355315 419013338 568838815 120511434 57210434 269435006 161680003 590067407 712824576 812085067 685998329 75229102 473102970 844075180 730289727 594002418 307890239 141793945 444989359 132524740 387246481 720021333 282949118 26417366 667997366 925078060 194529872 838943535 460630937 906643987 691089214 371070164 433447483 397590059 198381740 167908078 56629975 837931720 540681705 745351886 448098326 575907461 707214403 99730457 881835831 760450565 244848560 365853060 337995998 331601423 786469692 61253085 396166564 229526741 947696425 329364317 643218581 55789802 891290260 900217253 575698643 573012264 370718372 567519004 506062832 381374810 77857419 484185343 875732615 577525572 164214169 662423538 456620093 649421860 468933072 445968885 965677551 471722035 7221291 741588188 681987281 243784306 732504771 733189543 854211870 245167695 914762971 745232220 23164280 767505642 982879511 321117599 882456106 396775313 248528541 12501596 259848496 566900631 393116598 483492691 162765371 914625906 318413499 6156588 722087694 79102775 427420019 221197630 146715673 5621264 728904305 517078323 50066176 664126617 113581183 61977295 29863733 960494774 128274101 31642902 870123638 30301133 893556423 55520299 100552030 227893773 264735222 306959892 328329111 993729565 961552936 304687086 731796874 246896386 593248117 263252601 409150698 287507022 628897356 925920080 419683861 133471702 195279072 541060785 267217986 122424999 502879014 688878785 195574433 448290624 955823986 904028434 676980845 193365645 329835419 130233752 887530457 350615343 306167935 765465955 980747824 526560110 223096756 389212788 915758682 560083947 143723968 193930014 363167554 992761434 12405576 914018852 216453509 767229675 501437834 20248805 390301576 962644983 295315244 921038201 340777409 692644806 518575425 298363841 260809328 86404900 107808978 124686517 380211376 750825149 821870786 123920110 897241728 893949709 584744819 80168442 777599463 821274633 784471339 495349404 771009579 670008603 390386098 356779688 764384285 139770734 911682579 474926333 359107939 621822034 561550658 214386054 529354668 143674052 271480510 267784122 456171329 85505551 925414817 334163442 480302776 119039730 35905145 883442699 47448021 359935395 476046422 520786714 426942267 533491545 570574208 213189513 328072844 526646811 56569092 314721346 379886443 718418654 810174413 266382246 940663788 23816368 440463965 50066176 348161731 672219217 764259519 503472746 39684598 201188076 924120547 986790528 88381932 339657591 636991704 610360329 19212436 272716401 286050564 826390147 780692187 594177251 255741301 539128062 644075462 893556423 263735956 837373149 580039514 389814443 440326361 229172857 509862145 117377908 536594851 202964646 538380286 556940415 278866541 387972540 321816777 360697393 82558513 118321585 931401172 519850114 148872843 458287339 935563785 473558528 805992004 825188590 276723131 449415038 828760079 353347633 767229675 702968824 595166705 571336957 722323960 977445562 294920345 781987609 881298649 79913246 559826379 354641735 602353565 732478364 125994586 45763732 984338318 429558578 613108787 678758803 202620857 867095048 804772596 638664525 4314337 567961640 447990825 199433873 198854353 223921663 956921703 936706046 892722963 387050663 107575655 364302306 83552542 764991448 416672454 938442301 768213695 314770376 148790688 912076521 806827582 175573396 52327804 943099642 146334028 202038019 326355741 648558682 285660749 892447640 651345135 715563614 189716201 898373863 948713783 259210433 674933816 784653387 595004375 882592911 239888423 722087694 498204791 992761434 539963350 876285402 203683816 265227230 408287424 824333006 373197769 351855708 65138516 867409519 759279615 182426444 224780043 107808978 797729741 892502461 681323757 463061598 302288197 752986855 518204083 448290624 465643223 663140441 344673051 192747501 847406541 913881336 200349926 356248329 443379097 668797597 961327971 169372924 159905318 297925677 626092991 383008147 515811834 777976325 765465955 492149280 649980444 470225889 214614219 158901683 267217986 99730457 640094532 1831389 542288401 637039423 449380185 159917509 29092482 293048515 633750615 856303039 561550658 711621501 78988322 894187951 552562539 956403889 117916570 502879014 932615272 14594262 678926130 52327804 319349634 585862918 400034263 93562877 879756970 925751148 735125224 757371686 839247150 777293937 753146142 95226514 872103597 733884644 768213695 405621069 768393379 669124399 455436685 974607726 885454799 831148533 873608238 464937674 588204447 414209327 572223703 602353565 533733346 542607444 444579502 23910770 15085853 755550290 543732312 598801584 110452443 503173055 224099360 272801478 344200460 216704599 474926333 23164280 247099447 7825237 244244963 287873315 704441381 232870833 786231842 347313873 336927622 769951693 990839687 900393002 180511810 327765793 740873947 262610054 431228734 536909087 688878785 892903095 839830132 254730737 512595478 270796526 401527487 792199781 389716921 317453486 468557993 880765678 512267793 183963712 7799608 873323777 784287959 494706641 201049913 342274439 581379821 327765793 972485967 246546922 413338415 973780364 16238172 868119397 314193344 187488138 721172947 607190513 14055174 463910045 247220722 990507207 245167695 380211376 767346766 518204083 641652815 889307767 514584876 513206735 936612530 348492981 208534941 502779916 523105096 352019725 209752506 378123863 853865390 260126757 892903095 314770376 261881274 529994673 174975441 259210433 515811834 715041146 548740123 804935774 225392285 139178632 477003046 918134121 412969130 231814607 310517189 263405878 217034447 910390300 476884423 29329225 822022239 349761303 663785507 239162507 251589259 464184273 832468899 742784179 427020948 26402404 526917770 139178632 389716921 391219534 588204447 605416417 242508751 418603889 269312604 920327801 778007084 541213307 977089088 874754055 561550658 421661591 382400728 482245586 118945983 612500940 295925870 953887421 993197079 1521687 39290274 918134121 224698552 797571073 829027881 370904584 515811834 900217253 768149844 520946914 396775313 924298408 671012655 809459138 206915668 935324021 964668536 522167392 993197079 268740215 441209724 818715944 619392806 883301410 958396706 641117022 537054158 790584023 772914912 633926277 33576867 73156407 394001727 338840277 684758551 208336950 512286536 782060892 647998022 814015482 755171863 721788932 583468887 984483517 249974462 388223330 743258777 147793220 369616511 419683861 318364342 604020587 812419126 640799332 755171863 563452223 589158295 844075180 615334562 315750738 517533699 92762280 213359710 57602439 514516638 672722727 289638495 631999248 158410014 650661528 778894873 822356288 804210053 963954978 46253964 673162053 534742374 370899819 944162334 541271770 930861676 560180239 56250174 309199529 512199828 535389634 62304730 183908166 206915668 890425414 502700414 27564176 922845593 761176899 110477100 560147466 882871743 370904584 326973370 310517189 35815094 300139076 16079129 650478751 380211376 537277074 699762292 938442301 603529951 218455304 117250953 250150288 98687602 291758658 596362664 826593764 918258347 996942435 380955396 301966468 597198944 753436941 806761895 459153226 22837246 783584290 200306575 272801478 28237928 543492246 729094066 853479900 929494216 189285677 885454799 559377198 9579364 706726060 231584079 528745266 577920361 219802791 709418144 724711319 990063134 898017556 368402378 228434038 196582719 357472945 836633166 918316207 570271244 900197125 500069058 194724146 587216291 854366787 240825535 135063866 577128712 155164400 990839687 83310806 396775313 377257960 634529022 814228043 694210633 825188590 425313399 60807748 44539235 242560852 327320447 862533520 786480040 670726380 112260299 486348885 81401211 767891036 94204569 881073120 29329225 96159325 641770480 614548007 296816679 308306592 967058640 940663788 781220664 663140441 195279072 905266125 663846540 561550658 706088955 370084353 892722963 191393088 760128862 795752098 267217986 560446957 577203870 258697597 531598465 564289167 749952793 580885708 75960094 569943814 215916910 849111782 600731848 391219534 402513855 455148066 4475760 356019667 766554473 636517289 241604643 678758803 55456604 339657591 278800524 839523551 744416892 263427333 428879748 904292494 229061145 567638487 608893757 468557993 168541496 377757217 239300098 200349926 988722625 124686517 772621903 26417366 489828998 533092466 782350213 849233704 430025923 904417649 970416993 603896430 427020948 552949859 485434770 62304730 377780361 613474500 499726655 267200358 625269263 316337977 29036266 877609428 668424404 200492809 566050763 402946232 173046498 385346897 176986775 364586909 60511848 7455417 984888163 484428076 510938204 711621501 568066909 596478318 702934258 624854784 78989626 550182649 200179854 543732312 873954329 777828070 305793717 53139843 113890947 644655441 790343863 889680918 942701806 726659156 8613421 91039408 268740215 908352284 830330322 851783830 700089141 427116544 15767643 560715363 962694322 249336239 106121392 106820454 888360095 451064437 863891495 46793799 619188238 872010932 478777032 703204399 262610054 146794653 722466239 14091222 582655960 926383726 192645058 845539476 926626683 251305009 677833662 695889101 527319796 86685872 537394553 233034793 126291003 178894177 694236047 160857000 714122176 416857815 385786013 992761434 767891036 950900487 54495615 297753111 181476437 367090357 854618481 949430015 515126925 943114099 393336486 226673439 892376032 207549397 188597773 287381943 356316751 793946870 953791872 428952411 257266617 653594916 626671882 16079129 735470095 408631358 416204454 353680420 471348221 305084410 83552542 44406641 197449106 233034793 921783703 506447694 332577239 275826341 237451076 805600576 187921426 31370513 288338862 679137362 926705716 281924586 971966382 704619854 433144115 328329111 363078902 523086816 532282434 881298649 975350874 277750457 505495188 104438147 140252005 252115701 586116774 87172430 909328510 764384285 15767643 943256684 825721530 591885275 659245693 758068661 390519786 132271955 863692312 678494167 997195252 670357614 261322372 7221291 831148533 36891258 330962701 659382812 136280040 716654012 676317740 499726655 998070740 953965032 439513219 206165929 403328214 363078902 445058957 266602062 278897687 745351886 389814443 55271786 473574639 662296076 995399950 817196111 138936113 379511196 684429686 405211363 264090651 739993618 380211567 267037411 855086018 333589597 380825508 551749464 594657232 472162344 761176899 471712214 889680918 235183835 997421277 293048515 582543416 757631259 835709956 380743723 23164280 57698839 668768280 745152649 346948324 369741281 133199691 851966681 560187826 873505595 410468968 264735222 962644983 556940415 168630740 906572633 568891626 892294144 338801541 89516333 487394853 630092600 151644485 666752585 644655441 187921426 738984442 466481471 721155256 786231842 81166415 981307420 551307280 459549785 680938701 861697640 138699183 728084781 804935774 32768680 963412179 840719491 964576608 456620093 106129738 794674617 614890665 933781242 955187862 808987555 585290460 757117805 966985596 252805292 592538952 372596949 801409198 273108764 566360189 974196966 666944928 189588225 632832527 789147402 1831389 797973013 624738554 30001504 459892061 353347633 999653626 164269532 112435422 550199215 313041351 490006029 380286765 464675217 193679555 33834715 680477696 671012655 863674900 49808970 343724630 639207425 370586573 947696425 344949528 653057090 498471688 815437524 841435251 942427380 768213695 3111695 565179997 227471178 265174728 173204726 65783382 574974403 960419646 198961108 962694322 581256406 576780065 645827799 752128946 859716163 250150288 572994337 783584290 99693668 814536247 346948324 529204436 394001727 447235483 849229551 436951908 591508970 780475587 428618086 410729829 286969296 405861846 293048515 231975533 789991995 746207343 446081101 791574966 574037992 697646981 404433384 305084410 989575449 421573887 339910347 271778021 489272749 299851704 14594262 657750288 996466367 315242797 782321975 586189648 156630558 654499905 686421587 196911651 980747824 672193907 696309275 15579069 342660488 343554958 165329111 282891236 531077045 920185762 965677551 100430245 274682419 302885739 420113847 176192923 960950133 817196111 448290624 717116426 431343619 299273988 261220091 547763240 163018950 83095988 367552763 702968824 697870062 31115544 267217986 859042582 662622370 821274633 110623025 469150488 838782843 525094124 213189513 29677502 556535048 393116598 112280473 853867634 809459138 82188736 396166564 56569092 809838531 674895693 225282293 371070164 377118070 9898828 232042494 633657793 712713070 778007084 431228734 481477563 474679443 597619873 451064437 74105318 464675217 356067238 400560809 868610137 357472945 227341587 350489177 123918127 416672454 627568743 634529022 978024218 306455665 201188076 777446840 526630418 66575736 141607140 484428076 982098718 880029083 397886144 57210434 238946565 514985740 214614219 868561209 174125656 269005893 378123863 837931720 409082342 401644558 853867634 565233456 248979596 847406541 178017282 880863412 787066791 612975435 713660675 421661591 57210434 536585486 816756547 649302289 591885275 277800599 447980318 253717222 355362277 450970107 868176165 199337209 196516403 998925542 731402868 444884023 191393088 316244820 4353081 643988894 619093824 363167554 476952902 307198743 356182816 455629229 526182995 519850114 434012545 577470979 178418999 917987694 474926333 618254763 110162048 859432248 332992473 516348298 90938530 92703987 89607992 174122074 612185008 841288779 85153464 273108764 366138558 396731836 823078558 492001619 816222258 800303456 587216291 425447208 484056718 646913780 305728713 178418999 772566237 906014518 464093382 104438147 264161013 750344920 962075597 496238050 323970236 777599463 653594916 497283938 701617846 325694288 150479416 613765439 539629985 219243177 943858896 53676003 165255667 267689047 193091527 99101069 163089910 904464640 518622032 798704204 612975435 578158360 59053852 113570806 359287451 671236453 187913741 263405878 810225936 477651159 686027125 628849748 409082342 768213695 700757275 838372130 648363324 203377670 244838002 202832456 302274405 867617393 190265561 79913246 780692187 648222328 366762884 723434610 567442879 598669512 145015410 739529056 687915958 959194049 309210732 736625033 326095719 548449903 821039696 279193699 850919156 893436549 497672919 778894873 793420897 521652866 673162053 422834468 977977171 612989706 380211376 250034332 50353247 187042622 930649075 101600824 533733346 777135847 116783336 261365560 488463526 141480927 397886144 484196394 990750133 866275712 760685220 61466476 836210608 676317740 471674957 193091527 150479416 78747617 194296543 893027217 849789595 350297176 746975324 69344685 3588375 892502461 86455817 451020778 425447208 158496583 724371560 915261787 664716307 307399876 908894608 91670966 960075280 710358949 229059270 473558528 557707295 617576471 208052045 951419697 268812720 469150488 418216138 167908308 389844160 868572831 70792490 73355194 523306362 885312429 715975322 826593764 894187951 35017556 687213754 876054182 739203331 962223044 444989359 929950543 387448768 269312604 697257806 171262197 967886202 59053852 58593532 990839687 170634303 197864332 308949550 370586573 881031080 590790064 841257996 787850780 469536891 408547112 300107053 98614370 133912540 965403633 758446505 327384116 563542199 7221291 61332591 657305305 492247247 769291405 538701178 786897254 843709330 14091222 836913248 936612530 360980625 538644345 26417366 357518915 211564327 769083052 197524428 783908830 719500333 71438949 154844116 94529018 43739419 772238817 178894177 137563558 464184273 11526537 666944928 185868815 976163852 251587819 700089141 594727596 851783830 57431564 359813935 577203870 98687602 699294880 259125823 498204791 833294807 222655435 827760201 229151777 985702981 182805540 497672919 223589059 636674687 801009499 445261790 728665221 700909507 709759009 595004375 617296169 86685872 46370264 864666896 110452443 764443046 582824875 671012655 492414722 541060785 380672070 959426924 949875879 436629293 536187793 342660488 212632182 873173721 278384497 652384198 476731953 633657793 225282293 821407538 225282293 519178536 428879748 75902075 704746261 616839055 769429163 904292494 578158360 636991704 628002125 579505148 78988322 950020455 556218614 404380730 120825765 652912997 401322138 720307744 815702195 597041049 579122139 979218772 930649075 912569692 118200676 766064131 961552936 845539476 290136374 645536456 904068334 55020392 144521246 805227781 952330793 144595910 244952813 600220820 701819021 711212792 73774554 526582844 756727543 49442933 156448884 755706187 49042740 762740250 111462522 117517553 106820454 94778825 173695769 466146046 272502984 666141979 70792490 441209724 7802130 467240339 582423808 591885275 333541948 118321585 270238853 628947259 380645221 950925875 799308680 183363850 616178629 78357816 157051224 696416203 582655960 774510532 615903288 203834002 596478318 248528541 309307017 468128566 942557803 144093335 340899503 827026208 857902834 890583877 942844094 744503077 499280784 952330793 110347090 543492246 830829720 168630740 578584180 482209192 269365459 181340391 223942560 219240554 818012022 572851317 249279076 223921663 131180650 703073204 186664369 891775614 835709956 125994586 565134851 536056500 989575449 314175717 402217957 283937364 362954591 459370673 302129544 4353081 297533239 491125478 319123202 547292880 101600824 113643196 56103261 441956221 370084353 333281305 950197785 812962531 936612530 857367584 409150698 596257755 883334008 832979725 517930826 303939627 69124371 44400258 348492981 46793799 249213512 179058518 996829154 191019940 463968340 331976226 775775365 193292683 591885275 991481489 584657673 390228435 393125415 375662115 21520904 346948324 105670287 168257314 698863904 608893757 101410003 571399623 831000470 559826379 523147876 808000077 651644790 285660749 471902992 212758138 946629040 715642129 866275712 156630558 69479909 706726060 498561388 208534941 888387334 536466451 302484474 199337209 314721346 630165875 181938030 422657201 471833346 854366787 61466476 723308589 672502362 751732179 168024415 317934143 381089290 637583085 9898828 571213810 501396072 560446957 765738398 138936113 537277074 996652983 77562567 143081607 360083893 681033318 35794541 382400728 728665221 500069058 784911924 939414110 414929390 23816368 848391143 774510532 990018651 297687452 359435870 315225511 866728678 777948978 674961326 52706961 690081846 635819214 146183600 290066634 486482457 559063964 526560110 656555262 118806460 369856924 2254080 493523186 439513219 520546481 817135933 655939631 267784122 822318800 475199127 706772155 197524428 257266617 590790064 926759164 245711526 677833662 183781502 803796397 948929554 925920080 947696425 664716307 929757110 715182955 395054257 996601424 408287424 292834712 539629985 228832083 244244963 739305912 287076745 236321237 370586573 941673575 420576735 304014711 199187960 179342443 922845593 314721346 445058957 915617662 575702800 453784055 652474174 225595088 405529721 434941381 38925484 448290624 70727208 535389634 172890601 730046553 382543663 199199314 616208593 814085226 945727872 407208560 729094066 922845593 329364317 977350885 749291380 959505218 175964182 724140261 165087591 679273097 201723093 471674957 373436147 682039092 216708316 676193995 630666315 246231996 121366676 505075478 736982534 459226503 169372924 762013651 367389172 265806676 881031080 756782347 586793567 196911651 129372826 164184974 159082161 539963350 693989040 990750133 633416532 124595557 254471401 517629412 420160307 585899961 370899819 969534869 287733226 323594425 684426675 624039253 240197516 861000474 343123997 153683887 796274678 984382642 384084885 667786601 173695769 829461905 227119210 662348623 350549710 79102775 723154856 99101069 855515073 680439837 779208512 560513268 732621225 185868815 433906697 808903382 247762164 536585486 278899337 704746261 936316033 113718969 652384198 206947382 733762553 552553040 61466476 112578508 418943600 800558469 868561209 83095988 647998022 720349018 376899224 957392180 27019841 537054158 161680003 609238007 904159957 751787685 666092329 605728723 393581281 184167493 326025234 610169722 689403602 776847680 850353094 269435006 277565457 420578219 971608771 135881823 102597635 486042949 117377908 593248117 913881336 217034447 430389614 985235970 676980845 234542759 468187475 585629217 265244843 689203021 206165929 217504245 873954329 247187670 382387647 17834316 81166415 560775764 715465382 982530458 835308811 49621688 37361502 503173055 33834715 641595790 8908392 602529257 101995837 49106893 591813282 649185253 417878317 532050035 775049527 829027881 980771035 29062331 219493043 917615175 261772286 885454799 55520299 86836015 147793220 77855757 387448768 484733488 597619873 583928321 78988322 309762615 628533056 882592911 983081496 582655960 33739873 996518547 284829030 199433873 62304730 188648062 550812065 263252601 751979361 320093398 851296302 168344050 514124813 652226584 387828469 682079052 550852259 908987452 968105119 714122176 533704296 361019624 409643450 909005038 353680420 797620090 554347301 775477924 32375922 709418144 343786069 196980000 432780069 918428238 56103261 112260299 367090357 940887852 671753094 458102694 224049912 832331795 198961108 370586573 466259378 189708257 471712214 438630753 212758138 533989534 738097040 275525456 711033 740718996 229172857 625340233 644457283 616839055 146380544 243817675 477651159 269834060 132271955 934317667 669840131 907679875 922707036 199433873 495747597 259715114 414936307 626510734 881042377 342983554 487778963 587355315 373357752 599195882 789147402 844433235 9898828 916080289 343833471 377362748 634624298 378421533 638773181 301839364 365563541 146442845 178612250 232151291 569479799 286050564 325114746 508703445 368515802 531648183 306216861 389358224 330879530 333317752 969667877 904768837 318364342 82558513 491943049 134119246 602529257 566900631 515257919 196582719 997185480 422834468 706772155 462795099 958807111 147078208 746207343 904731519 628947259 699294880 499726655 492677033 158726966 113643196 375390536 229059270 191951090 193673584 998306686 731246096 56450978 944958052 999646466 508188423 613526821 719863057 939464133 683674705 381470778 279443460 77857419 765700497 393581281 949430015 124686517 881474405 159082161 921446126 514618541 165606056 162765371 41169649 750159069 512567532 388223330 121868805 237993313 202019081 102348063 630666315 302580911 977964499 232434763 55020392 535220604 784471339 740424690 148872843 201723093 379828427 206165929 976477474 389358224 890668835 636502705 300107053 194407888 531598465 156367029 815702195 321816777 5385098 434154654 638281987 960950133 100422564 202687577 267689047 42819703 144061225 599413440 670357614 438717961 561871206 923173997 837397880 301995198 633564141 512595478 731640472 109501962 645417617 672537924 172784096 786231842 998119538 463217611 125994586 762999129 243210728 228000369 359707817 306845244 850353094 822022239 79865398 954275797 704746261 594105616 265174728 837397880 236217595 581258803 420576735 528508131 369856924 839523551 119039730 693631266 445820895 163764912 193292683 703863830 508188423 874754055 920365121 200179854 224622492 236529990 749952793 765738398 233574357 558471522 153063088 901781673 612257511 951805853 276677539 300107053 984483517 359802288 729854211 397590059 69403656 909964203 783908830 462438883 516050388 424829099 768362806 746975324 740908785 210371454 357553023 396094557 817135933 130767407 863891495 200306575 44400258 681033318 145030953 284322000 589244198 892358571 819131667 990719695 545751460 465390544 168344050 23910770 239851044 51214252 885949574 389220049 302303778 626510734 606731442 114039611 662423538 953887421 391513191 720021333 644450459 751977930 812735700 962694322 173145620 897695623 73156407 103617064 475702831 789991995 441956221 788674724 819285994 239300098 321816777 817287828 945727872 726912627 932687889 282011979 989269750 379690792 622163185
